0.前回までの実施内容
前回の記事(Androidアプリ公開方法まとめ 【第四回】アプリ公開準備 署名付与概要編)では、アプリを公開するために必要なアプリに付与する署名について概要を説明しました。
今回は、アプリ公開するために必要なアプリファイル(APKファイル)の準備を行います。
第一回で説明したアプリ公開手順は以下となります。
【アプリ公開手順】
- デベロッパーアカウントの取得
- アプリのスクリーンショット(2枚)の準備
- アイコンの準備
- 宣伝用画像の準備
- アプリへ署名付与
- アプリの登録
今回は、「5. アプリへ署名付与」の署名付与について説明していきます。
1.アプリ署名付与手順
まずは、アプリ署名付与の手順を確認します。
【アプリ署名付与手順】
- キーストアファイルの生成
- アプリ署名付与
手順というほどのことはなく、キーストアファイル(.keystore)を作成し、それを使用してアプリに署名を付与するだけです。キーストアファイルとは、証明書と公開鍵のペアがセットが格納されているファイルです。前回の記事で説明しましたがキーストアの鍵と証明書を使用し、アプリの作成者の識別等を行います。そのため、アプリ初期登録時の署名に使用したキーストアファイルは、そのアプリのアップデートによる更新の際にも必要になります。もし、キーストアファイルを誤って削除してしまった場合、アプリをアップデートすることができなるので注意してください。それでは、手順に沿って説明していきます。
2.キーストアファイルの作成
まずは、キーストアファイルの作成方法について説明します。キーストアファイルの作成方法は下記のやり方があります。
【キーストアファイル作成方法】
- JDKに含まれているkeytoolを使用する方法
- Android Studioから作成する方法
- Eclipseから作成する方法
今回は、「JDKに含まれているkeytoolを使用する方法」で作成していきます。Androidの開発をしている場合、JDKはすでにインストールしているはずのため、JDKについては説明を省きます(JAVA_HOMEの設定をしている場合は、コマンドプロンプトでの移動は必要はありません)。JDKがインストールされているフォルダ(windowsの場合通常「C:\Program Files\Java\jdk1.*」)の中にbinフォルダがあります。そのbinフォルダの中に、「keytool.exe」ファイルがあります。これを使用して作成します。
「keytool.exe」が格納されている場所が確認できましたので、コマンドプロンプトを立ち上げます。
先ほど確認した「keytool.exe」の場所へ移動します。
下記コマンドを実行します。
【実行コマンド】
keytool -genkey -v -keystore {保存したいフォルダ}\{保存したいファイル名}.keystore -alias pjrdev -keyalg RSA -validity {有効期限}
{有効期限}は、日数で記述します。25年以上(25×365=9125日)が推奨されています。今回の作成では10000日を指定して実行します。
実行すると質問(パスワード、姓名、組織単位、組織名、都市名、都道府県、国コード)をされるのでそれに答えていきます。質問に答え終わると「これでよろしいですか。」と聞かれるので、「はい」の場合は「y」、「いいえ」の場合はEnterを押すと最初の質問から再度繰り返すので修正したい部分のみ答えます。
最後に、鍵のパスワードを入力します。キーストアと同じものでよければEnterを押します。
キーストアファイルが指定したフォルダと名前で作成されました。
3.署名付与
「2.キーストアファイルの作成」で作成したキーストアファイルを使用し、アプリへ署名付与を行います。今回は、Android Studioで署名付与を行いapkファイルを作成します。
Android Studioのメニューバーから「build」⇒「Generate Signed APK…」を選択します。
「2.キーストアファイルの作成」ですでにキーストアを作成しているので、「choose existing…」を選択し、キーストアファイルを選択します。
【Key store password】にkeytoolコマンドの質問で入力したキーストアのパスワードを入力します。
【Key alias】はkeytoolコマンドを実行した際に指定したaliasの「pjrdev」を入力します。
【Key password】にkeytoolコマンドの質問で入力した鍵のパスワードを入力します。
入力完了後、「Next」を押します。
【APK Destination Folder】にAPKファイルを作成したいフォルダを指定します。
【Build type】は今回リリースを行うので「release」を指定します。
入力完了後、「Finish」を押します。
successメッセージが表示され、署名つきAPKファイル完成です。
4.次回の予定について
今回はアプリへ署名付与を行い署名つきAPKファイルを作成しました。
次回はいよいよアプリを登録し公開していきます。