1. บทนำ
สมมติว่าคุณต้องปรับค่าของพารามิเตอร์บางอย่างในแอปหลังจากเผยแพร่แอปใน Play Store โดยปกติแล้ว คุณควรเผยแพร่แอปเวอร์ชันใหม่ และผู้ใช้ควรจะอัปเดตแอปในโทรศัพท์ด้วย
โดยทั่วไป การอัปเดตแอปจะใช้ได้หากคุณต้องการทำการเปลี่ยนแปลงในแอปอย่างถาวร แต่จะเกิดอะไรขึ้นหากคุณต้องปรับค่าพารามิเตอร์บางอย่างในแอปบ่อยๆ หรือหากต้องการทำการทดลองเพื่อค้นหาการกำหนดค่าแอปที่เหมาะสมที่สุด
ในกรณีเช่นนี้ การอัปเดตแอปอาจทำงานได้ไม่ดี เนื่องจากต้องใช้เวลาสักครู่จนกว่าการอัปเดตจะเผยแพร่ไปยังผู้ใช้ทั้งหมด นอกจากนี้ การทำการทดสอบในแอปหลายเวอร์ชันยังเป็นเรื่องที่ท้าทายอีกด้วย
นอกจากนี้ คุณจะพิจารณาได้อย่างไรว่าเส้นทางของผู้ใช้ในแอปทํางานได้ตามที่ต้องการ คุณอาจต้องพึ่งพาความคิดเห็นของผู้ใช้ใน Play Console อย่างไรก็ตาม ข้อมูลดังกล่าวอาจไม่แม่นยำพอที่จะใช้ในการตัดสินใจที่ชัดเจน
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้าง Funnel ใน Google Analytics สำหรับ Firebase
- วิธีใช้การกำหนดค่าระยะไกลของ Firebase
- วิธีทําการทดสอบ A/B ของ Firebase
สิ่งที่คุณต้องมี
- Unity 2018.4.4f1 ขึ้นไป
- Xcode 10 ขึ้นไป (เพื่อสร้างเป้าหมายสำหรับ iOS)
- บัญชี Google
- อุปกรณ์ทดสอบที่ใช้ Android 5.0 ขึ้นไปพร้อมสาย USB เพื่อเชื่อมต่ออุปกรณ์ หรือโปรแกรมจำลอง Android ที่เรียกใช้ AVD(อุปกรณ์เสมือน Android) พร้อมอิมเมจระบบที่รองรับ Play Store/Google APIs
- อุปกรณ์ iOS หรือโปรแกรมจำลองที่ใช้ iOS 8.0 ขึ้นไป
คุณจะให้คะแนนระดับประสบการณ์การใช้งาน AdMob เท่าใด
คุณจะให้คะแนนระดับประสบการณ์การใช้งาน Firebase เท่าใด
2. ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์
ดาวน์โหลดโค้ด
คลิกปุ่มต่อไปนี้เพื่อดาวน์โหลดโค้ดทั้งหมดสำหรับ Codelab นี้
แตกไฟล์ ZIP ที่ดาวน์โหลด การดำเนินการนี้จะแตกไฟล์โฟลเดอร์รูทชื่อ admob-firebase-codelabs-unity-master
...หรือโคลนที่เก็บ GitHub จากบรรทัดคำสั่ง
$ git clone https://github.com/googlecodelabs/admob-firebase-codelabs-unity
ที่เก็บจะมีโฟลเดอร์ 4 โฟลเดอร์ดังนี้
101-base - โค้ดเริ่มต้นที่คุณจะสร้างใน Codelab นี้
101-complete_and_102-base - โค้ดที่เสร็จสมบูรณ์สำหรับ Codelab นี้และโค้ดเริ่มต้นสำหรับ Codelab 102
102-complete - โค้ดที่เสร็จสมบูรณ์สำหรับ Codelab 102
เตรียมไฟล์ที่จำเป็น
Awesome Drawing Quiz ใช้โค้ดโอเพนซอร์สหลายรายการซึ่งจำเป็นต่อการคอมไพล์และเรียกใช้โปรเจ็กต์
เปิดเทอร์มินัล แล้วย้ายไปที่ไดเรกทอรีรากของที่เก็บ จากนั้นเรียกใช้ ./gradlew :prepareThirdPartyFiles (gradlew.bat :prepareThirdPartyFiles ใน Windows) จากเทอร์มินัลเพื่อคัดลอกไฟล์ที่จำเป็นลงในโปรเจ็กต์
นำเข้าแอปเริ่มต้น
เปิด Unity แล้วเลือก "เปิด" ในหน้าจอต้อนรับ จากนั้นเลือกไดเรกทอรี 101-complete_and_102-base จากโค้ดที่คุณดาวน์โหลด
ตอนนี้คุณควรเปิดโปรเจ็กต์ใน Unity ได้แล้ว
เพิ่มปลั๊กอิน Unity สำหรับโฆษณา Google ในอุปกรณ์เคลื่อนที่
หากต้องการแสดงโฆษณา AdMob ในแอป Unity คุณต้องเพิ่มปลั๊กอิน Unity สำหรับโฆษณาในอุปกรณ์เคลื่อนที่ของ Google ลงในโปรเจ็กต์
- ดาวน์โหลดแพ็กเกจปลั๊กอิน Unity สำหรับ Google Mobile Ads 3.18.1 (โปรดทราบว่า Codelab นี้อาจใช้ร่วมกับปลั๊กอินเวอร์ชันอื่นไม่ได้)
- ในโปรเจ็กต์ Unity ของ Awesome Drawing Quiz ในโปรเจ็กต์ ให้ไปที่ชิ้นงาน > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง
- นําเข้า GoogleMobileAds.unitypackage ไปยังโปรเจ็กต์ที่คุณดาวน์โหลด
คุณต้องตั้งค่ารหัสแอป AdMob ด้วย ในโปรแกรมแก้ไข Unity ให้เลือกชิ้นงาน > โฆษณา Google ในอุปกรณ์เคลื่อนที่ > การตั้งค่าจากเมนู

เปิดใช้ AdMob โดยคลิกช่องทําเครื่องหมายเปิดใช้ในส่วน Google AdMob จากนั้นป้อนรหัสแอป AdMob ดังนี้
- Android :
ca-app-pub-3940256099942544~3048611032 - iOS:
ca-app-pub-3940256099942544~2753522596

เพิ่มไฟล์กำหนดค่า Firebase ลงในโปรเจ็กต์ Unity
- จากหน้าจอภาพรวมของโปรเจ็กต์ Awesome Drawing Quiz ให้คลิกไอคอนการตั้งค่า

- ในแท็บทั่วไป ให้เลือกแอป Android และ iOS แต่ละแอปเพื่อดาวน์โหลดไฟล์ google-service.json (สำหรับ Android) และ GoogleService-Info.plist (สำหรับ iOS)
- ย้ายไฟล์การกำหนดค่าทั้ง 2 ไฟล์ไปยังโฟลเดอร์
Assets ในโปรเจ็กต์ Unity

เพิ่ม SDK ของ Firebase Analytics
- ดาวน์โหลด Firebase Unity SDK 5.5.0 แล้วแยกไฟล์ ZIP ไว้ที่ใดก็ได้ที่คุณสะดวก (ข้ามขั้นตอนนี้หากดาวน์โหลด SDK แล้ว)
- เปิดโปรเจ็กต์ Unity ของ Awesome Drawing Quiz แล้วไปที่ชิ้นงาน > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง
- นำเข้า Firebase Analytics SDK (
dotnet4/FirebaseAnalytics.unitypackage) จาก SDK ที่แยกไฟล์แล้ว - คลิกนำเข้าในหน้าต่างนำเข้าแพ็กเกจ Unity
3. เปิดโปรเจ็กต์ Firebase จากคอนโซล
ก่อนที่จะไปยังขั้นตอนถัดไป ให้เปิดโปรเจ็กต์จากคอนโซล Firebase ที่คุณสร้างไว้ในขั้นตอน "ตั้งค่าโปรเจ็กต์ Firebase" ของ Codelab AdMob+Firebase 101

