Skip to content

error on Purchase Connector "NoSuchMethodError: No virtual method enablePendingPurchases() in BillingClient$Builder" #412

@JunJaBoy

Description

@JunJaBoy

Plugin Version

6.17.3

App ID

android: com.skimmify.toeic, iOS: 6738269475

Email

[email protected]

Platform(s)

Android (no issue on iOS)

What did you do?

  1. initialized appsflyer SDK, works fine
  2. added "enable connector" to Info.plist & gradle.properties
  3. initialized purchase connector, works fine on iOS, but occurs runtime crash on Android
  • error occurs at constructor of PurchaseConnector on flutter

the log:

E/AndroidRuntime( 7036): FATAL EXCEPTION: main
E/AndroidRuntime( 7036): Process: pkg.pkg.pkg, PID: 7036
E/AndroidRuntime( 7036): java.lang.NoSuchMethodError: No virtual method enablePendingPurchases()Lcom/android/billingclient/api/BillingClient$Builder; in class Lcom/android/billingclient/api/BillingClient$Builder; or its super classes (declaration of 'com.android.billingclient.api.BillingClient$Builder' appears in pkg.pkg.pkg/base.apk!classes20.dex)
E/AndroidRuntime( 7036): 	at com.appsflyer.internal.connector.purcahse.AFPurchaseConnectorA1l.<init>(:1329)
E/AndroidRuntime( 7036): 	at com.appsflyer.api.PurchaseClient$Builder.build(:246)
E/AndroidRuntime( 7036): 	at com.appsflyer.appsflyersdk.ConnectorWrapper.<init>(ConnectorWrapper.kt:62)
E/AndroidRuntime( 7036): 	at com.appsflyer.appsflyersdk.AppsFlyerPurchaseConnector.configure(AppsFlyerPurchaseConnector.kt:134)
E/AndroidRuntime( 7036): 	at com.appsflyer.appsflyersdk.AppsFlyerPurchaseConnector.onMethodCall(AppsFlyerPurchaseConnector.kt:113)
E/AndroidRuntime( 7036): 	at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:267)
E/AndroidRuntime( 7036): 	at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:292)
E/AndroidRuntime( 7036): 	at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
E/AndroidRuntime( 7036): 	at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
E/AndroidRuntime( 7036): 	at android.os.Handler.handleCallback(Handler.java:959)
E/AndroidRuntime( 7036): 	at android.os.Handler.dispatchMessage(Handler.java:100)
E/AndroidRuntime( 7036): 	at android.os.Looper.loopOnce(Looper.java:257)
E/AndroidRuntime( 7036): 	at android.os.Looper.loop(Looper.java:342)
E/AndroidRuntime( 7036): 	at android.app.ActivityThread.main(ActivityThread.java:9634)
E/AndroidRuntime( 7036): 	at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime( 7036): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:619)
E/AndroidRuntime( 7036): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)

:app build.gradle

...
dependencies {
    implementation 'com.appsflyer:purchase-connector:2.0.1'
    implementation 'com.android.billingclient:billing:5.2.1'
    ...
}

no modification on other codes

What did you expect to happen?

initializes purchase connector and start observing purchase

What happened instead?

app crashes on Android

Any other relevant information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions