ขั้นตอนที่ 3: ตั้งค่าการกำหนดค่าระยะไกลของ Firebase เพื่อแสดงประสบการณ์โฆษณาที่เฉพาะเจาะจง
บทนำ: เพิ่มประสิทธิภาพการสร้างรายได้แบบผสมโดยใช้ AdMob, Google Analytics และ Firebase |
ขั้นตอนที่ 1: ใช้ AdMob เพื่อสร้างหน่วยโฆษณาใหม่สำหรับการแสดงผล |
ขั้นตอนที่ 2: ตั้งค่า Google Analytics |
ขั้นตอนที่ 3: ตั้งค่าการกำหนดค่าระยะไกลของ Firebase เพื่อแสดงประสบการณ์โฆษณาที่เฉพาะเจาะจง |
ในตอนท้ายของขั้นตอนสุดท้าย คุณได้เรียนรู้เกี่ยวกับผู้ชม Google Analytics ในขั้นตอนนี้ คุณจะสร้างพารามิเตอร์ที่ควบคุมบูลีนการกำหนดค่าระยะไกล (เรียกว่า ad_control_switch
) ที่ใช้ประโยชน์จากกลุ่มเป้าหมาย "ผู้ซื้อ" จากนั้น คุณจะเพิ่มตรรกะลงในโค้ดของแอปสำหรับสิ่งที่แอปของคุณควรแสดงตามค่าของพารามิเตอร์นั้น
ตั้งค่าพารามิเตอร์และเงื่อนไขการกำหนดค่าระยะไกลในคอนโซล Firebase
ใน คอนโซล Firebase ให้เปิดโปรเจ็กต์ Firebase ของคุณ
ในบานหน้าต่างด้านซ้าย ให้ขยายส่วน Engage จากนั้นเลือก Remote Config
คลิก สร้างการกำหนดค่า (หรือ เพิ่มพารามิเตอร์ หากคุณเคยใช้การกำหนดค่าระยะไกลมาก่อน)
ในพาเนล สร้างพารามิเตอร์ ให้ทำตามขั้นตอนต่อไปนี้:
ในช่อง ชื่อพารามิเตอร์ ให้ป้อน
ad_control_switch
จากเมนูแบบเลื่อนลง
Data type
ให้เลือก บูลีนคลิก สร้างใหม่ จากนั้นเลือก สร้างเงื่อนไขใหม่
ในกล่องโต้ตอบ กำหนดเงื่อนไขใหม่ ให้ทำตามขั้นตอนต่อไปนี้:
ในช่อง ชื่อ ให้ป้อน
Purchasers Group
(หรือชื่ออื่นที่สามารถระบุเงื่อนไขได้ง่าย)จากเมนูแบบเลื่อนลง ใช้หาก... ให้เลือก ผู้ชมของผู้ใช้
จากเมนูแบบเลื่อนลง เลือกผู้ชม ให้เลือก ผู้ซื้อ
คลิก บันทึกเงื่อนไข
กลับไปที่พาเนล สร้างพารามิเตอร์ ให้ทำตามขั้นตอนต่อไปนี้:
สำหรับ มูลค่า ของ กลุ่มผู้ซื้อ ให้เลือก เท็จ
สำหรับ ค่าเริ่มต้น ให้เลือก true
คลิก บันทึก จากนั้น เผยแพร่การเปลี่ยนแปลง
การกำหนดค่านี้จะตรวจสอบว่าผู้ใช้อยู่ในกลุ่มเป้าหมาย "ผู้ซื้อ" หรือไม่ (นั่นคือ พวกเขาเป็นผู้ใช้ที่ชำระเงิน)
หากผู้ใช้อยู่ในกลุ่มเป้าหมาย "ผู้ซื้อ" การกำหนดค่าระยะไกลจะส่งคืนค่า
false
สำหรับพารามิเตอร์ad_control_switch
หากผู้ใช้ ไม่ได้ อยู่ในผู้ชม "ผู้ซื้อ" การกำหนดค่าระยะไกลจะส่งคืนค่า
true
สำหรับพารามิเตอร์ad_control_switch
ในขั้นตอนต่อไปนี้ คุณจะต้องใช้การกำหนดค่าระยะไกลในแอปของคุณเพื่อจัดการค่าพารามิเตอร์เหล่านี้
เพิ่ม Remote Config SDK ลงในแอปของคุณ
ก่อนที่จะใช้การกำหนดค่าระยะไกลในโค้ดแอปพลิเคชันของคุณ ให้เพิ่ม Remote Config SDK ลงในโค้ดเบสของแอปของคุณ โปรดทราบว่าแอปของคุณควรมี SDK โฆษณาบนอุปกรณ์เคลื่อนที่ของ Google (AdMob) และ SDK ของ Google Analytics สำหรับ Firebase จากขั้นตอนก่อนหน้าของบทแนะนำนี้
สวิฟท์
เพิ่มและติดตั้งพ็อด Remote Config ใน podfile ของคุณ:
pod 'Firebase/RemoteConfig'
หุ่นยนต์
เพิ่มการพึ่งพาไลบรารี Remote Config ให้กับไฟล์ build.gradle
ของคุณ:
implementation 'com.google.firebase:firebase-config:21.6.3'
กระพือปีก
จากรากของโปรเจ็กต์ Flutter ของคุณ ให้รันคำสั่งต่อไปนี้เพื่อติดตั้งปลั๊กอิน Remote Config:
flutter pub add firebase_remote_config
ความสามัคคี
ดาวน์โหลดและติดตั้ง Firebase Unity SDK ล่าสุด จากนั้นเพิ่มแพ็คเกจ Remote Config ให้กับโปรเจ็กต์ของคุณ:
FirebaseRemoteConfig.unitypackage
กำหนดค่าอินสแตนซ์การกำหนดค่าระยะไกล
เพื่อให้แอปของคุณสามารถใช้ค่าพารามิเตอร์การกำหนดค่าระยะไกลได้ ให้กำหนดค่าอินสแตนซ์การกำหนดค่าระยะไกลเพื่อให้สามารถดึงค่าใหม่สำหรับอินสแตนซ์แอปไคลเอ็นต์ได้
ในตัวอย่างนี้ การกำหนดค่าระยะไกลได้รับการกำหนดค่าให้ตรวจสอบค่าพารามิเตอร์ใหม่ทุกๆ ชั่วโมง
สวิฟท์
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 เพื่อให้สามารถเริ่มใช้ค่าพารามิเตอร์ใหม่ได้
คุณต้องการโทรนี้โดยเร็วที่สุดในช่วงการโหลดแอปของคุณ เนื่องจากการเรียกนี้ไม่พร้อมกัน และคุณต้องดึงค่าการกำหนดค่าระยะไกลล่วงหน้าเพื่อให้แอปรู้ว่าจะแสดงโฆษณาหรือไม่
สวิฟท์
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
ใช้ค่าการกำหนดค่าระยะไกลที่ดึงมาล่วงหน้าในฟังก์ชัน 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 หรือ UI ของ Google Analytics)
แค่นั้นแหละ! คุณได้เสร็จสิ้นบทแนะนำสำหรับการเพิ่มประสิทธิภาพการสร้างรายได้แบบผสมโดยใช้ AdMob, Google Analytics และ Firebase แล้ว
ทรัพยากรที่เกี่ยวข้อง
ดูคำแนะนำวิธีแก้ปัญหาอื่น:
ดูซีรีส์วิดีโอ: เพิ่มรายได้จากแอปของคุณด้วย Firebase และ AdMob
ขั้นตอนที่ 2 : ตั้งค่า Google Analytics