4. สร้าง Funnel ของเหตุการณ์ในแอป
คุณอาจมีเหตุการณ์ในแอปบางรายการที่เพิ่มไว้เพื่อติดตามกิจกรรมของผู้ใช้ภายในแอป เมื่ออ่านรายงานของเหตุการณ์ในแอปแต่ละรายการ คุณจะได้รับรายละเอียดที่เชื่อมโยงกับเหตุการณ์ เช่น จำนวนรวม จำนวนเฉลี่ยต่อผู้ใช้ ข้อมูลประชากร เป็นต้น
แต่จะเกิดอะไรขึ้นหากคุณต้องการดูอัตราการทำเหตุการณ์ชุดหนึ่งให้เสร็จสมบูรณ์แทนที่จะมุ่งเน้นที่เหตุการณ์ใดเหตุการณ์หนึ่ง ใน Google Analytics สําหรับ Firebase คุณสามารถใช้กระบวนการเพื่อแสดงภาพและเพิ่มประสิทธิภาพอัตราความสําเร็จของชุดเหตุการณ์ในแอป
สร้าง Funnel
วิธีสร้างช่องทางมีดังนี้
- ไปที่คอนโซล Firebase แล้วเลือกโปรเจ็กต์ Awesome Drawing Quiz ที่คุณสร้างไว้ก่อนหน้านี้
- คลิกFunnel
- คลิกช่องทางใหม่
- ป้อนชื่อและคำอธิบายช่องทาง
- เลือก 2 เหตุการณ์แรกที่คุณต้องการใช้เป็นขั้นตอนในช่องทาง
- คลิกเพิ่มเหตุการณ์อื่นสำหรับขั้นตอนเพิ่มเติมแต่ละขั้น และเลือกเหตุการณ์
- คลิกสร้าง
ทำตามขั้นตอนข้างต้นเพื่อสร้าง Funnel ต่อไปนี้
#1 ชื่อ Funnel: อัตราความสำเร็จของระดับ เหตุการณ์: level_start, level_success
#2 ชื่อ Funnel: อัตราการดูโฆษณาที่มีการให้รางวัลจนจบ เหตุการณ์: ad_reward_prompt, ad_reward_impression, ad_reward
#3 ชื่อ Funnel: อัตราการเล่นเกมจนจบ เหตุการณ์: game_start, game_complete
ดูการวิเคราะห์ Funnel
เมื่อสร้าง Funnel แล้ว คุณจะเข้าถึง Funnel ได้ในเมนู Funnel ในคอนโซล Firebase การคลิกชื่อ Funnel ในรายการจะช่วยให้คุณเห็นการวิเคราะห์โดยละเอียดของ Funnel แต่ละรายการ

เช่น คลิกอัตราความสำเร็จของระดับ โดยจะแสดงรายละเอียด Funnel ดังนี้

จากภาพหน้าจอด้านบน คุณจะเห็นเปอร์เซ็นต์ของผู้ใช้ที่ผ่านด่าน (เรียกเหตุการณ์ level_success) หลังจากเริ่มด่าน (เรียกเหตุการณ์ level_start) ในที่นี้ คุณจะเห็นว่าผู้ใช้ 46.2% ผ่านด่าน
เมื่อคลิกจํานวนเหตุการณ์แล้ว ระบบจะแสดงเมตริกตามจํานวนเหตุการณ์ดังนี้

