Firebase Remote Config yükleme stratejileri

Firebase Remote Config, sunucudan yeni değerlerin nasıl ve ne zaman alınacağı ve bunları uygulamanızda etkinleştireceğiniz konusunda çok fazla esneklik sağlayarak, görünür yapılandırma değişikliklerinin zamanlamasını kontrol ederek kaliteli bir son kullanıcı deneyimi sağlamanıza olanak tanır. fetchAndActivate() kullanarak uygulama başlatıldığında yeni değerler getirebilir ve Remote Config'inizin yeni bir sürümü yayınlandıktan sonra en son parametre değerlerini otomatik olarak getirmek için gerçek zamanlı Remote Config'i tamamlayıcı bir yöntem olarak kullanabilirsiniz.

Bu kılavuzda birkaç yükleme stratejisi ele alınmakta ve uygulamanız için en iyi seçeneğin seçilmesine ilişkin temel hususlar tartışılmaktadır.

Strateji 1: Yükte getir ve etkinleştir

Bu stratejide, uygulamanız Remote Config'den yeni değerler almak ve yükleme biter bitmez bunları etkinleştirmek için uygulamanız ilk başlatıldığında fetchAndActivate() öğesini çağırır. Bu basit yaklaşım, kullanıcı arayüzünüzde dramatik görsel değişikliklere neden olmayan yapılandırma değişiklikleri için iyi sonuç verir. Kullanıcılar kullanıcı arayüzünün ortasındayken kullanıcı arayüzünüzün gözle görülür şekilde değişebileceği her durumda bundan kaçınılmalıdır.

Uygulamanız fetchAndActivate() öğesini çağırdıktan sonra, addOnConfigUpdateListener çağırarak parametre değeri güncellemelerini gerçek zamanlı olarak dinlemeye başlayabilir. Bu yöntem, parametre değerlerinde yapılan sunucu tarafı güncellemelerini dinlemeye başlar, bunları otomatik olarak getirir ve ardından dinleyiciyi çağırır. Basit bir strateji, dinleyicideki yeni değerleri aktive etmektir. Ancak fetchAndActivate() için belirtildiği gibi, hassas kullanıcı arayüzleri için hemen etkinleştirmekten kaçınılmalıdır.

Strateji 2: Yükleme ekranının arkasında etkinleştirin

Strateji 1'de karşılaşılan potansiyel kullanıcı arayüzü sorununa çözüm olarak yükleme ekranına güvenebilirsiniz. Uygulamanızı hemen başlatmak yerine bir yükleme ekranı gösterin ve tamamlama işleyicinizde fetchAndActivate çağırın. Ardından hemen ardından - yine bir geri arama veya bildirim kullanarak - yükleme ekranını kapatın ve kullanıcının uygulamanızla etkileşime geçmesine izin verin.

Bu stratejiyi kullanırsanız yükleme ekranına bir zaman aşımı eklemeniz önerilir. Remote Config'in bir dakikalık zaman aşımı, kullanıcılara kaliteli bir uygulama başlatma deneyimi sağlamak için çok uzun olabilir.

addOnConfigUpdateListener çağırarak gerçek zamanlı Remote Config güncellemelerini dinlemek bu stratejiyle iyi çalışır. Yükleme ekranı görüntülendiğinde dinleyiciyi ekleyin, ardından uygulamanızda Remote Config değerlerinin dramatik görsel değişikliklere neden olmayacağı bir veya daha fazla noktada activate() işlevini kullanın.

Strateji 3: Bir sonraki başlangıç ​​için yeni değerler yükleyin

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 zaten getirmiş (ancak henüz etkinleştirmemiş) varsayımıyla çalışarak, yenilerini almaya çalışmadan önce başlangıçta getirilen değerleri etkinleştirir. Bu stratejinin işlem sırası şöyledir:

  1. Başlangıçta önceden 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.
  2. 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ı bir yapılandırma güncelleme dinleyicisi ekleyin. Gerçek zamanlı dinleyici, uygulamanız çalışırken sunucuda yayınlanan tüm değerleri otomatik olarak getirecektir. Gerçek zamanlı güncellemeler minimum getirme aralığı ayarını atlar.
  3. Tamamlama işleyicisinde veya getirme çağrısı için geri aramada hiçbir şey yapmayın. Uygulamanız, indirilen değerleri, uygulamanın bir sonraki başlatılışında siz onları etkinleştirene kadar saklar.

Bu stratejiyle kullanıcının bekleme süresi büyük ölçüde en aza indirilir. Getirme ve gerçek zamanlı dinleyici stratejilerini, uygulama yaşam döngüsünde gerektiği gibi activate() çağrılarıyla birleştirmek, kullanıcıların uygulamanızla etkileşimde bulunurken Remote Config'den en son değerleri almasını sağlar.

Anti-stratejiler yükleniyor

Yukarıdaki yükleme artıları ve eksileri tartışmasından anlamış olabileceğiniz gibi, kaçınılması gereken birkaç kullanım şekli vardır.

  • Kullanıcı arayüzü görüntülerken veya kullanıcı arayüzüyle etkileşimde bulunurken, yeni sona eren bir promosyonla ilgili seçenekleri kaldırmak gibi güçlü uygulama veya iş nedenleriniz olmadığı sürece kullanıcı arayüzünü güncellemeyin veya değiştirmeyin.
  • 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 almanız gerekiyorsa gerçek zamanlı Remote Config'i kullanın. Çoğu üretim senaryosunda azaltma riski düşük olsa da aktif geliştirme sırasında bir sorun olabilir ve gerçek zamanlı Remote Config bu kullanım durumu için tasarlanmıştır. Kısıtlama kılavuzuna göz atın.
  • Remote Config değerlerini elde etmek 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 periyodik olarak senkronize halde tutabilirsiniz.

Sonraki adımlar

Bu üç temel strateji hiçbir şekilde konfigürasyon değerlerini yükleme yollarının tam bir listesini oluşturmaz. İhtiyaçlarınıza bağlı olarak çok daha karmaşık stratejiler geliştirebilirsiniz.

Yapılandırma değerlerini almaya ve etkinleştirmeye yönelik belirli çağrılar hakkında daha fazla bilgi edinmek için platformunuza yönelik API referansına göz atın.