14

新しいアプリ内更新 API を統合しようとしていますが、その実装をテストできません。私のコードは問題ないようですので、トラブルシューティングを読みましたが、このドキュメントの 2 つのポイントを理解できません

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

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

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

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

とにかく、私は自分のデバイスでテストしたいだけで、プレイストアのバージョンからバージョンコードを減らしましたが、常に表示されてい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")
    }
}
4

12 に答える 12

16

この同じ問題に数日間苦労した後、もう一度ドキュメントを徹底的に調べました。アプリ内アップデートの公式ドキュメントのこのセクションをお読みください。

このリンクでは、正しいテスト手順を次のように説明しています。

  1. テスト デバイスに、次の要件を満たすバージョンのアプリが既にインストールされていることを確認します。
  • アプリは内部アプリ共有 URL を使用してインストールされました
  • アプリ内アップデートをサポート
  • アプリの更新されたバージョンよりも低いバージョン コードを使用しています
  1. アプリを内部で共有する方法については、Play Console の手順に従ってください。テスト デバイスに既にインストールされているバージョン コードよりも高いバージョン コードを使用するバージョンのアプリをアップロードしてください。
  2. テスト デバイスでは、アプリの更新バージョンの内部アプリ共有リンクのみをクリックします。リンクをクリックした後に表示される Google Play ストア ページからアプリをインストールしないでください。
  3. デバイスのアプリ ドロワーまたはホーム画面からアプリを開きます。アプリで更新を利用できるようになり、アプリ内更新の実装をテストできます。

アプリが公開されるのを待つ必要がなく、すぐにテストを開始できるため、これも非常に役立ちます。

于 2019-12-23T13:56:21.817 に答える
2

また、そのような目的で作成されたFakeAppUpdateManagerもあります。あなたはそれを使用することができます。

于 2019-05-14T09:02:34.753 に答える