مرحله 3: Firebase Remote Config را برای نمایش تجربیات تبلیغاتی خاص تنظیم کنید
مقدمه: بهینه سازی کسب درآمد ترکیبی با استفاده از AdMob ، Google Analytics و Firebase |
مرحله 1: از AdMob برای ایجاد واحدهای تبلیغاتی جدید برای نمایش استفاده کنید |
مرحله 2: Google Analytics را راه اندازی کنید |
مرحله 3: Firebase Remote Config را برای نمایش تجربیات تبلیغاتی خاص تنظیم کنید |
در پایان آخرین مرحله، با مخاطبان Google Analytics آشنا شدید. در این مرحله، یک پارامتر کنترل بولی Remote Config (به نام ad_control_switch
) ایجاد میکنید که از مخاطبان «خریداران» استفاده میکند. سپس منطقی را به کد برنامه خود اضافه می کنید که برنامه شما باید براساس مقدار آن پارامتر نمایش دهد.
پارامترها و شرایط Remote Config را در کنسول Firebase تنظیم کنید
در کنسول Firebase ، پروژه Firebase خود را باز کنید.
در قسمت سمت چپ، بخش Engage را گسترش دهید و سپس Remote Config را انتخاب کنید.
روی ایجاد پیکربندی (یا افزودن پارامتر اگر قبلاً از Remote Config استفاده کرده اید) کلیک کنید.
در پنل ایجاد پارامتر ، مراحل زیر را انجام دهید:
در قسمت نام پارامتر ،
ad_control_switch
را وارد کنید.از منوی کشویی
Data type
، Boolean را انتخاب کنید.روی Create new کلیک کنید و سپس Create new condition را انتخاب کنید.
در گفتگوی تعریف شرط جدید ، مراحل زیر را انجام دهید:
در قسمت Name ،
Purchasers Group
(یا هر نام دیگری که به راحتی قابل شناسایی برای شرط است) را وارد کنید.از منوی کشویی Applies if... ، مخاطبین کاربر را انتخاب کنید.
از منوی کشویی انتخاب مخاطب(ها) ، خریداران را انتخاب کنید.
روی ذخیره شرط کلیک کنید.
در پنل ایجاد پارامتر ، مراحل زیر را انجام دهید:
برای گروه Value of Purchasers , false را انتخاب کنید.
برای مقدار Default ، true را انتخاب کنید.
روی ذخیره و سپس انتشار تغییرات کلیک کنید.
این پیکربندی بررسی میکند که آیا کاربر در بین مخاطبان «خریداران» است (یعنی کاربر پرداختکننده است):
اگر کاربر در بین مخاطبان «خریداران» باشد، Remote Config مقدار
false
را برای پارامترad_control_switch
برمیگرداند.اگر کاربر در بین مخاطبان «خریداران» نباشد ، Remote Config مقدار
true
را برای پارامترad_control_switch
برمیگرداند.
در مراحل زیر، Remote Config برای مدیریت این مقادیر پارامتر در برنامه خود پیاده سازی می کنید.
Remote Config SDK را به برنامه خود اضافه کنید
قبل از استفاده از Remote Config در کد برنامه خود، Remote Config SDK را به پایگاه کد برنامه خود اضافه کنید. توجه داشته باشید که برنامه شما باید قبلاً دارای SDK Google Mobile Ads ( AdMob ) و Google Analytics برای Firebase SDK مربوط به مراحل قبلی این آموزش باشد.
سویفت
Remote Config pod را در پادفایل خود اضافه و نصب کنید:
pod 'Firebase/RemoteConfig'
اندروید
وابستگی کتابخانه Remote Config را به فایل build.gradle
خود اضافه کنید:
implementation 'com.google.firebase:firebase-config:22.0.0'
بال زدن
از ریشه پروژه Flutter خود، دستور زیر را برای نصب افزونه Remote Config اجرا کنید:
flutter pub add firebase_remote_config
وحدت
جدیدترین Firebase Unity SDK را دانلود و نصب کنید و سپس بسته Remote Config به پروژه خود اضافه کنید:
FirebaseRemoteConfig.unitypackage
نمونه Remote Config را پیکربندی کنید
برای اینکه برنامه شما بتواند از مقادیر پارامتر Remote Config استفاده کند، نمونه Remote Config را پیکربندی کنید تا بتواند مقادیر جدیدی را برای نمونه برنامه مشتری واکشی کند.
در این مثال، Remote Config پیکربندی شده است تا مقادیر پارامترهای جدید را هر ساعت یک بار بررسی کند.
سویفت
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);
بال زدن
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');
});
وحدت
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");
}
Remote Config واکشی و فعال کنید
پارامتر Remote Config را واکشی و فعال کنید تا بتواند از مقادیر پارامتر جدید استفاده کند.
میخواهید در مرحله بارگیری برنامهتان هرچه زودتر این تماس را برقرار کنید، زیرا این تماس ناهمزمان است و باید مقدار Remote Config از قبل واکشی شود تا برنامهتان بداند که آیا تبلیغ را نشان میدهد یا خیر.
سویفت
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();
}
});
بال زدن
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();
وحدت
remoteConfig.FetchAndActivateAsync().ContinueWithOnMainThread(task => {
if (task.IsFaulted) {
Debug.LogWarning("Config params failed to update");
} else {
Debug.Log("Config params updated: " + task.Result);
}
LoadAdUnit();
});
اکنون برنامه شما برای کنترل پارامتر Remote Config که قبلا در این مرحله ایجاد کرده اید پیکربندی شده است.
از مقدار پارامتر Remote Config استفاده کنید
از مقدار Remote Config از پیش واکشی شده در loadAdUnit()
برای تعیین اینکه آیا نمونه برنامه باید یکی از موارد زیر را انجام دهد استفاده کنید:
مقدار پارامتر
ad_control_switch
بهtrue
تبدیل می شود: تبلیغ بینابینی را نشان می دهد (زیرا کاربر کاربر غیرپرداختی است).مقدار پارامتر
ad_control_switch
بهfalse
تبدیل می شود: تبلیغ را نشان ندهید (زیرا کاربر کاربر پرداخت کننده است).
سویفت
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.
}
}
بال زدن
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.
}
}
وحدت
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.
}
}
برنامه خود را آزاد کنید
از آنجایی که منطق نمایش یا عدم نمایش آگهی در پایگاه کد شما قرار دارد، باید نسخه جدیدی از برنامه خود را منتشر کنید که حاوی این منطق باشد.
اگر مراحل این آموزش را دنبال کردید، برنامه شما باید فوراً شروع به ارائه یک تجربه تبلیغات درون برنامه ای سفارشی برای کاربران شما کند. میتوانید درآمد تبلیغات خود را هم در حساب AdMob و هم در داشبوردهای Google Analytics (چه در کنسول Firebase یا Google Analytics UI) نظارت کنید.
و بس! شما آموزش بهینه سازی درآمد ترکیبی با استفاده از AdMob ، Google Analytics و Firebase را تکمیل کرده اید.
منابع مرتبط
راهنماهای راه حل دیگری را بررسی کنید:
تماشای یک سری ویدیو: درآمد برنامه خود را با Firebase و AdMob بهینه کنید
مرحله 2: Google Analytics را راه اندازی کنید