Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Application Error : This version of the application is not configured for Market Billing

Since a couple of days it's possible to use in-app-billing in Android apps. Very cool of course. So, I started working on a update for my application to implement this. But now I run into some problems. This is what I did:

  • I first tried the reserved product IDs for testing static in-app billing responses. That works without problems.
  • I uploaded a draft APK to the market (with production signing, no debug signing), that included the com.android.vending.BILLING permission.
  • When I did that I was able to add a 'In-app Products' to my app in the market and set it status to published.
  • I created a test user and reseted my device to make that test user the primary account on my test device.
  • The reserved product id's still work.

Now comes the problem. When I use my own product ID (the one I added before, see above) a dialog is shown with the following text:

"Application Error : This version of the application is not configured for Market Billing. Check the help center for more information."

There is nothing strange I can find in the log. Anyone knows what I'm doing wrong here?

like image 720
Peter Fortuin Avatar asked Apr 02 '11 09:04

Peter Fortuin


People also ask

How do I fix this application is not configured for billing?

You need to sign your APK with your live certificate. Then install that onto your test device. You can then test InAppBilling. If you are testing your application by direct run via eclipse to device(In debug mode) then you will get this error.

How do I fix this device does not support Google Play in-app billing?

Go to Android Settings > Applications (also known as Apps & notifications on some devices) > Google Play Store > Storage > tap on Clear storage and Clear cache. Repeat the same steps for Google Services framework. Try buying again. If you still have an error, try step 2.

What is COM Android vending billing?

This is for In-App billing. In-app Billing on Google Play provides a straightforward, simple interface for sending In-app Billing requests and managing In-app Billing transactions using Google Play.


7 Answers

I just encountered this issue and realized it was because I was running a debug, unsigned version of my app. In Eclipse, when I exported and signed my application and installed it on the phone, then I was able to use my in-app products without seeing this error message.

like image 68
esilver Avatar answered Oct 03 '22 22:10

esilver


I have found that once I upload a new copy of my APK to the market, then I experience that "application error" during course of the next hour or so. After at least one hour has gone by (sometimes up to two hours need to have gone by), then I no longer get that error anymore and I can then purchase my items without any problems. It seems that the Google servers need at least an hour to process the fact that you have uploaded a new APK (with regards to the InApp Billing aspect of the APK).

So my advice is for you to wait 1 to 2 hours after uploading your APK, and then see if you still get the "application error".

like image 41
Simon K Avatar answered Oct 03 '22 20:10

Simon K


I also ran into this problem. I finally realized that my published app had a versionCode of 3, my draft (unpublished apk with the Billing permission) had a versionCode of 4, and the signed apk I was using to test in-app billing was still at versionCode 3. Once I changed the versionCode to 4, I was able to get through to the actual in-app product page for the purchase I was requesting.

like image 41
ashughes Avatar answered Oct 03 '22 22:10

ashughes


This can happen on signed, released builds when the apk uploaded as a draft does not match the apk running on your system in test mode. Just make sure that your builds match up, you should be alright in test mode and will stop seeing the errors.

The big worry here is that we'll see this same behavior in production, i.e., we release 1.0.0-1 with in-app billing, then we release 1.0.0-2, and users running 1.0.0-1 will be unable to purchase or have their purchases restored and will receive the same error (very bad user experience). Have been scouring the docs for mention of this behavior as specific to test-mode, but no luck so far; we've added a bug here: http://code.google.com/p/marketbilling/issues/detail?id=15#c0

like image 41
jen_h Avatar answered Oct 03 '22 20:10

jen_h


I also encountered the same issue...but now issue is solved

My observations based on few trials:

  1. The version code should match both on the Google Play and the Device
  2. Even though versions match, we may still get this error
  3. Wait about 1 to 2 hrs then try, we will not get this error

Hope this helps

like image 38
user1444172 Avatar answered Oct 03 '22 22:10

user1444172


Copied from duplicate question: https://stackoverflow.com/a/22469253/1321401

This error may occur for several reasons.
Here is the list of requirements for the Google IAB testing.

Prerequisites:

  1. AndroidManifest must include "com.android.vending.BILLING" permission.
  2. APK is built in release mode.
  3. APK is signed with the release certificate(s).
  4. APK is uploaded to alfa/beta distribution channel (previously - as a draft) to the developer console at least once. (takes some time ~2h-24h).
  5. IAB products are published and their status set to active.
  6. Test account(s) is added in developer console.

Testing requirements:

  1. Test APK has the same versionCode as the one uploaded to developer console.
  2. Test APK is signed with the same certificate(s) as the one uploaded to dev.console.
  3. Test account (not developer) - is the main account on the device.

P.S: Debugging with release certificate: https://stackoverflow.com/a/15754187/1321401 (Thnx @dipp for the link)

P.P.S: Wanted to make this list for a long time already.

Thnx @zlgdev for update

like image 25
Luten Avatar answered Oct 03 '22 21:10

Luten


My solution was that I needed to use the same key to sign apk in Market (as draft APK), and in test. So instead of just Run Application I always have to export signed APK with every update, uninstall and reinstall it in device using apk command-line commands. In principle you can use your own keystore as debug keystore also, but it requires using specific hardcoded passwords and names for keys.

like image 23
JaakL Avatar answered Oct 03 '22 21:10

JaakL