จากเมตริกในภาพหน้าจอด้านบน มีการพยายาม 116 ครั้ง (ทริกเกอร์เหตุการณ์ level_start) และผ่านด่าน 57 ครั้ง (ทริกเกอร์เหตุการณ์ level_success) ในช่วงระยะเวลาดังกล่าว
เนื่องจากอัตราการทำจนเสร็จตามเหตุการณ์(49.1%) สูงกว่าอัตราตามผู้ใช้(46.2%) เล็กน้อย คุณจึงกล่าวได้ว่ามีผู้ใช้บางรายที่ทำได้ดีกว่าผู้ใช้รายอื่นๆ
5. ผสานรวมการกำหนดค่าระยะไกลเข้ากับแอป
เนื่องจากคุณอาจได้รับข้อมูลเชิงลึกบางอย่างเกี่ยวกับแอปโดยอิงตามเหตุการณ์ในแอปและ Funnel คุณจึงอาจต้องการเพิ่มประสิทธิภาพแอป ซึ่งโดยปกติแล้วจะรวมถึงการปรับค่าพารามิเตอร์ในแอปอย่างละเอียด หากต้องการแก้ไขค่าของพารามิเตอร์เหล่านั้น คุณจะต้องอัปเดตแอปเพื่อให้ระบบใช้การเปลี่ยนแปลงกับผู้ใช้ได้
การใช้การกำหนดค่าระยะไกลใน Firebase ช่วยให้คุณปรับค่าเหล่านั้นได้โดยไม่ต้องอัปเดตแอป ซึ่งหมายความว่าคุณสามารถเปลี่ยนลักษณะการทำงานของแอปได้โดยไม่ต้องรบกวนผู้ใช้ด้วยการบังคับให้ดาวน์โหลดการอัปเดต
ใน Codelab นี้ คุณจะได้เรียนรู้วิธีปรับจำนวนรางวัล (จำนวนตัวอักษรที่จะเปิดเผยหลังจากดูโฆษณาวิดีโอที่มีการให้รางวัล) โดยไม่ต้องอัปเดตแอปด้วยการใช้การกำหนดค่าระยะไกล
เพิ่ม SDK การกำหนดค่าระยะไกลของ Firebase
- ดาวน์โหลด Firebase Unity SDK 5.5.0 แล้วแยกไฟล์ ZIP ไว้ที่ใดก็ได้ที่คุณสะดวก
- เปิดโปรเจ็กต์ Unity ของ Awesome Drawing Quiz แล้วไปที่ชิ้นงาน > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง
- นำเข้า SDK การกำหนดค่าระยะไกล (
dotnet4/FirebaseRemoteConfig.unitypackage) จาก SDK ที่แยกไฟล์แล้ว - คลิกนำเข้าในหน้าต่างนำเข้าแพ็กเกจ Unity
นำเข้า Firebase.RemoteConfig
แก้ไข Main.cs เพื่อให้คุณใช้ประเภทจาก Firebase.RemoteConfig ได้โดยไม่ต้องใช้ชื่อที่สมบูรณ์
Scenes/Main.cs
...
using AwesomeDrawingQuiz.Game;
// TODO: Import Firebase.RemoteConfig (102)
using Firebase.RemoteConfig;
namespace AwesomeDrawingQuiz.Scene {
...
}
เริ่มต้นและดึงค่าการกำหนดค่าระยะไกล
แก้ไขเมธอด InitAndFetchRemoteConfig() ใน Main.cs เพื่อเริ่มต้นอินสแตนซ์การกำหนดค่าระยะไกลดังนี้ โปรดทราบว่า GameSettings.KEY_REWARD_AMOUNT จะมีชื่อพารามิเตอร์ในการกำหนดค่าระยะไกล (คุณจะประกาศฟิลด์นี้ใน Codelab นี้ในเร็วๆ นี้)
Scenes/Main.cs
private Task InitAndFetchRemoteConfig() {
// TODO: Initialize and Fetch values from the Remote Config (102)
Dictionary<string, object> defaults = new Dictionary<string, object>();
defaults.Add(GameSettings.KEY_REWARD_AMOUNT, 1);
FirebaseRemoteConfig.SetDefaults(defaults);
if (Debug.isDebugBuild) {
ConfigSettings config = new ConfigSettings();
config.IsDeveloperMode = true;
FirebaseRemoteConfig.Settings = config;
return FirebaseRemoteConfig.FetchAsync(System.TimeSpan.Zero);
} else {
return FirebaseRemoteConfig.FetchAsync();
}
}
คุณจะเห็นว่ามีการกำหนดค่าอินสแตนซ์ FirebaseRemoteConfig เพื่อดึงค่าล่าสุดจากเซิร์ฟเวอร์ในโหมดแก้ไขข้อบกพร่องเพื่อช่วยในกระบวนการพัฒนา (IsDeveloperMode = true และ FetchAsync(System.TimeSpan.Zero))
เปิดใช้งานค่าการกำหนดค่าระยะไกลที่ดึงข้อมูลมา
เมื่อดึงค่าการกำหนดค่าระยะไกลได้สำเร็จแล้ว คุณควรเปิดใช้งานค่าเหล่านั้นเพื่อให้พร้อมใช้งานในแอป แก้ไขเมธอด ActivateRemoteConfigValues() ดังนี้
Scenes/Main.cs
private void ActivateRemoteConfigValues() {
// TODO: Activate fetched Remote Config values (102)
FirebaseRemoteConfig.ActivateFetched();
}
แก้ไขเมธอด Start()
หากต้องการให้แอปดึงข้อมูลและเปิดใช้งานค่าการกำหนดค่าระยะไกลเมื่อเปิดแอป ให้แก้ไขเมธอด Start() ในไฟล์ Main.cs ดังนี้
Scenes/Main.cs
void Start () {
...
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
...
}).ContinueWith(task => {
// TODO: Call InitAndFetchRemoteConfig() (102)
InitAndFetchRemoteConfig();
}).ContinueWith(task => {
// TODO: Call ActivateRemoteConfigValues() (102)
ActivateRemoteConfigValues();
// Enable 'Start a game' button
UnityMainThreadDispatcher.Instance()
.Enqueue(() => buttonStartGame.interactable = true);
});
#else
QuizAnalytics.SetScreenName(QuizAnalytics.SCREEN_MAIN);
// TODO: Call InitAndFetchRemoteConfig() (102)
InitAndFetchRemoteConfig().ContinueWith(task => {
// TODO: Call ActivateRemoteConfigValues() (102)
ActivateRemoteConfigValues();
});
#endif
}
ดึงจำนวนรางวัลจากการกำหนดค่าระยะไกล
แก้ไขคลาส GameSettings เพื่อดึงจำนวนรางวัลจากการกำหนดค่าระยะไกล
Game/GameSettings.cs
// TODO: Import Firebase.RemoteConfig (102)
using Firebase.RemoteConfig;
namespace AwesomeDrawingQuiz.Game {
public class GameSettings {
...
// TODO: Apply reward amount from the Remote Config (102)
public const string KEY_REWARD_AMOUNT = "reward_amount";
public static GameSettings Instance {
get {
return instance;
}
}
...
public int RewardAmount {
get {
// TODO: Apply reward amount from the Remote Config (102)
return (int) FirebaseRemoteConfig.GetValue(KEY_REWARD_AMOUNT).LongValue;
}
private set { }
}
}
}
สร้างพารามิเตอร์การกำหนดค่าระยะไกลจากคอนโซล
จากนั้นคุณจะสร้างพารามิเตอร์การกำหนดค่าระยะไกลใหม่สำหรับจำนวนรางวัลเพื่อให้ปรับค่าได้ทันที
หากต้องการสร้างพารามิเตอร์ใหม่ ให้ไปที่คอนโซล Firebase แล้วเลือกโปรเจ็กต์ Awesome Drawing Quiz ที่คุณสร้างไว้ก่อนหน้านี้ คลิกปุ่ม Remote Config -> ADD YOUR FIRST PARAMETER

