Я тестирую свой биллинг, и у меня есть это исключение:
java.lang.IllegalStateException: Can't start async operation (launchPurchaseFlow) because another async operation(launchPurchaseFlow) is in progress.
at utils.IabHelper.flagStartAsync(IabHelper.java:711)
at utils.IabHelper.launchPurchaseFlow(IabHelper.java:316)
at utils.IabHelper.launchPurchaseFlow(IabHelper.java:294)
at com.problemio.SubscribeIntroActivity$6.onClick(SubscribeIntroActivity.java:117)
at android.view.View.performClick(View.java:2532)
at android.view.View$PerformClick.run(View.java:9308)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:150)
at android.app.ActivityThread.main(ActivityThread.java:4293)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
После запуска этого кода:
Button subscribe = (Button)findViewById(R.id.subscribe);
subscribe.setOnClickListener(new Button.OnClickListener()
{
public void onClick(View v)
{
// FIRST CHECK IF THE USER IS ALREADY A SUBSCRIBER.
mHelper.launchPurchaseFlow(SubscribeIntroActivity.this, SUBSCRIBE_SKU, RC_REQUEST, mPurchaseFinishedListener);
}
});
Но до этого я запускал его как тестового пользователя и с идентификатором тестового продукта, который был следующим: android.test.purchased, и он сработал. Но когда я изменил идентификатор продукта на один из моих собственных идентификаторов продуктов, он разбился с исключением выше.
Любые идеи, почему это произошло? Спасибо!