La finestra di dialogo Api di Android Play Core InAppReview non viene visualizzata

Aug 21 2020

Sto cercando di utilizzare l'API Review (Play Core library 1.8.0) di Google che è stata appena rilasciata oggi. Vederehttps://developer.android.com/guide/playcore/in-app-review. Attualmente lo sto utilizzando utilizzando il seguente codice:

public void inAppReview() {
        ReviewManager reviewManager = ReviewManagerFactory.create(getActivity());
        Task<ReviewInfo> request = reviewManager.requestReviewFlow();
        request.addOnCompleteListener(new OnCompleteListener<ReviewInfo>() {
            @Override
            public void onComplete(@NonNull Task<ReviewInfo> task) {    
                if (task.isSuccessful()) {
                    ReviewInfo reviewInfo = task.getResult();
                    
                    Task<Void> flow = reviewManager.launchReviewFlow(getActivity(), reviewInfo);
                    flow.addOnCompleteListener(new OnCompleteListener<Void>() {
                        @Override
                        public void onComplete(@NonNull Task<Void> task) {
                            Log.e("task<void>", task.isComplete() + "");
                            Log.e("task<void>", task.isSuccessful() + "");
                        }
                    }).addOnFailureListener(new com.google.android.play.core.tasks.OnFailureListener() {
                        @Override
                        public void onFailure(Exception e) {
                            
                        }
                    }); 
                } else {
                    Log.e("Review error", "Review error");
                }
            }
        }).addOnFailureListener(new com.google.android.play.core.tasks.OnFailureListener() {
            @Override
            public void onFailure(Exception e) { 
              Log.e("Review error", "Review error");
            }
        });
    }

Ho eseguito il test utilizzando il tracciato di test interno nella Console per gli sviluppatori di Google Play, ma sfortunatamente non ricevo la finestra di dialogo di revisione sul mio account di prova. Che cosa sto facendo di sbagliato?

Risposte

PhantomLord Aug 30 2020 at 01:03

Sto cercando di indagare anche su questo. Forse proguard offusca alcune classi di Play Core. Cerca di mantenere tutte le classi in Play core, Parcelable e Serializable Tuttavia nel logcat ci sono errori

-keep class * implements com.google.android.play { *; }
-keep class com.google.android.play.** { *; }
-keep interface com.google.android.play.** { *; }

-keepclassmembers class * implements android.os.Parcelable {
    static *** CREATOR;
}

-keepclassmembers class * implements java.io.Serializable {
    static final long serialVersionUID;
    static final java.io.ObjectStreamField[] serialPersistentFields;
    private void writeObject(java.io.ObjectOutputStream);
    private void readObject(java.io.ObjectInputStream);
    java.lang.Object writeReplace();
    java.lang.Object readResolve();
}