0.3.0+2
- Update te example app to avoid using deprecated api.
0.3.0+1
- Fixing usage example. No functional changes.
0.3.0
- Migrate the
Google Play Library to 2.0.3.- Introduce a new class
BillingResultWrapper which contains a detailed result of a BillingClient operation.- [Breaking Change]: All the BillingClient methods that previously return a
BillingResponse now return a BillingResultWrapper, including: launchBillingFlow, startConnection and consumeAsync. - [Breaking Change]: The
SkuDetailsResponseWrapper now contains a billingResult field in place of billingResponse field. - A
billingResult field is added to the PurchasesResultWrapper.
- Other Updates to the “billing_client_wrappers”:
- Updates to the
PurchaseWrapper: Add developerPayload, purchaseState and isAcknowledged fields. - Updates to the
SkuDetailsWrapper: Add originalPrice and originalPriceAmountMicros fields. - [Breaking Change]: The
BillingClient.queryPurchaseHistory is updated to return a PurchasesHistoryResult, which contains a list of PurchaseHistoryRecordWrapper instead of PurchaseWrapper. A PurchaseHistoryRecordWrapper object has the same fields and values as A PurchaseWrapper object, except that a PurchaseHistoryRecordWrapper object does not contain isAutoRenewing, orderId and packageName. - Add a new
BillingClient.acknowledgePurchase API. Starting from this version, the developer has to acknowledge any purchase on Android using this API within 3 days of purchase, or the user will be refunded. Note that if a product is “consumed” via BillingClient.consumeAsync, it is implicitly acknowledged. - [Breaking Change]: Added
enablePendingPurchases in BillingClientWrapper. The application has to call this method before calling BillingClientWrapper.startConnection. See enablePendingPurchases for more information.
- Updates to the “InAppPurchaseConnection”:
- [Breaking Change]:
InAppPurchaseConnection.completePurchase now returns a Future<BillingResultWrapper> instead of Future<void>. A new optional parameter {String developerPayload} has also been added to the API. On Android, this API does not throw an exception anymore, it instead acknowledge the purchase. If a purchase is not completed within 3 days on Android, the user will be refunded. - [Breaking Change]:
InAppPurchaseConnection.consumePurchase now returns a Future<BillingResultWrapper> instead of Future<BillingResponse>. A new optional parameter {String developerPayload} has also been added to the API. - A new boolean field
pendingCompletePurchase has been added to the PurchaseDetails class. Which can be used as an indicator of whether to call InAppPurchaseConnection.completePurchase on the purchase. - [Breaking Change]: Added
enablePendingPurchases in InAppPurchaseConnection. The application has to call this method when initializing the InAppPurchaseConnection on Android. See enablePendingPurchases for more information.
- Misc: Some documentation updates reflecting the
BillingClient migration and some documentation fixes. - Refer to Google Play Billing Library Release Note for a detailed information on the update.
0.2.2+6
0.2.2+5
- Update version of json_annotation to ^3.0.0 and json_serializable to ^3.2.0. Resolve conflicts with other packages e.g. flutter_tools from sdk.
0.2.2+4
- Remove the deprecated
author: field from pubspec.yaml - Migrate the plugin to the pubspec platforms manifest.
- Require Flutter SDK 1.10.0 or greater.
0.2.2+3
- Fix failing pedantic lints. None of these fixes should have any change in functionality.
0.2.2+2
- Include lifecycle dependency as a compileOnly one on Android to resolve potential version conflicts with other transitive libraries.
0.2.2+1
- Android: Use android.arch.lifecycle instead of androidx.lifecycle:lifecycle in
build.gradle to support apps that has not been migrated to AndroidX.
0.2.2
- Support the v2 Android embedder.
- Update to AndroidX.
- Migrate to using the new e2e test binding.
- Add a e2e test.
0.2.1+5
- Define clang module for iOS.
- Fix iOS build warning.
0.2.1+4
- Update and migrate iOS example project.
0.2.1+3
- Android : Improved testability.
0.2.1+2
- Android: Require a non-null Activity to use the
launchBillingFlow method.
0.2.1+1
- Remove skipped driver test.
0.2.1
- iOS: Add currencyCode to priceLocale on productDetails.
0.2.0+8
- Add dependency on
androidx.annotation:annotation:1.0.0.
0.2.0+7
- Make Gradle version compatible with the Android Gradle plugin version.
0.2.0+6
- Add missing
hashCode implementations.
0.2.0+5
- iOS: Support unsupported UserInfo value types on NSError.
0.2.0+4
- Fixed code error in
README.md and adjusted links to work on Pub.
0.2.0+3
- Update the
README.md so that the code samples compile with the latest Flutter/Dart version.
0.2.0+2
- Fix a google_play_connection purchase update listener regression introduced in 0.2.0+1.
0.2.0+1
- Fix an issue the type is not casted before passing to
PurchasesResultWrapper.fromJson.
0.2.0
- [Breaking Change] Rename ‘PurchaseError’ to ‘IAPError’.
- [Breaking Change] Rename ‘PurchaseSource’ to ‘IAPSource’.
0.1.1+3
- Expanded description in
pubspec.yaml and fixed typo in README.md.
0.1.1+2
- Add missing template type parameter to
invokeMethod calls. - Bump minimum Flutter version to 1.5.0.
- Replace invokeMethod with invokeMapMethod wherever necessary.
0.1.1+1
- Make
AdditionalSteps(Used in the unit test) a void function.
0.1.1
- Some error messages from iOS are slightly changed.
ProductDetailsResponse returned by queryProductDetails() now contains an PurchaseError object that represents any error that might occurred during the request.- If the device is not connected to the internet,
queryPastPurchases() on iOS now have the error stored in the response instead of throwing. - Clean up minor iOS warning.
- Example app shows how to handle error when calling
queryProductDetails() and queryProductDetails().
0.1.0+4
- Change the
buy methods to return Future<bool> instead of void in order to propagate launchBillingFlow failures up through google_play_connection.
0.1.0+3
- Guard against multiple onSetupFinished() calls.
0.1.0+2
- Fix bug where error only purchases updates weren't propagated correctly in
google_play_connection.dart.
0.1.0+1
- Add more consumable handling to the example app.
0.1.0
Beta release.
- Ability to list products, load previous purchases, and make purchases.
- Simplified Dart API that's been unified for ease of use.
- Platform specific APIs more directly exposing
StoreKit and BillingClient.
Includes:
- 5ba657dc [in_app_purchase] Remove extraneous download logic (#1560)
- 01bb8796 [in_app_purchase] Minor doc updates (#1555)
- 1a4d493f [in_app_purchase] Only fetch owned purchases (#1540)
- d63c51cf [in_app_purchase] Add auto-consume errors to PurchaseDetails (#1537)
- 959da97f [in_app_purchase] Minor doc updates (#1536)
- b82ae1a6 [in_app_purchase] Rename the unified API (#1517)
- d1ad723a [in_app_purchase]remove SKDownloadWrapper and related code. (#1474)
- 7c1e8b8a [in_app_purchase]make payment unified APIs (#1421)
- 80233db6 [in_app_purchase] Add references to the original object for PurchaseDetails and ProductDetails (#1448)
- 8c180f0d [in_app_purchase]load purchase (#1380)
- e9f141bc [in_app_purchase] Iap refactor (#1381)
- d3b3d60c add driver test command to cirrus (#1342)
- aee12523 [in_app_purchase] refactoring and tests (#1322)
- 6d7b4592 [in_app_purchase] Adds Dart BillingClient APIs for loading purchases (#1286)
- 5567a9c8 [in_app_purchase]retrieve receipt (#1303)
- 3475f1b7 [in_app_purchase]restore purchases (#1299)
- a533148d [in_app_purchase] payment queue dart ios (#1249)
- 10030840 [in_app_purchase] Minor bugfixes and code cleanup (#1284)
- 347f508d [in_app_purchase] Fix CI formatting errors. (#1281)
- fad02d87 [in_app_purchase] Java API for querying purchases (#1259)
- bc501915 [In_app_purchase]SKProduct related fixes (#1252)
- f92ba3a1 IAP make payment objc (#1231)
- 62b82522 [IAP] Add the Dart API for launchBillingFlow (#1232)
- b40a4acf [IAP] Add Java call for launchBillingFlow (#1230)
- 4ff06cd1 [In_app_purchase]remove categories (#1222)
- 0e72ca56 [In_app_purchase]fix requesthandler crash (#1199)
- 81dff2be Iap getproductlist basic draft (#1169)
- db139b28 Iap iOS add payment dart wrappers (#1178)
- 2e5fbb9b Fix the param map passed down to the platform channel when calling querySkuDetails (#1194)
- 4a84bac1 Mark some packages as unpublishable (#1193)
- 51696552 Add a gradle warning to the AndroidX plugins (#1138)
- 832ab832 Iap add payment objc translators (#1172)
- d0e615cf Revert “IAP add payment translators in objc (#1126)” (#1171)
- 09a5a36e IAP add payment translators in objc (#1126)
- a100fbf9 Expose nslocale and expose currencySymbol instead of currencyCode to match android (#1162)
- 1c982efd Using json serializer for skproduct wrapper and related classes (#1147)
- 3039a261 Iap productlist ios (#1068)
- 2a1593da [IAP] Update dev deps to match flutter_driver (#1118)
- 9f87cbe5 [IAP] Update README (#1112)
- 59e84d85 Migrate independent plugins to AndroidX (#1103)
- a027ccd6 [IAP] Generate boilerplate serializers (#1090)
- 909cf1c2 [IAP] Fetch SkuDetails from Google Play (#1084)
- 6bbaa7e5 [IAP] Add missing license headers (#1083)
- 5347e877 [IAP] Clean up Dart unit tests (#1082)
- fe03e407 [IAP] Check if the payment processor is available (#1057)
- 43ee28cf Fix
Manifest versionCode not found (#1076) - 4d702ad7 Supress
strong_mode_implicit_dynamic_method for invokeMethod calls. (#1065) - 809ccde7 Doc and build script updates to the IAP plugin (#1024)
- 052b71a9 Update the IAP README (#933)
- 54f9c4e2 Upgrade Android Gradle Plugin to 3.2.1 (#916)
- ced3e99d Set all gradle-wrapper versions to 4.10.2 (#915)
- eaa1388b Reconfigure Cirrus to use clang 7 (#905)
- 9b153920 Update gradle dependencies. (#881)
- 1aef7d92 Enable lint unnecessary_new (#701)
0.0.2
- Added missing flutter_test package dependency.
- Added missing flutter version requirements.
0.0.1