MacのCordovaで作ったAndroidアプリを公開したよ

スマートフォンアプリ開発Cordova

どうも、この前Cordovaを使ったアプリ開発に乗り出したばかりですが、やっと(簡単ですが)一つのアプリができました。というわけで、今回は完成したアプリをGooglePlayに公開するってのをやります。今回はすでにGooglePlayのディベロッパーアカウントを持っていることを前提にまとめていきます。



Cordova : 6.4.0
OS : macOS Sierra
端末 : MacBook Air 2015


1. 公開したアプリ

さて、手順を紹介する前に今回公開したアプリの宣伝をさせてください。今回作成したアプリはTRPG向けのダイスツールです。とにかくシンプルで使いやすいように設計したつもりです。というわけで、よかったらインストールしてみてください。
Google Play

作ってみると、ほぼほぼWebの知識で作れるので、やっぱりお手軽ですね。まだ実機では試してませんがiOSのアプリも同時にできるなんて、いい時代になったものですな。なんて若造がほざいたところで次に行きましょう。

2. config.xml

さて、まずはconfig.xmlを編集してアプリ情報を決めて行きます。正直アプリを公開した今でも正しく設定できているかもわかりませんが自分が設定した箇所をまとめます。基本的にはデフォルトのままですが以下に示すところだけ編集しました。

詳しい設定項目は以下のサイトを参照ください。
Cordova アプリ設定

ちなみに、アプリのアイコンを設定している”icon”ですが、各画像の保存先は”config.xml”と同じディレクトリに”res”というファイルを作成してそこに画像を突っ込むといいみたいです。platformsディレクトリの下の方にもresディレクトリはありますが、違います。自分はそっちだと思って一日くらい無駄にしました。

3. APKファイルの出力

さて設定が終わったら、やっとAPKファイルの出力です。しかし、出力は簡単で以下のコマンドを実行するだけです。

コマンドが終わるとどこかにapkファイルが生成されます。自分の環境では”./platforms/android/build/outputs/apk/android-release-unsigned.apk”という感じに出力されていました。

4. 鍵の準備&署名

APKの出力はできましたが、このままリリースすることはできません。というのもなんか署名なるものをしなければいけないみたいです。そして署名には鍵が必要になります。というわけでこれを生成します。生成には以下のコマンドです。

すると、何やら色々と質問されます。もちろんちゃんと答えてもいいのですが、どうやらテケトーに答えても特に問題にはならないみたいです(自分はちゃんと答えましたが…)。最低限パスワードの設定だけちゃんとやればいいみたいです。いくつか質問に答え、コマンドが終了すると、カレントディレクトリに”.keystore”という鍵ファイルが出来上がっています。これを使って署名をしていくわけですね。ちなみに、この鍵は将来アプリのアップデートなんかをするときは新しく鍵を生成するのではなく、ここで作成したものを使うと思うので大切に保存しておいたほうがいいと思います。

次は署名です。署名するには以下のコマンドです。

二行目の方が今回実際に実行したコマンドです、参考までに。

5. アプリの最適化

Androidアプリでは公開前に最適化なるものをやるみたいです。これをやらないとGooglePlay公開時に警告が出るみたいです。最適化にはAndroidStudioに同封されているかもしれないzipalignというものを使って行きます。というわけで最適化のコマンドは以下の通りです。

ここで困ったのがzipalignですが、これが実行できた人は運がいいのですが、自分の環境では見つかりませんでした。というわけで、調べまくったところ”~/Library/Android/sdk/build-tools/x.x.x/zipalign”という場所にありました。参考にした方の環境では”/Applications/adt-bundle-mac-x86_64-20140702/sdk/build-tools/2X.XX/zipalign”にあったみたいです。皆さんも頑張って探してください。

さて、これにてAPKをアップロードする準備は整いました。あとはGooglePlayにアップロードするだけです。

6. アプリのリリース

では、いよいよアプリのリリースです。これに関しては、Googleさんによってかなりの頻度で更新が入るので一概には言えないため、詳細な説明は省きます。とりあえず言えることは、アップロードするのは、署名を完了させたAPKファイル(今回では”android-dice.apk”)です。

おわりに

さて、Cordovaで作ったアプリのリリースをやりましたが予想したよりかは簡単にリリースすることができました。今回は簡単なアプリを使って公開テストみたいな感じでやりましたが、これなら本番アプリを作った時も大丈夫そうです。今後はiOSの方もやろうと思います(年会費がな………)。


「Corova アプリ設定」
http://www.buildinsider.net/…/0403
「androidアプリのapkのビルドと、リリース手順メモ」
http://qiita.com/…/db30
「Zipalign-Command not found-MAC terminal」
http://stackoverflow.com/…/terminal