web-dev-qa-db-ja.com

デバイスにコンパイル済みの.apkをインストールしようとするとINSTALL_FAILED_UPDATE_INCOMPATIBLE

私はCyanogenMod 9からTrebuchetランチャーをコンパイルし、そしてadbでそれをインストールしようとしています:

$ adb install out/target/product/generic/system/app/Trebuchet.apk
3986 KB/s (7870141 bytes in 1.928s)
    pkg: /data/local/tmp/Trebuchet.apk
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

CM9とNexus S、そして株価JBとGalaxy Nexusを試しました。なぜ私はこのエラーが出ますか?

編集:私の場合、パッケージマネージャでシステムパッケージを再インストールしようとしました。それはサポートされていないので、私はこのエラーを得ました。エラーの原因はあなたのケースでは異なるかもしれません。

271
arts777

私はちょうどパッケージの名前を変更し、それは私のために働いた。

あるいは、あなたがIonicを使っているなら、あなたはアプリケーションを削除して、もう一度試すことができます、これは、Ionがあなたがデプロイしているアプリが同じビルドから来ていないことを検出した時に起こります。あなたがPCから変更するとき、それはしばしば起こります。

10
arts777

それはあなたがインストールしたいアプリケーションが既にインストールされていることを意味します。古いものを削除してもう一度試してください。

481
Mustafa Güven

やってみる

adb uninstall package-name

わたしにはできる。 Titanium Backupを使ってアプリを削除しました。しかし、私はTitaniumバックアップが私のアプリを完全に削除しなかったと思います。

172
einverne

この問題を回避するには、アプリケーションをアンインストールするだけで十分です。

INSTALL_FAILED_UPDATE_INCOMPATIBLE

しかし、時にはメッセージをアンインストールすることが再び発生し、それはAndroid OS 5.0以降で発生するので、これが解決策です:

Settings> Appsに移動すると、メッセージが表示されたアプリが表示されます。

"このユーザーにはインストールされていません" enter image description here

すべてのユーザーに対して手動でアンインストールする必要があります!それからコンパイル済みのアプリケーションを問題なくインストールできます。

enter image description here

他の選択肢:

  • 古いアプリケーションを削除して、もう一度インストールしてください。
  • Android Debug Bridgeコマンドを使用します。

    adb uninstall [パッケージ名]

95
Elenasys

うまくいくことができる2つの方法

1:モバイルデバイスから手動でアプリをアンインストールする

2:コマンドプロンプトを開き、adbのパスをトレースして以下のコマンドを実行します

adb uninstall your_package_name
21
dharam
  1. あなたのadbフォルダ\ sdk\platform-tools \に行きます。
  2. cmdと入力
  3. type:adb remount onコマンドウィンドウ
  4. adbシェル
  5. su
  6. rm /system/app/YourApp.apk
  7. 端末を再起動してください
8
user3278378

問題は、彼がこのエラーを起こしている理由です。アンインストールすることでこの問題は解決されますが、私の場合は、コンパイル済みバージョンのapkをインストールしている間に問題が発生しました。私は自分のアプリケーション用のアップデートを作成しようとしていました。だから私は何をした、私は署名されたAPKを構築してから、APKとAPKを完全にインストールしようとしました。そのため、古いapkを削除するのではなく、新しいアップデートに署名してからインストールする必要がありました。

6
Reaz Murshed

これは、端末に複数のユーザーがいて、1つのアプリを削除したばかりのためです(他の人のためにapkをまだ存在させたままにします)。

私はすべてのアカウントで削除したが、その後うまくいった。

6
neteinstein

私はAstroファイルマネージャをインストールして、apkファイルの以前のバージョンを探して、SDカードの1つを見つけて、Astroファイルマネージャを使っているapkファイルを削除しました。

4
fll

デバイスが複数のユーザーをサポートしている場合は、アカウントごとにアプリも削除する必要があります。

私はいつもadbを使っていますが、それがトリックadb uninstall <your-package-name>です。

4
Mark Pazon

aPKがAndroid.mkファイルでプロジェクトに組み込まれている場合。おそらく署名証明書が変更されたためです。

私の問題では、LOCAL_CERTIFICATE:= platformを追加しました。元のapkはこのタグなしで署名されているので。

3
fordreamxin

これは、別の証明書を使ってアプリケーションに署名した場合に起こります。いつでも使えます

adb install -r myapk.apk

あなたのデバイス上の既存のapkを上書きするために、しかしあなたがあなたがまだ新しいapkにインストールされたapkのそれと異なる証明書で署名したならエラーを得るでしょう。

