Capacitor SDK'da remote config paywallları için paywallları ve ürünleri getir

Remote config ve custom paywall bilgilerini göstermeden önce bunları fetch etmeniz gerekir. Bu konunun remote config ve custom paywall’larla ilgili olduğunu lütfen unutmayın. Flow veya Flow Builder ya da Paywall Builder ile özelleştirilmiş paywall’ları fetch etme konusunda rehberlik için Flow Builder flow’larını ve Paywall Builder paywall’larını ve yapılandırmalarını fetch etme bölümüne bakın.

Adapty SDK’nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall’ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren örnek uygulamalarımıza göz atın.

Mobil uygulamanızda flow’ları ve ürünleri fetch etmeye başlamadan önce (genişletmek için tıklayın)
  1. Ürünlerinizi oluşturun (Adapty Kontrol Paneli’nde).

  2. Bir flow veya paywall oluşturun ve ürünleri ekleyin (Adapty Kontrol Paneli’nde).

  3. Placement’lar oluşturun ve flow ya da paywall’ı placement’a ekleyin (Adapty Kontrol Paneli’nde).

  4. Adapty SDK’yı yükleyin (mobil uygulamanıza).

Flow bilgilerini getirme

Adapty’de bir ürün, hem App Store hem de Google Play’den gelen ürünlerin birleşimidir. Bu platformlar arası ürünler, belirli mobil uygulama placement’larında sergilemenizi sağlamak amacıyla flow’lara ve paywall’lara entegre edilir.

Ürünleri görüntülemek için getFlow metoduyla placement’larınızdan birinden bir AdaptyFlow almanız gerekir.

Ürün ID’lerini doğrudan koda yazmayın. Doğrudan koda yazmanız gereken tek ID, placement ID’sidir. Flow’lar uzaktan yapılandırıldığından, ürün sayısı ve mevcut teklifler her an değişebilir. Uygulamanız bu değişiklikleri dinamik olarak ele almalıdır; bir flow bugün iki ürün döndürüyorsa ve yarın üç ürün döndürüyorsa, kod değişikliği yapmadan hepsini gösterin.


try {
  const flow = await adapty.getFlow({ 
    placementId: 'YOUR_PLACEMENT_ID', 
    params: {
      fetchPolicy: 'reload_revalidating_cache_data', // Load from server, fallback to cache
      loadTimeoutMs: 5000 // 5 second timeout
    }
  });
  // the requested flow
} catch (error) {
  console.error('Failed to fetch flow:', error);
}
ParametreZorunlulukAçıklama
placementIdzorunluPlacement tanımlayıcısı. Adapty Kontrol Paneli’nde bir placement oluştururken belirttiğiniz değerdir.
params.fetchPolicy

isteğe bağlı

varsayılan: 'reload_revalidating_cache_data'

SDK varsayılan olarak sunucudan veri yüklemeye çalışır; başarısız olursa önbelleğe alınmış veriyi döndürür. Kullanıcılarınızın her zaman en güncel verilere erişmesini sağladığından bu seçeneği öneririz.

Ancak kullanıcılarınızın kararsız bir internet bağlantısıyla karşılaştığını düşünüyorsanız, önbelleğe alınmış veri varsa onu döndürmek için 'return_cache_data_else_load' kullanmayı değerlendirin. Bu senaryoda kullanıcılar en güncel verilere ulaşamayabilir; ancak internet bağlantısı ne kadar düzensiz olursa olsun daha hızlı yükleme süreleri yaşarlar. Önbellek düzenli olarak güncellenir, bu nedenle ağ isteklerinden kaçınmak amacıyla oturum sırasında güvenle kullanılabilir.

Önbelleğin uygulama yeniden başlatıldığında silinmediğini, yalnızca uygulama kaldırıldığında veya manuel temizlik yapıldığında sıfırlandığını unutmayın.

Adapty SDK, flow’ları ve paywall’ları iki katmanda saklar: yukarıda açıklanan düzenli olarak güncellenen önbellek ve yedek paywall’lar. Flow’ları ve paywall’ları daha hızlı getirmek için CDN, CDN’e ulaşılamadığında ise bağımsız bir yedek sunucu kullanırız. Bu sistem, internet bağlantısının zayıf olduğu durumlarda bile güvenilirliği sağlarken flow’larınızın her zaman en güncel sürümünü almanızı garanti edecek şekilde tasarlanmıştır.

params.loadTimeoutMs

