---
title: "Adapty Flutter SDK'yı v. 3.0'a Taşıma"
description: "Daha iyi performans ve yeni monetizasyon özellikleri için Adapty Flutter SDK v3.0'a geçiş yapın."
---

Adapty SDK v.3.0, no-code ve kullanıcı dostu bir paywall oluşturma aracının yeni sürümü olan [Adapty Paywall Builder](adapty-paywall-builder) için destek sunuyor. Maksimum esneklik ve zengin tasarım özellikleriyle paywall'larınız çok daha etkili ve kârlı hale gelecek.

:::info

AdaptyUI kütüphanesinin artık kullanımdan kaldırıldığını ve AdaptySDK'nın bir parçası olarak dahil edildiğini lütfen unutmayın.

:::

## AdaptyUI SDK'yı Kaldırma \{#remove-adaptyui-sdk\}

1. AdaptyUI artık Adapty SDK içinde bir modül haline geldiğinden, `pubspec.yaml` dosyanızdan `adapty_ui_flutter` bağımlılığını kaldırın:

   ```diff showLineNumbers
   dependencies:
   + adapty_flutter: ^3.2.1
   - adapty_flutter: ^2.10.3
   - adapty_ui_flutter: ^2.1.3
   ```

2. Şu komutu çalıştırın:

   ```bash showLineNumbers title="Bash"
   flutter pub get
   ```

## Adapty SDK'yı Yapılandırma \{#configure-adapty-sdks\}

Daha önce Adapty SDK yapılandırması için `Adapty-Info.plist` ve `AndroidManifest.xml` dosyalarını kullanmanız gerekiyordu.

Artık ek dosyalara gerek yok. Bunun yerine, tüm gerekli parametreleri aktivasyon sırasında doğrudan sağlayabilirsiniz.

Adapty SDK'yı yalnızca bir kez yapılandırmanız gerekir; bunu genellikle uygulamanızın yaşam döngüsünün başında yapın.

### Adapty SDK'nın Adapty Modülünü Etkinleştirme \{#activate-adapty-module-of-adapty-sdk\}

1. Uygulamanızdan AdaptyUI SDK importunu şu şekilde kaldırın:

   ```diff showLineNumbers
   import 'package:adapty_flutter/adapty_flutter.dart';
   - import 'package:adapty_ui_flutter/adapty_ui_flutter.dart';
   ```

2. Adapty SDK aktivasyonunu şu şekilde güncelleyin:

   ```diff showLineNumbers
   try {
   -	Adapty().activate();  
   +    await Adapty().activate(
   +        configuration: AdaptyConfiguration(apiKey: 'YOUR_API_KEY')
   +         ..withLogLevel(AdaptyLogLevel.debug)
   +         ..withObserverMode(false)
   +         ..withCustomerUserId(null)
   +         ..withIpAddressCollectionDisabled(false)
   +         ..withIdfaCollectionDisabled(false),
   +   );
   } catch (e) {
       // handle the error
   }
   ```

Parametreler:

| Parametre                           | Zorunluluk | Açıklama                                                  |
| ----------------------------------- | -------- | ------------------------------------------------------------ |
| **PUBLIC_SDK_KEY**                  | zorunlu | Adapty'deki uygulama ayarlarınızın **Public SDK key** alanında bulabileceğiniz anahtar: [**App settings**-> **General** sekmesi -> **API keys** alt bölümü](https://app.adapty.io/settings/general) |
| **withLogLevel**                    | isteğe bağlı | Adapty, uygulamanızın işleyişine dair bilgi sunmak için hataları ve diğer önemli verileri kaydeder. Kullanılabilir log seviyeleri şunlardır:<ul><li> error: Yalnızca hatalar kaydedilir.</li><li> warn: Kritik hatalara yol açmayan ancak dikkat edilmesi gereken hatalar ve SDK mesajları kaydedilir.</li><li> info: Hatalar, uyarılar ve çeşitli modüllerin yaşam döngüsünü kaydeden önemli bilgi mesajları kaydedilir.</li><li> verbose: Hata ayıklama sırasında işe yarayabilecek fonksiyon çağrıları, API sorguları gibi ek bilgiler kaydedilir.</li></ul> |
| **withObserverMode**                | isteğe bağlı | <p>[Observer mode](observer-vs-full-mode) özelliğini kontrol eden bir boolean değer. Satın alma ve abonelik durumunu kendiniz yönetip Adapty'yi yalnızca abonelik etkinliklerini ve analizleri göndermek için kullanıyorsanız etkinleştirin.</p><p>Varsayılan değer `false`'tur.</p><p></p><p>🚧 Observer mode etkinken Adapty SDK hiçbir işlemi kapatmaz, bu nedenle bunu kendiniz yönettiğinizden emin olun.</p> |
| **withCustomerUserId**              | isteğe bağlı | Sisteminizdeki kullanıcı tanımlayıcısı. Etkinlikleri doğru profile bağlamak için abonelik ve analitik etkinliklerinde gönderilir. Ayrıca [**Profiles and Segments**](https://app.adapty.io/profiles/users) menüsünden `customerUserId` ile müşteri arayabilirsiniz. |
| **withIdfaCollectionDisabled**      | isteğe bağlı | <p>IDFA toplama ve paylaşımını devre dışı bırakmak için `true` olarak ayarlayın.</p><p>Kullanıcı IP adresi paylaşımı.</p><p>Varsayılan değer `false`'tur.</p><p>IDFA toplama hakkında daha fazla bilgi için [Analytics integration](analytics-integration#disable-collection-of-advertising-identifiers) bölümüne bakın.</p> |
| **withIpAddressCollectionDisabled** | isteğe bağlı | <p>Kullanıcı IP adresi toplama ve paylaşımını devre dışı bırakmak için `true` olarak ayarlayın.</p><p>Varsayılan değer `false`'tur.</p> |

### Adapty SDK'nın AdaptyUI Modülünü Etkinleştirme \{#activate-adaptyui-module-of-adapty-sdk\}

AdaptyUI modülünü yalnızca [Paywall Builder](adapty-paywall-builder) kullanmayı planlıyorsanız yapılandırmanız gerekir:

```dart showLineNumbers title="Dart"
try {
    final mediaCache = AdaptyUIMediaCacheConfiguration(
        memoryStorageTotalCostLimit: 100 * 1024 * 1024, // 100MB
        memoryStorageCountLimit: 2147483647, // 2^31 - 1, max int value in Dart
        diskStorageSizeLimit: 100 * 1024 * 1024, // 100MB
    );

    await AdaptyUI().activate(
        configuration: AdaptyUIConfiguration(mediaCache: mediaCache),
        observer: <AdaptyUIObserver Implementation>,
    );
} catch (e) {
    // handle the error
}
```

AdaptyUI yapılandırmasının isteğe bağlı olduğunu unutmayın; AdaptyUI modülünü config olmadan da etkinleştirebilirsiniz. Ancak config kullanıyorsanız, içindeki tüm parametreler zorunludur.

Parametreler:

| Parametre                       | Zorunluluk | Açıklama                                                  |
| :------------------------------ | :------- | :----------------------------------------------------------- |
| **memoryStorageTotalCostLimit** | zorunlu | Depolamanın bayt cinsinden toplam maliyet sınırı.                    |
| **memoryStorageCountLimit**     | zorunlu | Bellek depolamasının öğe sayısı sınırı.                  |
| **diskStorageSizeLimit**        | zorunlu | Diskteki depolama için bayt cinsinden dosya boyutu sınırı. 0 değeri sınır olmadığı anlamına gelir. |