3

プログラムですべてのアプリケーションを更新するにはどうすればよいですか?

アップデートマネージャを作成したい。すべての更新と更新するユーザーへのオファーを一覧表示します。クリックすると、プログラムがアプリケーションを更新します。

Androidデバイスでアプリケーションを更新するにはどうすればよいですか?

4

3 に答える 3

2

更新サーバーからファイルをダウンロードします (任意の適切なプロトコルを使用できます)。次に、vnd.android.package-archive で開きます。

Intent reinstall = new Intent(Intent.ACTION_VIEW);
reinstall.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
reinstall.setDataAndType(Uri.fromFile("MyGreatApplication.apk"),
    "application/vnd.android.package-archive");
startActivity(reinstall);

これにより、インストーラーが起動します。アプリケーションの署名には必ず同じキーストアとキーを使用してください。そうしないと、ユーザーが既存のバージョンを手動でアンインストールした場合にのみ、古いアプリが上書きされる可能性があります。

于 2013-01-18T14:28:07.783 に答える
1

すべてのアプリケーションをプログラムで更新するにはどうすればよいですか?

できません。

更新マネージャーを作成したい。

これは、Play ストア クライアント、Amazon AppStore for Android クライアントなどの「マーケット」アプリの責任です。

更新するすべての更新とユーザーへのオファーを一覧表示します。

実際に更新を実行する機能があることは言うまでもなく、更新が何であるかはわかりません。

于 2013-01-18T14:31:00.543 に答える
1

Google Play の更新を意味する場合

公開 SDK を使用してこれを行う方法はありません。Google Play アプリケーションは既にこれを処理しており、Google はこの動作をフックまたは制御するための API を提供していません。

サイドロードされたアプリの更新を意味する場合、あなたと他の人の両方

これはある程度可能です。更新するデバイス上の各アプリケーションのバージョンを確認し、最新バージョンを通知できるサーバーをどこかに配置する必要があります。サーバーが新しいバージョンが利用可能であると言う場合は、新しいバージョンの apk をデバイスの共有ストレージにダウンロードし、インテントを使用してインストーラーを起動します。これはサイレント インストールではなく、ユーザーはすべての更新に手動で同意する必要があります。さらに、更新 apk は古い apk と同じキーで署名されている必要があり、同じパッケージ名を持っている必要があります。

于 2013-01-18T14:32:45.883 に答える