Migrate Adapty Flutter SDK to v3.8

Adapty SDK 3.8.0 là một bản phát hành lớn mang lại một số cải tiến, tuy nhiên có thể yêu cầu bạn thực hiện một số bước migration.

  1. Cập nhật tên class observer và tên phương thức.
  2. Cập nhật tên phương thức paywall dự phòng.
  3. Cập nhật tên class view trong các phương thức xử lý sự kiện.

Cập nhật tên class observer và tên phương thức

Tên class observer và phương thức đăng ký của nó đã được đổi tên:

- class MyObserver extends AdaptyUIObserver {
+ class MyObserver extends AdaptyUIPaywallsEventsObserver {
   @override
   void paywallViewDidPerformAction(AdaptyUIView view, AdaptyUIAction action) {
     // Handle action
   }
 }

 // Register observer
- AdaptyUI().setObserver(this);
+ AdaptyUI().setPaywallsEventsObserver(this);

Cập nhật tên phương thức paywall dự phòng

Phương thức đặt paywall dự phòng đã được đơn giản hóa:

 try {
-  await Adapty.setFallbackPaywalls(assetId);
+  await Adapty.setFallback(assetId);
 } on AdaptyError catch (adaptyError) {
   // handle the error
 } catch (e) {
   // handle the error
 }

Cập nhật tên class view trong các phương thức xử lý sự kiện

Tất cả các phương thức xử lý sự kiện hiện sử dụng class AdaptyUIPaywallView mới thay cho AdaptyUIView:

- void paywallViewDidPerformAction(AdaptyUIView view, AdaptyUIAction action)
+ void paywallViewDidPerformAction(AdaptyUIPaywallView view, AdaptyUIAction action)

- void paywallViewDidSelectProduct(AdaptyUIView view, AdaptyPaywallProduct product)
+ void paywallViewDidSelectProduct(AdaptyUIPaywallView view, AdaptyPaywallProduct product)

- void paywallViewDidStartPurchase(AdaptyUIView view, AdaptyPaywallProduct product)
+ void paywallViewDidStartPurchase(AdaptyUIPaywallView view, AdaptyPaywallProduct product)

- void paywallViewDidFinishPurchase(AdaptyUIView view, AdaptyPaywallProduct product, AdaptyProfile profile)
+ void paywallViewDidFinishPurchase(AdaptyUIPaywallView view, AdaptyPaywallProduct product, AdaptyProfile profile)

- void paywallViewDidFailPurchase(AdaptyUIView view, AdaptyPaywallProduct product, AdaptyError error)
+ void paywallViewDidFailPurchase(AdaptyUIPaywallView view, AdaptyPaywallProduct product, AdaptyError error)

- void paywallViewDidFinishRestore(AdaptyUIView view, AdaptyProfile profile)
+ void paywallViewDidFinishRestore(AdaptyUIPaywallView view, AdaptyProfile profile)

- void paywallViewDidFailRestore(AdaptyUIView view, AdaptyError error)
+ void paywallViewDidFailRestore(AdaptyUIPaywallView view, AdaptyError error)

- void paywallViewDidFailLoadingProducts(AdaptyUIView view, AdaptyIOSProductsFetchPolicy? fetchPolicy, AdaptyError error)
+ void paywallViewDidFailLoadingProducts(AdaptyUIPaywallView view, AdaptyIOSProductsFetchPolicy? fetchPolicy, AdaptyError error)

- void paywallViewDidFailRendering(AdaptyUIView view, AdaptyError error)
+ void paywallViewDidFailRendering(AdaptyUIPaywallView view, AdaptyError error)