commit 5db4b7f0be02b33541bcfb3d8e7c79154966f738
parent d65b134d971ae57249d9dc93749a7a37c1f8b6c9
Author: Cristina Horotan <chorotan@mozilla.com>
Date: Mon, 6 Oct 2025 12:54:08 +0300
Revert "Bug 1988993 - Scope listener to activity, to remove it during onStop r=android-reviewers,twhite,jonalmeida" for causing conflict on bug 1986398
This reverts commit c139392fab8a807317ecd1b210c8e6f9f5bb7e32.
Diffstat:
1 file changed, 3 insertions(+), 7 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/PlayStoreReviewPromptController.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/components/PlayStoreReviewPromptController.kt
@@ -9,7 +9,6 @@ import android.content.ActivityNotFoundException
import android.content.Intent
import androidx.annotation.VisibleForTesting
import androidx.core.net.toUri
-import com.google.android.gms.tasks.Task
import com.google.android.play.core.review.ReviewException
import com.google.android.play.core.review.ReviewInfo
import com.google.android.play.core.review.ReviewManager
@@ -45,7 +44,7 @@ class PlayStoreReviewPromptController(
logger.info("tryPromptReview in progress...")
val request = withContext(Dispatchers.IO) { manager.requestReviewFlow() }
- request.addOnCompleteListener(activity) { task ->
+ request.addOnCompleteListener { task ->
val promptWasDisplayed: Boolean
if (task.isSuccessful) {
@@ -58,7 +57,8 @@ class PlayStoreReviewPromptController(
} else {
promptWasDisplayed = false
- logger.warn("Failed to launch in-app review flow due to: ${task.reviewErrorCode}.")
+ @ReviewErrorCode val reviewErrorCode = (task.exception as ReviewException).errorCode
+ logger.warn("Failed to launch in-app review flow due to: $reviewErrorCode.")
}
if (!promptWasDisplayed) {
@@ -101,10 +101,6 @@ class PlayStoreReviewPromptController(
}
}
-@ReviewErrorCode
-private val Task<ReviewInfo>.reviewErrorCode: Int
- get() = (exception as ReviewException).errorCode
-
private val ReviewInfo.promptDisplayState: ReviewPromptDisplayState
get() {
// The internals of ReviewInfo cannot be accessed directly or cast nicely, so let's simply use