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'i kullanmaya başlayın

Uygulamanızda parametreleri tanımlamak ve bunların değerlerini bulutta güncellemek için Firebase Remote Config'i kullanarak uygulama güncellemesi dağıtmadan uygulamanızın görünümünü ve davranışını değiştirebilirsiniz. Bu kılavuz gelen klon veya indirmek için kullanılabilir hepsi, başlamak için adım adım yürür ve bazı örnek kodu sağlar Firebase / klavuzdaki-ios GitHub depo.

Uygulamanıza Remote Config ekleyin

  1. Firebase SDK'yı yükleyin iOS için.

  2. Aşağıdaki örnekte gösterildiği gibi tekli Remote Config nesnesini oluşturun:

    Süratli

    remoteConfig = RemoteConfig.remoteConfig()
    let settings = RemoteConfigSettings()
    settings.minimumFetchInterval = 0
    remoteConfig.configSettings = settings

    Amaç-C

    self.remoteConfig = [FIRRemoteConfig remoteConfig];
    FIRRemoteConfigSettings *remoteConfigSettings = [[FIRRemoteConfigSettings alloc] init];
    remoteConfigSettings.minimumFetchInterval = 0;
    self.remoteConfig.configSettings = remoteConfigSettings;

Bu nesne, uygulama içi varsayılan parametre değerlerini depolamak, Remote Config arka ucundan güncellenmiş parametre değerlerini almak ve alınan değerlerin uygulamanız için ne zaman kullanıma sunulacağını kontrol etmek için kullanılır.

Geliştirme sırasında, nispeten düşük bir minimum getirme aralığı ayarlamanız önerilir. Bkz Kısma fazla bilgi için.

Uygulama içi varsayılan parametre değerlerini ayarla

Uygulamanızın Remote Config arka ucuna bağlanmadan önce amaçlandığı gibi davranması ve arka uçta hiçbiri ayarlanmamışsa varsayılan değerlerin kullanılabilir olması için Remote Config nesnesinde uygulama içi varsayılan parametre değerlerini ayarlayabilirsiniz.

  1. Bir kullanarak parametre adları ve varsayılan parametre değerlerinin bir dizi tanımlayın NSDictionary nesne veya bir plist dosyası .
  2. Kullanarak Uzaktan Yapılandırma nesnesine bu değerleri ekleyin setDefaults: . Aşağıdaki örnek, bir plist dosyasından uygulama içi varsayılan değerleri ayarlar:

Süratli

remoteConfig.setDefaults(fromPlist: "RemoteConfigDefaults")

Amaç-C

[self.remoteConfig setDefaultsFromPlistFileName:@"RemoteConfigDefaults"];

Uygulamanızda kullanmak için parametre değerlerini alın

Artık Remote Config nesnesinden parametre değerlerini alabilirsiniz. Daha sonra Remote Config arka ucunda değerler ayarlarsanız, bunları getirir ve ardından etkinleştirirseniz, bu değerler uygulamanızda kullanılabilir. Aksi takdirde, kullandığınız yapılandırılmış uygulama içi parametre değerleri elde setDefaults: . Bu değerleri elde etmek için, çağrı configValueForKey: bağımsız değişken olarak parametre anahtarını sağlayan yöntem.

Parametre değerlerini ayarla

Firebase konsolunu veya kullanma Uzaktan Yapılandırma arka uç API'leri , erişim engelleme uygulama içi değerleri istediğiniz koşullu mantık veya kullanıcı hedefleme göre yeni arka uç varsayılan değerleri oluşturabilir. Bu bölüm, bu değerleri oluşturmak için Firebase konsolu adımlarında size yol gösterir.

  1. In Firebase konsolunda , projenizi açın.
  2. Uzaktan Yapılandırma panosunu görüntülemek için menüden Uzak Config'i seçin.
  3. Uygulamanızda tanımladığınız parametrelerle aynı adlara sahip parametreleri tanımlayın. Her parametre için bir varsayılan değer ayarlayabilirsiniz (sonunda uygulama içi varsayılan değeri geçersiz kılar) ve ayrıca koşullu değerler de ayarlayabilirsiniz. Daha fazla bilgi için bkz Uzaktan Yapılandırma Parametreleri ve Koşulları .

