ここでこれについて多くの質問があることは知っていますが、私はすべてを試しました (しかし、明らかに正しい「もの」です!)、私が抱えている問題に光を当てるものは何もないようです.
独自のサーバーでホストされるように設計された (顧客向けの) アプリを作成しました。アプリは、最新バージョン コードを含む単純なテキスト ファイルを参照し、それを独自のバージョンと照合します。古い場合はオフになり、更新をダウンロードします。この時点まで、すべてが意図したとおりに機能しています。
私は以下を使用します:
Intent i = new Intent(Intent.ACTION_VIEW);
i.setDataAndType(Uri.fromFile(outputFile), "application/vnd.android.package-archive");
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);
...新しくダウンロードした .apk ファイルのインストール プロセスを開始するコード。そして、それはすべて私の期待どおりに始まります。
「インストール」をクリックします-現在のアプリを新しいアプリで上書きすることを確認するように求められたら。起動し、次のように表示されます。
App not installed. And existing package by the same name with a conflicting signature is already installed.
今、私は Android が同じパッケージ名を共有する複数のアプリケーションを持つことができないことを認識していますが、これは問題ありませんが、LogCat には何も表示されません。私はすべての正しいチャネルを通過し、組み込みのパッケージマネージャーを使用してそれを実行しています!
OSがうめき声を上げていることを誰か教えてもらえますか? 2 つのアプリを並べてインストールしようとしているわけではありません。更新したいのですが、更新を開始すると、本当に混乱します。
パッケージの署名に同じキーストアを使用していることに関係がありますか? 以前に同じキーストアを使用してゲームなどの更新を処理したことがあるとは思えませんが、それが何について不平を言っているのかわかりません。
うまくいけば、誰かがこの問題を抱えて解決し、私を正しい方向に向けることができます. 私はそれが私に与えている限られた情報で少し盲目的に飛んでいます:(
乾杯。