ÿÿ Chế độ Trẻ em trong Flutter SDK | Tài liệu Adapty

Chế độ Trẻ em trong Flutter SDK

Nếu ứng dụng Flutter của bạn dành cho trẻ em, bạn phải tuân thủ chính sách của Apple và Google. Nếu đang sử dụng Adapty SDK, bạn chỉ cần thực hiện vài bước đơn giản để cấu hình SDK đáp ứng các chính sách này và vượt qua quá trình xét duyệt của cửa hàng ứng dụng.

Yêu cầu là gì?

Bạn cần cấu hình Adapty SDK để tắt việc thu thập:

  • IDFA (Identifier for Advertisers) (iOS)
  • Android Advertising ID (AAID/GAID) (Android)
  • Äịa chỉ IP Ngoài ra, chúng tôi khuyên bạn nên thận trá»ng khi sá»­ dụng customer user ID. User ID có định dạng <FirstName.LastName> chắc chắn sẽ bị coi là thu thập dữ liệu cá nhân, tương tá»± như việc sá»­ dụng email. Äối vá»›i Kids Mode, phương pháp tốt nhất là sá»­ dụng các định danh ngẫu nhiên hoặc ẩn danh (ví dụ: hashed ID hoặc UUID do thiết bị tạo ra) để đảm bảo tuân thá»§ quy định.

Bật Chế độ Trẻ em

Cập nhật trong Adapty Dashboard

Trong Adapty Dashboard, bạn cần tắt tính năng thu thập địa chỉ IP. Äể thá»±c hiện, vào App settings và nhấn Disable IP address collection trong phần Collect users’ IP address.

Cập nhật trong mã nguồn ứng dụng di động của bạn

Äể tuân thá»§ chính sách, hãy tắt tính năng thu thập IDFA (cho iOS), GAID/AAID (cho Android) và địa chỉ IP cá»§a ngưá»i dùng.

Android: Cập nhật cấu hình SDK của bạn

try {
    await Adapty().activate(
        configuration: AdaptyConfiguration(apiKey: 'YOUR_API_KEY')
          ..withGoogleAdvertisingIdCollectionDisabled(true)  // set to `true`
          ..withIpAddressCollectionDisabled(true),  // set to `true`
    );
} catch (e) {
    // handle the error
}

iOS: Bật Chế độ trẻ em trong SDK v4

Trong SDK v4, native iOS SDK được cài đặt qua Swift Package Manager, và Chế độ trẻ em được bật thông qua trait KidsMode của Swift package — trait này sẽ loại bỠtoàn bộ code liên quan đến IDFA, AdSupport và AppTrackingTransparency trong quá trình biên dịch. Yêu cầu Xcode 26 trở lên.

Trong SDK v4, hãy dùng package adapty_flutter_kids thay cho adapty_flutter trong pubspec.yaml. Äây là biến thể Chế độ trẻ em cá»§a plugin vá»›i cùng public API và cùng phiên bản — Ä‘iểm khác biệt duy nhất là native iOS SDK cá»§a nó được build vá»›i trait KidsMode:

dependencies:
  adapty_flutter_kids: 4.0.0

Mã Dart của bạn vẫn giữ nguyên — chỉ cần cập nhật import sang tên package mới:

iOS: Bật Kids Mode bằng CocoaPods (SDK v3)

  1. Cập nhật Podfile của bạn:

    • Nếu bạn chưa có mục post_install, hãy thêm toàn bá»™ Ä‘oạn code bên dưới.
    • Nếu bạn đã có mục post_install, hãy gá»™p các dòng được highlight vào đó.
    def adapty_enable_kids_mode(installer)
      installer.pods_project.targets.each do |target|
        next unless target.name == 'Adapty'
        target.build_configurations.each do |config|
          flags = config.build_settings['OTHER_SWIFT_FLAGS'] || '$(inherited)'
          flags = flags.join(' ') if flags.is_a?(Array)
          config.build_settings['OTHER_SWIFT_FLAGS'] = "#{flags} -DADAPTY_KIDS_MODE"
        end
        target.frameworks_build_phase.files.dup.each do |bf|
          target.frameworks_build_phase.remove_build_file(bf) if bf.display_name.to_s.include?('AdSupport')
        end
      end
      installer.pods_project.save
      Dir.glob(File.join(installer.sandbox.root, 'Target Support Files', '**', '*.xcconfig')).each do |xc|
        File.write(xc, File.read(xc).gsub(/\s*-framework\s+"?AdSupport"?/, ''))
      end
    end
    
    post_install do |installer|
      # ... keep your existing post_install body (Flutter adds one automatically) ...
    
      adapty_enable_kids_mode(installer)   # <-- enable Adapty Kids Mode
    end
  2. Ãp dụng các thay đổi bằng cách chạy

    pod install
ÿÿÿÿ