3

サーバーのクライアントである2つのAndroidアプリケーションを開発しています。Androidフォンに両方のアプリケーションをインストールできません。最初のアプリを電話にインストールしましたが、すべて問題ありません。次に、電話に 2 番目のアプリをインストールしようとすると、アプリケーションが別のアプリケーション (最初のアプリケーション) を置き換えるというメッセージが表示され、次のエラーが表示されます。

アプリケーションがインストールされていません: 競合する署名を持つ同じ名前の既存のパッケージが既にインストールされています。

私は、アプリケーションごとに 1 つの個別のキーストア ファイルを作成し、Android の公式署名アプリケーション ガイドに従ってエクスポートし、zipalign したことを述べています。

それで、OSはそれが単一のアプリケーションだと思いますか?しかし、実際には 2 つの異なるアプリがあります。私は何を間違っていますか?

4

4 に答える 4

7

同じパッケージを使用していると思いますが、これは 2 つの異なるアプリでは許可されていません。

ただし、以前にインストールしたアプリの上に別のバージョンをインストールするために同じエラーが発生した場合は、次のようになります。

問題が発生したときにアプリのリリース バージョンをテストしたかったのです。以前にEclipseを使用してアプリをインストールしましたが、同じアプリをインストールしたかったのですが、署名がリリースされていました。アプリ ギャラリーを使用してアプリをアンインストールしましたが、問題は解決しません。

私にとっての解決策は、設定を使用してアプリをアンインストールすることでした->アプリ->「アプリ」->右上隅のメニュー->すべてのユーザーのアンインストール

于 2013-04-23T07:23:54.940 に答える
2

同じエラー メッセージが表示されましたが、これらの回答は役に立ちませんでした。4.3 nexus 7 で、所有者ではないユーザーを使用していました。古いバージョンをアンインストールしましたが、同じメッセージが表示され続けました。

解決策: 所有者としてログインし、[設定] -> [アプリ] に移動する必要がありました... 古いバージョンが「インストールされていません」というマークが付いたリストの最後までスクロールします。それを選択して右上隅の「設定」ボタンを押し、最後に「すべてのユーザーに対してアンインストール」します。

于 2013-11-19T23:10:13.667 に答える
1

同じ署名キーを使用するとどうなるかわかりません。正直なところ、実際に試したことはないからです。

そうは言っても、Anand Tiwariは彼のコメントですでに答えを単純化しているので、同じパッケージ名を持つ2つの異なるアプリケーションを1つのデバイスにインストールすることはできません。論理的に言えば、それらはあなたとは異なるかもしれませんが、OSの場合、実際には同じです。

この問題は、アプリケーションをAndroidマーケット(Google Play)にアップロードしようとしたときにも明らかになります。GooglePlayは単に2番目のアプリケーションを受け入れません。ここにウォーレンフェイスによる短くて簡単な説明があります:https ://stackoverflow.com/a/5788664/450534

いくつかの変更を加えた同様のアプリケーションがGooglePlayストアに公開される方法の例として:

  1. FriendCasterの無料バージョンは次のとおりです:https ://play.google.com/store/apps/details?id = uk.co.senab.blueNotifyFree

  2. 同じアプリの場合の有料バージョン:https ://play.google.com/store/apps/details?id = uk.co.senab.blueNotify

パッケージ名の終わりに注意してください。この場合、1つのデバイスに両方のアプリを同時にインストールできます。

于 2012-11-06T13:13:18.453 に答える
1

あなたの問題は、両方のファイルが同じパッケージ名を持っていることだと思います。同様のパッケージで両方のアプリに名前を付けることはできますが、同じにすることはできません。実際、同じパッケージベースを使用して、アプリケーション間で通信することができます。App1:com.mypkg.app1およびApp2:com.mypkg.app2。ただし、両方をcom.mypkg.appと呼ぶことはできません。パッケージ名はAndroidがアプリを識別する方法であり、同一にすることはできません。

同じキーを使用して、(パッケージが異なると仮定して)多くの異なるアプリに署名できるはずです。

署名証明書を紛失しないように注意してください。紛失した場合、同じパッケージ名の新しいアプリをアップロードできなくなります。署名証明書を紛失すると、大きな問題になります。

幸運を。

于 2012-11-06T13:13:34.123 に答える