Closed kenthor closed 1 year ago
Emulator and phone are both using the same Google account
Emulator is running Android 8.1.0 The phone is running Android 10
This is the code I am executing:
Future<void> _requestReview() async {
if (await _inAppReview.isAvailable()) _inAppReview.requestReview();
}
Debug output when executing on emulator:
D/EGL_emulation(22781): eglMakeCurrent: 0xa78961c0: ver 2 0 (tinfo 0xaa4ffc90)
I/InAppReviewPlugin(22781): isAvailable: called
I/InAppReviewPlugin(22781): isAvailable: playStoreInstalled: true
I/InAppReviewPlugin(22781): isAvailable:lollipopOrLater: true
I/InAppReviewPlugin(22781): isAvailable: The Play Store is available and Android 5 or later is being used
I/InAppReviewPlugin(22781): cacheReviewInfo: called
I/PlayCore(22781): UID: [10084] PID: [22781] ReviewService : requestInAppReview (ws.thorup.checkedout)
I/InAppReviewPlugin(22781): cacheReviewInfo: Requesting review flow
I/PlayCore(22781): UID: [10084] PID: [22781] ReviewService : Initiate binding to the service.
I/PlayCore(22781): UID: [10084] PID: [22781] ReviewService : ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.inappreviewservice.InAppReviewService})
I/PlayCore(22781): UID: [10084] PID: [22781] ReviewService : linkToDeath
I/PlayCore(22781): UID: [10084] PID: [22781] OnRequestInstallCallback : onGetLaunchReviewFlowInfo
I/PlayCore(22781): UID: [10084] PID: [22781] ReviewService : Unbind from service.
I/InAppReviewPlugin(22781): onComplete: Successfully requested review flow
I/InAppReviewPlugin(22781): requestReview: called
I/InAppReviewPlugin(22781): launchReviewFlow: called
W/JavaBinder(22781): BinderProxy is being destroyed but the application did not call unlinkToDeath to unlink all of its death recipients beforehand. Releasing leaked death recipient: com.google.android.play.core.internal.ai
Debug output when executing on phone:
I/InAppReviewPlugin( 3957): isAvailable: called
I/InAppReviewPlugin( 3957): isAvailable: playStoreInstalled: true
I/InAppReviewPlugin( 3957): isAvailable:lollipopOrLater: true
I/InAppReviewPlugin( 3957): isAvailable: The Play Store is available and Android 5 or later is being used
I/InAppReviewPlugin( 3957): cacheReviewInfo: called
I/PlayCore( 3957): UID: [10438] PID: [3957] ReviewService : requestInAppReview (ws.thorup.checkedout)
I/InAppReviewPlugin( 3957): cacheReviewInfo: Requesting review flow
I/PlayCore( 3957): UID: [10438] PID: [3957] ReviewService : Initiate binding to the service.
I/PlayCore( 3957): UID: [10438] PID: [3957] ReviewService : ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.inappreviewservice.InAppReviewService})
I/PlayCore( 3957): UID: [10438] PID: [3957] ReviewService : linkToDeath
I/PlayCore( 3957): UID: [10438] PID: [3957] OnRequestInstallCallback : onGetLaunchReviewFlowInfo
I/PlayCore( 3957): UID: [10438] PID: [3957] ReviewService : Unbind from service.
I/InAppReviewPlugin( 3957): onComplete: Successfully requested review flow
I/InAppReviewPlugin( 3957): requestReview: called
I/InAppReviewPlugin( 3957): launchReviewFlow: called
W/ActivityThread( 3957): handleWindowVisibility: no activity for token android.os.BinderProxy@ed14c34
I/MultiWindowDecorSupport( 3957): updateCaptionType >> DecorView@88d7a5d[], isFloating: true, isApplication: true, hasWindowDecorCaption: false, hasWindowControllerCallback: true
D/MultiWindowDecorSupport( 3957): setCaptionType = 0, DecorView = DecorView@88d7a5d[]
D/ViewRootImpl@547e71e[PlayCoreDialogWrapperActivity]( 3957): setView = com.android.internal.policy.DecorView@88d7a5d TM=true MM=false
D/ViewRootImpl@6456ae0[MainActivity]( 3957): MSG_WINDOW_FOCUS_CHANGED 0 1
D/InputMethodManager( 3957): prepareNavigationBarInfo() DecorView@7c0a747[MainActivity]
D/InputMethodManager( 3957): getNavigationBarColor() -855310
D/ViewRootImpl@547e71e[PlayCoreDialogWrapperActivity]( 3957): Relayout returned: old=(0,63,1080,2094) new=(540,1047,540,1047) req=(0,0)0 dur=8 res=0x7 s={true 483598962688} ch=true
D/OpenGLRenderer( 3957): createReliableSurface : 0x705fea98c0(0x7098be9000)
I/mali_winsys( 3957): new_window_surface() [1x1] return: 0x3000
D/ViewRootImpl@6456ae0[MainActivity]( 3957): stopped(false) old=false
D/ViewRootImpl@547e71e[PlayCoreDialogWrapperActivity]( 3957): stopped(true) old=false
D/OpenGLRenderer( 3957): destroyEglSurface : 0x70fc266280
I/mali_egl( 3957): eglDestroySurface() in
I/mali_winsys( 3957): delete_surface() [1x1] return
I/mali_egl( 3957): eglDestroySurface() out
W/libEGL ( 3957): EGLNativeWindowType 0x705fea98d0 disconnect failed
D/OpenGLRenderer( 3957): ~ReliableSurface : 0x705fea98c0
D/ViewRootImpl@547e71e[PlayCoreDialogWrapperActivity]( 3957): dispatchDetachedFromWindow
D/InputTransport( 3957): Input channel destroyed: 'c7404f4', fd=105
D/ViewRootImpl@6456ae0[MainActivity]( 3957): MSG_WINDOW_FOCUS_CHANGED 1 1
D/InputMethodManager( 3957): prepareNavigationBarInfo() DecorView@7c0a747[MainActivity]
D/InputMethodManager( 3957): getNavigationBarColor() -855310
D/ViewRootImpl@6456ae0[MainActivity]( 3957): MSG_WINDOW_FOCUS_CHANGED 0 1
D/InputMethodManager( 3957): prepareNavigationBarInfo() DecorView@7c0a747[MainActivity]
D/InputMethodManager( 3957): getNavigationBarColor() -855310
D/ViewRootImpl@6456ae0[MainActivity]( 3957): MSG_WINDOW_FOCUS_CHANGED 1 1
D/InputMethodManager( 3957): prepareNavigationBarInfo() DecorView@7c0a747[MainActivity]
D/InputMethodManager( 3957): getNavigationBarColor() -855310
@kenthor Could you try installing your app via Internal App Sharing instead and let me know if you still face this issue? https://developer.android.com/guide/playcore/in-app-review/test#internal-app-sharing
Installing via App Sharing did the trick! Now the review dialog shows up on the phone.
The documentation does mention that some verification steps will be skipped when using App Sharing, so maybe the reason for the dialog not being shown when using the internal test track could be that Google Play regards the dialog to be requested too soon (?)
Installing via App Sharing did the trick! Now the review dialog shows up on the phone.
The documentation does mention that some verification steps will be skipped when using App Sharing, so maybe the reason for the dialog not being shown when using the internal test track could be that Google Play regards the dialog to be requested too soon (?)
The verification steps is referring to the app being processed/reviewed which would increase the wait time before you could install the app. I'll test the plugin using the internal test track to see if I can reproduce the original issue you faced.
Closing as a stale issue. Drop a comment and I'll reopen it.
I think I'm experiencing the opposite problem to other people:
I can get the review dialog to appear when I'm running a debug version in the emulator.
The same debug version does not open the review dialog on my phone (Samsung Galaxy 9+). (the isAvailable() function returns true on the phone)
I have published a release version on an internal test track and tried to download and run this. Same result: no review dialog is showing up.
I have never submitted any review, so quota limits should not be the issue here.