Değerleri getir ve etkinleştir

Uzaktan Config tarafından parametre değerleri getirmesi, çağrı fetchWithCompletionHandler: veya fetchWithExpirationDuration:completionHandler: yöntemini. Arka uçta ayarladığınız tüm değerler, Remote Config nesnesinde alınır ve önbelleğe alınır.

Getirmek istediğiniz ve bir çağrıda değerleri aktive durumlar için, kullanmak fetchAndActivateWithCompletionHandler: .

Bu örnek Uzaktan yapılandırma arka uç (değil değerler önbelleğe) değerleri getirir ve çağrıları activateWithCompletionHandler: app bunları kullanılabilir hale getirmek için:

Süratli

remoteConfig.fetch { (status, error) -> Void in
  if status == .success {
    print("Config fetched!")
    self.remoteConfig.activate { changed, error in
      // ...
    }
  } else {
    print("Config not fetched")
    print("Error: \(error?.localizedDescription ?? "No error available.")")
  }
  self.displayWelcome()
}

Amaç-C

[self.remoteConfig fetchWithCompletionHandler:^(FIRRemoteConfigFetchStatus status, NSError *error) {
    if (status == FIRRemoteConfigFetchStatusSuccess) {
        NSLog(@"Config fetched!");
      [self.remoteConfig activateWithCompletion:^(BOOL changed, NSError * _Nullable error) {
        // ...
      }];
    } else {
        NSLog(@"Config not fetched");
        NSLog(@"Error %@", error.localizedDescription);
    }
    [self displayWelcome];
}];

Bu güncellenen parametre değerleri uygulamanızın davranışını ve görünümünü etkilediğinden, örneğin kullanıcının uygulamanızı bir sonraki açılışında olduğu gibi, kullanıcınız için sorunsuz bir deneyim sağlayan bir zamanda alınan değerleri etkinleştirmelisiniz. Bkz Uzaktan Yapılandırma yükleme stratejilerini daha fazla bilgi ve örnekler için.

kısma

Bir uygulama kısa bir süre içinde çok kez getirir, çağrılar daraltma edilir getirme ve SDK döner FIRRemoteConfigFetchStatusThrottled . SDK 6.3.0 sürümünden önce, sınır 60 dakikalık bir pencerede 5 getirme isteğiydi (daha yeni sürümlerde daha fazla izin verilen sınır var).

Uygulama geliştirme sırasında, uygulamanızı geliştirirken ve test ederken hızla yinelemenizi sağlamak için önbelleği çok sık (saatte birçok kez) yenilemek isteyebilirsiniz. Sayısız geliştiricileri ile bir proje üzerinde hızlı iterasyon yerleştirmek için, geçici bir ekleyebilir FIRRemoteConfigSettings (aralık getirme düşük minimum özelliği MinimumFetchInterval uygulamanızda).

Remote Config için varsayılan ve önerilen üretim getirme aralığı 12 saattir; bu, gerçekte kaç tane getirme çağrısı yapıldığından bağımsız olarak, yapılandırmaların arka uçtan 12 saatlik bir pencerede bir kereden fazla getirilmeyeceği anlamına gelir. Spesifik olarak, minimum getirme aralığı şu sırayla belirlenir:

  1. Parametresi fetch(long)
  2. Parametresi FIRRemoteConfigSettings.MinimumFetchInterval
  3. 12 saatlik varsayılan değer

Sonraki adımlar

Henüz varsa, Uzaktan Yapılandırma keşfetmek kullanım durumları ve anahtar kavramları ve gelişmiş stratejiler dokümantasyon dahil bazılarına bir göz atın: