RPG ツクールMV スマートフォンアプリ化手順Android編

投稿者:

ツクールMVにてスマートフォンアプリを開発する場合、ツクールMVの公式ヘルプではAndroidアプリに変換する際に、環境構築が大変ですが、公式ヘルプを参考にして環境を整えると後の応用は意外と楽です。

本稿はツクールMVの解説について、同じアプリを繰り返しアップデートするとき以外は公式ヘルプツクールMVを起動してF1キー)にある通りなので、基本的な部分は省略します。

なお、RPGツクールを利用以外のHTML5、CSS、JavaScriptでのアプリを設計・制作した際にも利用できる知識も紹介したいと思います。

RPGツクールMV公式ヘルプ引用部分

Webアプリをネイティブアプリのように動作させる開発方法は“ハイブリットアプリ”と呼ばれていて、アプリ化したいWebコンテンツを学習コストが少なくハイブリッドアプリとすることが可能です。

ツクールMV公式ヘルプ(RPGツクールMVを起動してF1キー)

アプリのパッケージングについてはツクールMV公式ヘルプを参照してください。

最新版について詳しくはツクールフォーラム ツクールMV公式ヘルプ補完Androidアプリ(1月度 改訂版)をご覧ください。

こちらでの解説は、ミドルウェアを用いて、公式ヘルプとは違う方法での解説となります。

ツクールMVでデプロイしたデータをそれぞれのミドルウェアでパッケージングする方法をなるべく詳しくお伝えしたいと考えています。

基本はツクールMV公式ヘルプにあります。この記事はあくまでも発展形の技術紹介です。基本はRPGツクールMVの公式ヘルプがもとになっているものを筆者が改良を加えて実用化しました。Googleプレイ64bit版アプリ生成対応版です。

本稿の下部にGoogleプレイ64bit版アプリパッケージングについて解説していますので、アプリのリリースを考えている方は最後までご覧になることをお勧めします。

RPGツクールMV向けではありますが、先述の通りWEB系のネイティブ言語で制作されたものも対象となります。ツクールMVのヘルプでもWEB系のネイティブアプリはミドルウェアを介することによりJavaにコンパイルして動作することが可能です。

apkファイルの作成方法:出典 RPGツクールMVでアプリリリースを目指す開発室(要検索)

apkファイルの作成方法:出典 RPGツクールMVでアプリリリースを目指す開発室(要検索)

apkファイルの作成方法:出典 RPGツクールMVのAndroidアプリ化(Cordova)(要検索)

上述出典記事は主にミドルウェアにCordovaを用いた方法ですが、ツクールMVの公式ヘルプはcrosswalkでのパッケージング方法です。

crosswalkはプロジェクトが終焉しcrosswalkの安定版がリリースとなっています。

本稿においてはcrosswalk最新版を用いてもアプリが落ちないので(Android端末が新しいものほど)crosswalkでパッケージングしたアプリでも十分な動作が確認できます。

crosswalk最新版

crosswalk-23.53.589.4

crosswalk-23.53.589.4-64bit

があります。

お使いのPC32bit版OSなのか64bit版OSなのかでcrosswalkの選択が変わります。

後述するアプリパッケージングの際に必要な32bit版の部品と64bit版の部品が存在するという認識でいてください。(xwalk_core_libraryの中に)

また、crosswalkはWEBブラウザをひとつツクールMVのapk用に内包するため、アプリの総容量が30MBほど多くなります。

GooglePlayでゲームをリリースする際に気を付けなければならないのが100MBの壁です。

アプリ容量はアプリの設計から意識していないと、完成した時にデータを大幅に削減しなければならないことにもなるので、設計時点でアプリの容量を把握しておくと良いと思います。

ツクールMV で作っているときには大体300MB 前後から400MB前後でイベントを作っておくと良いと思います。

デプロイ時には100MB前後になります。

ではここで、筆者のパッケージング環境を明記しておきます。

Pythonはpython35です。

Javaはjdk1.8.0_211です。

Apache antは1.10.6です。

 あとは、ツクールMV公式ヘルプにしたがって、パッケージングをして行きます。

環境構築が済み、パッケージングの段階に入って、重要なのがmanifest.jsonファイルの設定です。

写真は聖剣レイブランシル物語のmanifestファイルです。何度かアップデートをしているので、上から二行目のxwalk_versionの数字がビルドバージョンの数字になっています。

crosswalkテンプレートを用いる場合、xwalk_core_libraryのビルドバージョンとmanifestファイルのビルドバージョンが一致していなければなりません。

crosswalkテンプレートは一度PCにインストールすると、ライブラリが生成されます。crosswalkのバージョンを変更する際には、ライブラリをすべてコピーして新しいバージョンのフォルダにペーストする必要があります。

アプリのアップデートやアプリの64bit版対応などのちにxwalk_core_libraryを編集する必要が出てきますので後述します。

manifestファイルの編集が終わったら、ツクールMV公式ヘルプにある通りの順番でパッケージングを行います。

続いての記述は、主にアプリをアップデートする際の方法です。そして、GooglePlayにリリースしているアプリが対象となります。

xwalk_core_libraryフォルダのなかにある、AndroidManifest.xmlを編集します。

GooglePlayで推奨されている、ミニマムSDKバージョン(minSdkVersion)とターゲットバージョン(targetSdkVersion)を指定します。

Android:versionCodeについて、編集が必要な場合と、パッケージングスクリプト内で指定し変更する方法などがありますので、適宜制作者の方の判断にお任せします。

