Superwall'dan Geçiş

Superwall’dan Adapty’ye geçişlerin büyük çoğunluğu yaklaşık iki saat sürer. SDK’yı değiştirirsiniz, mağaza sunucu bildirimlerini Adapty’ye yönlendirirsiniz ve yeni bir uygulama sürümü yayınlarsınız. Ücretli aboneleriniz erişimlerini korur — Adapty, ilk açılışta App Store ve Google Play makbuzlarından bunu otomatik olarak geri yükler.

Aboneleriniz otomatik olarak geçiş yapacak Aboneliği daha önce etkinleştirmiş tüm kullanıcılar, uygulamanızın Adapty SDK’sını içeren yeni sürümünü açar açmaz Adapty’ye aktarılır. Abonelik durumu doğrulaması ve premium erişim otomatik olarak geri yüklenir.

Bu kılavuz nasıl düzenlenmiştir

Geçiş altı adımdan oluşur:

  1. Superwall kavramlarını Adapty ile eşleştirin (5 dakika)
  2. Adapty SDK’yı yükleyin (15 dakika)
  3. SDK çağrılarını değiştirin (1 saat)
  4. App Store ve Google Play sunucu bildirimlerini değiştirin (5 dakika)
  5. Test edin ve yayına alın (30 dakika)
  6. (İsteğe bağlı) Geçmiş verileri içe aktarın

Superwall kavramlarınızı Adapty’ye eşleyin

Superwall kavramlarının büyük çoğunluğunun Adapty’de doğrudan bir karşılığı vardır:

SuperwallAdaptyNe değişiyor
CampaignPlacement + AudienceKampanya mantığı bir placement (konum) ve bir kitle (kural) olarak ikiye ayrılır.
PlacementPlacementAynı kavram, aynı isim.
Audience filterAudienceKural kümeleri bir placement içinde bulunur.
EntitlementAccess levelAdlandırılmış tanımlayıcı (örneğin, premium).
WebView paywallPaywall Builder paywallAdapty SDK tarafından WKWebView yerine doğrudan render edilir.
PurchaseControllerYerleşikImplement edilecek protokol yok — satın almaları Adapty yönetir.
Feature gatingAccess level kontrolüprofile.accessLevels["premium"]?.isActive kontrolü yapılır.
İki zihinsel dönüşüm, koda dokunmadan önce değinmeye değer:
  • Getirme ve sunum ayrı adımlardır: Superwall’un register fonksiyonu paywallı getirir, kampanyayı değerlendirir ve arayüzü tek bir çağrıda sunar. Adapty bu adımları birbirinden ayırır — paywallı getirir, yapılandırmasını alır ve ardından sunum yaparsınız. Bu yaklaşım birkaç satır daha kod gerektirse de yapılandırmaları önceden yüklemenize, özel bir yükleme durumu göstermenize ya da kendi mantığınıza göre sunumu iptal etmenize olanak tanır.
  • Abonelik durumu access level bazındadır: Superwall tek bir subscriptionStatus published property’si sunar. Adapty ise adlandırılmış access level’lardan oluşan bir AdaptyProfile döndürür; bu sayede bir kullanıcı sports ve science access level’larını aynı anda bağımsız olarak sahip olabilir. Senkron okumalar için her view yüklendiğinde getProfile() çağırmak yerine AdaptyDelegate’ten profili önbelleğe alın.

Adapty SDK’yı Yükleyin

Platformunuz için Adapty SDK’yı yükleyin — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor — ve aynı zamanda SuperwallKit’i projenizden kaldırın.

SDK çağrılarını değiştirme

Entegrasyonunuzun her bölümünü gözden geçirip Superwall çağrılarını Adapty eşdeğerleriyle değiştirin. Her alt bölümün sonundaki bağlantılar yedi platform SDK’sını kapsar — uygulamanıza uyan bağlantıyı takip edin.

SDK’yı Başlatın

Superwall.configure yerine Adapty.activate kullanın.

Platform için kurulum kılavuzuna bakın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

Kullanıcıları tanımlayın ve çıkış yaptırın

Superwall.shared.identify yerine Adapty.identify, Superwall.shared.reset yerine Adapty.logout kullanın. Her iki SDK da ilk açılışta anonim bir profil oluşturur; bu nedenle bu çağrılara yalnızca kullanıcı oturum açtığında veya kapattığında ihtiyaç duyulur. Kullanıcıyı tanımladıktan sonra paywall’ları yeniden çekin — yeni kullanıcı farklı bir kitleye denk gelebilir. Platformunuza ait kimlik belirleme kılavuzuna bakın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

Paywall’ı getir ve göster

Superwall.shared.register yerine iki adımlı bir akış kullanın: Adapty.getPaywall ile paywall’ı getirin, AdaptyUI.getPaywallConfiguration ile görünüm konfigürasyonunu yükleyin ve ardından gösterin.