isteğe bağlı

varsayılan: 5000 ms

Bu değer, metodun zaman aşımı süresini (milisaniye cinsinden) sınırlar. Zaman aşımına ulaşılırsa önbelleğe alınmış veri veya yerel yedek döndürülür.

Nadir durumlarda bu metodun loadTimeoutMs içinde belirtilenden biraz daha geç zaman aşımına uğrayabileceğini unutmayın; çünkü işlem arka planda farklı isteklerden oluşabilir.

v4’te getFlow artık locale parametresi almıyor. Özel paywalllar için mevcut tüm locale’ler, flow’un remote config’inde (flow.remoteConfigs) döndürülür; kullanıcının cihazına veya uygulama ayarına uyan olanı seçin.

Ürün ID’lerini kod içine sabit olarak yazmayın! Flow’lar uzaktan yapılandırıldığından, mevcut ürünler, ürün sayısı ve özel teklifler (ücretsiz deneme gibi) zaman içinde değişebilir. Kodunuzun bu senaryoları ele aldığından emin olun.

Örneğin, başlangıçta 2 ürün alıyorsanız uygulamanız o 2 ürünü göstermelidir. Ancak daha sonra 3 ürün alırsanız, herhangi bir kod değişikliği gerektirmeden uygulamanız 3 ürünü de göstermelidir. Tek sabit olarak yazmanız gereken şey placement ID’sidir.

Yanıt parametreleri:

ParametreAçıklama
FlowPlacement, tanımlayıcılar (id, variationId), ad, paywall varyasyonları (paywalls) ve yapılandırılmış her yerel ayar için bir giriş içeren remoteConfigs dizisini barındıran bir AdaptyFlow nesnesi. Flow için ürünleri getirmek üzere getPaywallProducts({ flow }) çağrısını kullanın.

Ürünleri getir

Flow’u aldıktan sonra, ona karşılık gelen ürün dizisini sorgulayabilirsiniz:


try {
  const products = await adapty.getPaywallProducts({ flow });
  // the requested products list
} catch (error) {
  console.error('Failed to fetch products:', error);
}

Yanıt parametreleri:

ParametreAçıklama
ProductsÜrün tanımlayıcısı, ürün adı, fiyat, para birimi, abonelik süresi ve diğer çeşitli özellikleri içeren AdaptyPaywallProduct nesnelerinin listesi.

Kendi paywall tasarımınızı uygularken AdaptyPaywallProduct nesnesindeki bu özelliklere erişmeniz gerekecektir. Aşağıda en sık kullanılan özellikler gösterilmektedir; mevcut tüm özellikler için bağlantılı dokümana bakın.

ÖzellikAçıklama
BaşlıkÜrün başlığını göstermek için product.localizedTitle kullanın. Yerelleştirme, cihazın yerel ayarına değil, kullanıcının seçtiği mağaza ülkesine göre yapılır.
FiyatFiyatın yerelleştirilmiş halini göstermek için product.price?.localizedString kullanın. Bu yerelleştirme cihazın yerel ayarına göre yapılır. Fiyata sayısal olarak erişmek için product.price?.amount kullanabilirsiniz. Değer yerel para biriminde sunulur. İlgili para birimi sembolünü almak için product.price?.currencySymbol kullanın.
Abonelik DönemiDönemi (ör. hafta, ay, yıl vb.) göstermek için product.subscription?.localizedSubscriptionPeriod kullanın. Bu yerelleştirme cihazın yerel ayarına göre yapılır. Abonelik dönemine programatik olarak erişmek için product.subscription?.subscriptionPeriod kullanın. Buradan unit özelliğine erişerek uzunluğu (yani ‘day’, ‘week’, ‘month’, ‘year’ veya ‘unknown’) alabilirsiniz. numberOfUnits değeri ise dönem birimi sayısını verir. Örneğin üç aylık bir abonelikte unit özelliğinde 'month', numberOfUnits özelliğinde ise 3 görürsünüz.
Başlangıç TeklifiBir aboneliğin başlangıç teklifi içerip içermediğini rozet veya başka bir gösterge ile belirtmek için product.subscription?.offer?.phases özelliğine bakın. Bu, ücretsiz deneme aşaması ve başlangıç fiyatı aşaması olmak üzere en fazla iki indirim aşaması içerebilen bir listedir. Her aşama nesnesi şu kullanışlı özellikleri içerir:
paymentMode: 'free_trial', 'pay_as_you_go', 'pay_up_front' ve 'unknown' değerlerini alabilen bir dize. Ücretsiz denemeler 'free_trial' türünde olur.
price: İndirimli fiyat, sayısal olarak. Ücretsiz denemeler için burada 0 değerini arayın.
localizedNumberOfPeriods: Teklifin süresini cihazın yerel ayarına göre açıklayan yerelleştirilmiş bir dize. Örneğin üç günlük bir deneme teklifi bu alanda '3 days' olarak görünür.
subscriptionPeriod: Alternatif olarak, teklif döneminin ayrıntılarına bu özellik aracılığıyla ulaşabilirsiniz. Teklifler için önceki bölümde açıklanan yöntemle aynı şekilde çalışır.
localizedSubscriptionPeriod: Kullanıcının yerel ayarına göre biçimlendirilmiş indirim abonelik dönemi.