ตั้งชื่อพารามิเตอร์เป็น reward_amount และตั้งค่าเริ่มต้นเป็น 1 จากนั้นคลิกปุ่มเพิ่มพารามิเตอร์

คลิกปุ่มเผยแพร่การเปลี่ยนแปลงเพื่อให้ผู้ใช้เห็นการเปลี่ยนแปลง

6. เปลี่ยนลักษณะการทำงานของแอปด้วยการกำหนดค่าระยะไกล
ตอนนี้คุณสามารถกำหนดค่าจำนวนรางวัลใน Awesome Drawing Quiz ได้ใน Firebase Console โดยไม่ต้องอัปเดตรหัสแอป
ในส่วนนี้ คุณจะเปลี่ยนจำนวนรางวัลจาก 1 เป็น 2 เพื่อให้แอปแสดงตัวอักษรอีก 2 ตัวเป็นคำใบ้หลังจากดูโฆษณาที่มีการให้รางวัล
อัปเดตค่าเริ่มต้นของพารามิเตอร์ reward_amount
ไปที่คอนโซล Firebase แล้วเลือกโปรเจ็กต์ Awesome Drawing Quiz ที่คุณสร้างไว้ก่อนหน้านี้ คลิก Remote Config แล้วคลิก reward_amount จากรายการ จากนั้นเปลี่ยนค่าเริ่มต้นเป็น 2 แล้วคลิกปุ่มอัปเดต

คลิกปุ่มเผยแพร่การเปลี่ยนแปลงเพื่อให้การเปลี่ยนแปลงมีผลกับผู้ใช้

