I have a ndroid application with in-app billing. I want a have a subscription. i see a google sample. i introduced billing in my application. i purchase one item. but i have problem. i click a button 'purchase' start intent ... .after closing this intent(text: you own this item, i click ok) if i want click this button again app is crushed.
logs
i own this item.
05-31 19:02:10.416: D/Finsky(3313): [1]CarrierParamsAction.createCarrierBillingParameters: Carrier billing config is null. Device is not targeted for DCB 2.
05-31 19:02:10.436: I/SurfaceFlinger(1705): id=170(12) createSurface 0x3d364 (1x1),1 flag=0
05-31 19:02:10.441: E/Finsky(3313): [237] FileBasedKeyValueStore.delete: Attempt to delete 'paramspt_jJJW_8KK4rjjCyMt7_w' failed!
05-31 19:02:10.456: D/dalvikvm(3313): GC_CONCURRENT freed 1269K, 11% free 15726K/17607K, paused 13ms+7ms
05-31 19:02:10.471: I/ClipboardServiceEx(1865): mCBPickerDialog enter case. MSG_DISMISS_DIALOG
05-31 19:02:10.471: D/CLIPBOARD(14751): Hide Clipboard dialog at Starting input: finished by someone else... !
05-31 19:02:10.476: I/ClipboardServiceEx(1865): mCBPickerDialog enter case. MSG_DISMISS_DIALOG
05-31 19:02:10.491: I/ActivityManager(1865): Displayed shortComponentName: +165ms
05-31 19:02:10.726: I/power(1865): *** release_dvfs_lock : lockType : 1
05-31 19:02:10.726: D/PowerManagerService(1865): releaseDVFSLockLocked : all DVFS_MIN_LIMIT are released
05-31 19:02:10.726: W/ActivityManager(1865): mDVFSLock.release()
in a second click i have
05-31 19:08:43.331: W/System.err(15461): java.lang.IllegalStateException: Can't start async operation (launchPurchaseFlow) because another async operation(launchPurchaseFlow) is in progress.
05-31 19:08:43.331: W/System.err(15461): at com.market.IabHelper.flagStartAsync(IabHelper.java:725)
05-31 19:08:43.331: W/System.err(15461): at com.market.IabHelper.launchPurchaseFlow(IabHelper.java:289)
05-31 19:08:43.331: W/System.err(15461): at com.crystalreality.crystaltv.BillingActivity.performPurchaseSubscription(BillingActivity.java:65)
05-31 19:08:43.331: W/System.err(15461): at dalvik.system.NativeStart.run(Native Method)
i have a activityResult, but its code not execute
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d(TAG, "onActivityResult(" + requestCode + "," + resultCode + "," + data);
if(requestCode == 0) {
finish();
}
// Pass on the activity result to the helper for handling
if (!mHelper.handleActivityResult(requestCode, resultCode, data)) {
// not handled, so handle it ourselves (here's where you'd
// perform any handling of activity results not related to in-app
// billing...
super.onActivityResult(requestCode, resultCode, data);
}
else {
Log.d(TAG, "onActivityResult handled by IABUtil.");
}
}
purchaseFlow is code from sample. how i may fix it?
That's a bug in the in-app billing IabHelper class (that is, it's my fault :-)). Please download the updated sample (with bug fixes) from:
http://code.google.com/p/marketbilling/
The version in the SDK manager is a little bit out of date at the moment and doesn't contain the latest bugfixes.