web-dev-qa-db-ja.com

デバッグデバイスでのテスト中にUPDATE_NOT_AVAILABLEを示すアプリ内更新API

新しいアプリ内アップデートAPIを統合しようとしていますが、その実装をテストできません。私のコードは問題ないと思われるので、 Troubleshoots を読んで、このドキュメントの2つのポイントを理解できません

テストするアプリが、Google Playから入手できるものと同じ署名鍵で署名されていることを確認してください。

  1. 接続されたデバイスにApkをインストールするときに、デバッグモードで同じ署名鍵で署名するにはどうすればよいですか?.

テストしているアプリに利用可能なアップデートが表示されない場合は、テストトラックが適切に設定されていることを確認してください。

  1. 実装をテストするために内部テストトラックでアプリをリリースすることは必須ですか?

とにかく、私は自分のデバイスでテストしたいだけで、Playストアのバージョンからバージョンコードを減らしましたが、常に表示されますUPDATE_NOT_AVAILABLE

ここにコードがあります:-

val appUpdateInfo: Task<AppUpdateInfo> = appUpdateManager.appUpdateInfo
appUpdateInfo.addOnSuccessListener {
    if (it.updateAvailability() == UpdateAvailability.UPDATE_AVAILABLE && it.isUpdateTypeAllowed(AppUpdateType.FLEXIBLE)) {
        appUpdateManager.startUpdateFlowForResult(it, AppUpdateType.FLEXIBLE, this, 2);
    }else{
        toast("Not Available")
    }
}
6
gautam kumar

まず、アプリをGoogle Playに公開する必要があります。次のことを確認してください。

  1. 公開したバージョンコードは、更新をテストするコードよりも高くなっています。そうでない場合は、更新として認識されません。次に、Google Playがかなり長い間キャッシュを更新するようにします(私の場合は、初めて動作させる前に12時間待機しました)。
  2. 同じ署名で両方のAPKに署名しました。

動作するデモアプリが必要な場合は、 gitレポジトリ をアップロードしました。これは、 Google Playで公開したものよりも低いバージョンのコード です。

 Working in-app updates UI 

2
kevintresuelo

UPDATE_NOT_AVAILABLEがあるという同様の問題がありました。何時間もの調査の後、これが私が解決した方法です:

  1. google Playストアを使用して、テストアプリのバージョンをインストールします(私は内部テストトラックロールアウトを使用しました)

  2. play Consoleでバージョンコードの高い別のバージョンをロールアウトします(同じ内部テストトラック)。

  3. テストアプリとGoogle Playストアの両方を閉じます(家に戻るだけでなく、最近のキーを使用してスワイプしてオフにします)

  4. google Playストアを開き、テスト用アプリに利用可能なアップデートがあることを確認します(「マイアプリとゲーム」>「インストール済み」で確認できます)

  5. テストアプリを開いて、UPDATE_AVAILABLEを確認します

これは、ロールアウト後ほぼすぐに機能します

2
wMaN

公開後、2〜6時間かかります。

最初の質問については、リリースキーストアを使用して、アプリのリリースビルドを実行する必要があると述べています。次に、結果の.apkファイルを電子メールに添付して、自分に電子メールで送信できます。次に、Androidデバイスで電子メールを確認し、ダウンロードに.apk添付ファイルをダウンロードします。ダウンロードの最後にAndroid .apkをインストールする場合は、「はい」と答えます(要求されない場合は、ダウンロードフォルダー内のファイルをクリックすると、要求されます)。

2番目の質問については、Google Playストアフロントとやり取りする必要があるが、公開されているライブリリースに影響を与えないため、内部テストトラックを通じてこれをテストできる唯一の方法です。

0
Michael Dougan

最後に、Playストアからアプリを削除することでこれを解決しました->マイアプリとゲーム->ライブラリ。

  • 以前のバージョンで使用したものと同じキーストアでリリースアプリケーションをインストールする必要があります。

これは、デバイスまたはPlayストアで同じGmailアドレスを共有するデバイスに、より高いバージョンのコードで同じアプリを以前にインストールした場合に発生します。お役に立てれば。

0