Оплата Android — ошибка, что вы являетесь владельцем этого объекта

У меня есть приложение для Android с биллингом в приложении. Я хочу иметь подписку. Я вижу образец Google. я представил биллинг в своем приложении. я покупаю один предмет. но у меня проблема. Я нажимаю кнопку «Купить», чтобы начать намерение ... .после закрытия этого намерения (текст: вы владеете этим предметом, я нажимаю «ОК»), если я хочу снова нажать эту кнопку, приложение раздавлено.

журналы

я владею этим предметом.

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()

во второй клик у меня есть

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)

у меня есть ActivityResult, но его код не выполняется

@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 — это код из примера. как я могу это исправить?


person Constantine Kuznetsov    schedule 31.05.2013    source источник


Ответы (1)


Это ошибка в классе IabHelper для биллинга в приложении (то есть это моя вина :-)). Пожалуйста, загрузите обновленный пример (с исправлениями ошибок) с:

http://code.google.com/p/marketbilling/

Версия в менеджере SDK на данный момент немного устарела и не содержит последних исправлений.

person Bruno Oliveira    schedule 31.05.2013
comment
я скачиваю образец. оно работает. Бруно, если у меня есть 2 действия (родное (С++) и обычное (java с iabhelper)), как я могу вызвать поток покупок из собственного действия. в С++ я вызываю метод обычной активности (используя jni), этот метод вызывает процесс покупки.. в моем приложении ошибка сохраняется - person Constantine Kuznetsov; 04.06.2013
comment
Я бы поцеловал тебя, если бы мог, @Бруно!! Последние два дня я ломал голову, пытаясь понять, почему мои купленные подписки не отображаются в списке; обновлен до нового кода, на который вы ссылались, и теперь он отлично работает. Большое спасибо! - person The Awnry Bear; 11.06.2013