web-dev-qa-db-ja.com

Android署名エラー:信頼できる証明書のエントリはパスワードで保護されていません

Android unsigned release apk filesに署名するための証明書を取得したので、次のコマンドを使用してcerをインポートしました:

keytool -import -alias alias_name -file cer_name.cer -storepass changeit  -keystore my_keystore.keystore

しかし、Android studioでアプリに署名すると、エラーが発生します。

Error:Execution failed for task ':packageDebug'.
> com.Android.ide.common.signing.KeytoolException: Failed to read key alias_name from store "C:\Users\username\my_keystore.keystore": trusted certificate entries are not password-protected

私の推論では、キーはパスワードで保護されていないため、もう一度試して、キーのパスワードを次のように設定しました。

keytool -import -alias alias_name -file cer_name.cer -storepass changeit -keypass changeit -keystore my_keystore.keystore

しかし、それでもエラーは解決しません。

私はjarsignerを使って手動の手順でも試しました:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my_keystore.keystore unsigned-release.apk alias_name

エラーが発生しました:

jarsigner: Certificate chain not found for: alias_name.  alias_name must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.

Android apk signingsのこのエラーに関する関連する投稿を取得できないので、私を助けてください

12
Sanjay Singh

* .cerファイルには通常、証明書のみが含まれ、APKの署名に必要な秘密鍵は含まれません。

キーストアの内容を一覧表示します。

keytool -list -v -keystore my_keystore.keystore

Entry type:行を探します(対応するエイリアスを探します)。値はPrivateKeyEntryではなくtrustedCertEntryである必要があります

8
bwt

Keystore Explorer を取得することを強くお勧めします。このプログラムは、キーストアと証明書の問題があったときに私の人生を2回以上救いました。これは無料でオープンソースであり、ナビゲートしやすいGUIです。新しいキーペアを作成し、既存のキーペアをキーストアにインポートできます。私は約3年前にそれを使い始めました、そしてそれはまだ開発ツールのための私のフォルダーにあります。

6
Timothy Winters

Android studioを使用している場合、apkに署名するための非常に簡単な解決策があります。以下の手順に従ってください。)Androidメニューに移動します ->Find Build->署名付きAPKを生成...その後新しいウィンドウが表示されます->[Create new ...]ボタンをクリックします。次に、以下に示すように詳細を入力してをクリックしますOK->次へenter image description here ->今後使用するために.jksファイルを保存するキーストアパスを選択します->必要なパスワードを設定します-> エイリアス名の設定->パスワード->証明書の詳細を入力してください->次にクリック

次のウィンドウはスクリーンショットの下に表示されます enter image description here

署名したいディレクトリを選択します.apkが保存します(それ以外の場合はapp folder内に生成されます)->release)->署名バージョンを選択->クリックフィニッシュ

APKが正常に生成されるまで待ちます

0
Arun-Khanka