145

多くの開発者が、Google I/O 2017 で発表された新しい Google Play アプリ署名機能についてもっと知ろうとしていると思います。

アプリに署名するためのキーストアを Google Play 内に保存できるため、キーストアを安全に保存する手間が省け、ハードウェアと OS の特性に基づいて、システムがすべてのデバイスに提供される APK を最適化するのに役立ちます。

このトピックの詳細については、https ://developer.android.com/studio/publish/app-signing.html#google-play-app-signing の公式ドキュメントを参照してください。

次の回答で、元のキーストアをアップロードするために必要な手順と、この時点から APK に署名する必要がある新しいアップロード キーストアを作成する方法について、もう少し詳しく説明します。

4

7 に答える 7

224

先に進む前に、次の Android 開発者向けビデオを見て、アプリ署名登録の選択の意味を理解してください: https://youtu.be/odv_1fxt9BI

このガイドは、Play ストアに既にアプリケーションを持っている開発者を対象としています。新しいアプリを使い始める場合、プロセスははるかに簡単で、ここから「新しいアプリ」の段落のガイドラインに従うことができます

開発者の 99% が既に持っている前提条件:

  1. Android スタジオ

  2. JDK 8 以降のインストール後、ターミナル コマンドを簡素化するために、ユーザー空間に環境変数をセットアップする必要があります。C:\Program Files\Java\{JDK_VERSION}\binWindows x64 では、これをPath環境変数に追加する必要があります。(これを行う方法がわからない場合は、私のガイドを読んで、フォルダーを Windows 10Path環境変数に追加できます)。

ステップ 0 : Google Play 開発者コンソールを開き、Release Management -> App Signingに移動します。

ここに画像の説明を入力

アプリ署名 TOS に同意します。

ここに画像の説明を入力

ステップ 1 : 下の画像と同じボタンをクリックして、PEPK ツールをダウンロードします。

ここに画像の説明を入力

ステップ 2 : ターミナルを開き、次のように入力します。

java -jar PATH_TO_PEPK --keystore=PATH_TO_KEYSTORE --alias=ALIAS_YOU_USE_TO_SIGN_APK --output=PATH_TO_OUTPUT_FILE --encryptionkey=GOOGLE_ENCRYPTION_KEY

伝説:

  • PATH_TO_PEPK =ステップ 1でダウンロードした pepk.jar へのパスは、C:\Users\YourName\Downloads\pepk.jarWindows ユーザー向けのようなものである可能性があります。
  • PATH_TO_KEYSTORE = リリース APK の署名に使用するキーストアへのパス。タイプ *.keystore または *.jks のファイル、または拡張子のないファイルである可能性があります。みたいなものC:\Android\mykeystoreとかC:\Android\mykeystore.keystore
  • ALIAS_YOU_USE_TO_SIGN_APK = リリース APK の署名に使用するエイリアスの名前。
  • PATH_TO_OUTPUT_FILE = 拡張子が .pem の出力ファイルのパス。C:\Android\private_key.pem
  • GOOGLE_ENCRYPTION_KEY = この暗号化キーは常に同じである必要があります。App Signing ページで見つけて、コピーして貼り付けます。次の形式にする必要があります。eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

例:

java -jar "C:\Users\YourName\Downloads\pepk.jar" --keystore="C:\Android\mykeystore" --alias=myalias --output="C:\Android\private_key.pem" --暗号鍵=eb10fe8f7c7c9df715022017b00c6471f8ba8170b13049a11e6c09ffe3056a104a3bbe4ac5a955f4ba4fe93fc8cef27558a3eb9d2a529a2092761fb833b656cd48b9de6a

Enter キーを押すと、次の順序で入力する必要があります。

  1. キーストアのパスワード
  2. 別名パスワード

すべてがうまくいけば、PATH_TO_OUTPUT_FILE フォルダに というファイルが作成されますprivate_key.pem

ステップ 3 : 下の画像と同じボタンをクリックして、private_key.pem ファイルをアップロードします。

ここに画像の説明を入力

ステップ 4 : Android Studio を使用して新しいキーストア ファイルを作成します。

今後、アプリの次のリリースに署名するには、このキーストアが必要になります。パスワードを忘れないでください

Android プロジェクトの 1 つを開きます (ランダムに 1 つ選択します)。Build -> Generate Signed APKに移動し、 Create newを押します。

ここに画像の説明を入力

次に、必須フィールドに入力する必要があります。

キー ストア パスは、作成する新しいキーストアを表し、右側の 3 つのドット アイコンを使用してフォルダーと名前を選択しますC:\Android\upload_key.jks(.jks 拡張子が自動的に追加されます)。

注:upload新しいエイリアス名として使用しましたが、以前に別のアプリに署名するために別のエイリアスを持つ同じキーストアを使用していた場合は、以前に元のキーストアにあった同じエイリアス名を選択する必要があります。

ここに画像の説明を入力

完了したら [OK] を押すと、新しいupload_key.jksキーストアが作成されます。これで Android Studio を閉じることができます。

ステップ 5 : 新しく作成されたupload_key.jksキーストアからアップロード証明書を抽出する必要があります。ターミナルを開き、次のように入力します。

keytool -export -rfc -keystore UPLOAD_KEYSTORE_PATH -alias UPLOAD_KEYSTORE_ALIAS -file PATH_TO_OUTPUT_FILE

伝説:

  • UPLOAD_KEYSTORE_PATH = 作成したばかりのアップロード キーストアのパス。この場合はC:\Android\upload_key.jks.
  • UPLOAD_KEYSTORE_ALIAS = アップロード キーストアに関連付けられた新しいエイリアス。この場合はupload.
  • PATH_TO_OUTPUT_FILE = 拡張子が .pem の出力ファイルへのパス。のようなものC:\Android\upload_key_public_certificate.pem

例:

keytool -export -rfc -keystore "C:\Android\upload_key.jks" -alias アップロード -file "C:\Android\upload_key_public_certificate.pem"

Enter キーを押すと、キーストアのパスワードを入力する必要があります。

すべてがうまくいけば、フォルダ PATH_TO_OUTPUT_FILE に というファイルが作成されますupload_key_public_certificate.pem

ステップ 6upload_key_public_certificate.pem :下の画像と同じボタンをクリックしてファイルをアップロードします。

ここに画像の説明を入力

ステップ 7 :アプリ署名ページの最後にある [登録] ボタンをクリックします。

ここに画像の説明を入力

新しいリリースの APK はすべて、Google Play デベロッパー コンソールにアップロードする前に、手順 4upload_key.jksで作成したキーストアとエイリアスで署名する必要があります。

その他のリソース:

質疑応答

Q: 新しい upload_key キーストアで署名された APK をアップロードすると、Google Play に次のようなエラーが表示されます:署名されていない APK をアップロードしました。署名付き APK を作成する必要があります

A: リリース APK のビルド中に、両方の署名 (V1 と V2) で APK に署名することを確認します。詳細については、こちらをお読みください。

更新しました

ステップ 4、5、6 は、既存のアプリのオプションであるアップロード キーを作成することです。

「アップロード キー (既存のアプリの場合はオプション): プログラムへの登録時に生成する新しいキー。アップロード キーを使用して、今後のすべての APK に署名してから、Play Console にアップロードします。」 https://support.google.com/googleplay/android-developer/answer/7384423

于 2017-05-22T00:17:40.817 に答える