Note that there are some explanatory texts on larger screens.

plurals
  1. POAndroid in-app billing: custom sku purchase gives "Error - item not found"
    primarykey
    data
    text
    <p>I'm trying to test in-app billing using my own sku/product ID "upgrade_to_premium". As I have seen recommended here, I am using the Dungeons sample app. I've added a "new CatalogEntry("upgrade_to_premium", R.string.upgrade_to_premium, Managed.MANAGED)" to the CatalogEntry[] array in Dungeons.java. In Const.java, DEBUG is set to TRUE.</p> <p>I have uploaded my release-signed .apk to my Developer Console and activated it, and installed this same .apk to my device with adb. </p> <p>I have entered an in-app product of the same name in the Dev Console, and published it.</p> <p>I am logged into my phone not with my developer account but with a test Google account registered with my Developer Console. This account has associated credit card information; I am able to buy music with it. </p> <p>My device is running Gingerbread, with the latest Google Play upgrade.</p> <p>Upon starting the newly-installed application on my phone, I observe in LogCat the expected RestoreTransactions call, but it returns RESULT_DEVELOPER_ERROR. (Not a good start? I suppose not, but the five different <em>documented</em> possible causes for this error do not apply here, and who knows how many undocumented there are.) Then I try to purchase my custom sku upgrade_to_premium, but I get an alert dialog entitled "Error" with the message "Item not found", twice in succession, just about the time when it normally would be displaying the Market (Play) UI with VISA info. Interestingly, I observe a similar error when trying a Market URL containing an invalid (i.e. unpublished) package name. Is the unpublished draft that I uploaded what is not being found? Is my custom sku not being found? It's hard to tell from the vague error messages. Anyone have any clues? Thanks.</p> <p>Here's the LogCat output: </p> <pre><code>06-13 00:08:31.858: D/Finsky(589): [1] 5.onFinished: Installation state replication succeeded. 06-13 00:08:43.729: I/ActivityManager(109): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.augmentedmind.dungeons/.Dungeons } from pid 196 6-13 00:08:43.795: I/ActivityManager(109): Start proc com.augmentedmind.dungeons for activity com.augmentedmind.dungeons/.Dungeons: pid=1247 uid=10054 gids={} 06-13 00:08:44.198: D/BillingService(1247): CheckBillingSupported 06-13 00:08:44.198: I/BillingService(1247): binding to Market billing service 06-13 00:08:44.213: D/BillingService(1247): CheckBillingSupported 06-13 00:08:44.213: I/BillingService(1247): binding to Market billing service 06-13 00:08:44.221: D/BillingService(1247): Billing service connected 06-13 00:08:44.225: D/BillingService(1247): CheckBillingSupported 06-13 00:08:44.237: D/Finsky(589): [26] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:08:44.241: I/BillingService(1247): CheckBillingSupported response code: RESULT_OK 06-13 00:08:44.241: I/Dungeons(1247): supported: true 06-13 00:08:44.241: D/BillingService(1247): RestoreTransactions 06-13 00:08:44.245: D/Finsky(589): [8] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:08:44.249: D/Finsky(589): [8] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:08:44.260: I/ElegantRequestDirector(589): I/O exception (org.apache.http.NoHttpResponseException) caught when processing request: The target server failed to respond 06-13 00:08:44.260: E/BillingService(1247): restoreTransactions received RESULT_OK 06-13 00:08:44.260: D/BillingService(1247): request id: 2247584787757221561 06-13 00:08:44.260: I/ElegantRequestDirector(589): Retrying request 06-13 00:08:44.268: D/BillingService(1247): request id: -1 06-13 00:08:44.268: D/BillingService(1247): CheckBillingSupported 06-13 00:08:44.272: D/Finsky(589): [7] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:08:44.272: I/BillingService(1247): CheckBillingSupported response code: RESULT_OK 06-13 00:08:44.272: I/Dungeons(1247): supported: true 06-13 00:08:44.272: D/BillingService(1247): request id: -1 06-13 00:08:44.346: I/ActivityManager(109): Displayed com.augmentedmind.dungeons/.Dungeons: +556ms 06-13 00:08:44.729: D/Finsky(589): [1] MarketBillingService.sendResponseCode: Sending response RESULT_DEVELOPER_ERROR for request 2247584787757221561 to com.augmentedmind.dungeons. 06-13 00:08:44.741: I/BillingService(1247): handleCommand() action: com.android.vending.billing.RESPONSE_CODE 06-13 00:08:44.741: D/BillingService(1247): RestoreTransactions: RESULT_DEVELOPER_ERROR 06-13 00:08:44.741: D/Dungeons(1247): RestoreTransactions error: RESULT_DEVELOPER_ERROR 06-13 00:09:28.049: D/Dungeons(1247): buying: Upgrade app to premium sku: upgrade_to_premium 06-13 00:09:28.053: D/BillingService(1247): RequestPurchase 06-13 00:09:28.092: D/Finsky(589): [26] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:09:28.096: D/Finsky(589): [26] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:09:28.100: I/ActivityManager(109): Starting: Intent { act=android.intent.action.VIEW cmp=com.android.vending/com.google.android.finsky.activities.IabActivity (has extras) } from pid -1 06-13 00:09:28.104: D/BillingService(1247): request id: 137676918944123250 06-13 00:09:28.104: D/BillingService(1247): RequestPurchase 06-13 00:09:28.108: D/Finsky(589): [27] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:09:28.112: D/Finsky(589): [27] MarketBillingService.getPreferredAccount: com.augmentedmind.dungeons: Account from first account. 06-13 00:09:28.112: I/ActivityManager(109): Starting: Intent { act=android.intent.action.VIEW cmp=com.android.vending/com.google.android.finsky.activities.IabActivity (has extras) } from pid -1 06-13 00:09:28.116: D/BillingService(1247): request id: 5138873787070031749 06-13 00:09:28.174: D/Finsky(589): [1] SelfUpdateScheduler.checkForSelfUpdate: Skipping self-update. Local Version [8011019] &gt;= Server Version [0] 06-13 00:09:28.381: I/ActivityManager(109): Displayed com.android.vending/com.google.android.finsky.activities.IabActivity: +262ms 06-13 00:09:28.413: E/Volley(589): [13] BasicNetwork.performRequest: Unexpected response code 500 for https://android.clients.google.com/fdfe/details?doc=subs:com.augmentedmind.dungeons:upgrade_to_premium 06-13 00:09:41.670: W/InputManagerService(109): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@40796830 06-13 00:09:41.737: D/Finsky(589): [1] SelfUpdateScheduler.checkForSelfUpdate: Skipping self-update. Local Version [8011019] &gt;= Server Version [0] </code></pre> <p>around this time I get a popup dialog on the device screen entitled "Error" with the message "Item not found", twice. Just about the time when it normally would be displaying the Market (Play) UI with VISA info.</p> <pre><code>06-13 00:09:41.881: D/Finsky(589): [1] MarketBillingService.sendResponseCode: Sending response RESULT_ERROR for request 5138873787070031749 to com.augmentedmind.dungeons. 06-13 00:09:41.889: I/BillingService(1247): handleCommand() action: com.android.vending.billing.RESPONSE_CODE 06-13 00:09:41.889: D/BillingService(1247): RequestPurchase: RESULT_ERROR 06-13 00:09:41.893: D/Finsky(589): [1] PendingNotificationsService.setMarketAlarm: Setting alarm for account=tester.android30@gmail.com, duration=120000 06-13 00:09:41.940: I/ActivityManager(109): Displayed com.android.vending/com.google.android.finsky.activities.IabActivity: +271ms 06-13 00:09:41.991: E/Volley(589): [14] BasicNetwork.performRequest: Unexpected response code 500 for https://android.clients.google.com/fdfe/details?doc=inapp:com.augmentedmind.dungeons:upgrade_to_premium 06-13 00:09:45.600: W/InputManagerService(109): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@407daea0 06-13 00:09:45.682: D/Finsky(589): [1] MarketBillingService.sendResponseCode: Sending response RESULT_ERROR for request 137676918944123250 to com.augmentedmind.dungeons. 06-13 00:09:45.690: D/Finsky(589): [1] PendingNotificationsService.setMarketAlarm: Setting alarm for account=tester.android30@gmail.com, duration=120000 06-13 00:09:45.698: I/BillingService(1247): handleCommand() action: com.android.vending.billing.RESPONSE_CODE 06-13 00:09:45.698: D/BillingService(1247): RequestPurchase: RESULT_ERROR 06-13 00:09:45.698: D/Dungeons(1247): upgrade_to_premium: RESULT_ERROR 06-13 00:09:45.698: I/Dungeons(1247): purchase failed </code></pre> <p>P.S. I read somewhere that one "might have to wait an hour or so for it to get activated" but I sincerely hope this is not the case for unpublished draft uploads! Why would this sort of upload, which no user will ever see, be subject to a delay? ...I am starting to think that this is true, as by repeated upload/delete/re-upload of this <em>unpublished draft app</em> I have just hit an upload quota. As painful as in-app billing is to master, I don't need that extra annoyance. Not good, Google. </p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload