From 178f250cb67f7f1b68595d608bf1352e5a4ec8b1 Mon Sep 17 00:00:00 2001 From: ChineseDragon Date: Sun, 24 Apr 2022 17:59:36 +0800 Subject: [PATCH 1/8] [in_app_purchase] fixed a memory leak error Incorrect configuration of in_ app_ The purchase plug-in causes the shuttle engine not to be destroyed. --- .../in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m index a580a46b011d..7d4dc201a137 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m +++ b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m @@ -26,7 +26,7 @@ @interface InAppPurchasePlugin () // Callback channel to dart used for when a function from the payment queue delegate is triggered. @property(strong, nonatomic, readonly) FlutterMethodChannel *paymentQueueDelegateCallbackChannel; -@property(strong, nonatomic, readonly) NSObject *registry; +@property(week, nonatomic, readonly) NSObject *registry; @property(strong, nonatomic, readonly) NSObject *messenger; @property(strong, nonatomic, readonly) NSObject *registrar; From ccd42388a98ac747e7d4a1bd21d4c0c68ec2d5d4 Mon Sep 17 00:00:00 2001 From: yimao009 Date: Sun, 24 Apr 2022 18:37:27 +0800 Subject: [PATCH 2/8] update pubspec.yaml version && CHANGELOG.md version --- .../in_app_purchase/in_app_purchase_storekit/CHANGELOG.md | 4 ++++ .../in_app_purchase/in_app_purchase_storekit/pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md index 4af33f177799..68dd2d5ebd0c 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md +++ b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.3.0+6 + +* Fixed a memory leak error For iOS. + ## 0.3.0+5 * Migrates from `ui.hash*` to `Object.hash*`. diff --git a/packages/in_app_purchase/in_app_purchase_storekit/pubspec.yaml b/packages/in_app_purchase/in_app_purchase_storekit/pubspec.yaml index 9693c186119c..24b693c98c36 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/pubspec.yaml +++ b/packages/in_app_purchase/in_app_purchase_storekit/pubspec.yaml @@ -2,7 +2,7 @@ name: in_app_purchase_storekit description: An implementation for the iOS platform of the Flutter `in_app_purchase` plugin. This uses the StoreKit Framework. repository: https://github.com/flutter/plugins/tree/main/packages/in_app_purchase/in_app_purchase_storekit issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+in_app_purchase%22 -version: 0.3.0+5 +version: 0.3.0+6 environment: sdk: ">=2.14.0 <3.0.0" From 3904c0e35d9d2d344231b070794b93762421b532 Mon Sep 17 00:00:00 2001 From: yimao009 Date: Mon, 25 Apr 2022 09:57:33 +0800 Subject: [PATCH 3/8] =?UTF-8?q?fix=EF=BC=9A=20property=20week=20->=20weak?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m index 7d4dc201a137..e4de2c60e927 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m +++ b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m @@ -26,7 +26,7 @@ @interface InAppPurchasePlugin () // Callback channel to dart used for when a function from the payment queue delegate is triggered. @property(strong, nonatomic, readonly) FlutterMethodChannel *paymentQueueDelegateCallbackChannel; -@property(week, nonatomic, readonly) NSObject *registry; +@property(weak, nonatomic, readonly) NSObject *registry; @property(strong, nonatomic, readonly) NSObject *messenger; @property(strong, nonatomic, readonly) NSObject *registrar; From 2dd1ecd6cfd426208a9bd34417f480492326504f Mon Sep 17 00:00:00 2001 From: yimao009 Date: Tue, 26 Apr 2022 10:53:14 +0800 Subject: [PATCH 4/8] Delete unused code in InAppPurchasePlugin --- .../ios/Classes/InAppPurchasePlugin.m | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m index e4de2c60e927..d88b98e2474c 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m +++ b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m @@ -25,9 +25,6 @@ @interface InAppPurchasePlugin () // Callback channel to dart used for when a function from the payment queue delegate is triggered. @property(strong, nonatomic, readonly) FlutterMethodChannel *paymentQueueDelegateCallbackChannel; - -@property(weak, nonatomic, readonly) NSObject *registry; -@property(strong, nonatomic, readonly) NSObject *messenger; @property(strong, nonatomic, readonly) NSObject *registrar; @property(strong, nonatomic, readonly) FIAPReceiptManager *receiptManager; @@ -57,8 +54,6 @@ - (instancetype)initWithReceiptManager:(FIAPReceiptManager *)receiptManager { - (instancetype)initWithRegistrar:(NSObject *)registrar { self = [self initWithReceiptManager:[FIAPReceiptManager new]]; _registrar = registrar; - _registry = [registrar textures]; - _messenger = [registrar messenger]; __weak typeof(self) weakSelf = self; _paymentQueueHandler = [[FIAPaymentQueueHandler alloc] initWithQueue:[SKPaymentQueue defaultQueue] @@ -347,7 +342,7 @@ - (void)registerPaymentQueueDelegate:(FlutterResult)result { if (@available(iOS 13.0, *)) { _paymentQueueDelegateCallbackChannel = [FlutterMethodChannel methodChannelWithName:@"plugins.flutter.io/in_app_purchase_payment_queue_delegate" - binaryMessenger:_messenger]; + binaryMessenger: [_registrar messenger]]; _paymentQueueDelegate = [[FIAPPaymentQueueDelegate alloc] initWithMethodChannel:_paymentQueueDelegateCallbackChannel]; From 9e84b76d8999316d3803b536caeb8d352ed00fea Mon Sep 17 00:00:00 2001 From: yimao009 Date: Tue, 26 Apr 2022 11:08:39 +0800 Subject: [PATCH 5/8] fix format --- .../in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m index d88b98e2474c..d64c24563b62 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m +++ b/packages/in_app_purchase/in_app_purchase_storekit/ios/Classes/InAppPurchasePlugin.m @@ -342,7 +342,7 @@ - (void)registerPaymentQueueDelegate:(FlutterResult)result { if (@available(iOS 13.0, *)) { _paymentQueueDelegateCallbackChannel = [FlutterMethodChannel methodChannelWithName:@"plugins.flutter.io/in_app_purchase_payment_queue_delegate" - binaryMessenger: [_registrar messenger]]; + binaryMessenger:[_registrar messenger]]; _paymentQueueDelegate = [[FIAPPaymentQueueDelegate alloc] initWithMethodChannel:_paymentQueueDelegateCallbackChannel]; From 27ee54b0c167f4893a1bd97c049d9c6face609b8 Mon Sep 17 00:00:00 2001 From: ChineseDragon Date: Tue, 17 May 2022 10:51:27 +0800 Subject: [PATCH 6/8] Update CHANGELOG.md fix `CHANGELOG.md` style . --- packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md index f5352262e356..8740f0d28c48 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md +++ b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md @@ -1,7 +1,7 @@ ## 0.3.0+8 * Fixed a memory leak error For iOS. -======= + ## 0.3.0+7 * Minor fixes for new analysis options. From 06038560c6b3f6f670cbbd6e72baf0cf4d45375e Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Tue, 17 May 2022 09:26:42 -0400 Subject: [PATCH 7/8] Style fix --- packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md index 8740f0d28c48..521de61b6a22 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md +++ b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md @@ -1,6 +1,6 @@ ## 0.3.0+8 -* Fixed a memory leak error For iOS. +* Fixes a memory leak error For iOS. ## 0.3.0+7 From 2e67871739a1895f4e91ef326a3505597cb8c7b3 Mon Sep 17 00:00:00 2001 From: stuartmorgan Date: Tue, 17 May 2022 09:27:58 -0400 Subject: [PATCH 8/8] More style --- packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md index 521de61b6a22..365c7133864b 100644 --- a/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md +++ b/packages/in_app_purchase/in_app_purchase_storekit/CHANGELOG.md @@ -1,6 +1,6 @@ ## 0.3.0+8 -* Fixes a memory leak error For iOS. +* Fixes a memory leak on iOS. ## 0.3.0+7