2016-05-04 21 views
1

アプリ内請求を実装しようとしています。アプリ内課金mHelper.dispose()エラー

私はチュートリアルに従うと、私のアプリに怒鳴るの行を追加する場合:私はmHelper.dispose()mHelper.disposeWhenFinished()のためにそれが動作置き換えるとき

Error:(216, 45) error: unreported exception IabAsyncInProgressException; must be caught or declared to be thrown 

奇妙なことがある:私は次のエラーが表示さ

public void onDestroy() { 
     super.onDestroy(); 
     if (mHelper != null) mHelper.dispose(); 
     mHelper = null; 

。同じエラーが

mHelper.launchPurchaseFlow(this,ITEM_SKU,1001,mPurchaseFinishedListener,hpacote); 

おかげ

に再び現れる原因

は、私が心配している

答えて

4

はい、私はまた、サンプルがあるhttps://developer.android.com/training/in-app-billing/preparing-iab-app.htmlにため、Googleのチュートリアルで、この中に多くの時間を無駄に古いとバギー。適切なサンプルが必要な場合は、適切な修正があるgithub https://github.com/googlesamples/android-play-billing/tree/master/TrivialDriveからTrivialDriveをダウンロードする必要があります。 TrivialDrive MainActivityから

try { 
     mHelper.launchPurchaseFlow(this, mSelectedSubscriptionPeriod, IabHelper.ITEM_TYPE_SUBS,oldSkus, RC_REQUEST, mPurchaseFinishedListener, payload); 
    } catch (IabAsyncInProgressException e) { 
      complain("Error launching purchase flow. Another async operation in progress."); 
      setWaitScreen(false); 
    } 

、これはonDestroy(ある)

@Override 
    public void onDestroy() { 
    super.onDestroy(); 

    // very important: 
    Log.d(TAG, "Destroying helper."); 
    if (mHelper != null) { 
     mHelper.disposeWhenFinished(); 
     mHelper = null; 
    } 
} 

私はエラーなしでこれを実装しました! ;)

関連する問題