web-dev-qa-db-ja.com

パッケージの署名が以前にインストールされたバージョンと一致しません

この私のプロジェクト: https://github.com/kenpeter/my_hak_news 、これは https://github.com/grigio/HAgnostic-News の直接コピーです。

Gitクローン https://github.com/kenpeter/my_hak_news 、次にreact-native run-Androidを実行します

このエラーが発生しました:

* What went wrong:
Execution failed for task ':app:installDebug'.
> com.Android.builder.testing.api.DeviceException: com.Android.ddmlib.InstallException: Failed to finalize session : INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package com.hagnosticnews signatures do not match the previously installed version; ignoring!

関連する問題: https://github.com/grigio/HAgnostic-News/issues/1 、私はさまざまな方法に従いますが、この問題を解決できません。

46
kenpeter

元の署名とは異なる署名を使用しているため、アンインストールする必要があります。動作していない場合は、デバイス上の別のユーザー用にまだインストールされている可能性があります。完全にアンインストールするには、[設定]-> [アプリ]-> [HAgnostic News]-> [オプション](右上の3つのドット)-> [すべてのユーザーのアンインストール]に移動します。

74
maxoumime

私も自分のプロジェクトでこの問題に出会いました。

これは私を助けたので、希望は他の誰かを助けるでしょう:

adb uninstall "com.domain.yourapp"

解決策はこちらから

22
jirimertin

インストールしたアプリのバージョンが同じキーストア/署名証明書を使用してビルドされていない場合、異なる署名が使用されます。デフォルトでは、 google documentation に従って署名する方法を指定しない限り、各ビルドマシンは異なるデバッグ証明書を持ちます。これは、アプリケーションがどのコンピューターでアプリケーションをビルドしますか。

インストールを続行するには、既存のバージョンをアンインストールしてから再試行する必要があります。

10
Jake_

これは主に、携帯電話にGoogle Playストアのアプリのバージョンがインストールされている場合に発生します。生産バージョンで使用したのと同じキーストア/証明書でコードをビルドするか、電話からアンインストールしてデバッグキーストア/証明書でビルドすることができます。

6
A-S

これは、モバイル/エミュレーター電話に異なるバージョンのアプリをインストールした場合に発生します。

単に既存のアプリをアンインストールするで問題が解決します

4
Muhammad Ashfaq

com.Android.builder.testing.api.DeviceException:com.Android.ddmlib.InstallException:セッションのファイナライズに失敗しました:INSTALL_FAILED_UPDATE_INCOMPATIBLE:パッケージ[MY REACT NATIVE APP NAME HERE]署名が以前にインストールされたバージョンと一致しません。無視!

このコマンドを使用して接続デバイスにReact Native Androidアプリをインストールしようとすると、このエラーが発生しました。

react-native run-Android --variant=release

また、コンピューターでエミュレーターを実行していました。

エミュレータを終了するになったら、このコマンドの実行は成功しました。

4
Beau Smith

エミュレーターにインストールしようとしているが、USB経由でコンピューターに別の電話を接続している場合は、USBケーブルを外すか、物理デバイスでUSBデバッグを無効にします。 (自分で30分間無駄にしました。)

2
waliurjs

同じエラーが発生しました。仮想デバイスでアプリをアンインストールし、コマンド「react-native run-Android」を再実行しました。

2
Wiezalditzijn

このエラーは、シミュレーター/電話の以前のビルドが異なる資格情報でアップロードされたときに発生しました。私がしなければならなかったことは実行されました:

adb uninstall com.exampleappname

それができたら、ビルドを再実行してAPKを生成することができました。

1
Ariel Salem

私は同じ問題を抱えており、AVDでうまく動作していましたが、私の電話では大丈夫ではありませんでした。携帯電話でアプリをアンインストールした後、正常に機能します。

1
Rafael Ramon

cmd adb uninstall packageNameを使用して、LGデバイスに対して完全にアンインストールする必要があります

0
v.Vinh

元の署名とは異なる署名を使用しているため、アンインストールする必要があります。動作していない場合は、デバイス上の別のユーザー用にまだインストールされている可能性があります。完全にアンインストールするには、設定->アプリ->(特定のアプリ)->オプション(右上の3つのドット)->すべてのユーザーのアンインストールに進みます。

また、この問題は、ionic app(同じパッケージ名)が既にインストールされているときに、完全に機能するようになった後に携帯電話から削除されるという問題を抱えています。

0
mahendren

今日、私は私のサムスンのデバイスで同じ問題に直面しました。私の特定のケースでは、アプリはNOT電話で表示されていましたが、INSTALLEDだったので、できませんでしたninstall/removeそれ。したがって、terminal$ adb uninstall "com.domain.yourapp"を使用してアプリをアンインストールする必要がありました。私のプロジェクトツリーは次のようになります(部分ビュー)。

└── com
    └── gluonapplication
        ├── DrawerManager.Java
        ├── StartApplication.Java
        └── views
            ├── PrimaryPresenter.Java
            ├── PrimaryView.Java
            ├── SecondaryPresenter.Java
            └── SecondaryView.Java

そのため、コマンドは次のとおりでした:$ adb uninstall com.gluonapplication完了したら、ターミナルからアプリをインストールしました。

$ cd /path/to/apk/
$ adb install -t myAwesomeApp.apk  # -t means test install

それは私のために働いたものです。この回答がお役に立てば幸いです。

0

Samsungデバイスでこの問題が発生しました。アプリをアンインストールしても同じメッセージが表示されました。問題は、アプリが携帯電話の「安全なフォルダ」エリアにもインストールされたことでした。これがあなたのシナリオであるかどうかをチェックする価値があります。

0
Eliram

Android studioに移動-> AVDマネージャー-> AVDを選択してユーザーデータを消去

AVD全体を再インストールする必要はありません。

0
mingliang94