Yedek flow'lar

Akıcı bir kullanıcı deneyimi sağlamak için flow’larınızın yedek sürümlerini ayarlamanız önemlidir. Uygulamanız bir flow talep ettiğinde, Adapty SDK’sı yapılandırmasını almak için sunucularımızla iletişime geçer. Cihaz Adapty’e ulaşamazsa (ağ sorunu, sunucu kesintisi), SDK yerel verilere geri döner:

  • Kullanıcı flow’u daha önce bir kez gördüyse, SDK önbelleğe alınmış kopyayı sunar.
  • Önbellekte bir şey yoksa, SDK uygulamanın içine yerleştirilmiş yedek yapılandırma dosyasını yükler.

Adapty bu yedek dosyaları otomatik olarak oluşturur. Flow yedek paketi, paywall’larla paylaşılır — platform başına tek bir JSON dosyası, her ikisine ait yedek varyasyonları içerir. SDK, ihtiyaç duyduğu bölümü okur.

Flow fallback’leri Adapty SDK 4.0+ paketiyle birlikte gelir. İndirme iletişim kutusunda daha eski bir SDK sürümü seçerseniz, dosya yalnızca paywall ve onboarding varyasyonlarını içerir; flow içermez. Flow fallback’lerine güvenmeden önce uygulamanızın flow destekli bir SDK sürümünde olduğundan emin olun.

Başlamadan önce

  1. Flow Builder’da bir flow oluşturun.
  2. Flow için bir placement oluşturun.

Yedek dosyayı indirin

  1. Placements sayfasını açın.
  2. Sağ üstteki Fallbacks düğmesine tıklayın.
  3. Açılır menüden hedef platformunuzu seçin.
  4. Uygulamanızda kullandığınız SDK sürümüyle eşleşen seçeneği belirleyin. Flow’ları içeren bir paket almak için Adapty SDK v4.0.0 and higher (veya daha yeni bir seçenek) seçin.

Tarayıcı, platform başına bir JSON dosyası indirir; örneğin ios_4_0_0_fallback.json.

Örnek flow yedek girdisi (genişletmek için tıklayın)
"PLACEMENT_ID": {
  "data": [
    {
      "developer_id": "PLACEMENT_ID",
      "variation_id": "cb1c0ef8-aecd-4a53-a6f3-b98266e66884",
      "flow_id": "daf25858-3fa2-4981-8500-9c8a30e5b7e6",
      "flow_name": "FLOW_NAME",
      "flow_version_id": "FLOW_VERSION_ID",
      "placement_audience_version_id": "a9eb3ab8-3178-477d-84d4-ef9d3978e48b",
      "audience_name": "All Users",
      "ab_test_name": "",
      "cross_placement_info": null,
      "weight": 100,
      "variations": [
        {
          "variation_id": "cb1c0ef8-aecd-4a53-a6f3-b98266e66884",
          "paywall_id": "PAYWALL_ID",
          "paywall_name": "PAYWALL_NAME",
          "ab_test_name": "",
          "products": [],
          "revision": 1,
          "custom_payload": null,
          "weight": 100
        }
      ],
      "remote_configs": []
    }
  ],
  "meta": {
    "placement": {
      "developer_id": "PLACEMENT_ID",
      "is_tracking_purchases": true,
      "audience_name": "All Users",
      "placement_audience_version_id": "a9eb3ab8-3178-477d-84d4-ef9d3978e48b",
      "revision": 0,
      "ab_test_name": ""
    }
  }
}

Tam yapı SDK sürümleri arasında değişebilir. Her zaman kendi yazdığınız bir dosya yerine Adapty’nin SDK sürümünüz için oluşturduğu dosyayı kullanın.

İndirme sonrası

Dosyayı uygulama kodunuza ekleyin, ardından platforma özel kurulum kılavuzunu izleyin. Paywall yedeklerini yükleyen API’lerin aynıları, uygulamanız flow destekli bir SDK sürümüne geçtiğinde flow yedeklerini de yükler:

Sınırlamalar

Yedek flow’lar sabit kodlanmış ve yerel olarak depolanmıştır; bu nedenle canlı flow’ların tam dinamik özelliklerini taşımazlar:

  • Placement başına bir varyant. Bir placement’ta birden fazla flow varsa (farklı kitleler, A/B testi varyantları), yedek dosya en yüksek ağırlığa sahip varyantı ya da en geniş kitleyi kullanır.
  • A/B testi yok. Canlı bir flow A/B testi sunucuda çözümlenir; yedek her zaman tek bir seçilmiş varyantı gösterir.
  • Uzaktan güncelleme yok. Yedeği güncellemek için yeni bir uygulama sürümü yayınlamak gerekir. Remote config aracılığıyla yapacağınız çalışma zamanı güncellemelerini bunun yerine canlı flow üzerinden iletin.
  • Yalnızca varsayılan dil. Yedek, en dilini kullanır; yerelleştirilmiş varyantlar pakete dahil edilmez.