ยืนยันการเปลี่ยนแปลงลักษณะการทำงานของแอป
หากต้องการยืนยันการเปลี่ยนแปลงลักษณะการทำงานของแอป ให้เรียกใช้โปรเจ็กต์อีกครั้ง เมื่อดูโฆษณาที่มีการให้รางวัลจนจบ คุณจะเห็นว่าตอนนี้แอปแสดงตัวอักษร 2 ตัวเป็นรางวัลตามที่เรากำหนดค่าไว้ในคอนโซล Remote Config
ก่อนดูโฆษณาที่มีการให้รางวัล | เฉลยตัวอักษรเพิ่มอีก 2 ตัวเป็นรางวัล |
7. สร้างการทดสอบเพื่อเพิ่มประสิทธิภาพจำนวนรางวัล
ตอนนี้คุณเปลี่ยนจำนวนรางวัลได้โดยไม่ต้องเผยแพร่การอัปเดตแอป อย่างไรก็ตาม คุณจะพิจารณาได้อย่างไรว่าการเปลี่ยนแปลงจำนวนหนึ่งๆ นั้นดีต่อแอป
การทดสอบ A/B ของ Firebase ช่วยให้คุณทำการทดสอบเพื่อเพิ่มประสิทธิภาพประสบการณ์ของผู้ใช้โดยรวมของแอปได้โดยไม่ต้องอัปเดตแอปหรือสร้างเครื่องมือแยกต่างหากเพื่อเรียกใช้และติดตามประสิทธิภาพของการทดสอบแต่ละรายการ
ออกแบบการทดสอบ
ก่อนสร้างการทดสอบใหม่ คุณควรกำหนดวัตถุประสงค์หรือเป้าหมายของการทดสอบให้ชัดเจน โปรดตรวจสอบรายการต่อไปนี้ก่อนสร้างการทดสอบใหม่
- อะไร: คุณต้องการเพิ่มประสิทธิภาพอะไร (เช่น ความยากของเกม เวลา/การมองเห็นโฆษณา ฯลฯ)
- เหตุผล: เป้าหมายทางธุรกิจของคุณในการทําการทดลองคืออะไร (เช่น เพื่อเพิ่มรายได้จากโฆษณาให้ได้สูงสุด เพื่อเพิ่มการคงผู้ใช้ไว้ ฯลฯ)
- ใคร: ใครบ้างที่ต้องเข้าร่วมการทดสอบ (เช่น ผู้ใช้ทั้งหมด กลุ่มเป้าหมายผู้ใช้ที่เฉพาะเจาะจง เป็นต้น)
ใน Codelab นี้ คุณจะได้สร้างการทดสอบเพื่อเพิ่มประสิทธิภาพมูลค่าของจำนวนรางวัลเพื่อเพิ่มการมีส่วนร่วมของผู้ใช้รายวันของ Awesome Drawing Quiz ให้ได้สูงสุด
สร้างการทดสอบ
เปิดโปรเจ็กต์ Awesome Drawing Quiz จากคอนโซล Firebase เลือกเมนูการทดสอบ A/B แล้วคลิกปุ่มสร้างการทดสอบ
เลือก Remote Config เพื่อสร้างการทดสอบ Remote Config

ตั้งชื่อการทดสอบเป็น "จำนวนรางวัล" ดังที่แสดงในภาพหน้าจอต่อไปนี้

กำหนดค่าตัวเลือกการกำหนดเป้าหมาย ใน Codelab นี้ คุณจะกำหนดเป้าหมายผู้ใช้ Awesome Drawing Quiz ทั้งหมด 100%

เนื่องจากวัตถุประสงค์หลักของการทดลองคือการค้นหาค่าที่เหมาะสมซึ่งจะเพิ่มการมีส่วนร่วมของผู้ใช้รายวันให้ได้มากที่สุด ให้เลือกการมีส่วนร่วมของผู้ใช้รายวันเป็นเมตริกหลักที่จะติดตาม

สุดท้าย ให้ตั้งค่ากลุ่มควบคุมและกลุ่มทดสอบเพื่อดูว่ากลุ่มใดมีประสิทธิภาพดีกว่า เลือก reward_amount จากกลุ่มควบคุม และปล่อยให้ค่าไม่เปลี่ยนแปลง สำหรับกลุ่มตัวแปร ให้ตั้งชื่อเป็น "รางวัลน้อยกว่า" จากนั้นเปลี่ยนค่าของ reward_amount เป็น 1

การกำหนดค่านี้จะทำให้ผู้ที่อยู่ในกลุ่ม "รางวัลน้อย" ได้รับจดหมาย 1 ฉบับเป็นรางวัล ส่วนผู้ที่อยู่ในกลุ่มควบคุมจะได้รับจดหมาย 2 ฉบับเป็นรางวัล ด้วยเหตุนี้ คุณจึงจะเห็นว่าจำนวนรางวัลส่งผลต่อผู้ใช้อย่างไร
เมื่อคลิกปุ่มตรวจสอบ คุณจะเห็นภาพรวมของการทดสอบดังนี้