そのシナリオでは、インストールを試みる前にあなたのデバイスからapkをアンインストールする必要があるでしょう。ただし、元の署名が特定のDevelopor APIに関連付けられている可能性があるため、これもアプリケーションに影響を与える可能性があるため、新しい認証情報を使用してコンソールを更新する必要があります。

3
Pixel

私の場合、デバイスマネージャやAstroを介して見つけられるアプリケーションのバージョンはありませんでした。

私がやってしまったのは、

1)App Storeから最新版のAppをダウンロードする

2)アプリは、デバイスを再起動するまでデバイスマネージャに表示されませんでした。

3)デバイスマネージャからアプリを削除します

4)私のプロジェクトをもう一度実行します

5)すべてうまくいく

これが誰かに役立つことを願っています

2
YKa

MIUIユーザーの場合、通常のUSBデバッグオプションとは別に、これらの設定も必ず有効にしてください。

USB経由でインストール
USBデバッグ(セキュリティ設定)

その後、アプリを再インストールするときにプロンプ​​トを受け入れます。

1
stevyhacker
  1. 設定/アプリ/アプリの検索に移動してアンインストールします.
  2. openコマンドプロンプトと「adb uninstall」

それは私のために働いています

1

私は同じ問題を抱えており、それを修正するために次のようにしました。

  1. 設定>ストレージ>キャッシュされたデータを消去
  2. 設定>アプリ>そこに表示されているアプリをアンインストールします。アプリをアンインストールしましたが、表示されていました。
  3. 再起動して、その後すべてがうまくいった。
1
Pankaj

設定/アプリ/アプリの検索に移動してアンインストールします.

それは私のために働いています

1
Luis Colomé

C:\ Android-sdk\platform-tools\adb.exe:コマンドが終了コード1で失敗しました

エラー出力:adb:app \プラットフォーム\ Android\app\build\output\apk\debug\app-debug.apkのインストールに失敗しました:失敗[INSTALL_FAILED_UPDATE_INCOMPATIBLE:パッケージcom.example .app1の署名が以前にインストールされたバージョンと一致しません。無視する!

解決策:

あなたはすでにアプリapp1を電話にインストールしています(大抵プレイコンソールからダウンロードするか、アップロードキーを変更します)
アプリをアンインストールします。

詳細:

アップロードキーを使用してこのアプリがすでにPlayストアにアップロードされていること、プレイコンソールに独自の署名が適用されていることは可能です。そのため、Google Playからダウンロードした携帯電話のアプリのアップロードキーと同じ署名はありません。

アプリをアンインストールすると、Playストア版のアプリがなくなり、新しいバージョンを携帯にインストールしたときに不一致になります。

それが役立つことを願っています。

Instant Runを使用して開発ビルドをインストールし、Google Playからアンインストールしたときに私は起こりました。何らかの理由でインスタントランからのデータがまだデバイスにあり、再度アプリをインストール/アンインストールすることができません。

それを修正する唯一の方法: - アンドロイドスタジオでインスタントランを無効にする - アンドロイドスタジオからインストールする(それはここからしか動作しないはずです) - アプリをアンインストールする

これで、Google Playまたはadbからインストールするのがきれいになるはずです。

マニフェストファイルにこの行がある場合 -

Android:sharedUserId = "Android.uid.system"

このエラーの原因です。この行をコメントするだけでいいですよ。

0
DesigningLives

あなたが他のPCからあなたのAPKを構築し、別のPCからそれを更新する場合に起こります。

0
Prashant Jajal

私の場合は、Playstoreからアプリケーションをインストールし、その後EclipseまたはAndroid Studioから実行しようとしています。 だからそれは許可されませんそのAPKに再度インストールしようとします。

だから、まず第一にあなたはそれをアンインストールする必要がありますSiged APKそしてその後あなたが試す必要があります。

ありがとうございました。

私はこれをデバッグしようとして1時間を費やしただけで、電話ではなくエミュレータに接続されていることに気付きました。そのため、携帯電話でアプリを正常に削除したにもかかわらず、まだ失敗していました。愚かな間違いですが、これはおそらく他の誰かを助けるでしょう。

0
Adam Katz

RankoR @あなたは別のコンピュータからアプリケーションをインストールしている必要があります。私の場合は、問題が発生した場合、アプリケーションをアンインストールして再インストールするか、作業中のコンピュータから実行するだけです。返信が遅くなる可能性がありますが、問題が解決する場合があります。

0
Mohammed Nathar