Adapty Flutter SDK'yı v4.3'e Geçir
Adapty Flutter SDK 4.3, Google Play uygulama içi mesajlarını varsayılan olarak gösterir ve bazı flow ile onboarding olay verilerinin Dart türlerini değiştirir. Hiçbir genel API kaldırılmamış veya yeniden adlandırılmamıştır; bu nedenle uygulamanız 4.3’e karşı değişiklik yapmadan derlenir. Davranışı aynı tutmak için bu kılavuzdaki her değişikliği inceleyin.
Hâlâ 4.0 sürümündeyseniz önce v4.1’e Geçiş kılavuzunu takip edin, ardından bu kılavuza devam edin.
Hızlı başvuru
| v4.1 | v4.3 |
|---|---|
| Google Play mesajları istenmez | Google Play mesajları Android’de varsayılan olarak gösterilir, flow’ların üzerinde de dahil olmak üzere |
Tam sayılı flow olay parametreleri Android’de double olarak gelir | Her iki platformda da int olarak gelir |
Onboarding e-posta alanları AdaptyOnboardingsTextInput olarak gelir | AdaptyOnboardingsEmailInput olarak gelir |
| Onboarding girişini yazdırmak girilen değeri gizler | Yazdırmak girilen değeri gösterir |
Kurulum
pubspec.yaml dosyanızda adapty_flutter sürümünü v4.3 olarak güncelleyin:
dependencies:
adapty_flutter: ^4.3.0
Uygulamanız Kids Mode kullanıyorsa bunun yerine adapty_flutter_kids belirtin:
dependencies:
adapty_flutter_kids: ^4.3.0
Gereksinimler 4.1’den bu yana değişmedi: Flutter 3.32.0 (Dart 3.8.0) ve iOS 15.0. Tam kurulum için Adapty SDK’yı Yükle sayfasına bakın.
Google Play mesajları varsayılan olarak gösterilir
4.3 sürümünden itibaren SDK, activate çağrısının ardından uygulamanızın bir Activity’si her başladığında —örneğin uygulama ön plana döndüğünde ya da bir flow veya onboarding açılıp kapandığında— reddedilen ödeme bildirimleri gibi Google Play uygulama içi mesajlarını talep eder. Bu nedenle bir mesaj, paywall’ın üzerinde görünebilir.
Uygulamanız için bu durum kabul edilebilirse herhangi bir değişiklik yapmanıza gerek yoktur. Mesajların ne zaman görüneceğini kendiniz belirlemek istiyorsanız SDK’yı Android’de manuel yönetim modunda etkinleştirin ve uygulamanıza uygun bir anda showStoreMessages çağırın:
final configuration = AdaptyConfiguration(apiKey: 'YOUR_PUBLIC_SDK_KEY');
if (Platform.isAndroid) {
configuration.withStoreMessagesHandling(AdaptyStoreMessagesHandling.manual);
}
await Adapty().activate(configuration: configuration);
Manuel işlemeyi yalnızca Android’de ayarlayarak iOS’u değiştirmeden bırakın: iOS 16 ve sonrasında, manuel işleme uygulamanız showStoreMessages çağırana kadar App Store mesajlarını da bekletir. Tam API için bkz. Mağaza mesajlarını kontrol etme.
Manuel modda, mağazalar kendi başlarına mesaj göstermez. Uygulamanız hiçbir zaman showStoreMessages çağırmazsa, kullanıcılar reddedilen ödeme bildirimini asla göremez.
Android’de flow olay parametreleri artık int türünde
Android’de, flow analitik olaylarının tam sayı parametreleri eskiden double olarak geliyordu. 4.3 sürümünden itibaren, iOS’ta olduğu gibi int olarak geliyor. Bu durum, flowViewDidReceiveAnalyticEvent ile AdaptyUIFlowPlatformView’ın onDidReceiveAnalyticEvent callback’ini ve flow input olaylarının tarih-saat değerlerini etkiliyor.
double’a yapılan bir dönüşüm artık Android’de hata fırlatıyor. Sayısal parametreleri num olarak okuyun:
- final timestamp = params['value'] as double;
+ final timestamp = params['value'] as num;
Onboarding e-posta alanları AdaptyOnboardingsEmailInput olarak gelir
4.3’ten itibaren, bir onboarding’in e-posta alanları onboardingViewOnStateUpdatedAction ve AdaptyUIOnboardingPlatformView’ın onStateUpdatedAction callback’ine AdaptyOnboardingsEmailInput olarak ulaşır. Daha önce AdaptyOnboardingsTextInput olarak geliyordu. Kodunuz e-postaları metin durumundan okuyorsa, e-posta durumunu da işleyin:
switch (input) {
case AdaptyOnboardingsTextInput(:final value):
// text fields
break;
+ case AdaptyOnboardingsEmailInput(:final value):
+ // email fields
+ break;
case AdaptyOnboardingsNumberInput(:final value):
// number fields
break;
}
Sayı alanları artık AdaptyOnboardingsNumberInput olarak geliyor. 4.3 öncesinde, bu alanların güncellemeleri hiç gelmiyordu. Bkz. Onboardinglerden gelen verileri işleme.
Onboarding girdi değerleri yazdırılan çıktıda görünüyor
Bir AdaptyOnboardingsInputParams veya AdaptyOnboardingsInput yazdırıldığında artık girilen değer gösteriliyor. Uygulamanız bu nesneleri logluyorsa logları gözden geçirin: artık kullanıcıların girdiği isimler, e-posta adresleri ve diğer veriler bu loglarda yer alabilir.
4.3’teki Yenilikler
Bu eklemeler kod değişikliği gerektirmez:
- Mağaza mesajlarını kontrol etme: App Store ve Google Play mesajlarının ne zaman görüneceğini seçin.
- Placement’ları önceden yükleme:
preloadFlowsvepreloadFlowsForDefaultAudiencefonksiyonları flow önbelleğini ısıtır. - Tutulan bir görünümü serbest bırakma:
destroy()metodu,dismiss(destroy: false)ile tuttuğunuz veya hiç göstermediğiniz bir flow görünümünü serbest bırakır. - 12 aylık taahhüt planları:
AdaptyProductSubscription.pricingTermsözelliği iOS’ta planı açıklar; access level’lar isebillingPlanvecommitmentInfodeğerlerini raporlar. - Observer modu:
reportTransactionmetodu, iOS’ta isteğe bağlı olarakappleJwsTransactionalır.