Skip to content

Commit 34095fd

Browse files
committed
Config + KTX
Change-Id: I149088c2182edc6caf4dc351e099230af4a51e46
1 parent 93d0856 commit 34095fd

File tree

7 files changed

+42
-34
lines changed

7 files changed

+42
-34
lines changed

perf/app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ android {
2424
dependencies {
2525
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
2626
implementation 'androidx.appcompat:appcompat:1.1.0'
27-
implementation "com.google.firebase:firebase-config:19.1.1"
27+
implementation "com.google.firebase:firebase-config-ktx:19.1.1"
2828
implementation "com.google.firebase:firebase-perf:19.0.5"
2929
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.61"
3030
}

perf/app/src/main/java/com/google/firebase/example/perf/kotlin/MainActivity.kt

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ import android.os.Bundle
44
import androidx.appcompat.app.AppCompatActivity
55
import com.google.firebase.example.perf.kotlin.model.ItemCache
66
import com.google.firebase.example.perf.kotlin.model.User
7+
import com.google.firebase.ktx.Firebase
78
import com.google.firebase.perf.FirebasePerformance
89
import com.google.firebase.perf.metrics.AddTrace
9-
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
10+
import com.google.firebase.remoteconfig.ktx.remoteConfig
1011
import devrel.firebase.google.com.firebaseoptions.R
1112
import java.io.DataOutputStream
1213
import java.io.IOException
@@ -66,14 +67,14 @@ class MainActivity : AppCompatActivity() {
6667
fun disableWithConfig() {
6768
// [START perf_disable_with_config]
6869
// Setup remote config
69-
val config = FirebaseRemoteConfig.getInstance()
70-
70+
val config = Firebase.remoteConfig
71+
7172
// You can uncomment the following two statements to permit more fetches when
7273
// validating your app, but you should comment out or delete these lines before
7374
// distributing your app in production.
74-
// val configSettings = FirebaseRemoteConfigSettings.Builder()
75-
// .setMinimumFetchIntervalInSeconds(3600)
76-
// .build()
75+
// val configSettings = remoteConfigSettings {
76+
// minimumFetchIntervalInSeconds = 3600
77+
// }
7778
// config.setConfigSettingsAsync(configSettings)
7879
// Load in-app defaults from an XML file that sets perf_disable to false until you update
7980
// values in the Firebase Console
@@ -94,7 +95,7 @@ class MainActivity : AppCompatActivity() {
9495
fun activateConfig() {
9596
// [START perf_activate_config]
9697
// Remote Config fetches and activates parameter values from the service
97-
val config = FirebaseRemoteConfig.getInstance()
98+
val config = Firebase.remoteConfig
9899
config.fetch(3600)
99100
.continueWithTask { task ->
100101
if (!task.isSuccessful) {

predictions/app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,6 @@ dependencies {
2828

2929
implementation "com.google.firebase:firebase-ads:18.3.0"
3030
implementation "com.google.firebase:firebase-analytics:17.2.2"
31-
implementation "com.google.firebase:firebase-config:19.1.1"
31+
implementation "com.google.firebase:firebase-config-ktx:19.1.1"
3232
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.61"
3333
}

predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/ConditionalAdsActivity.kt

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,22 @@
11
package com.google.firebase.example.predictions.kotlin
22

3-
import androidx.appcompat.app.AppCompatActivity
43
import android.view.View
4+
import androidx.appcompat.app.AppCompatActivity
55
import com.google.android.gms.ads.AdRequest
66
import com.google.android.gms.ads.AdView
77
import com.google.firebase.example.predictions.R
8+
import com.google.firebase.ktx.Firebase
89
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
9-
import java.util.HashMap
10+
import com.google.firebase.remoteconfig.ktx.get
11+
import com.google.firebase.remoteconfig.ktx.remoteConfig
1012

1113
class ConditionalAdsActivity : AppCompatActivity() {
1214

1315
private lateinit var firebaseRemoteConfig: FirebaseRemoteConfig
1416

1517
fun initRemoteConfig() {
1618
// [START pred_conditional_ads_init]
17-
firebaseRemoteConfig = FirebaseRemoteConfig.getInstance()
19+
firebaseRemoteConfig = Firebase.remoteConfig
1820

1921
val remoteConfigDefaults = hashMapOf<String, Any>(
2022
"ads_enabled" to true
@@ -50,7 +52,7 @@ class ConditionalAdsActivity : AppCompatActivity() {
5052

5153
// [START pred_conditional_ads_policy]
5254
private fun executeAdsPolicy() {
53-
val showAds = firebaseRemoteConfig.getBoolean("ads_enabled")
55+
val showAds = firebaseRemoteConfig["ads_enabled"].asBoolean()
5456
val adView = findViewById<AdView>(R.id.adView)
5557

5658
if (showAds) {

predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/MainActivity.kt

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
11
package com.google.firebase.example.predictions.kotlin
22

33
import android.os.Bundle
4-
import androidx.appcompat.app.AppCompatActivity
54
import android.view.View
5+
import androidx.appcompat.app.AppCompatActivity
66
import com.google.android.gms.ads.AdRequest
77
import com.google.firebase.analytics.FirebaseAnalytics
8-
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
8+
import com.google.firebase.ktx.Firebase
9+
import com.google.firebase.remoteconfig.ktx.get
10+
import com.google.firebase.remoteconfig.ktx.remoteConfig
911
import kotlinx.android.synthetic.main.activity_main.adView
1012

1113
class MainActivity : AppCompatActivity() {
1214

1315
fun configShowAds() {
1416
// [START pred_config_show_ads]
15-
val config = FirebaseRemoteConfig.getInstance()
17+
val config = Firebase.remoteConfig
1618

1719
val remoteConfigDefaults = hashMapOf<String, Any>(
1820
"ads_policy" to "ads_never"
@@ -43,9 +45,9 @@ class MainActivity : AppCompatActivity() {
4345

4446
private fun executeAdsPolicy() {
4547
// [START pred_ads_policy]
46-
val config = FirebaseRemoteConfig.getInstance()
47-
val adPolicy = config.getString("ads_policy")
48-
val willNotSpend = config.getBoolean("will_not_spend")
48+
val config = Firebase.remoteConfig
49+
val adPolicy = config["ads_policy"].asString()
50+
val willNotSpend = config["will_not_spend"].asBoolean()
4951

5052
if (adPolicy == "ads_always" || adPolicy == "ads_nonspenders" && willNotSpend) {
5153
val adRequest = AdRequest.Builder().build()
@@ -61,7 +63,7 @@ class MainActivity : AppCompatActivity() {
6163

6264
fun configPromoStrategy() {
6365
// [START config_promo_strategy]
64-
val config = FirebaseRemoteConfig.getInstance()
66+
val config = Firebase.remoteConfig
6567

6668
val remoteConfigDefaults = hashMapOf<String, Any>(
6769
"promoted_bundle" to "basic"
@@ -94,9 +96,9 @@ class MainActivity : AppCompatActivity() {
9496
private fun getPromotedBundle(): String {
9597
FirebaseAnalytics.getInstance(this).logEvent("promotion_set", Bundle())
9698

97-
val config = FirebaseRemoteConfig.getInstance()
98-
val promotedBundle = config.getString("promoted_bundle")
99-
val willSpend = config.getBoolean("predicted_will_spend")
99+
val config = Firebase.remoteConfig
100+
val promotedBundle = config["promoted_bundle"].asString()
101+
val willSpend = config["predicted_will_spend"].asBoolean()
100102

101103
return if (promotedBundle == "predicted" && willSpend) {
102104
"premium"
@@ -108,7 +110,7 @@ class MainActivity : AppCompatActivity() {
108110

109111
fun configPreventChurn() {
110112
// [START pred_config_prevent_churn]
111-
val config = FirebaseRemoteConfig.getInstance()
113+
val config = Firebase.remoteConfig
112114

113115
val remoteConfigDefaults = hashMapOf<String, Any>(
114116
"gift_policy" to "gift_never"
@@ -136,9 +138,9 @@ class MainActivity : AppCompatActivity() {
136138

137139
// [START pred_execute_gift_policy]
138140
private fun executeGiftPolicy() {
139-
val config = FirebaseRemoteConfig.getInstance()
140-
val giftPolicy = config.getString("gift_policy")
141-
val willChurn = config.getBoolean("will_churn")
141+
val config = Firebase.remoteConfig
142+
val giftPolicy = config["gift_policy"].asString()
143+
val willChurn = config["will_churn"].asBoolean()
142144

143145
if (giftPolicy == "gift_achievement") {
144146
grantGiftOnLevel2()

predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/OptimizePromotionsActivity.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.google.firebase.example.predictions.kotlin
22

33
import androidx.appcompat.app.AppCompatActivity
4+
import com.google.firebase.ktx.Firebase
45
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
5-
import java.util.HashMap
6+
import com.google.firebase.remoteconfig.ktx.get
7+
import com.google.firebase.remoteconfig.ktx.remoteConfig
68

79
class OptimizePromotionsActivity : AppCompatActivity() {
810

@@ -11,7 +13,7 @@ class OptimizePromotionsActivity : AppCompatActivity() {
1113

1214
private fun initConfig() {
1315
// [START pred_optimize_promotions_init]
14-
config = FirebaseRemoteConfig.getInstance()
16+
config = Firebase.remoteConfig
1517

1618
val remoteConfigDefaults = hashMapOf<String, Any>(
1719
"promoted_bundle" to "basic"
@@ -38,7 +40,7 @@ class OptimizePromotionsActivity : AppCompatActivity() {
3840
// Remote Config. This depends entirely on your app, but for
3941
// example, you might retrieve and use image assets based on the
4042
// specified bundle name.
41-
promotedBundle = config.getString("promoted_bundle")
43+
promotedBundle = config["promoted_bundle"].asString()
4244
// ...
4345
}
4446
}

predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/PreventChurnActivity.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package com.google.firebase.example.predictions.kotlin
22

33
import androidx.appcompat.app.AppCompatActivity
4-
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
5-
import java.util.HashMap
4+
import com.google.firebase.ktx.Firebase
5+
import com.google.firebase.remoteconfig.ktx.get
6+
import com.google.firebase.remoteconfig.ktx.remoteConfig
67

78
class PreventChurnActivity : AppCompatActivity() {
89

910
private fun preventChurn() {
1011
// [START pred_prevent_churn]
11-
val config = FirebaseRemoteConfig.getInstance()
12+
val config = Firebase.remoteConfig
1213

1314
val remoteConfigDefaults = hashMapOf<String, Any>(
1415
"grant_retention_gift" to false
@@ -26,7 +27,7 @@ class PreventChurnActivity : AppCompatActivity() {
2627
if (task.isSuccessful) {
2728
// Act on the retrieved parameters. For example, grant the
2829
// retention gift to players who haven't yet received one.
29-
val shouldGrantGift = config.getBoolean("grant_retention_gift")
30+
val shouldGrantGift = config["grant_retention_gift"].asBoolean()
3031
if (shouldGrantGift && !playerAlreadyReceivedGift()) {
3132
grantGiftToPlayer()
3233
}

0 commit comments

Comments
 (0)