android:minSdkVersion=”21″(こちらが最低でも動作する、SDKの最小値です。GooglePlayで最低限必須動作環境となっています。GooglePlayで動作保証をしているアプリでの最低でも動作可能OSにAPIレベルを合わせる必要があります。)

GooglePlayの必須環境はGoogleデベロッパーカンファレンスでアナウンスされている通り、毎年変更になります。

android:targetSdkversion=”26″(こちらは必須APIの参照情報です。SDKバージョンは必ずGoogleデベロッパーでアナウンスされた最低限のAPIが必要です。)

androidVersionCodeについて補足

manifestファイルで指定すると、パッケージングスクリプトで指定する必要がなくなります。

また、パッケージングスクリプトで指定する場合はパッケージングする際に

C:¥crosswalk 23.53.589.4¥make_apk.py –AppVersionCode=”16″ –package=com.example.sample

などの記述が必要です。

64bit版アプリパッケージング方法

crosswalkCoreライブラリが以上に示す画像の通りになっていれば必ず64bit版アプリしか生成されません。

上述のパッケージング環境の構築で、64bit版アプリを生成する方法について補足をします。

crosswalk23.53.589.4-64bitという表記があるファイルは64bitアプリをパッケージングするためのライブラリが揃っています。

お持ちのPCが32bit版OSである、64bit版OSであるという違いではありません。

それぞれ、ライブラリの中に32bit版のアプリパッケージングのための部品、64bit版のアプリパッケージングのための部品しかないという認識でいてください。

cordovaをミドルウェアに利用したアプリパッケージング(WEB系ネイティブ言語のアプリ含む)

2019年12月現在の筆者の環境です。

ビルドスクリプトや環境構築の方法についてはツクールMV公式ヘルプをご覧いただくか、以下のリンクをご参照ください。

RPGツクールMVでアプリリリースを目指す開発室

RPGツクールMVのAndroidアプリ化(Cordova)

以上を踏まえて、環境構築をすると、ほとんどがビルドスクリプトを入力するだけで、半自動でアプリのパッケージングが完了します(ビルドの失敗がない限り)

では、WEB系ネイティブ言語で作成されたアプリをハイブリッドアプリ化するには…?

これは、WEB系アプリケーションに必要なHTML5・CSS・JavaScriptファイルを含みつつ

manifestファイルなどを組み込んでアプリパッケージングを行います。(2019年12月現在研究中)

下記の画像のようになっていれば、おおむねWEB系ネイティブ言語のハイブリッドアプリケーションが作成可能です(Cordovaを利用して)

画像一番下のZIPINFOについては一度アプリをパッケージングすると作成されるファイルです。

初めてアプリをパッケージングする際にはありませんので無視してください。

素材をそろえ、アイコンファイルなどもそろっている場合にはGooglePlayにアップロードすることが可能です。

また、Cordovaは様々なプラグインがあるため、無料ゲームだけど広告を入れて広告からの広告料を副収入として得たいなどの目的であっても、プラグイン次第で作成可能です。

例えば、最近のAndroid端末でもミッドレンジスマートフォンの性能は上がってきているので、高FPSで動作するゲームアプリを制作することができます。

それもCordovaプラグインがあるおかげで、特にwkwebviewengineというものは、アプリのソースコードが同じものでも、こちらのプラグインを入れていないのと入れているもので動作が違います。

以下に示すアプリは広告入りの無料ゲームアプリです。

ぜひダウロードしてインストールとプレイしてみてください。

サークルリーグ(Androidアプリ)

上記に示したアプリで大体どのようなことができるのか感覚がつかめると思います。

サークルリーグはFirebaseとも連携しているので、将来テコ入れの時間があればリーダーボードとの連携をしたいと考えています。

Cordovaをミドルウェアとしてのアプリパッケージング方法では、64bit版アプリを生成するときに

AndroidSDKというものをつかいます。

画像はAndroidStudioの中にあるAndroidSDKです。

AndroidSDKは現在単体版のインストールができるかどうかわかりませんが、AndroidStudioとともにインストールしておいた方が無難だと思います。

AndroidStudioのインストールの時に注意して着目しておきたいのが、AndroidSDKの保存場所です。

上記の方法でAndroidアプリをパッケージングする際に、 Android SDK Toolsにアクセスする必要があるからです。Android SDK Toolsはパッケージングが済んだアプリのアーキテクチャを決めるときに使います。また、ZIPをかけるさいにどの情報が必要かを定義してくれるツールです。

上記の画像ではAndroid-SDK\build-tools\28.0.3をもとに示していますが、64bit版アプリは26.0.0以降であれば64bit版アプリしかパッケージングできないので、GooglePlayで必須とされている64bit版対応ができます。

RPGツクールMVでアプリをリリースする開発室 より 引用

例)次の場合
zipalign.exeの場所:C:\android-sdk\build-tools\23.0.2\zipalign.exe
apkファイル名:android-armv7-release-unsigned.apk
圧縮後のapkファイル名:bookmobile.apk
C:\android-sdk\build-tools\23.0.2\zipalign.exe -v 4 android-armv7-release-unsigned.apk bookmobile.apk

こちらで示されている通りと、画像にある通りのzipalign.exeへとパスを通す必要があるので、AndroidSDKの場所は把握しておきましょう。

参考文献では古いバージョンなので、32bit版アプリが生成されますが、APIレベルを26以降、すなわちAndroidSDK26.0.0以降のAndroidSDKツールズを使ってapkパッケージングを行います。

これはRPGツクールMVでデプロイしたゲームファイルでもWEB系ネイティブ言語で作成されたゲームファイルでも共通です。

以後、パッケージングで不明な点は上述のリンクを参照してください。

2019年12月9日更新

2019年12月吉日

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA