Join us in person and online for Firebase Summit on October 18, 2022. Learn how Firebase can help you accelerate app development, release your app with confidence, and scale with ease. Register now

Firebase Remote Config'i kullanmaya başlayın

Koleksiyonlar ile düzeninizi koruyun İçeriği tercihlerinize göre kaydedin ve kategorilere ayırı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, başlama adımlarında size yol gösterir ve tümü firebase/quickstart-ios GitHub deposundan kopyalanabilen veya indirilebilen bazı örnek kodlar sağlar.

1. Adım: Uygulamanıza Remote Config ekleyin

  1. Apple platformları için Firebase SDK'sını yükleyin .

  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. Daha fazla bilgi için Kısma bölümüne bakın.

2. Adım: Uygulama içi varsayılan parametre değerlerini ayarlayın

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 NSDictionary nesnesi veya bir plist dosyası kullanarak bir dizi parametre adı ve varsayılan parametre değeri tanımlayın.

    Remote Config arka uç parametre değerlerini önceden yapılandırdıysanız, tüm varsayılan değerleri içeren oluşturulmuş bir plist dosyasını indirebilir ve Xcode projenize kaydedebilirsiniz.

    DİNLENME

    curl --compressed -D headers -H "Authorization: Bearer token -X GET https://firebaseremoteconfig.googleapis.com/v1/projects/my-project-id/remoteConfig:downloadDefaults?format=PLIST -o RemoteConfigDefaults.plist
    

    Firebase konsolu

    1. Parametreler sekmesinde Menüsünü açın ve Varsayılan değerleri indir öğesini seçin.

    2. İstendiğinde, iOS için .plist'i etkinleştirin ve ardından Dosyayı indir öğesini tıklayın.

  2. 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"];

3. Adım: 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, setDefaults: kullanılarak yapılandırılan uygulama içi parametre değerlerini alırsınız. Bu değerleri almak için parametre anahtarını argüman olarak sağlayarak configValueForKey: yöntemini çağırın.

Adım 4: Parametre değerlerini ayarlayın

Firebase konsolunu veya Remote Config arka uç API'lerini kullanarak, istediğiniz koşullu mantığa veya kullanıcı hedeflemeye göre uygulama içi değerleri geçersiz kılan yeni arka uç varsayılan değerleri oluşturabilirsiniz. Bu bölüm, bu değerleri oluşturmak için Firebase konsolu adımlarında size yol gösterir.

  1. Firebase konsolunda projenizi açın.
  2. Remote Config panosunu görüntülemek için menüden Remote 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 edinmek için bkz. Remote Config Parameters and Conditions .

Adım 5: Değerleri alın ve etkinleştirin

Remote Config'den parametre değerlerini almak için fetchWithCompletionHandler: veya fetchWithExpirationDuration:completionHandler: yöntemini çağırın. Arka uçta ayarladığınız tüm değerler, Remote Config nesnesinde alınır ve önbelleğe alınır.

Bir çağrıda değerleri almak ve etkinleştirmek istediğiniz durumlar için fetchAndActivateWithCompletionHandler: kullanın.

Bu örnek, Remote Config arka ucundan (önbelleğe alınmış değerler değil) değerler alır ve bunları uygulamada kullanılabilir kılmak için activateWithCompletionHandler: öğesini çağırır:

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) {
        if (error != nil) {
          NSLog(@"Activate error: %@", error.localizedDescription);
        } else {
          dispatch_async(dispatch_get_main_queue(), ^{
            [self displayWelcome];
          });
        }
      }];
    } else {
        NSLog(@"Config not fetched");
        NSLog(@"Error %@", error.localizedDescription);
    }
}];

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. Daha fazla bilgi ve örnekler için Remote Config yükleme stratejilerine bakın.

kısma

Bir uygulama kısa bir süre içinde çok fazla getirirse, getirme çağrıları kısıtlanır ve SDK, FIRRemoteConfigFetchStatusThrottled döndürür. 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. Çok sayıda geliştiriciye sahip bir projede hızlı yinelemeye uyum sağlamak için, uygulamanıza düşük minimum getirme aralığına ( MinimumFetchInterval ) sahip bir FIRRemoteConfigSettings özelliğini geçici olarak ekleyebilirsiniz.

Remote Config için varsayılan ve önerilen üretim getirme aralığı 12 saattir; bu, gerçekte kaç 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. fetch(long)
  2. FIRRemoteConfigSettings.MinimumFetchInterval içindeki parametre
  3. 12 saatlik varsayılan değer

Sonraki adımlar

Henüz yapmadıysanız, Remote Config kullanım örneklerini inceleyin ve aşağıdakiler dahil bazı temel kavramlara ve gelişmiş strateji belgelerine göz atın: