web-dev-qa-db-ja.com

キーストアにエイリアスを持つキーが見つかりません

Androidプロジェクトはモバイルアプリとウェアアプリ(ウェアアプリは開発中)で構成され、モバイルアプリをリリースしようとしています。署名済みapkを生成しようとすると、このフォローメッセージを取得します。

Error:Execution failed for task ':wear:packageRelease'.
> com.Android.ide.common.signing.KeytoolException: Failed to read key
toyanathpatro from store "/home/adventure/toyanath_patro_key/toyanath_patro_key":
No key with alias 'toyanathpatro' found in keystore /home/adventure/toyanath_patro_key/toyanath_patro_key

:wear:packageReleaseで失敗したタスクと書かれていますが、実際にはapkの署名を選択する際にモバイルのみを選択しています。

誰でも私の失態を指摘できますか?前もって感謝します。

19
erluxman

問題は、間違ったスペルのキーエイリアスにあるようです。私の場合、エイリアスはtoyanath patroであったはずですtoyanathpatroだから、最良の提案は次のとおりです。

  1. キーエイリアスにspaceまたは不可視文字を使用しないでください。可能な限り

2.キーエイリアス編集可能フィールドの右側に小さな選択ボタン(3つの水平ドット)があります。そのボタンを使用して、その署名ファイルにあるエイリアスを見つけます。

enter image description here

27
erluxman

Build.gradleで、コードベースにないキーストアを指す署名設定を定義しました。

これに似たもの。

Android {
    ...
    buildTypes {
        release {
            signingConfig signingConfigs.staging
            ...
        }
    }
    signingConfigs {
        defaultSignature {
            keyAlias 'default'
            keyPassword 'password'
            storeFile file('default-keystore.jks')
            storePassword 'password'
        }
    }
}

私の場合Androidスタジオはデフォルトでエイリアス 'key0'を作成します。これはファイル内の唯一のエイリアスです。私の高速なソリューション:Android必要なエイリアスを使用してスタジオを作成し、「Generated Signed APK」で作成した新しいファイルを使用します。すべてがうまくいけば、「Project Structure」で設定したプロパティでアプリを実行できます。

4
SkorpEN

Build>Edit library and dependenciesをクリックします。

次に、署名タブのプラスボタンをクリックします。署名されたapkビルドを生成する際のキーエイリアスは、エイリアスキーと同じです。

0
bindu dandipati

削除できないスティッキーな構成がありました。署名構成ウィンドウでエイリアスを変更したにもかかわらず、最初に入力した元の(間違った)エイリアスで「エイリアスが見つかりませんでした」というエラーが表示され続けました。私は手動で検索し、パス上のファイルを見つけました...

[プロジェクト] /Android/app/build/intermediates/signing_config/release/out/signing-config.json

...最初に入力した元の(間違った)エイリアスが含まれていました。ファイルを削除し、アプリを再度ビルド/署名しました。それが誰かを助けることを願っています。

0