For #14318 - Use old API to try to fix startup crash without GPS

pull/35/head
Jeff Boek 4 years ago
parent ace6b99c89
commit ff805e53ed

@ -440,7 +440,6 @@ dependencies {
implementation Deps.google_ads_id // Required for the Google Advertising ID
implementation Deps.google_play_store // Required for in-app reviews
implementation Deps.google_play_core_ktx // Required for in-app reviews
androidTestImplementation Deps.uiautomator
// Removed pending AndroidX fixes

@ -7,8 +7,6 @@ package org.mozilla.fenix.components
import android.app.Activity
import android.content.Context
import androidx.annotation.VisibleForTesting
import com.google.android.play.core.ktx.launchReview
import com.google.android.play.core.ktx.requestReview
import com.google.android.play.core.review.ReviewManagerFactory
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.withContext
@ -46,12 +44,16 @@ class ReviewPromptController(
private val context: Context,
private val reviewSettings: ReviewSettings,
private val timeNowInMillis: () -> Long = { System.currentTimeMillis() },
private val tryPromptReview: suspend (Activity) -> Unit = {
private val tryPromptReview: suspend (Activity) -> Unit = { activity ->
val manager = ReviewManagerFactory.create(context)
val reviewInfo = manager.requestReview()
val flow = manager.requestReviewFlow()
withContext(Main) {
manager.launchReview(it, reviewInfo)
flow.addOnCompleteListener {
if (it.isSuccessful) {
manager.launchReviewFlow(activity, it.result)
}
}
}
}
) {

@ -5,14 +5,8 @@
package org.mozilla.fenix.settings
import android.os.Bundle
import androidx.lifecycle.lifecycleScope
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import androidx.preference.SwitchPreference
import com.google.android.play.core.ktx.launchReview
import com.google.android.play.core.ktx.requestReview
import com.google.android.play.core.review.ReviewManagerFactory
import kotlinx.coroutines.launch
import org.mozilla.fenix.FeatureFlags
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.settings
@ -48,16 +42,5 @@ class SecretSettingsFragment : PreferenceFragmentCompat() {
isChecked = context.settings().syncedTabsInTabsTray
onPreferenceChangeListener = SharedPreferenceUpdater()
}
requirePreference<Preference>(R.string.pref_key_temp_review_prompt).apply {
setOnPreferenceClickListener {
viewLifecycleOwner.lifecycleScope.launch {
val manager = ReviewManagerFactory.create(requireContext())
val reviewInfo = manager.requestReview()
manager.launchReview(requireActivity(), reviewInfo)
}
true
}
}
}
}

@ -206,5 +206,4 @@
<string name="pref_key_login_exceptions" translatable="false">pref_key_login_exceptions</string>
<string name="pref_key_show_collections_placeholder_home" translatable="false">pref_key_show_collections_home</string>
<string name="pref_key_temp_review_prompt">pref_key_temp_review_prompt</string>
</resources>

@ -19,6 +19,4 @@
android:key="@string/pref_key_synced_tabs_tabs_tray"
android:title="@string/preferences_debug_synced_tabs_tabs_tray"
app:iconSpaceReserved="false" />
<Preference android:title="Prompt for review"
android:key="@string/pref_key_temp_review_prompt" />
</PreferenceScreen>

@ -43,7 +43,6 @@ object Versions {
const val google_ads_id_version = "16.0.0"
const val google_play_store_version = "1.8.0"
const val google_play_core_ktx_version = "1.8.1"
const val airbnb_lottie = "3.4.0"
}
@ -214,7 +213,6 @@ object Deps {
// Required for in-app reviews
const val google_play_store = "com.google.android.play:core:${Versions.google_play_store_version}"
const val google_play_core_ktx = "com.google.android.play:core-ktx:${Versions.google_play_core_ktx_version}"
const val lottie = "com.airbnb.android:lottie:${Versions.airbnb_lottie}"

Loading…
Cancel
Save