Varsayılan kitle flow’u ile flow getirme işlemini hızlandırın

Genellikle flow’lar neredeyse anında getirilir, bu yüzden bu süreci hızlandırma konusunda endişelenmenize gerek yoktur. Ancak çok sayıda kitleniz ve placement’ınız olduğu ve kullanıcılarınızın zayıf bir internet bağlantısına sahip olduğu durumlarda, bir flow’u getirmek istediğinizden daha uzun sürebilir. Bu gibi durumlarda, hiçbir şey göstermek yerine sorunsuz bir kullanıcı deneyimi sağlamak amacıyla varsayılan bir flow görüntülemek isteyebilirsiniz. Bunu çözmek için, belirtilen placement’ın All Users kitlesi için flow’u getiren getFlowForDefaultAudience metodunu kullanabilirsiniz. Ancak şunu bilmek önemlidir: önerilen yaklaşım, yukarıdaki Flow bilgisini getirme bölümünde açıklandığı gibi getFlow metoduyla flow’u getirmektir.

Neden getFlow kullanmanızı öneriyoruz

getFlowForDefaultAudience metodunun birkaç önemli dezavantajı vardır:

  • Olası geriye dönük uyumluluk sorunları: Farklı uygulama sürümleri için (mevcut ve gelecekteki) farklı flow’lar göstermeniz gerekiyorsa, zorluklarla karşılaşabilirsiniz. Ya mevcut (eski) sürümü destekleyen flow’lar tasarlamanız ya da mevcut (eski) sürüme sahip kullanıcıların render edilemeyen flow’larla sorun yaşayabileceğini kabul etmeniz gerekecektir.
  • Hedefleme kaybı: Tüm kullanıcılar All Users kitlesi için tasarlanmış aynı flow’u görür; bu da ülkelere, marketing attribution’a veya kendi özel niteliklerinize göre kişiselleştirilmiş hedeflemeyi kaybetmeniz anlamına gelir. Eğer daha hızlı flow çekme işleminden yararlanmak için bu dezavantajları kabul etmeye hazırsanız, getFlowForDefaultAudience metodunu aşağıdaki gibi kullanın. Aksi takdirde, yukarıda açıklanan getFlow yöntemini kullanmaya devam edin.

try {
  const flow = await adapty.getFlowForDefaultAudience({ 
    placementId: 'YOUR_PLACEMENT_ID', 
    params: {
      fetchPolicy: 'reload_revalidating_cache_data' // Load from server, fallback to cache
    }
  });
  // the requested flow
} catch (error) {
  console.error('Failed to fetch default audience flow:', error);
}
ParametreZorunlulukAçıklama
placementIdzorunluPlacement’ın tanımlayıcısı. Adapty Kontrol Paneli’nde bir placement oluştururken belirttiğiniz değerdir.
params.fetchPolicy

isteğe bağlı

varsayılan: 'reload_revalidating_cache_data'

SDK, varsayılan olarak sunucudan veri yüklemeye çalışır; başarısız olursa önbellekteki verileri döndürür. Kullanıcılarınızın her zaman en güncel verilere ulaşmasını sağladığı için bu seçeneği öneriyoruz.

Ancak kullanıcılarınızın kararsız bir internet bağlantısıyla karşılaştığını düşünüyorsanız, önbellekte veri varsa onu döndürmek için 'return_cache_data_else_load' kullanmayı değerlendirin. Bu durumda kullanıcılar en son verilere her zaman ulaşamayabilir; fakat internet bağlantılarının kalitesinden bağımsız olarak daha hızlı yükleme süreleriyle karşılaşırlar. Önbellek düzenli olarak güncellenir; bu nedenle oturum sırasında ağ isteklerinden kaçınmak amacıyla güvenle kullanılabilir.

