【Cordova】署名付きapkファイルの作成

スポンサーリンク

この記事では、Google Playに作成したアプリを公開するために署名付きapkファイルを作る方法について紹介します。

スポンサーリンク

署名(キーストアファイル)の作成

署名付きAPKファイルを作るには、まず署名(キーストアファイル)を作っておく必要があります。
その手順は以下の通りです。

①コマンドプロンプトを開きます。

②プロジェクトフォルダに移動します。

③以下のコマンドを入力してEnterキーを押します。

【書式】
keytool -genkey -v -keystore 任意のファイル名.keystore -alias 任意のエイリアス名 -keyalg RSA -keysize 2048 -validity 署名有効日数

【例】
keytool -genkey -v -keystore test.keystore -alias test -keyalg RSA -keysize 2048 -validity 10000

③キーストアのパスワードを入力します。(任意)
入力したパスワードは記録しておきます

④新規パスワードにも同じパスワードを入力してEnterキーを押します。

⑤「姓名」に任意の名前を入力します。

⑥最後の[いいえ]: で「y」を入力してEnterキーを押します。

⑦先程のパスワードを入力します。

⑧「platforms」→「android」内にキーストアファイルが作成されます。(test.keystoreなど)

APKファイルの作成

続いて、APKファイルの作成を行います。

①コマンドプロンプトを開きます。

②プロジェクトフォルダに移動します。

③以下のコマンドを入力してEnterキーを押します。

【書式】
cordova build –release

④以下のフォルダ内にAPKファイル(android-release-unsigned.apk)が作成されていれば成功です。
「platforms」→「android」→「build」→「outputs」→「apk」

署名をAPKファイルに書き込む

署名をAPKファイルに書き込むことで、「署名付きAPKファイル」を作ることができます。
その手順は以下の通りです。

①これまでに作成した「キーストアファイル(test.keystoreなど)」「android-release-unsigned.apk」2つを同じフォルダにコピーします。

②以下のコマンドを入力してEnterを押します。

jarsigner -verbose -keystore <鍵ファイル名> <エイリアス名>

【例】
jarsigner -verbose -keystore test.keystore android-release-unsigned.apk test

③警告等が出ずに「~jarは署名されました。」と表示されたら成功です。
あとは、署名付きAPKファイルを最適化することで、Google Playで公開できるようになります。

エラー対策

署名の書き込みを実行して以下の警告が出ることがあります。

警告:
-tsaまたは-tsacertが指定されていないため、このjarにはタイムスタンプが付加されていません。タイムスタンプがないと、署名者証明書の>有効期限(2047-12-15)後または将来の失効日後に、ユーザーはこのjarを検証できない可能性があります。

その場合は、コマンドを以下のように変更して再度実行してみてください。

【修正後のコマンド】
jarsigner -verbose -tsa http://timestamp.digicert.com -keystore <鍵ファイル名> <エイリアス名>

※元のコマンドに「-tsa http://timestamp.digicert.com」を追加

【関連記事】
Cordova入門
Javascript入門
Java入門
Node.js入門

スポンサーリンク

シェア&フォローお願いします!