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ısı, uygulamanız flow’ları destekleyen 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’ın birden fazla flow’u varsa (farklı kitleler, A/B testi varyantları), yedek dosyası en yüksek ağırlığa sahip ya da en geniş kitleye sahip varyantı kullanır.
  • A/B testi yoktur. Canlı bir flow A/B testi sunucu tarafında çözümlenir; yedek her zaman tek bir seçilmiş varyant sunar.
  • Uzaktan güncelleme yapılamaz. Yedeği güncellemek için yeni bir uygulama sürümü gerekir. Remote config aracılığıyla yapacağınız çalışma zamanı güncellemelerini bunun yerine canlı flow üzerinden gönderin.