Önbelleğin uygulama yeniden başlatıldığında silinmediğini, yalnızca uygulama kaldırılıp yeniden yüklendiğinde ya da manuel temizleme yapıldığında temizlendiğini unutmayın.

Remote config ve özel paywallları göstermeden önce bunlarla ilgili bilgileri getirmeniz gerekir. Bu konunun remote config ve özel paywallları ele aldığını unutmayın. Paywall Builder ile özelleştirilmiş paywallları getirme konusunda rehberlik için lütfen Paywall Builder paywalllarını ve yapılandırmalarını getirme sayfasına bakın.

Adapty SDK’nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall’ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren örnek uygulamalarımıza göz atın.

Mobil uygulamanızda paywall ve ürünleri getirmeye başlamadan önce (genişletmek için tıklayın)
  1. Adapty Kontrol Paneli’nde ürünlerinizi oluşturun.

  2. Bir paywall oluşturun ve ürünleri paywalla ekleyin - Adapty Kontrol Paneli’nde.

  3. Placement’lar oluşturun ve paywallınızı placement’a ekleyin - Adapty Kontrol Paneli’nde.

  4. Adapty SDK’yı yükleyin - mobil uygulamanıza.

Paywall bilgilerini çekme

Adapty’de bir ürün, App Store ve Google Play’deki ürünlerin birleşiminden oluşur. Bu platformlar arası ürünler paywallara entegre edilerek belirli mobil uygulama placement’larında gösterilmesini sağlar.

Ürünleri göstermek için getPaywall metoduyla placement’larınızdan birinden Paywall almanız gerekir.


try {
  const paywall = await adapty.getPaywall({ 
    placementId: 'YOUR_PLACEMENT_ID', 
    locale: 'en',
    params: {
      fetchPolicy: 'reload_revalidating_cache_data', // Load from server, fallback to cache
      loadTimeoutMs: 5000 // 5 second timeout
    }
  });
  // the requested paywall
} catch (error) {
  console.error('Failed to fetch paywall:', error);
}
ParametreZorunlulukAçıklama
placementIdzorunluPlacement’ın tanımlayıcısı. Adapty Kontrol Paneli’nde placement oluştururken belirttiğiniz değerdir.
locale

isteğe bağlı

varsayılan: en

Paywall yerelleştirmesinin tanımlayıcısı. Bu parametre, eksi (-) karakteriyle ayrılmış bir veya daha fazla alt etiket içeren bir dil kodu olmalıdır. İlk alt etiket dil, ikincisi bölge içindir.

Örnek: en İngilizce, pt-br Brezilya Portekizcesini temsil eder.

Yerel ayar kodları ve kullanım önerilerimiz hakkında daha fazla bilgi için Yerelleştirmeler ve yerel ayar kodları sayfasına bakın.

params.fetchPolicy

isteğe bağlı

varsayılan: 'reload_revalidating_cache_data'

Varsayılan olarak SDK, verileri sunucudan yüklemeye çalışır ve hata durumunda önbellekteki verileri döndürür. Kullanıcılarınızın her zaman en güncel verilere ulaşmasını sağladığı için bu seçeneği öneriyoruz.

Ancak kullanıcılarınızın kararsız bir internet bağlantısıyla çalıştığını düşünüyorsanız, varsa önbellekteki verileri döndürmek için 'return_cache_data_else_load' kullanmayı düşünebilirsiniz. Bu durumda kullanıcılar en güncel verilere ulaşamayabilir, ancak internet bağlantısından bağımsız olarak daha hızlı yükleme süreleri yaşarlar. Önbellek düzenli olarak güncellenir; bu nedenle ağ isteklerinden kaçınmak için oturum sırasında kullanmak güvenlidir.

Önbelleğin uygulama yeniden başlatıldığında silinmediğini, yalnızca uygulama kaldırılıp yeniden yüklendiğinde veya manuel temizleme yapıldığında sıfırlandığını unutmayın.

params.loadTimeoutMs

isteğe bağlı

varsayılan: 5000 ms

Bu değer, metodun zaman aşımı süresini (milisaniye cinsinden) sınırlar. Zaman aşımına ulaşıldığında önbellekteki veriler veya yerel yedek döndürülür.

