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.

Remote Config kitaplığı, 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. Daha fazla bilgi edinmek için bkz. Remote Config yükleme stratejileri .

Bu kılavuz, başlama adımlarında size yol gösterir ve tümü firebase/hızlı başlangıç-birlik GitHub deposundan kopyalanabilen veya indirilebilen bazı örnek kodlar sağlar.

Uygulamanıza Remote Config ekleyin

Remote Config'i kullanmadan önce şunları yapmanız gerekir:

  • Unity projenizi kaydedin ve Firebase'i kullanacak şekilde yapılandırın.

    • Unity projeniz zaten Firebase kullanıyorsa, Firebase için zaten kayıtlı ve yapılandırılmıştır.

    • Unity projeniz yoksa örnek bir uygulama indirebilirsiniz.

  • Firebase Unity SDK'sını (özellikle FirebaseRemoteConfig.unitypackage ) Unity projenize ekleyin.

Unity projenize Firebase eklemenin hem Firebase konsolundaki hem de açık Unity projenizdeki görevleri içerdiğini unutmayın (örneğin, Firebase yapılandırma dosyalarını konsoldan indirirsiniz, ardından bunları Unity projenize taşırsınız).

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.

Bunu yapmak için bir dize sözlüğü oluşturun ve eklemek istediğiniz varsayılanları temsil eden anahtar/değer çiftleriyle doldurun. Remote Config arka uç parametre değerlerini zaten yapılandırdıysanız, bu anahtar/değer çiftlerini içeren bir dosya indirebilir ve onu dize sözlüğünüzü oluşturmak için kullanabilirsiniz. Daha fazla bilgi için bkz. Remote Config şablon varsayılanlarını indirin .

( SetDefaultsAsync() çağrıldığında, dize olmayan özellikler özelliğin türüne dönüştürülür).

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

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

Artık Remote Config nesnesinden parametre değerlerini alabilirsiniz. Remote Config arka ucunda değerler ayarlarsanız, bunları getirdiyseniz ve ardından etkinleştirdiyseniz, bu değerler uygulamanız tarafından kullanılabilir. Aksi takdirde, SetDefaultsAsync() 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 GetValue() kullanın. Bu, değeri çeşitli temel türlere dönüştürmek için özelliklere sahip bir ConfigValue döndürür.

Uygulamanızı Firebase konsolunda bağlayın

Firebase konsolunda , uygulamanızı Firebase projenize ekleyin.

Parametre değerlerini ayarla

  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 (sonunda uygulama içi varsayılan değeri geçersiz kılar) ve koşullu değerler ayarlayabilirsiniz. Daha fazla bilgi edinmek için bkz. Remote Config parametreleri ve koşulları .

Değerleri getir ve etkinleştir (gerektiği gibi)

Remote Config arka ucundan parametre değerlerini almak için FetchAsync() 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.

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

FetchAsync() aracılığıyla getirilen değerler, getirme tamamlandığında yerel olarak önbelleğe alınır, ancak ActivateFetched() çağrılana kadar kullanıma sunulmaz. FetchAsync() eşzamansız olarak yürütüldüğünden, bu, yeni değerlerin hesaplamanın ortasında veya sorunlara veya garip davranışlara neden olabilecek diğer zamanlarda uygulanmadığından emin olmanızı sağlar.

(İsteğe bağlı) Geliştirici modunu etkinleştir

Geliştirme sırasında azaltmayı devre dışı bırakmak için kullanılabilen geliştirici modunu etkinleştirmek için, IsDeveloperMode ConfigSettings FirebaseRemoteConfig.Setting kullanabilirsiniz.

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: