libgdx / gdx-pay

A libGDX cross-platform API for InApp purchasing.
Apache License 2.0
224 stars 83 forks source link

Problem setting up in-app billing: IabResult: 3, No suitable appstore was found (response: 3:Billing Unavailable) #112

Closed abhishekraisharma closed 8 years ago

abhishekraisharma commented 8 years ago
com.badlogic.gdx.utils.GdxRuntimeException: java.lang.RuntimeException: Problem setting up in-app billing: IabResult: 3, No suitable appstore was found (response: 3:Billing Unavailable)
at com.*****$1.handleInstallError(PurchaseManager.java:125)
at com.badlogic.gdx.pay.android.openiab.PurchaseManagerAndroidOpenIAB$1$1.onIabSetupFinished(PurchaseManagerAndroidOpenIAB.java:249)
at org.a.a.f$4$1.onIabSetupFinished(OpenIabHelper.java:853)
at org.a.a.f.a(OpenIabHelper.java:940)
at org.a.a.f.b(OpenIabHelper.java:909)
at org.a.a.f.b(OpenIabHelper.java:84)
at org.a.a.f$4$2.run(OpenIabHelper.java:860)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: java.lang.RuntimeException: Problem setting up in-app billing: IabResult: 3, No suitable appstore was found (response: 3:Billing Unavailable)
... 13 more

Hi there, I have implemented Gdx-Pay since 6-7 months till now. in some of my games. And this one error is bugging me down. I have followed every integration step and still having this issue.

There have been total 3,026 Reports of crashing when users trying to use the in-app purchase. in my game https://play.google.com/store/apps/details?id=com.gw.studioz.racing.mountain.climb

    gdxPayVersion = '0.9.2'
    openIabVersion = '0.9.8.7'

in android it's


    compile "org.onepf:openiab:${openIabVersion}"
    compile "com.badlogicgames.gdxpay:gdx-pay-android:$gdxPayVersion"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-openiab:$gdxPayVersion"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-ouya:$gdxPayVersion"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-amazon:$gdxPayVersion"

in core


compile "com.badlogicgames.gdxpay:gdx-pay:$gdxPayVersion"
compile "com.badlogicgames.gdxpay:gdx-pay-client:$gdxPayVersion"

manifest has


<!--Google Play-->
<uses-permission android:name="com.android.vending.BILLING" />
<!--Open Store-->
<uses-permission android:name="org.onepf.openiab.permission.BILLING" />
<!--Samsung Apps-->
<uses-permission android:name="com.sec.android.iap.permission.BILLING" />
<!--Nokia-->
<uses-permission android:name="com.nokia.payment.BILLING" />
<!--SlideME-->
<uses-permission android:name="com.slideme.sam.manager.inapp.permission.BILLING" />

It's running fine on my side, plus IAP is also working as I can see purchases in dashboard too. But there are major crashes for some devices. Can anyone please help me fixing this issue. Am I missing something?

Note: The integration wiki of gdx-pay has not been updated since long time. The integration steps are shown by downloading and copying the jars not the gradle way. If possible please update the wiki according to gradle integration so that no steps can be left out.

Thanks.

keesvandieren commented 8 years ago

The openiab implementation is deprecated. Try gdx-pay-android-googleplay

abhishekraisharma commented 8 years ago

hey, I know that it's been written in the updates but, there is no such instructions on how to or what components must be removed from or add to the gradle files.

to what you suggest, I already tried gdx-pay-android-googleplay but the android project did close just after openning asking to add openiab lib.

keesvandieren commented 8 years ago

To use android-googleplay, include the following dependencies:

dependencies {
    compile "com.badlogicgames.gdxpay:gdx-pay-client:${gdxPayVersion}"
    compile "com.badlogicgames.gdxpay:gdx-pay-android:${gdxPayVersion}"
    compile "com.badlogicgames.gdxpay:gdx-pay-android-googleplay:${gdxPayVersion}"
}

Do not include openiab in the same gradle subproject.

That should do everything.

Does this help?

keesvandieren commented 8 years ago

Seems to be OpenIab related, user did not yet react.

If problems persist with gdx-pay-android-googleplay please file a new issue

abhishekraisharma commented 8 years ago

Hi Kees,

I used the configuration you suggested.

dependencies { compile "com.badlogicgames.gdxpay:gdx-pay-client:${gdxPayVersion}" compile "com.badlogicgames.gdxpay:gdx-pay-android:${gdxPayVersion}" compile "com.badlogicgames.gdxpay:gdx-pay-android-googleplay:${gdxPayVersion}" }

But getting this error.

Error:Module 'com.badlogicgames.gdxpay:gdx-pay-android-googleplay:0.10.3' depends on one or more Android Libraries but is a jar.

Kindly help.

abhishekraisharma commented 8 years ago

Hi Kees,

I used the configuration you suggested.

dependencies { compile "com.badlogicgames.gdxpay:gdx-pay-client:${gdxPayVersion}" compile "com.badlogicgames.gdxpay:gdx-pay-android:${gdxPayVersion}" compile "com.badlogicgames.gdxpay:gdx-pay-android-googleplay:${gdxPayVersion}" }

But getting this error.

Error:Module 'com.badlogicgames.gdxpay:gdx-pay-android-googleplay:0.10.3' depends on one or more Android Libraries but is a jar.

Kindly help.

On Thu, Sep 1, 2016 at 11:58 PM, Kees van Dieren notifications@github.com wrote:

Closed #112 https://github.com/libgdx/gdx-pay/issues/112.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/libgdx/gdx-pay/issues/112#event-775573893, or mute the thread https://github.com/notifications/unsubscribe-auth/ABp-7cQCC3dM1k7RjzA2OxGOZPKi1Ew4ks5qlxlDgaJpZM4JVE1_ .

Thanks and Regards Abhishek Rai

keesvandieren commented 8 years ago

See #108 for the solution