Nadir durumlarda bu metodun loadTimeoutMs’de belirtilenden biraz daha geç zaman aşımına uğrayabileceğini unutmayın; çünkü işlem arka planda farklı isteklerden oluşabilir.

Ürün ID’lerini kodunuza sabit olarak yazmayın. Kodunuza sabit olarak yazmanız gereken tek ID, placement ID’sidir. Paywalllar uzaktan yapılandırıldığından ürün sayısı ve mevcut teklifler her an değişebilir. Uygulamanız bu değişiklikleri dinamik olarak ele almalıdır; bugün iki ürün döndüren bir paywall yarın üç ürün döndürse bile kod değişikliği yapmadan hepsini göstermeniz gerekir.

Yanıt parametreleri:

ParametreAçıklama
PaywallÜrün ID’leri listesi, paywall tanımlayıcısı, remote config ve diğer çeşitli özellikleri içeren bir AdaptyPaywall nesnesi.

Ürünleri çekme

Paywallı aldıktan sonra ona karşılık gelen ürün dizisini sorgulayabilirsiniz:


try {
  const products = await adapty.getPaywallProducts({ paywall });
  // the requested products list
} catch (error) {
  console.error('Failed to fetch products:', error);
}

Yanıt parametreleri:

ParametreAçıklama
ProductsÜrün kimliği, ürün adı, fiyat, para birimi, abonelik süresi ve diğer çeşitli özellikleri içeren AdaptyPaywallProduct nesnelerinin listesi.
Kendi paywall tasarımınızı uygularken, büyük olasılıkla AdaptyPaywallProduct nesnesindeki bu özelliklere ihtiyaç duyacaksınız. Aşağıda en sık kullanılan özellikler gösterilmektedir; mevcut tüm özelliklere ilişkin ayrıntılar için bağlantılı belgeye başvurun.
ÖzellikAçıklama
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TitleÜrünün başlığını göstermek için product.localizedTitle kullanın. Yerelleştirmenin cihazın dilayarına değil, kullanıcının seçtiği mağaza ülkesine göre yapıldığını unutmayın.
PriceFiyatın yerelleştirilmiş halini göstermek için product.price?.localizedString kullanın. Bu yerelleştirme cihazın dil bilgisine göre yapılır. Fiyata sayısal olarak erişmek için product.price?.amount kullanabilirsiniz. Değer yerel para biriminde döner. İlgili para birimi sembolünü almak için product.price?.currencySymbol kullanın.
Subscription PeriodDönemi (haftallık, aylık, yıllık vb.) göstermek için product.subscription?.localizedSubscriptionPeriod kullanın. Bu yerelleştirme cihazın diline göre yapılır. Abonelik dönemine programatik olarak erişmek için product.subscription?.subscriptionPeriod kullanın. Buradan unit özelliğiyle süre birimini (‘day’, ‘week’, ‘month’, ‘year’ veya ‘unknown’) alabilirsiniz. numberOfUnits değeri ise dönem birimi sayısını verir. Örneğin üç aylık bir abonelikte unit özelliğinde 'month', numberOfUnits özelliğinde 3 görürsünüz.
Introductory OfferBir aboneliğin başlangıç teklifi içerip içermediğini rozet veya başka bir göstergeyle belirtmek için product.subscription?.offer?.phases özelliğine bakın. Bu liste en fazla iki indirim aşaması içerebilir: ücretsiz deneme aşaması ve başlangıç fiyatı aşaması. Her aşama nesnesinde şu yararlı özellikler bulunur:
paymentMode: 'free_trial', 'pay_as_you_go', 'pay_up_front' ve 'unknown' değerlerini alan bir string. Ücretsiz denemeler 'free_trial' türünde olur.
price: İndirimli fiyat, sayısal olarak. Ücretsiz denemeler için bu alanda 0 arayın.
localizedNumberOfPeriods: Teklifin süresini cihazın diline göre yerelleştirilmiş biçimde açıklayan bir string. Örneğin üç günlük bir deneme teklifi bu alanda '3 days' olarak görünür.
subscriptionPeriod: Alternatif olarak teklif döneminin ayrıntılarını bu özellikle alabilirsiniz. Teklifler için bir önceki bölümde açıklandığı gibi çalışır.
localizedSubscriptionPeriod: İndirim döneminin kullanıcının diline göre biçimlendirilmiş hali.

Varsayılan kitle paywallıyla paywall çekmeyi hızlandırma

