「Defold」で作ったアプリをモバイルで実行する方法
「Defold」とは、「キャンディークラッシュ」の制作会社「King」が独自に開発したゲームエンジンです。今月(2017年4月)King Japanのオフィスにて「Defold」の説明会が行われたという記事が話題になったと思いますが、こういった活動により日本の開発者の方が去年以上に興味を持たれることは間違いないでしょう。ゲーム技術戦略室からも「Defold」の良さをお伝えできればと思います。
1.アプリをiOSで起動する
iOS端末で開発中のアプリを起動するための方法は2つあり、1つ目はWifiネットワーク経由で起動する方法、2つ目はパッケージ(ipaファイル)をインストールする方法です。
1.1 Wifiネットワーク経由で起動する
1.1.1 Defold開発アプリに署名する
Windows版のDefoldでは「Sign iOS App…」がアクティブになっていないので実行することができませんが、Mac OSX版のDefoldであれば実行することができます。
証明書の作成につきましては今回省きますが、作成方法はこちらが参考になります(その他、多くのサイトで作成方法が解説されているので容易に見つかるはずです)。作成した証明書とプロビジョニングを利用して下図のように入力します。「Sign and Upload」ボタンを押して問題が無ければアップロードが完了します。
1.1.2 iOS端末に専用アプリをDLする
お手持ちのiOS端末からDefoldのホームページでログインし「Dashboard」を表示します。
「Settings」タブを下にスクロールしていくと「Download(iOS device required)」という文字が見えるので「タップ」します。分かりにくいのですが実はリンクになっているようで、タップすることでインストールを開始することができます。
インストールが完了するとホームにDefoldアプリが作成されているので起動すると下図の画面が表示されます。この状態にしておくことでアプリを実機で実行させることができるようになります。
1.1.3 アプリを実機で実行する
iOS端末の準備ができたので次はPC(Mac OSX)側の準備をします。iOS端末でDefoldアプリを起動した状態かつ、iOS端末とPC(Mac OSX)が同じネットワークに接続していると下図のようにiOS端末が「Target」に表示されるので選択します。
「Target」に表示されたお手持ちのiOS端末を選択した状態で「Build And Launch(Ctrl+B)」で実行すると、なんと一瞬でアプリが実機で起動できます。ちなみにWindows版、Mac OSX版のどちらでも同様の方法でアプリを実機起動できてしまうので、ケーブルの付け替えをする手間がありません。例えば、下図のようにロゴを45度回転させてもう一度「Build And Launch(Ctrl+B)」を実行すると、これまた一瞬でアプリが更新されます。
Defoldアプリを落として再起動する必要なく「Build And Launch(Ctrl+B)」で起動できるのはかなり便利です。
1.2 パッケージを作成する方法
1.2.1 ipaファイルを作成する
実は証明書の作成ができていればipaファイルは簡単に作成できてしまいます。「Project>Bundle>iOS Application…」より「Package iOS Application」ウィンドウを開きます。
必要事項を入力して「Package」ボタンを押すと空のプロジェクトであれば数秒でipaファイルが作成されます。あとはiTunesを利用したり、アプリ配布ツールを利用することでお手持ちの端末にインストールすることが可能です。
2.アプリをAndroidで起動する
Android端末で開発中のアプリを起動するための方法もiOS同様に2つあり、1つ目はWifiネットワーク経由で起動する方法、2つ目はパッケージ(apkファイル)をインストールする方法です。
2.1 Wifiネットワーク経由で起動する
2.1.1 dmengineをDLする
公式サイトでは「Android SDK」のインストールをするよう促されていますが、実機でアプリを起動するだけであればインストールの必要はありません。その代わりに「ファイルマネージャー」系のアプリケーション(スマートフォンの中にあるデータを操作するアプリ)をインストールしておきます(デフォルトで用意されている場合は必要ありません)。iOS編ではDefoldの「Dashboard」から専用アプリをDLしましたが、Androidにも「dmengine」というアプリが用意されています。モバイルから「http://d.defold.com」にアクセスすると下図のページが表示されます。
このページからは多くのバージョンのリソースをDLすることができますが、不具合を発生させないためにも現在お使いのDefoldエディタのバージョンと合わせた方がいいと思います。今回は「バージョン1.2.101(Help>About Defoldから確認できます)」を利用していますので1.2.101の項目から「engine/arm7-android/dmengine.apk」を端末にDLしました(releaseだとwifi経由で認識しませんでした)。その後、ファイルマネージャー系のアプリを利用し、端末内にDLしてきた「dmengine.apk」をタップしてインストールします。
なお、すでに「Android SDK」の導入が済んでいる場合はPC上に「dmengine.apk」をダウンロードした後、コマンドプロンプト上で下記を実行することでインストール可能です。
2.1.2 アプリを実機で起動する
「dmengine.apk」によりインストールされたアプリを起動している状態かつ、PC(Mac OSX)と同じネットワークに接続されている場合は下図のように端末が認識されますので選択し、「Build And Launch(Ctrl+B)」からアプリを起動しましょう。ここで発生する問題点としては「Portrait」として表示されることがあるということです。開発モードですと画面の向きを固定できないため手動で画面の向きを変更する必要があるようでした。端末側で画面の向きを固定していた場合は画面を回転できないので注意です。
2.2 パッケージを作成する方法
2.2.1 apkファイルを作成する
開発用パッケージを作成する場合は証明書は用意しなくて問題ありません。「Project>Bundle>Android Application…」より「Package Android Application」ウィンドウを開きます。
そのまま「Package」ボタンを押すと空のプロジェクトであれば数秒でapkファイルが作成されます。あとは何らかの方法でAndroid端末にapkを渡してインストールしたり、adbコマンドによってインストールすることによりアプリを実行させることができます。