Krok 3: skonfiguruj zdalną konfigurację Firebase, aby wyświetlać określone reklamy
Wprowadzenie: Optymalizuj monetyzację hybrydową za pomocą AdMob, Google Analytics i Firebase |
Krok 1: Użyj AdMob, aby utworzyć nowe jednostki reklamowe do wyświetlenia |
Krok 2: Skonfiguruj Google Analytics |
Krok 3: skonfiguruj zdalną konfigurację Firebase, aby wyświetlać określone reklamy |
Na końcu ostatniego kroku dowiedziałeś się o odbiorcach Google Analytics. W tym kroku utworzysz kontrolowany przez wartość logiczną parametr Remote Config (zwany ad_control_switch
), który wykorzystuje odbiorców „Kupujący”. Następnie dodasz do kodu aplikacji logikę określającą, co aplikacja powinna wyświetlać na podstawie wartości tego parametru.
Skonfiguruj parametry i warunki Zdalnej konfiguracji w konsoli Firebase
W konsoli Firebase otwórz swój projekt Firebase.
W panelu po lewej stronie rozwiń sekcję Angażuj , a następnie wybierz opcję Zdalna konfiguracja .
Kliknij opcję Utwórz konfigurację (lub Dodaj parametr , jeśli korzystałeś już wcześniej ze zdalnej konfiguracji).
W panelu Utwórz parametry wykonaj następujące kroki:
W polu Nazwa parametru wpisz
ad_control_switch
.Z menu rozwijanego
Data type
wybierz opcję Boolean .Kliknij opcję Utwórz nowy , a następnie wybierz opcję Utwórz nowy warunek .
W oknie dialogowym Zdefiniuj nowy warunek wykonaj następujące kroki:
W polu Nazwa wprowadź
Purchasers Group
(lub inną łatwą do zidentyfikowania nazwę warunku).Z menu rozwijanego Stosuje się, jeśli... wybierz opcję Odbiorcy użytkowników .
Z menu rozwijanego Wybierz odbiorców wybierz opcję Kupujący .
Kliknij Zapisz warunek .
Wróć do panelu Utwórz parametry i wykonaj następujące kroki:
W polu Grupa wartości nabywców wybierz wartość false .
Jako wartość domyślną wybierz opcję true .
Kliknij Zapisz , a następnie Opublikuj zmiany .
Ta konfiguracja sprawdzi, czy użytkownik należy do grupy odbiorców „Kupujący” (czyli jest użytkownikiem płacącym):
Jeśli użytkownik należy do grupy odbiorców „Kupujący”, Remote Config zwróci wartość
false
dla parametruad_control_switch
.Jeśli użytkownik nie należy do grupy odbiorców „Kupujący”, Remote Config zwróci wartość
true
dla parametruad_control_switch
.
W poniższych krokach zaimplementujesz zdalną konfigurację w swojej aplikacji, aby obsługiwać te wartości parametrów.
Dodaj pakiet SDK zdalnej konfiguracji do swojej aplikacji
Przed użyciem funkcji Remote Config w kodzie aplikacji dodaj zestaw SDK Remote Config do bazy kodu aplikacji. Pamiętaj, że Twoja aplikacja powinna już mieć pakiet SDK do reklam mobilnych Google (AdMob) i pakiet SDK Google Analytics dla Firebase z poprzednich kroków tego samouczka.
Szybki
Dodaj i zainstaluj moduł Remote Config w swoim pliku pod:
pod 'Firebase/RemoteConfig'
Android
Dodaj zależność biblioteki Remote Config do pliku build.gradle
:
implementation 'com.google.firebase:firebase-config:21.6.3'
Trzepotanie
W katalogu głównym projektu Flutter uruchom następujące polecenie, aby zainstalować wtyczkę Remote Config:
flutter pub add firebase_remote_config
Jedność
Pobierz i zainstaluj najnowszy pakiet SDK Firebase Unity , a następnie dodaj pakiet Remote Config do swojego projektu:
FirebaseRemoteConfig.unitypackage
Skonfiguruj instancję Remote Config
Aby aplikacja mogła używać wartości parametrów Remote Config, skonfiguruj instancję Remote Config tak, aby mogła pobierać nowe wartości dla instancji aplikacji klienckiej.
W tym przykładzie usługa Remote Config jest skonfigurowana tak, aby co godzinę sprawdzała nowe wartości parametrów.
Szybki
remoteConfig = RemoteConfig.remoteConfig()
let settings = RemoteConfigSettings()
settings.minimumFetchInterval = 3600
remoteConfig.configSettings = settings
Kotlin+KTX
remoteConfig = Firebase.remoteConfig
val configSettings = remoteConfigSettings {
minimumFetchIntervalInSeconds = 3600
}
remoteConfig.setConfigSettingsAsync(configSettings)
Java
mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setMinimumFetchIntervalInSeconds(3600)
.build();
mFirebaseRemoteConfig.setConfigSettingsAsync(configSettings);
Trzepotanie
remoteConfig = FirebaseRemoteConfig.instance;
final configSettings = FirebaseRemoteConfigSettings(
minimumFetchInterval: Duration(hours: 1),
);
await remoteConfig.setConfigSettings(configSettings);
// Use the `onConfigUpdated` callback to listen for changes to the config settings.
remoteConfig.onConfigUpdated.listen((_) {
print('Config settings confirmed');
});
Jedność
var remoteConfig = FirebaseRemoteConfig.DefaultInstance;
var configSettings = new ConfigSettings {
MinimumFetchInternalInMilliseconds =
(ulong)(new TimeSpan(1, 0, 0).TotalMilliseconds)
};
remoteConfig.SetConfigSettingsAsync(configSettings)
.ContinueWithOnMainThread(task => {
Debug.Log("Config settings confirmed");
}
Pobierz i aktywuj zdalną konfigurację
Pobierz i aktywuj parametr Remote Config, aby mógł zacząć korzystać z nowych wartości parametrów.
Chcesz wykonać to wywołanie jak najwcześniej w fazie ładowania aplikacji, ponieważ jest ono asynchroniczne i potrzebujesz wcześniej pobranej wartości Remote Config, aby aplikacja wiedziała, czy wyświetlić reklamę.
Szybki
remoteConfig.fetch() { (status, error) -> Void in
if status == .success {
print("Config fetched!")
self.remoteConfig.activate() { (changed, error) in
// ...
}
} else {
print("Config not fetched")
print("Error: \(error?.localizedDescription ?? "No error available.")")
}
self.loadAdUnit()
}
Kotlin+KTX
remoteConfig.fetchAndActivate()
.addOnCompleteListener(this) { task ->
if (task.isSuccessful) {
val updated = task.result
Log.d(TAG, "Config params updated: $updated")
} else {
Log.d(TAG, "Config params failed to update")
}
loadAdUnit()
}
Java
mFirebaseRemoteConfig.fetchAndActivate()
.addOnCompleteListener(this, new OnCompleteListener<Boolean>() {
@Override
public void onComplete(@NonNull Task<Boolean> task) {
if (task.isSuccessful()) {
boolean updated = task.getResult();
Log.d(TAG, "Config params updated: " + updated);
} else {
Log.d(TAG, "Config params failed to update");
}
loadAdUnit();
}
});
Trzepotanie
remoteConfig = FirebaseRemoteConfig.instance;
// Fetch and activate the latest Remote Config values.
final updated = await remoteConfig.fetchAndActivate();
// Check if the config params were updated successfully.
if (updated) {
print('Config params updated');
} else {
print('Config params failed to update');
}
// Load the ad unit.
_loadAdUnit();
Jedność
remoteConfig.FetchAndActivateAsync().ContinueWithOnMainThread(task => {
if (task.IsFaulted) {
Debug.LogWarning("Config params failed to update");
} else {
Debug.Log("Config params updated: " + task.Result);
}
LoadAdUnit();
});
Twoja aplikacja jest teraz skonfigurowana do obsługi parametru Remote Config utworzonego wcześniej w tym kroku.
Użyj wartości parametru Zdalna konfiguracja
Użyj wstępnie pobranej wartości Remote Config w funkcji loadAdUnit()
, aby określić, czy instancja aplikacji powinna wykonać jedną z następujących czynności:
Wartość parametru
ad_control_switch
przyjmuje wartośćtrue
: wyświetla reklamę pełnoekranową (ponieważ użytkownik nie płaci).Wartość parametru
ad_control_switch
przyjmuje wartośćfalse
: nie wyświetlaj reklamy (ponieważ użytkownik jest użytkownikiem płacącym).
Szybki
private func loadAdUnit() {
let showAds = remoteConfig["ad_control_switch"].boolValue
if showAds {
// Load interstitial ad (implemented ad unit)
// per AdMob instructions (the first step of this tutorial).
} else {
// Don't show ads.
}
}
Kotlin+KTX
private fun loadAdUnit() {
var showAds = remoteConfig.getBoolean(ad_control_switch)
if (showAds) {
// Load interstitial ad (implemented ad unit)
// per AdMob instructions (the first step of this tutorial).
} else {
// Don't show ads.
}
}
Java
private void loadAdUnit() {
boolean showAds =
mFirebaseRemoteConfig.getBoolean(ad_control_switch);
if (showAds) {
// Load interstitial ad (implemented ad unit)
// per AdMob instructions (the first step of this tutorial).
} else {
// Don't show ads.
}
}
Trzepotanie
void _loadAdUnit() {
bool showAds = remoteConfig.getBool(ad_control_switch);
if (showAds) {
// Load interstitial ad (implemented ad unit)
// per AdMob instructions (the first step of this tutorial).
} else {
// Don't show ads.
}
}
Jedność
void LoadAdUnit() {
bool showAds =
remoteConfig.GetValue("ad_control_switch").BooleanValue;
if (showAds) {
// Load interstitial ad (implemented ad unit)
// per AdMob instructions (the first step of this tutorial).
} else {
// Don't show ads.
}
}
Wydaj swoją aplikację
Ponieważ logika dotycząca wyświetlania reklamy lub jej braku znajduje się w Twojej bazie kodu, musisz wypuścić nową wersję aplikacji, która będzie zawierała tę logikę.
Jeśli wykonałeś czynności opisane w tym samouczku, Twoja aplikacja powinna natychmiast zacząć wyświetlać użytkownikom spersonalizowane reklamy w aplikacji. Możesz monitorować przychody z reklam zarówno na koncie AdMob, jak i w panelach Google Analytics (w konsoli Firebase lub w interfejsie Google Analytics).
I to wszystko! Ukończyłeś samouczek optymalizacji zarabiania na hybrydach za pomocą AdMob, Google Analytics i Firebase.
Powiązane zasoby
Sprawdź inne przewodniki po rozwiązaniach:
Obejrzyj serię filmów: Optymalizuj przychody z aplikacji dzięki Firebase i AdMob
Krok 2: Skonfiguruj Google Analytics