Paywalllar genellikle neredeyse anında çekildiğinden bu süreci hızlandırma konusunda endişelenmenize gerek yoktur. Ancak çok sayıda kitle ve paywallınız varsa ve kullanıcılarınızın internet bağlantısı zayıfsa paywall çekme işlemi beklediğinizden daha uzun sürebilir. Bu durumlarda, hiç paywall göstermemek yerine düzgün bir kullanıcı deneyimi sağlamak amacıyla varsayılan bir paywall göstermek isteyebilirsiniz.

Bunu çözmek için belirtilen placement’ın All Users kitlesi için paywallını çeken getPaywallForDefaultAudience metodunu kullanabilirsiniz. Ancak önerilen yaklaşımın, yukarıdaki Paywall Bilgilerini Çekme bölümünde açıklandığı gibi getPaywall metoduyla paywall çekmek olduğunu unutmayın.

Neden getPaywall kullanmanızı öneriyoruz

getPaywallForDefaultAudience metodunun birkaç önemli dezavantajı vardır:

  • Olası geriye dönük uyumluluk sorunları: Farklı uygulama sürümleri (mevcut ve gelecekteki) için farklı paywalllar göstermeniz gerekirse zorluklarla karşılaşabilirsiniz. Ya mevcut (eski) sürümü destekleyen paywalllar tasarlamak zorunda kalırsınız ya da mevcut (eski) sürümdeki kullanıcıların render edilmeyen paywalllarla karşılaşabileceğini kabul etmek durumunda kalırsınız.
  • Hedefleme kaybı: Tüm kullanıcılar All Users kitlesi için tasarlanmış aynı paywallı görür; bu da ülkelere, pazarlama attribution’ına veya kendi özel niteliklerinize dayalı kişiselleştirilmiş hedeflemeyi kaybettiğiniz anlamına gelir.

Bu dezavantajları daha hızlı paywall çekme avantajı için kabul etmeye hazırsanız, getPaywallForDefaultAudience metodunu aşağıdaki gibi kullanın. Aksi takdirde yukarıda açıklanan getPaywall metodunu kullanmaya devam edin.


try {
  const paywall = await adapty.getPaywallForDefaultAudience({ 
    placementId: 'YOUR_PLACEMENT_ID', 
    locale: 'en',
    params: {
      fetchPolicy: 'reload_revalidating_cache_data' // Load from server, fallback to cache
    }
  });
  // the requested paywall
} catch (error) {
  console.error('Failed to fetch default audience paywall:', error);
}
ParametreZorunlulukAçıklama
placementIdzorunluPlacement’ın tanımlayıcısı. Adapty Kontrol Paneli’nde placement oluştururken belirttiğiniz değerdir.
locale

isteğe bağlı

varsayılan: en

Paywall yerelleştirmesinin tanımlayıcısı. Bu parametre, eksi (-) karakteriyle ayrılmış bir veya daha fazla alt etiket içeren bir dil kodu olmalıdır. İlk alt etiket dil, ikincisi bölge içindir.

Örnek: en İngilizce, pt-br Brezilya Portekizcesini temsil eder.

Yerel ayar kodları ve kullanım önerilerimiz hakkında daha fazla bilgi için Yerelleştirmeler ve yerel ayar kodları sayfasına bakın.

params.fetchPolicy

isteğe bağlı

varsayılan: 'reload_revalidating_cache_data'

Varsayılan olarak SDK, verileri sunucudan yüklemeye çalışır ve hata durumunda önbellekteki verileri döndürür. Kullanıcılarınızın her zaman en güncel verilere ulaşmasını sağladığı için bu seçeneği öneriyoruz.

Ancak kullanıcılarınızın kararsız bir internet bağlantısıyla çalıştığını düşünüyorsanız, varsa önbellekteki verileri döndürmek için 'return_cache_data_else_load' kullanmayı düşünebilirsiniz. Bu durumda kullanıcılar en güncel verilere ulaşamayabilir, ancak internet bağlantısından bağımsız olarak daha hızlı yükleme süreleri yaşarlar. Önbellek düzenli olarak güncellenir; bu nedenle ağ isteklerinden kaçınmak için oturum sırasında kullanmak güvenlidir.

Önbelleğin uygulama yeniden başlatıldığında silinmediğini, yalnızca uygulama kaldırılıp yeniden yüklendiğinde veya manuel temizleme yapıldığında sıfırlandığını unutmayın.