36

私は、デバイスにプレインストールされる可能性が最も高いアプリケーションを開発しています。GooglePlayでも利用できるようになります。Google Playは更新についてユーザーに通知しないため、GooglePlayからダウンロードされないインスタンスを更新する方法はありますか。

ここで提案されているように、定期的に自分のサイトに連絡しようと考えていました。アップデートが利用可能になったら、ダウンロードしてください。

この更新を自動的に、またはサイレントに実行して、ユーザーが何もする必要がないようにする方法はありますか(パッケージを手動で実行するなど)。または、私のサイトでアップデートが利用可能であることが示されている場合、マーケットからインストールされていなくても、Google Playからアップデートをユーザーに提供します(編集:ユーザーが「インストールを許可する」をチェックする必要がないため、このGooglePlayオプションが望ましいでしょう。市場以外の情報源」。)

4

10 に答える 10

43

同じ問題が発生しました。アプリの起動時に、構成xmlに新しいバージョンがあるかどうかを確認します。

実際のバージョンをconfiguration.xmlのタグ「<app_version>1.1</app_version>」と比較します。ユーザーがアップグレードを続行するかどうかをカスタムAlertDialogで確認します。

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse(myapk_link));
startActivity(intent);    

ダウンロード後、ユーザーはパッケージを手動で実行する必要があります。

Androidマーケットからアップデートを選択した場合は、次を使用します。

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://details?id=com.package.name"));
startActivity(intent);  

com.package.nameアプリの「パッケージ」である必要があります

また

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://search?q=" + APP_NAME));
startActivity(intent);  
于 2010-06-16T23:43:24.807 に答える
8

うまくいく方法を見つけました。私のアプリケーションを検索するマーケットのインテントを起動します。

古いバージョンの.apkを見つけるのは簡単だったので、OpenIntentNewsreaderでテストしました。Marketはアプリケーションを見つけ、ユーザーが[インストール]をクリックすると、古いバージョンをMarketのものに置き換えます。これは、手動で.apkをダウンロードして実行するよりも、ユーザーにとってはるかに簡単なソリューションだと思います。

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse("market://search?q=" + APPLICATION_NAME));
startActivity(intent);  
于 2010-06-17T01:57:26.193 に答える
7

Google Playは更新についてユーザーに通知しないため、GooglePlayからダウンロードされないインスタンスを更新する方法はありますか。

古い質問、新しい答え:

まったく同じ質問(デバイスにプリインストールされているアプリ、Google-Playからアップデートを提供するにはどうすればよいですか)を掘り下げた後、support.google.comでこの情報を見つけました*:

Google Playは、次の条件が満たされている場合に、プリロードされたアプリケーションの更新を管理できます。

  • プリロードされたアプリはシステムパーティションにある必要があります
  • プリロードされたアプリは無料である必要があります
  • プリロードされたアプリは、GooglePlayで公開されているアプリと同じ署名で署名する必要があります
  • プリロードおよび更新されたアプリのパッケージ名は同じである必要があります
  • 更新されたアプリのバージョンコードは、プリロードされたアプリのバージョンコードよりも大きい必要があります

*2015年4月13日現在

于 2013-01-22T15:34:47.297 に答える
4

私は、デバイスにプレインストールされる可能性が最も高いアプリケーションを開発しています。

次に、デバイスメーカーと話し合い、質問する必要があります。デバイスとそれを配布するキャリアを考えると、他の誰もあなたに何が可能で何が不可能かを伝えることはできません。答えは、ファームウェアの作成方法、アプリケーションがファームウェアの一部であるか、通常のアプリとして「インストール」されるか、ファームウェアの更新に対するキャリアとの取り決めなどに大きく依存します。問題への投票。

于 2010-06-17T00:06:59.467 に答える
2

最新バージョンの更新のオプションは次のとおりです

https://developer.android.com/guide/app-bundle/in-app-updates#update_readiness

このグーグルライブラリを試して、アプリケーションから更新してください

 dependencies {
implementation 'com.google.android.play:core:1.5.0'
...}

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

于 2019-10-03T05:20:56.553 に答える
1

デバイスにアプリをバンドルした人が適切な仕事をした場合でも、アプリにはマーケットリンクがあり(システムアプリとしても)、新しいバージョンが利用可能な場合はマーケットがユーザーにアップグレードするように求めます。結局のところ、それはまさに、電話にプリインストールされているGMailのようなアプリで起こることです。

于 2012-02-10T01:07:03.247 に答える
0

パッケージを自動的にインストールまたはアップグレードすることはできません。これを実行できるのはAndroidマーケットのみです(つまり、サイレントに更新されます)。

確かにパッケージをダウンロードしIntentて起動してインストールすることはできますが、ユーザーは[マーケット以外のアプリを許可する]オプションを有効にする必要があり、インストール/アップグレードを手動で承認する必要があります。

おそらく調査する1つの場所は、Googleマップがそれをどのように行うかです。これは通常プリインストールされていますが、Androidマーケットアプリでは常にアップデートとして表示されているようです。マニフェストに特別な旗があるかどうかpackages.xmlはわかりません。

于 2010-06-16T23:38:59.570 に答える
0

アプリ自体を最新の状態に保つのに役立つ優れたサービスがあります。https://www.pushlink.comをご覧ください

この製品には、ユーザーの操作なしで更新を実行できるNINJAモードがあります。

その他の「モード」については、「非市場アプリのインストール」を有効にする必要があります。有効になっていない場合、インストールプロセスはそれを要求し、ユーザーをアプリケーション設定にリダイレクトします。その後、ユーザーはアプリをインストールできます。

于 2015-06-01T12:03:04.097 に答える
0

アプリをシステムアプリとして署名できれば、アプリを完全に自動更新することができます。特定のハードウェア用のアプリを作成し、メーカーが署名した更新アプリを作成しました。更新アプリはデバイスの起動時に実行され、アプリの現在のバージョンと新しいバージョンを確認し、必要に応じて新しいバージョンをインストールします。

ユースケースは、GooglePlayを備えていない1つのメーカーとモデルのタブレット上のキオスクアプリです。

于 2018-02-06T20:02:57.173 に答える
-1

2018年のGoogleのAndroid開発サミットは、デベロッパー向けのAndroidアプリ内アップデートAPIを発表しました。これにより、ここでストーリー全体を読み、この質問について最新情報を入手できます。Androidアプリ内アップデートAPIの詳細

https://developer.android.com/guide/app-bundle/in-app-updates

于 2018-11-26T06:01:17.957 に答える