owned mediaウェブ制作に役立つコンテンツを発信中!

【Macでアプリ開発】CordovaのAndroidアプリ制作フロー(リリース編)

最終更新日: Update!!
前回、前々回に引き続きCordovaでAndroidアプリの制作フローをまとめていきます。第3回目になります今回は、いよいよアプリリリースに向けた作業に入ります。  
リリース用アプリデータのビルド
制作段階でビルドしていたapkファイル(デバッグ用のandroid-debug.apk)とは異なる、リリース用のapkファイルをビルドします。   1. Corodovaのフォルダまで移動 これまでと同様にCordovaルートフォルダまで移動します
$ cd ~/プロジェクトフォルダ/Cordovaルートフォルダ
  2. リリース用のapkファイルをビルド 「--release」のオプションを付けることでリリース用のアプリデータになります。
$ cordova build --release
ビルドされたリリース用のapkファイルは、Cordovaルート配下の/platforms/android/build/outputs/apk/の中に、android-release-unsigned.apkというファイル名で生成されます。  
キーストアファイル作成
アプリリリースに必要となる公開鍵を生成するためのキーストアファイルを作成します。基本的にはコマンドで入力していくだけの作業になります。   1. キーストアの設定 次のコマンドを入力しキーストアの設定をします
$ keytool -genkey -v -keystore キーストアファイル名(○○○○○.keystore) -alias エイリアス名 -keyalg RSA -keysize 2048 -validity 10000
  • ・キーストア名:拡張子が.keystoreになるキーストアファイルの名前です
  • ・エイリアス名:アプリリリースに必要となる秘密鍵の名前です
例)キーストア:myapp.keystore/エイリアス:myappalias ※キーストア名について上記では.keystoreの拡張子を除いた部分を入力します   2. キーストアパスワードの入力 キーストア設定のパスワードを訊かれるので、任意のパスワードを設定する。入力が終わると確認のため再度同じものを入力する。後ほどパスワードを入力する場面があるので忘れないようにする。   3. いくつかの質問項目に答える パスワードの入力が終わるといくつか質問されるので答えていく。特に意味は無いと思われるが、次のような内容でOKだと思います。
  • ・姓名は? → 任意の名前
  • ・組織単位名は? → 制作チーム名など
  • ・組織名は? → 会社名など
  • ・都市名は? → osakacityなど
  • ・都道府県名は? → osakaなど
  • ・国識別コードは? → jp
  • ・これまでの質問の内容確認 → y (はい)
全ての項目の回答が終わり、先ほど設定したキーストアパスワードを入力するとキーストアファイルが生成される。   4. 作成されたキーストアファイル(鍵)を確認する キーストアファイルがきちんと作成されているかを次のコマンドで確認する
$ keytool -list -v -keystore キーストアファイル名(○○○○○.keystore) -storepass キーストアパスワード
 
apkファイルへの署名
鍵の生成が終わると、アプリデータに署名をしていきます。同じくコマンドで入力していくだけの作業になります。   1. 署名を行う 次のコマンドを入力し、アプリデータの署名を行います。
$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore キーストアファイル名(○○○○○.keystore) ./platforms/android/build/outputs/apk/android-release-unsigned.apk エイリアス名
注意するべき点として上記の様に、android-release-unsigned.apkについては、wwwフォルダからの相対パスで指定します。   2. キーストアパスワードの入力 キーストアパスワードを入力するとアプリデータへの署名が完了します。  
zip alignで最適化
いよいよアプリのリリースに向けた最後の作業になります。zip alignとはアプリデータをリリース用に最適化するために行います。   1. zip align実行ファイルの確認 /Users/ユーザー名/Library/Android/sdk/build-tools/XX.X.X(バージョン名)/の中にzip alignの実行ファイル(zipalign.exe)が存在するかどうかを確認します。 無い場合はSDK Managerを開き、最新版のBuild Toolsをインストールします。   2. zip alignパッケージング 次のコマンドを入力し、zip alignでの最適化を実行します。
$ zipalign -v 4 ./platforms/android/build/outputs/apk/android-release-unsigned.apk パッケージング後のファイル名(○○○○○.apk)
  ※bash: zipalign: command not foundと表示される場合 bash: zipalign: command not foundと表示されzip alignが出来ない場合には、まず次のコマンドで通っているパスを確認します。
$ vim .bash_profile
通っているパスが、/Users/ユーザー名/Library/Android/sdk/platform-tools であれば、パスが通っている最下層のフォルダ(この場合であればplatform-tools)にzip align実行ファイルがあるか確認します。おそらく無いと思うので、/Users/ユーザー名/Library/Android/sdk/build-tools/XX.X.X(バージョン名)/の中にzip alignの実行ファイルをコピーし、パスが通っている最下層のフォルダ(この場合であればplatform-tools)にコピーしたzip align実行ファイルを移動させます。   3. 最適化の確認 次のコマンドでzip alignの最適化が完了しているかを確認します。
//パッケージング後のファイル名(○○○○○.apk)と表示されればOK
$ zipalign -c -v 4 パッケージング後のファイル名(○○○○○.apk)
  zip alignによる最適化の作業が完了するとCordovaルートフォルダに「パッケージング後のファイル名.apk」というリリース用のapkファイルが生成されます。  
リリース用apkファイルの実機確認
念のためリリース用のapkファイルも実機で確認しておきましょう。USBで実機を接続し、コマンドでCordovaルートフォルダまで移動したら次のコマンドを入力し、実機へインストールを行います。
$ adb install パッケージング後のファイル名(○○○○○.apk)
  実機で確認し、問題が無ければGoogle Play Storeへ公開作業へと進みます。     以上、全3回にわたってCordovaでのAndroidアプリのリリースまでのフローを紹介しました。環境構築からも含めると作業はかなり多いですが、そのぶんOSを選ばずハイブリットなアプリが制作できたり、豊富なプラグインで様々な機能が実装できたり、Web制作での知識が活かせたりとメリットもかなり大きいのではないでしょうか。   Cordovaでアプリ開発のハードルがぐっと下がったことで、是非オリジナルアプリの制作にチャレンジしてみてはいかがでしょうか。  
  • はてなブックマーク
  • Pocket
  • Linkedin
  • Feedly

この記事を書いた人

Twitter

sponserd

    keyword search

    recent posts

    • Twitter
    • Github
    contact usscroll to top
      • Facebook
      • Twitter
      • Github
      • Instagram