1. Giriş
Bu codelab'de, Oyununuzu Firebase Remote Config ile kullanma bölümünde değiştirdiğiniz örnek oyun (MechaHamster: Level Up with Firebase sürümü) için A/B Testi'ni kullanarak Remote Config denemesi oluşturmayı öğreneceksiniz.
Remote Config ile A/B Testi, uygulamanızın kullanıcı arayüzünde, özelliklerinde veya etkileşim kampanyalarında yapılan değişiklikleri daha geniş bir kitlenin kullanımına sunmadan önce hedef kitle üzerinde test etmenize olanak tanır. Deneme sonuçlarını kullanarak şunları da yapabilirsiniz:
- Hangi parametre değeri varyantlarının gelir ve elde tutma gibi temel metrikleri iyileştirdiğini belirleyin.
- Hangi kullanıcı alt gruplarının hangi varyantları tercih ettiğini keşfedin.
- Farklı parametre değerleri belirlemenin etkileriyle ilgili ek analizler yapmak için deneme verilerini toplayın ve depolayın.
A/B Testi'nin özü budur: Remote Config için gerekli kodları almanıza ve Remote Config koşullarına (Google Analytics kullanıcı özellikleri dahil), yüzde olarak kullanıma sunumlara, Analytics dönüşüm etkinliklerine ve bunların bir kombinasyonuna bağlı olarak istemcilerin aldığı değerleri kontrol eden denemeler başlatmanızı sağlar.
İlk olarak, kullanıcı işlemlerine göre kullanıcı özellikleri ayarlayarak denemeye dahil edilecekleri belirleyen bir koşul uygularsınız. Ardından, denemeye hangi müşterilerin dahil edileceğini belirlemek için Google Analytics kullanıcı özelliklerini kullanan bir A/B Testi denemesi oluşturacaksınız. Son olarak da bu verileri kitlenizi daha iyi anlamak için kullanırsınız.
Neler öğreneceksiniz?
- Araçlı Remote Config değerlerini kullanarak A/B testi oluşturma
- A/B testlerine giriş koşullarının bir parçası olarak Google Analytics kullanıcı özelliklerini kullanma
Ön koşullar
- Firebase Remote Config ile oyununuzu enstrümantasyon aracını tamamlayın
Gerekenler
- iOS ve/veya Android derleme desteğine sahip Unity 2019.1.0f1 veya sonraki sürümler
2. Hata Ayıklama Menüsünü Etkinleştirme
Projede gizli bir Hata Ayıklama Menüsü var. Bu menüye erişmek için kullanılan düğme oyunda mevcut ancak şu anda etkin değil. Ana Menü hazır ayar sayfasından erişmek için düğmeyi etkinleştirmeniz gerekir.
- Unity Editor'da Proje sekmesini seçin, ardından Öğeler altında Hamster'ı genişletin > Prefraplar > Menüler'i ve AnaMenü'yü tıklayın.
- Prefabrik hiyerarşisinde DebugMenüDüğmesi adlı devre dışı bırakılmış alt nesneyi bulun ve tıklayarak İnceleyici sekmesinde açın.
- Denetçi sekmesinde, etkinleştirmek için DebugMenüDüğmesini içeren metin alanının sol üst köşesindeki kutuyu işaretleyin.
- Prefabetik işlerden tasarruf edin.
Oyunu düzenleyicide veya cihazınızda çalıştırıyorsanız menüye artık erişilebilir.
3. Remote Config alt menüsünü etkinleştirme
- Unity Editor'daki Proje sekmesinde Öğeler'i genişletin > Hamster > Prefraplar > Menüler'e gidin ve DebugMenü nesnesini çift tıklayarak düzenleyicinin Hiyerarşi sekmesinde açın.
- Hiyerarşi sekmesinde hiyerarşiyi genişletin ve DebugMenü > Panel, Remote Config Actions etiketini taşır.
- Unity İnceleyici sekmesinde, nesnenin adını içeren metin alanının solundaki kutuyu işaretleyerek Uzak Yapılandırma İşlemleri'ni etkinleştirin.
Bu dosyadaDebugMenu.cs
4. Altyazı geçersiz kılma ayarını uygulama içi varsayılana sıfırlayın
Önceki codelab'de bir parametrenin varsayılan değerini JSON olarak geçersiz kıldınız ve farklı varyantları yayınlamak için koşullar kullandınız. Bu codelab kapsamında, oluşturduğunuz koşulu silip uygulama içi varsayılanı tekrar kullanıma sunacak ve yalnızca A/B Testi sonucuyla bunu geçersiz kılacaksınız.
Uygulama içi varsayılanı yeniden etkinleştirmek için:
- Firebase konsolunda Remote Config sayfasını açın ve Parametreyi düzenle yan panelini açmak için
subtitle_override
parametresinin yanındaki kalem simgesini tıklayın. - Silmek istediğiniz koşulun yanındaki X simgesini tıklayın.
- Kalan varsayılan değerin yanındaki Uygulama içi varsayılan değeri kullan açma/kapatma düğmesini etkinleştirin.
- Değişikliklerinizi kaydetmek için Kaydet'i ve ardından değişiklikleri yayınlamak için Değişiklikleri yayınla'yı tıklayın.
5. Hata Ayıklama işlevlerinde Kullanıcı Özellikleri Ayarlama
Artık DebugMenu.cs
içindeki önceden yapılandırılmış ancak uygulanmamış bazı Google Analytics işlevleri için işlev gövdeleri yazacaksınız. Bu işleve Öğeler > Hamster > Komut Dosyaları > Durumlar bölümünden ulaşabilirsiniz.
Bu işlevler kullanıcı özelliklerini belirler. Bunlar, kullanıcı tabanınızın segmentlerini tanımlamanın yollarıdır ve kullanıcının oyunun alt başlığıyla ilgili hislerini kaydetmek için kullanılır.
DebugMenu.cs
dilinde mevcut sürümlerini bulup aşağıdaki şekilde bunların üzerine yazarak SetUserBoredOfSubtitle
ve SetUserEnjoysSubtitle
uygulamalarını uygulayın:
void SetUserBoredOfSubtitle()
{
Firebase.Analytics.FirebaseAnalytics.SetUserProperty("subtitle_sentiment", "bored");
}
void SetUserEnjoysSubtitle()
{
Firebase.Analytics.FirebaseAnalytics.SetUserProperty("subtitle_sentiment", "enjoys");
}
Uygulamanız Google Analytics ile doğru şekilde yapılandırılmışsa mülkün Remote Config koşullarında kullanılabilmesi için bu işlevlerden birini çağırabilirsiniz. SetUserBoredOfSubtitle
numaralı telefonu mobil cihazdan aramak için oyunu başlatın, ana menüdeki Hata Ayıklama Menüsü düğmesine, ardından Altyazıdan Sıkıldım'a basın.
6. Özel Boyut oluşturma
Ardından, hangi altyazının en iyi sonucu verdiğini görmek amacıyla subtitle_override
için çeşitli altyazı varyantlarını ayarlayın. Ancak A/B testinizde bu varyantları yalnızca mevcut altyazıyla ilgili düşünceleri (subtitle_sentiment
'da kaydedildiği şekliyle) "sıkıldı" kelimesini içeren kullanıcılara sunacaksınız.
Analytics etkinliklerinde özel parametreler oluşturmak ve izlemek için özel boyut kullanırsınız. Daha fazla bilgi için Özel boyutlar ve metrikler bölümüne bakın.
Yeni bir özel boyut oluşturmak için:
- Firebase konsolunu açın, Analytics menüsünü genişletin ve Özel tanımlar'ı seçin.
- Özel tanımlar sayfasından Özel boyut oluştur'u tıklayın.
- Yeni özel boyut penceresinde, Boyut adını "Altyazı Yaklaşımı" olarak ayarlayın. ve Kapsam açılır menüsünden Kullanıcı'yı seçin.
- Kullanıcı özelliği alanı için
subtitle_sentiment.
'yi seçin
7. A/B Testi denemesini oluşturma
Ardından, kullanıcıları elde tutmanın iki ila üç gün boyunca optimize edilmesi amacıyla subtitle_override
için farklı değerler belirleyip birbirlerine karşı test edilecek farklı değerleri ayarlamak üzere bir A/B Testi denemesi oluşturun.
- İlk olarak Firebase konsolunun Remote Config sayfasındaki
subtitle_override
parametresinde Düzenle'yi seçin:
- Açılan Parametreyi düzenle iletişim kutusunda Yeni ekle'yi tıklayın.
- Görüntülenen listeden Deneme'yi seçin.
- Denemeniz için bir ad ve açıklama girin.
- Ardından hedefleme koşullarını seçin. İlk olarak açılır menüden Uygulamanızı seçin.
- Daha sonra, yeni bir koşul eklemek için Ve'yi tıklayın, ardından Kullanıcı Özelliği'ni ve
subtitle_sentiment
'yi seçin. Görünmüyorsa manuel olarak girin. - Yalnızca mevcut altyazı duygusu "sıkıldı" ifadelerini içerenler için bir alt başlık ayarlamak istediğinizden içerir'i seçin ve
bored
yazın. - İsteğe bağlı olarak, kitleden yukarıdaki ölçütlerle eşleşen yüzde kaçının teste dahil edileceğini seçin. Kolayca kontrol edemediğiniz rastgeleliği önlemek için %100'ü seçin.
- Sonra, testin en üst düzeye çıkarmaya çalışacağı bir hedef seçin. Elde tutma (2-3 gün) seçeneğini belirleyin.
- Daha sonra, denemenin parametrelerini ayarlayın ve farklı alt başlık varyantları oluşturun . Bu varyantlar,
subtitle_sentiment
"sıkıldı" kelimesini içeren kullanıcılara A/B testinin sunacağı farklı değerlerdir. ve A/B Testi, elde tutma oranını en üst düzeye çıkarmak için hangi varyantın en iyi olduğunu belirler. - A varyantı için aşağıdaki parametre değerini girin:
{"text":"A: A game about a mechanical hamster","fontSize":8,"textColor":{"r":0.0,"g":255.0,"b":0.0,"a":255.0}}
- B Varyantı için aşağıdaki parametre değerini girin:
{"text":"B: A game about a mechanical hamster","fontSize":14,"textColor":{"r":255.0,"g":0.0,"b":0.0,"a":255.0}}
- Varyant oranlarını tam sayılarla aşağıdaki gibi ayarlayın:
- Referans değer: 1
- A varyantı: 100
- B varyantı: 100
- Denemeyi kaydedip göndermek için Denemeyi başlat'ı, ardından onay pop-up penceresinde Başlat'ı tıklayın.
8. Kullanıcı Özelliği Ayarla yöntemini çalıştırın ve sayfayı yenileyin
Kullanıcıyla ilgili çeşitli özellikler ayarladınız. Bunlar, oyununuzun mantığını veya sunumunu yönlendirmek için kullanılabilir.
Daha önce SetUserProperty
yöntemini çalıştırmadıysanız veya enjoys
olarak ayarlamadıysanız oyunu açarken yine de varsayılan altyazıyı görmeniz gerekir.
Bu değeri bored
olarak ayarladıysanız (yeniden getirmeden önce), yeni değerlerden birini yaklaşık 50/50 oranında görmeniz gerekir.
Bir cihaz bir A/B Testi denemesine girdikten sonra, bu denemeden aldığı değerler değişmez ve yükleme başına kalıcıdır. Bu nedenle, diğer deneysel değerlerden birini almak için oyunu aynı cihaza/simülatöre yeniden yükleyerek veya oyunu yeni bir cihaza/simülatöre yükleyerek yeni bir yükleme oluşturmanız gerekir.
Kullanıcı tabanınızda başlatılan gerçek bir A/B testinde, referans değere diğer varyantlara benzer bir ağırlık vermelisiniz. Ancak bu durumda, denemenin çalıştığını doğrulamak için çok çarpık olasılık atarsınız. (1/201 durumunda) varsayılan değeri almaya devam ediyorsanız oyunu cihazınıza/simülatörünüze yeniden yüklemeyi deneyin.
Bunun bir başka etkisi de kullanıcı özelliğini tekrar enjoys
olarak değiştirmenin, değeri tekrar temel değere dönüştürmemesidir. Yine de bunu, enjoys
öğesine geçip yeniden yükleyerek yapabilirsiniz.
9. Tebrikler!
Farklı Remote Config değerleriyle denemeler yapmak ve her bir değerin Analytics metriklerini nasıl etkilediğini belirlemek için Remote Config A/B testini kullandınız.
İşlediğimiz konular
- Araçlı Remote Config değerlerini kullanarak A/B testi oluşturma
- A/B Testi denemelerine giriş koşullarının bir parçası olarak Google Analytics kullanıcı mülklerini kullanma
Sonraki adımlar
Deneme sona erdiğinde, denemeyle ne yapmak istediğinize karar vermek için projenizdeki denemeler listesinden bir deneme seçebilirsiniz. Birini "kazanan" olarak seçmek ister misiniz? başka denemeler yapmak mı istiyorsunuz?