Проверка в приложении вызывает журнал, но не инициирует диалоговое окно

#java #android #api #in-app

#java #Android #API #в приложении

Вопрос:

У меня ситуация, когда я использую этот метод для вызова диалогового окна для проверки в приложении, но диалоговое окно не отображается ни когда тестовая версия является приложением, ни когда приложение доступно в Play Store. Однако информация LogCat показывает, что метод вызывается правильно при вызове кода. Кто-нибудь может помочь советом или предложением, спасибо.

https://developer.android.com/guide/playcore/in-app-review

Gradle

 implementation 'com.google.android.play:core:1.8.0'
  

onCreate

 Log.i("rate", "CALL MANAGER");
askRatings();
  

Код

 void askRatings() {
    ReviewManager manager = ReviewManagerFactory.create(this);
    com.google.android.play.core.tasks.Task<ReviewInfo> request = manager.requestReviewFlow();
    request.addOnCompleteListener(task -> {
        if (task.isSuccessful()) {
            // We can get the ReviewInfo object
            ReviewInfo reviewInfo = task.getResult();
            Log.i("rate", "SUCCESS FLOW");
            com.google.android.play.core.tasks.Task<Void> flow = manager.launchReviewFlow(this, reviewInfo);
            flow.addOnCompleteListener(task2 -> {
                // The flow has finished. The API does not indicate whether the user
                // reviewed or not, or even whether the review dialog was shown. Thus, no
                // matter the result, we continue our app flow.
            });
        } else {
            Log.i("rate", "NOT A SUCCESS FLOW");
        }
    });
}
  

Журнал

 2020-08-18 11:17:03.641 13328-13328/my.app I/rate: CALL MANAGER
2020-08-18 11:17:03.764 13328-13328/my.app I/rate: SUCCESS FLOW
  

Ответ №1:

Мне пришлось использовать внутренний общий доступ к приложению и эмулятор Android 10, чтобы увидеть диалоговое окно. В Android 9 и предыдущих версиях я вижу те же журналы, что и вы, но обзор не появляется. В любом случае, я вижу сбой при появлении меню виртуальных кнопок Android на секунду, поэтому я полагаю, что это означает, что поток работает.