Version 6.4.0 - Simplified requestProducts API
We're releasing version 6.4.0 with a simplified API for requesting products, based on valuable user feedback.
Version Information
- Current Version: 6.4.0
- Previous Stable: 6.3.3
Breaking Changes
Simplified requestProducts API
Based on feedback from issue #527, we've simplified the requestProducts
method to use direct parameters instead of a wrapper object:
Before (6.3.x):
final products = await iap.requestProducts(
RequestProductsParams(
productIds: ['product_id'],
type: PurchaseType.inapp,
),
);
After (6.4.0):
final products = await iap.requestProducts(
productIds: ['product_id'],
type: PurchaseType.inapp, // Optional, defaults to PurchaseType.inapp
);
The RequestProductsParams
class has been removed entirely, making the API cleaner and more intuitive.
Deprecated Items Removed
In v6.4.0, we've also removed the following deprecated items that were marked for removal:
subscriptionOfferDetails
field → usesubscriptionOfferDetailsAndroid
insteadprorationMode
field → usereplacementModeAndroid
insteadAndroidProrationMode
typedef → useAndroidReplacementMode
instead
These items were deprecated in v6.3.x and are now completely removed in v6.4.0.
A Note on Recent Changes
We understand there have been several breaking changes in recent releases, and we sincerely apologize for any inconvenience this may have caused. These changes are part of our concerted effort to rapidly address the long maintenance gap this library experienced and bring it up to modern standards.
We're pleased to announce that with version 6.4.0, we believe the major restructuring phase is now complete. The API should remain stable moving forward, allowing you to build with confidence.
Migration Guide
To migrate from 6.3.x to 6.4.0:
- Remove any imports of
RequestProductsParams
- Update all calls to
requestProducts
to use the new parameter format:- Replace
RequestProductsParams(productIds: ids, type: type)
with direct named parameters - The
type
parameter now defaults toPurchaseType.inapp
if not specified
- Replace
Looking Forward
With this release, we've addressed the accumulated technical debt and modernized the API structure. Future releases will focus on:
- Adding new features
- Performance improvements
- Bug fixes
- Documentation enhancements
All while maintaining API stability.
Thank you for your patience and continued support as we've worked to improve flutter_inapp_purchase.