iOS SDK'da kullanıcıları tanımlama
Adapty, her kullanıcı için dahili bir profil ID’si oluşturur. Ancak kendi kimlik doğrulama sisteminiz varsa, kendi Customer User ID’nizi ayarlamanız gerekir. Kullanıcıları Customer User ID’leriyle Profiles bölümünde bulabilir ve tüm entegrasyonlara gönderilecek olan server-side API’de kullanabilirsiniz.
Yapılandırma sırasında customer user ID’yi ayarlama
Yapılandırma sırasında kullanıcı ID’niz varsa, bunu .activate() metoduna customerUserId parametresi olarak geçmeniz yeterlidir:
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.
Yapılandırma sonrasında customer user ID’yi ayarlama
SDK yapılandırması sırasında kullanıcı ID’niz yoksa, istediğiniz zaman .identify() metoduyla sonradan ayarlayabilirsiniz. Bu metodun en yaygın kullanım durumları, kayıt veya giriş sonrasında kullanıcının anonim kullanıcıdan kimliği doğrulanmış kullanıcıya geçişidir.
İstek parametreleri:
- Customer User ID (zorunlu): Bir string kullanıcı tanımlayıcısı.
Önemli kullanıcı verilerinin yeniden gönderilmesi
Kullanıcının hesabına tekrar giriş yapması gibi bazı durumlarda, Adapty’nin sunucuları o kullanıcı hakkında zaten bilgiye sahip olabilir. Bu senaryolarda Adapty SDK’sı otomatik olarak yeni kullanıcıyla çalışmaya geçer. Anonim kullanıcıya özel özellikler veya üçüncü taraf ağlardan attribution verileri gibi herhangi bir veri aktardıysanız, bu verileri tanımlanan kullanıcı için yeniden göndermeniz gerekir.
Ayrıca, yeni kullanıcının verileri farklı olabileceğinden, kullanıcıyı tanımladıktan sonra tüm paywall’ları ve ürünleri yeniden talep etmeniz gerektiğini unutmayın.
Çıkış yapma ve giriş yapma
.logout() metodunu çağırarak istediğiniz zaman kullanıcının oturumunu kapatabilirsiniz:
Ardından .identify() metodunu kullanarak kullanıcının oturumunu açabilirsiniz.
appAccountToken’ı ayarlama
appAccountToken, Apple’ın StoreKit 2’nin kullanıcıları uygulama yüklemeleri ve cihazlar genelinde tanımlamasına yardımcı olan bir UUID’dir.
Adapty iOS SDK 3.10.2 sürümünden itibaren, SDK’yı yapılandırırken veya bir kullanıcıyı tanımlarken appAccountToken değerini geçebilirsiniz:
Ardından .identify() metodunu kullanarak kullanıcının oturumunu açabilirsiniz.
Cihazlar Arası Kullanıcı Tespiti
SDK etkinleştirildiğinde, StoreKit (iOS) veya Google Play Billing (Android) üzerinden kullanıcının mevcut haklarını otomatik olarak okur ve bunları Adapty backend’iyle senkronize eder. Aktif bir abonelik, uygulamanın restorePurchases çağrısı yapmadan Adapty profilinde görünür.
Otomatik olarak gerçekleşmeyen şey, yeni bir cihazdaki profilin orijinal cihazdaki profille aynı kullanıcıya ait olduğunun tanınmasıdır. Adapty, profilleri Customer User ID ile eşleştirir; dolayısıyla kimlik sürekliliği CUID olarak ne kullandığınıza bağlıdır.
Adapty’nin cihazlar arasında neleri algılayabildiği
| Kurulumunuz | Adapty’nin algıladığı | Yapmanız gereken |
|---|---|---|
Customer User ID = device_id (uygulama girişi yok) | Yeni cihaz farklı bir CUID ve dolayısıyla farklı bir profil alır. Abonelik, Access level updated olayı aracılığıyla yeni profile senkronize edilir; ancak subscription_started tetiklenmez — yeni profil, orijinal satın almanın devralıcısı olarak değerlendirilir. subscription_started üzerine kurulu analizler, geri dönen kullanıcıları eksik sayar. | Geri dönen bir kullanıcının cihazlar arasında mevcut profille eşleşmesi için Customer User ID olarak kararlı bir hesap kimliği kullanın. |
| Customer User ID = kararlı hesap kimliği (her cihazda oturum açma) | SDK, activate() sırasında aboneliği otomatik olarak senkronize eder ve identify(), CUID ile mevcut profili eşleştirir. | Ek kurulum gerekmez — hem kimlik hem de abonelik otomatik olarak çözümlenir. |
| Apple Family Sharing devralıcısı | Aile üyesi, aboneliği yalnızca Access level updated olayı aracılığıyla alır — subscription_started tetiklenmez. | Access level updated olayını dinleyin. Tam olay matrisi için Apple Family Sharing sayfasına bakın. |
| Aynı Apple/Google hesabı, farklı uygulama içi kullanıcılar | Satın almayı kaydeden ilk profil üst profil olur. Sonraki profiller, tek bir Access level updated olayıyla bir devralıcı zinciri aracılığıyla aboneliği görür. | Oturum açmayı zorunlu kılın, ardından modelinize uygun bir paylaşım modu seçin. |
Yeni bir cihazda satın almaları geri yükleme
Paywallınızda kullanıcı tarafından başlatılan bir “Satın almaları geri yükle” butonu gösterin. Apple App Review (kural 3.1.1) bunu zorunlu kılar ve otomatik senkronizasyonun uç bir durumu kaçırması halinde yedek olarak işlev görür. Buton, SDK’nızda restorePurchases çağrısı yapmalıdır.
İlk açılışta programatik bir restorePurchases çağrısı normal kullanım için gerekli değildir — SDK, activate() sırasında zaten eşdeğerini çalıştırır. Programatik çağrıları yalnızca zorunlu bir güncel makbuz kontrolü için ayırın; örneğin activate() tamamlandıktan sonra eksik erişimi hata ayıklarken.