新しいアプリケーションをアップロードする必要があります。少し異なるのはデザインだけです。昨日、アプリケーションに署名するためのキーストアファイルを生成しました。同じものを使用できますか?
回答:
これはkeystore
、任意の数のアプリケーションに使用できます。
新しいキーストアを生成する必要はありません。
これまでのコンセンサスの答えに反論します。
ほとんどの場合、ほとんどのアプリ作成者にとって、アプリ間で同じキーストア/証明書/パスワードを共有しても問題なく機能することに同意します。重要なことは、アプリがそれ自体をアップグレードできるように、「アプリケーションの予想される寿命全体にわたって同じ証明書」を使用することです。
しかし、別々のアプリまたはアプリのファミリー用に別々のキーストアを用意する非常に良い理由の1つを考えることができます。オリジナルのアップグレードとして公開するために他の誰かにアプリを販売したいと思う場合は、そのために唯一のキーストアとパスワードを共有する必要があります。おそらく大きな問題ではありませんが、少し心配する必要があります。おそらく、十分な数の購入者に対するデューデリジェンスの問題です。
また、@ ol_v_erと同じように、ドキュメントの同じ行を実際に読むことはありません。私は現在の行だと思います:
アプリケーションの予想される存続期間を通じて、すべてのアプリに同じ証明書で署名する必要があります。
(現在のバージョンではコンマがないことに注意してください)は、「ライフタイム」の推奨事項がすべてのアプリに適用されることを強調しているだけであり、実際にはすべてのアプリに同じ証明書を使用するように指示しているわけではありません。
公式ドキュメントには次のように書かれています。
一般に、すべての開発者に推奨される戦略は、アプリケーションの予想される存続期間を通じて、すべてのアプリケーションに同じ証明書で署名することです。あなたがそうしなければならない理由はいくつかあります...
https://developer.android.com/studio/publish/app-signing.html#considerations
そうです、すべてのアプリケーションに同じ証明書で署名してみてください。
この質問と提供された回答は私にとって混乱につながるので、ここにいくつかの説明を追加したいと思います。キーストアが実際に何であるかを理解することが重要です。
キーストアは、AndroidAPKの署名に使用される公開鍵と秘密鍵のペアを安全に保存するための手段にすぎません。そうです、同じキーストアを使用して複数のAPKに問題なく署名できます。同じエイリアス(各エイリアスは証明書)を使用して複数のapkに署名することもでき、それは機能します。ただし、セキュリティに影響があります。単一のエイリアスが侵害された場合、すべてのアプリが侵害されます。
ただし、いつかアプリの権利を販売する予定の場合は、すべてのアプリに同じエイリアスを使用することはお勧めできません。ただし、apkごとに異なるエイリアスを使用する場合、同じキーストアを使用することは必ずしも悪いオプションではない場合があります。あるキーストアから別のキーストアに証明書を移動して、その証明書にのみ必要なキーを購入者に安全に渡すことができる方法があると確信しています。
非常に明確にするために、キーストアはまさにそれであり、キーの記憶媒体です。これは、apkに署名するプロセスでは実際の役割を果たしませんが、apkに署名するために実際に使用されるキーを格納するためにのみ機能します。
参照:
https://www.digitalocean.com/community/tutorials/java-keytool-essentials-working-with-java-keystores
同じ証明書(キーストア)を使用してすべてのアプリに署名します。これは、気が変わってアプリにデータを共有させたい場合に有利です。
ご存知かもしれませんが、Androidは各アプリをUIDで識別します。すべてのアプリが同じ証明書で署名されている場合は、Androidに同じユーザーIDを複数のアプリに割り当てて、それらを1つのプロセスで実行し、データを共有するように要求できます。
android doc android:sharedUserIdから
android:sharedUserId
他のアプリケーションと共有されるLinuxユーザーIDの名前。デフォルトでは、Androidは各アプリケーションに独自の一意のユーザーIDを割り当てます。ただし、この属性が2つ以上のアプリケーションで同じ値に設定されている場合、それらも同じ証明書で署名されていれば、すべて同じIDを共有します。同じユーザーIDを持つアプリケーションは、互いのデータにアクセスでき、必要に応じて、同じプロセスで実行できます。
最近の更新
グーグルによるアプリ署名に登録したい場合は、新しい別のキーを使用してapkまたはバンドルに署名する必要があります。そうしないと、グーグルコンソールをアップロードした後にエラーメッセージが表示されます。
ユーザーに配信されるAPKの署名にも使用されるキーで署名されたAPKまたはAndroidアプリバンドルをアップロードしました。Google Playによるアプリ署名に登録しているため、アップロードする前に、APKまたはAndroidアプリバンドルに新しいキーで署名する必要があります