เรียกใช้การทดสอบ
คลิกปุ่มเริ่มการทดสอบเพื่อเรียกใช้การทดสอบ โปรดทราบว่าคุณจะเปลี่ยนการกำหนดค่าการทดสอบไม่ได้เมื่อการทดสอบเริ่มขึ้น

8. จัดการการทดสอบ
ดูความคืบหน้าของการทดสอบ
คุณสามารถตรวจสอบความคืบหน้าของการทดสอบได้จากเมนู A/B Testing ในคอนโซล Firebase ซึ่งจะมีลักษณะคล้ายกับภาพหน้าจอต่อไปนี้ โปรดทราบว่าคุณยังดูจํานวนผู้ใช้ที่เข้าร่วมการทดสอบในช่วง 30 นาทีที่ผ่านมาได้ในการ์ด

เมื่อคลิกการทดสอบจากรายการแล้ว คุณจะเห็นรายละเอียดการทดสอบ จนกว่าการทดสอบจะประกาศตัวแปรที่ให้ผลลัพธ์ดีที่สุดได้ คุณจะเห็นข้อความ"ยังเร็วเกินไปที่จะประกาศตัวแปรที่ให้ผลลัพธ์ดีที่สุด"

เมื่อการทดสอบทํางานมาระยะหนึ่งแล้ว ระบบจะเริ่มแสดงข้อมูลที่รวบรวมระหว่างการทดสอบจนถึงตอนนี้ในส่วนภาพรวมการปรับปรุง คุณสามารถเปรียบเทียบประสิทธิภาพของแต่ละตัวแปรเพื่อดูว่าตัวแปรใดมีประสิทธิภาพดีกว่า ภาพหน้าจอด้านล่างแสดงตัวอย่างส่วนภาพรวมการปรับปรุง

จากตารางด้านล่างส่วนภาพรวมการปรับปรุง คุณสามารถตรวจสอบรายละเอียดของเมตริกเป้าหมายของการทดสอบ รวมถึงเมตริกเพิ่มเติมที่ติดตามในการทดสอบได้ ภาพหน้าจอด้านล่างแสดงตัวอย่างส่วนรายละเอียดเมตริก

เปิดตัวฟีเจอร์ติดตามสำหรับผู้ใช้ทุกคน
หลังจากทำการทดสอบจนได้ตัวแปรที่ได้ผลดีที่สุดแล้ว คุณสามารถเริ่มการทดสอบกับผู้ใช้ทั้ง 100% ได้ เมื่อการทดสอบ A/B พบตัวแปรที่ได้ผลดีที่สุดอย่างชัดเจนแล้ว ระบบจะแนะนําให้คุณเปิดตัวตัวแปรที่ได้ผลดีที่สุดต่อผู้ใช้ทั้งหมด

แต่แม้การทดสอบจะไม่สามารถระบุผู้นำที่ชัดเจนได้ คุณก็ยังเลือกแสดงตัวแปรให้ผู้ใช้ทั้งหมดเห็นได้
ในหน้าจอรายละเอียดการทดสอบ ให้คลิกเมนูบริบท (
) แล้วคลิกเปิดตัวตัวแปร

เลือกตัวแปรที่จะเปิดตัวต่อผู้ใช้ทั้งหมด แล้วคลิกปุ่มตรวจสอบในการกำหนดค่าระยะไกลเพื่อตรวจสอบการเปลี่ยนแปลงก่อนที่จะทำการเปลี่ยนแปลงในการกำหนดค่าระยะไกล

หลังจากยืนยันว่าฉบับร่างไม่มีปัญหาแล้ว ให้คลิกปุ่มเผยแพร่การเปลี่ยนแปลงเพื่อให้การเปลี่ยนแปลงมีผลกับผู้ใช้ทั้งหมด

9. เสร็จเรียบร้อย
คุณได้ทำ Codelab AdMob+Firebase 102 Unity เสร็จแล้ว คุณดูโค้ดที่เสร็จสมบูรณ์สำหรับ Codelab นี้ได้ในโฟลเดอร์
102-complete

