Firebase Remote Config, sunucudan yeni değerlerin ne zaman ve nasıl alınacağı ve uygulamanızda etkinleştirileceği konusunda büyük esneklik sağlar. Bu sayede, görünür yapılandırma değişikliklerinin zamanlamasını kontrol ederek kaliteli bir son kullanıcı deneyimi sunabilirsiniz. fetchAndActivate()
kullanarak uygulama başlatıldığında yeni değerleri getirebilir ve Remote Config uygulamanızın yeni bir sürümü yayınlandıktan sonra en son parametre değerlerini otomatik olarak getirmek için tamamlayıcı bir yöntem olarak gerçek zamanlı Remote Config kullanabilirsiniz.
Bu kılavuzda, birkaç yükleme stratejisi ele alınmakta ve uygulamanız için en iyi seçeneği belirlerken dikkate alınması gereken önemli noktalar tartışılmaktadır.
1. strateji: Yükleme sırasında getirme ve etkinleştirme
Bu stratejide, uygulamanız ilk kez başlatıldığında fetchAndActivate()
işlevi çağrılır. Böylece Remote Config hizmetinden yeni değerler alınır ve yükleme tamamlanır tamamlanmaz etkinleştirilir. Bu basit yaklaşım, kullanıcı arayüzünüzde önemli görsel değişikliklere neden olmayan yapılandırma değişiklikleri için uygundur. Kullanıcılar arayüzü kullanırken arayüzün belirgin şekilde değişebileceği durumlarda bu yöntemden kaçınılmalıdır.
Uygulamanız fetchAndActivate()
işlevini çağırdıktan sonra addOnConfigUpdateListener
işlevini çağırarak parametre değeri güncellemelerini anlık olarak dinlemeye başlayabilir. Bu yöntem, parametre değerlerinde sunucu tarafında yapılan güncellemeleri dinlemeye başlar, bunları otomatik olarak getirir ve ardından dinleyiciyi çağırır. Basit bir strateji, dinleyicideki yeni değerleri etkinleştirmektir. Ancak fetchAndActivate()
için belirtildiği gibi, hassas kullanıcı arayüzlerinde hemen etkinleştirmeden kaçınılmalıdır.
2. strateji: Yükleme ekranının arkasında etkinleştirme
1. stratejide karşılaşılan olası kullanıcı arayüzü sorununu gidermek için yükleme ekranı kullanabilirsiniz. Uygulamanızı hemen başlatmak yerine bir yükleme ekranı gösterin ve tamamlama işleyicinizde fetchAndActivate
işlevini çağırın.
Ardından, yine bir geri çağırma veya bildirim kullanarak yükleme ekranını kapatın ve kullanıcının uygulamanızla etkileşime başlamasına izin verin.
Bu stratejiyi kullanıyorsanız yükleme ekranına zaman aşımı eklemeniz önerilir. Remote Config'in bir dakikalık zaman aşımı, kullanıcılar için kaliteli bir uygulama başlatma deneyimi sunmak açısından çok uzun olabilir.
addOnConfigUpdateListener
numaralı telefonu arayarak gerçek zamanlı Remote Config güncellemeleri dinleme bu stratejiyle iyi sonuç verir. Yükleme ekranı gösterildiğinde dinleyiciyi ekleyin, ardından uygulamanızda Remote Config değerlerinin önemli görsel değişikliklere neden olmayacağı bir veya daha fazla noktada activate()
kullanın.
3. strateji: Sonraki başlatma için yeni değerler yükleme
Etkili bir strateji, uygulamanızın bir sonraki başlangıcında etkinleştirilecek yeni yapılandırma değerlerini yüklemektir. Bu stratejide uygulamanız, yeni yapılandırma değerlerini daha önce getirmiş ancak henüz etkinleştirmemiş olabileceği varsayımına dayanarak yeni değerler getirmeye çalışmadan önce başlangıçta getirilen değerleri etkinleştirir. Bu stratejinin işlem sırası şöyledir:
- Başlangıçta, daha önce getirilen değerleri hemen etkinleştirin. Bu, önceki bir oturumda sunucudan indirdiğiniz tüm değerleri uygular ve neredeyse anında gerçekleşir.
- Kullanıcı uygulamanızla etkileşimde bulunurken varsayılan minimum getirme aralığına göre yeni değerleri getirmek için eşzamansız bir çağrı başlatın ve gerçek zamanlı yapılandırma güncelleme dinleyicisi ekleyin. Gerçek zamanlı dinleyici, uygulamanız çalışırken sunucuda yayınlanan tüm değerleri otomatik olarak getirir. Gerçek zamanlı güncellemeler, minimum getirme aralığı ayarını atlar.
- Getirme çağrısının tamamlanma işleyicisinde veya geri çağırmasında hiçbir işlem yapmayın. Uygulamanız, bir sonraki başlatma işleminde etkinleştirilene kadar indirilen değerleri saklar.
Bu strateji sayesinde kullanıcı bekleme süresi büyük ölçüde en aza indirilir. Uygulama yaşam döngüsünde gerektiğinde activate()
çağrılarıyla getirme ve gerçek zamanlı dinleyici stratejilerini birleştirmek, kullanıcıların uygulamanızla etkileşimde bulunurken Remote Config'den en son değerleri almasını sağlar.
Yükleme karşıtı stratejiler
Yüklemeyle ilgili avantaj ve dezavantajların yukarıdaki tartışmasından da anlayabileceğiniz gibi, kaçınılması gereken birkaç kullanım kalıbı vardır.
- Kullanıcı, kullanıcı arayüzünü görüntülerken veya kullanıcı arayüzüyle etkileşimde bulunurken kullanıcı arayüzünün yönlerini güncellemeyin ya da değiştirmeyin. Bunu yapmanız için güçlü uygulama veya işletme nedenleriniz yoksa (ör. yeni sona eren bir promosyonla ilgili seçenekleri kaldırma) bu kural geçerlidir.
- Sunucunun uygulamanızı kısıtlamasına neden olabilecek çok sayıda eşzamanlı getirme isteği göndermeyin. Güncellemeleri sık sık getirmeniz gerekiyorsa anlık Remote Config özelliğini kullanın. Çoğu üretim senaryosunda sınırlama riski düşük olsa da aktif geliştirme sırasında bu bir sorun olabilir. Gerçek zamanlı Remote Config bu kullanım alanı için tasarlanmıştır. Sınırlama rehberine göz atın.
- Remote Config değerlerini almak için ağ bağlantısına güvenmeyin. Uygulamanızın her zaman beklendiği gibi davranması için uygulama içi varsayılan parametre değerlerini ayarlayın. İndirilen şablon varsayılanlarını kullanarak uygulama ve Remote Config arka uç varsayılan değerlerini düzenli olarak senkronize edebilirsiniz.
Sonraki adımlar
Bu üç temel strateji, yapılandırma değerlerini yüklemenin tüm yollarını içermez. İhtiyaçlarınıza bağlı olarak çok daha karmaşık stratejiler geliştirebilirsiniz.
Yapılandırma değerlerini getirme ve etkinleştirme ile ilgili belirli çağrılar hakkında daha fazla bilgi edinmek için platformunuzun API referansını inceleyin.