aptoide_iap_android 0.1.5
aptoide_iap_android: ^0.1.5 copied to clipboard
Flutter plugin for the Aptoide Android Billing SDK. Supports in-app purchases, subscriptions, and free trials via the Aptoide Connect platform.
0.1.5 #
Change #
BillingResponseCode: addedappNotFound = 404— HTTP 404 propagated by the Aptoide backend when the app or product is not found on Aptoide Connect (wrong public key, app not registered, or product IDs not created in the console)
0.1.4 #
Change #
- Pin Aptoide Android Billing SDK dependency to
com.aptoide:android-aptoide-billing:1.3.0(was1.+) for reproducible builds
0.1.3 #
Bug fix #
UnfetchedProduct: the SDK field isstatusCode(notresponseCode) — fixes "Unresolved reference 'responseCode'" compile error at line 216UnfetchedProduct: addedproductTypefield (present in the SDK class)- Kept
responseCodeas a Dart getter alias pointing tostatusCodefor API consistency
0.1.2 #
Bug fixes (Kotlin native layer — verified against SDK 1.3.0 AAR) #
- Imports corrected:
AptoideBillingClientStateListenerandConsumeResponseListenerare incom.aptoide.sdk.billing.listeners, not the root package - Nested annotations:
BillingResponseCode,ProductTypeandFeatureTypeare nested@interfaceannotations insideAptoideBillingClient— they are no longer imported as separate classes (fixes all "Unresolved reference" build errors) isFeatureSupported: the SDK method signature isisFeatureSupported(int)notisFeatureSupported(FeatureType)— correctedProductDetailsResponseListener/PurchasesResponseListener: are Kotlinfun interfacetypes — constructor lambda form now used correctlySubscriptionOfferDetails: removed non-existentofferIdfield (causes "Unresolved reference" compile error)PricingPhase: removed non-existentbillingCycleCountandrecurrenceModefieldsisReadymust be called as a methodisReady(), not a property
Improvements #
OneTimePurchaseOfferDetails,PricingPhase: exposed Aptoide-specificappcFormattedPrice,appcPriceAmountMicros,fiatFormattedPrice,fiatPriceAmountMicros,fiatPriceCurrencyCodefieldsSubscriptionOfferDetails: added optionaltrialDetails(TrialDetailswithperiodandperiodEndDate)Purchase: addedisAutoRenewingfield (useful for subscription management)billingResultToMap: handles nullabledebugMessagesafely
0.1.1 #
Bug fixes #
- Kotlin imports: corrected package from
com.aptoide.billing→com.aptoide.sdk.billing(build would fail otherwise) isFeatureSupported: was returning the fullBillingResultobject instead of theresponseCodeint (would crash at runtime)PurchaseState: corrected constants to match Aptoide SDK values (0=purchased,1=cancelled) instead of the Google Play Billing Library mappingFeatureType: added missingsubscriptionsenum valueBillingResponseCode: addedfeatureNotSupported = -2- Renamed
Purchase.isPending→Purchase.isCancelledto reflect actual Aptoide state semantics
0.1.0 #
Initial release of the Aptoide Android Billing SDK Flutter plugin.
Features #
- Step 1 — Connection:
initialize(publicKey:),endConnection(),isReady - Step 2 — Query products:
queryProductDetails(productIds:, productType:)for bothProductType.inappandProductType.subs - Step 3 — Purchase flow:
launchBillingFlow(productId:, productType:, …)with support forobfuscatedAccountId,developerPayload, andfreeTrial - Step 4 — Process purchases:
queryPurchases(productType:),consumePurchase(purchaseToken:) - Real-time streams:
purchasesUpdatedStreamandbillingStateStream - Feature detection:
isFeatureSupported(FeatureType)forfreeTrialsandobfuscatedAccountId - Full Dart model classes:
BillingResult,ProductDetails,Purchase,QueryProductDetailsResult,QueryPurchasesResult,ConsumeResult,PurchaseUpdateEvent,BillingStateEvent