この私のプロジェクト: 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 、私はさまざまな方法に従いますが、この問題を解決できません。
元の署名とは異なる署名を使用しているため、アンインストールする必要があります。動作していない場合は、デバイス上の別のユーザー用にまだインストールされている可能性があります。完全にアンインストールするには、[設定]-> [アプリ]-> [HAgnostic News]-> [オプション](右上の3つのドット)-> [すべてのユーザーのアンインストール]に移動します。
インストールしたアプリのバージョンが同じキーストア/署名証明書を使用してビルドされていない場合、異なる署名が使用されます。デフォルトでは、 google documentation に従って署名する方法を指定しない限り、各ビルドマシンは異なるデバッグ証明書を持ちます。これは、アプリケーションがどのコンピューターでアプリケーションをビルドしますか。
インストールを続行するには、既存のバージョンをアンインストールしてから再試行する必要があります。
これは主に、携帯電話にGoogle Playストアのアプリのバージョンがインストールされている場合に発生します。生産バージョンで使用したのと同じキーストア/証明書でコードをビルドするか、電話からアンインストールしてデバッグキーストア/証明書でビルドすることができます。
これは、モバイル/エミュレーター電話に異なるバージョンのアプリをインストールした場合に発生します。
単に既存のアプリをアンインストールするで問題が解決します
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
また、コンピューターでエミュレーターを実行していました。
エミュレータを終了するになったら、このコマンドの実行は成功しました。
エミュレーターにインストールしようとしているが、USB経由でコンピューターに別の電話を接続している場合は、USBケーブルを外すか、物理デバイスでUSBデバッグを無効にします。 (自分で30分間無駄にしました。)
同じエラーが発生しました。仮想デバイスでアプリをアンインストールし、コマンド「react-native run-Android」を再実行しました。
このエラーは、シミュレーター/電話の以前のビルドが異なる資格情報でアップロードされたときに発生しました。私がしなければならなかったことは実行されました:
adb uninstall com.exampleappname
それができたら、ビルドを再実行してAPKを生成することができました。
私は同じ問題を抱えており、AVDでうまく動作していましたが、私の電話では大丈夫ではありませんでした。携帯電話でアプリをアンインストールした後、正常に機能します。
cmd adb uninstall packageNameを使用して、LGデバイスに対して完全にアンインストールする必要があります
元の署名とは異なる署名を使用しているため、アンインストールする必要があります。動作していない場合は、デバイス上の別のユーザー用にまだインストールされている可能性があります。完全にアンインストールするには、設定->アプリ->(特定のアプリ)->オプション(右上の3つのドット)->すべてのユーザーのアンインストールに進みます。
また、この問題は、ionic app(同じパッケージ名)が既にインストールされているときに、完全に機能するようになった後に携帯電話から削除されるという問題を抱えています。
今日、私は私のサムスンのデバイスで同じ問題に直面しました。私の特定のケースでは、アプリは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
それは私のために働いたものです。この回答がお役に立てば幸いです。
Samsungデバイスでこの問題が発生しました。アプリをアンインストールしても同じメッセージが表示されました。問題は、アプリが携帯電話の「安全なフォルダ」エリアにもインストールされたことでした。これがあなたのシナリオであるかどうかをチェックする価値があります。
Android studioに移動-> AVDマネージャー-> AVDを選択してユーザーデータを消去
AVD全体を再インストールする必要はありません。