Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

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ği 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. Bu kılavuz, birkaç yükleme stratejisine bakar ve uygulamanız için en iyi seçeneği seçmeye yönelik önemli hususları tartışır.

Strateji 1: Yükte getir ve etkinleştir

Bu stratejide, uygulamanızın çağırır fetchAndActivate() uygulama ilk Uzaktan Config tarafından yeni değerler almaya başlar ve en kısa sürede onlar bitti yükleme gibi onları aktive olduğunda. 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 çalışır. Kullanıcılar onu kullanmanın ortasındayken, kullanıcı arayüzünüzün gözle görülür şekilde değişebileceği herhangi bir durumda bundan kaçınılmalıdır.

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

1. stratejide karşılaşılan olası kullanıcı arayüzü sorununa bir çare olarak, bir yükleme ekranına güvenebilirsiniz. Bunun yerine hemen uygulamanızı başlayan, bir yükleme ekranını göstermek ve çağrı fetchAndActivate sizin tamamlama işleyicisinde. Bundan hemen sonra - yine bir geri arama veya bildirim kullanarak - yükleme ekranını kapatın ve kullanıcının uygulamanızla etkileşime girmesine 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ılar için kaliteli bir uygulama başlatma deneyimi için çok uzun olabilir.

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

Etkili bir strateji uygulamanızın bir sonraki açılışta aktif hale getirmek için yeni yapılandırma değerlerini yüklemektir. Bu stratejide, uygulamanız, yeni yapılandırma değerlerini zaten getirmiş (ancak henüz etkinleştirilmemiş) olabileceği varsayımıyla çalışarak, yenilerini getirmeye çalışmadan önce başlangıçta alınan değerleri etkinleştirir. Bu strateji için işlem sırası:

  1. Başlangıçta, önceden alınan 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şim kurarken, varsayılan minimum getirme aralığına göre yeni değerler getirmek için eşzamansız bir çağrı başlatın.
  3. Tamamlama işleyicisinde veya getirme çağrısı için geri aramada hiçbir şey yapmayın. Uygulamanız, indirilen değerleri, uygulama bir sonraki başlatılışında siz etkinleştirene kadar saklayacaktır.

Bu strateji ile kullanıcı bekleme süresi büyük ölçüde en aza indirilir. Ancak, kullanıcının en son yapılandırmayı görebilmesi için uygulamanızı ikinci kez çalıştırması gerekir. Bu hususları işletmeniz ve uygulama mantığınızla dengelemeniz gerekecek.

Anti-stratejiler yükleniyor

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

  • Güncelleme veya kullanıcı görüntüleme veya onunla etkileşime iken UI yönlerini açmayın - sadece sona bir tanıtıma ilişkin seçenekler kaldırma gibi, bunun için güçlü uygulama veya iş nedenleri olmadığı sürece.
  • Uygulamanızı daraltma sunucuya sonuçlanabilir getirme eşzamanlı istek, kütle numaralarını göndermeyin. Çoğu üretim senaryosunda bunun olma riski düşüktür, ancak aktif geliştirme sırasında sorun olabilir. İçin azaltma rehberlik göz atın Android ve iOS .

Sonraki adımlar

Bu üç temel strateji, hiçbir şekilde konfigürasyon değerlerini yükleme yollarının tam bir listesini içermez. İhtiyaçlarınıza bağlı olarak, bu tür açıklanan fonksiyon odaklı arka plan güncellemeleri gibi çok daha sofistike stratejiler geliştirilmesi de mümkün gerçek zamanlı olarak Propagate güncellemeleri .

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