Dikkat edilmesi gereken iki farklılık:

  • Özellik kilitleme feature: closure’ının yerini alır: Paywall kapandıktan sonra, döndürülen profildeki (veya Adapty.getProfile üzerindeki) etkin access level’ı kontrol edin ve oradan dallanın.
  • Paywalllar SDK tarafından render edilir: Superwall, paywallları bir WKWebView içinde render eder. Adapty ise Paywall Builder paywalllarını native olarak render eder — fontlar, ürün bilgileri ve butonlar SDK tarafından çizilir. Platformunuza özel paywall hızlı başlangıç kılavuzuna bakın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

Abonelik durumunu kontrol etme

Superwall.shared.subscriptionStatus yerine profildeki access level adını kullanarak kontrol yapın: profile.accessLevels["premium"]?.isActive. Değişiklikleri @Published property pattern yerine AdaptyDelegate.didLoadLatestProfile(_:) üzerinden takip edin; senkron okumalar için profili kendi tarafınızda önbelleğe alın. Platformunuza ait abonelik durumu kılavuzuna bakın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

Satın alma ve geri yükleme işlemlerini yönetme

Paywall Builder kullanıldığında, her iki SDK de satın almaları paywall arayüzü içinde otomatik olarak işler — bu adımı atlayabilirsiniz.

Özel paywall’lar için Superwall, bir PurchaseController implementasyonu gerektirir. Adapty’de böyle bir zorunluluk yoktur: PurchaseController.purchase yerine Adapty.makePurchase, PurchaseController.restorePurchases yerine ise Adapty.restorePurchases kullanın. SDK doğrulamayı kendi başına halleder. Platformunuza ait özel paywall hızlı başlangıç kılavuzuna göz atın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

Kullanıcı özelliklerini ayarlama

Superwall.shared.setUserAttributes yerine Adapty.updateProfile kullanın.

Platformunuza göre kullanıcı özellikleri kılavuzuna bakın — iOS, Android, React Native, Flutter, Kotlin Multiplatform, Unity veya Capacitor.

App Store ve Google Play sunucu bildirimlerini değiştirin

Mağaza sunucu bildirimlerinizi Adapty’ye yönlendirin. Adapty bunlar olmadan da çalışır, ancak analitik, üçüncü taraf entegrasyonlar ve A/B testi metrikleri bu bildirimlere bağlıdır:

Test et ve yayınla

Yayınlamadan önce her maddeyi kontrol et:

  • Adapty Kontrol Paneli’ni yapılandırdı (ürünler, paywalls, placement’lar, access level’lar)
  • Adapty SDK’sını kurdu
  • Superwall SDK çağrılarını Adapty karşılıklarıyla değiştirdi
  • App Store ve Google Play sunucu bildirimlerini Adapty’ye yönlendirdi
  • Sandbox satın alımı yaptı
  • Yeni bir uygulama sürümü gönderdi

Son bir doğrulama için yayın kontrol listesini gözden geçir.

(İsteğe bağlı) Geçmiş verileri içe aktarın

Superwall, abonelik durumunuzun sahibi değildir — bu bilgi App Store ve Google Play’e aittir. Adapty, ilk açılışta makbuzları doğrular; bu nedenle ücretli kullanıcılar herhangi bir içe aktarma işlemi olmadan erişimlerini korur.

Geçmiş işlemlerin Adapty analizlerine yansıtılmasını istiyorsanız Adapty’ye geçmiş verileri içe aktarın bölümünü takip edin. SDK’nın güncel satın alma fiyatlarını toplaması için SDK sürümünden sonra en az bir hafta bekleyin.

SSS

Uygulamayı güncellemeyen abonelere ne olur?

Kullanıcıların büyük çoğunluğu uygulamalarını geceleri otomatik olarak günceller, dolayısıyla eski sürümde kalan kullanıcı oranı hızla düşer. Eski sürümü kullanan aboneler erişimlerini doğrudan App Store veya Google Play üzerinden sürdürür — güncellemeyi zorlamana gerek yok.

Superwall kampanya kitlem aktarılıyor mu?

Hayır. Superwall kitle filtreleri ile Adapty kitleleri farklı kontrol panellerinde yapılandırılır ve farklı tanımlayıcılar kullanır. Hedefleme ayarlarını Adapty placement’larındaki kitle olarak yeniden oluşturman gerekiyor. Çoğu uygulama bir veya iki placement kullanır (onboarding ve genel bir uygulama içi tetikleyici), dolayısıyla yeniden yapılandırma genellikle kısa sürer.

Adapty’nin getPresentationResult karşılığı var mı?

Tek bir çağrı olarak değil. Bir placement’ın paywall gösterip göstermeyeceğini kontrol etmek için Adapty.getPaywall(placementId:) çağrısı yapın ve sonuca göre dallanın. Çağrı başarılı olursa, o kullanıcının kitlesi için bir paywall atanmış demektir. Hiçbir paywall yapılandırılmadığı için başarısız olursa, gösterimi atlayın ve yedek mantığınızı çalıştırın.