kraskon
February 10, 2017, 7:25pm
1
Hello,
we are facing an issue with restoring multiple purchases. When application is reinstalled, or the data is cleared, on first app start past transactions are auto-restored. This works pretty awesome when there is a single transaction/purchase, however when there are multiple transactions, it seems only the first one is being restored.
In the screenshot below: two items are bought. On app start, the IStoreListener’s method
public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs args)
is successfully called, however just one single time - with the id of the “Unlock asteroids belt” item (id: market_item_dust_cloud).
Expectation is, that it is called 2 times - with each bought item id - one time for “Unlock asteroids belt” and one time for “Add 5 more planets”.
Is this configurable somehow, or how could we get both items restored?
Thank you.
Edit: not sure why the image is not resolved, here is a link to it:
Unity logs (full Android log does not contain any noticeable exceptions):
02-10 19:27:46.153: I/UnityIAP(17422): Billing service connected.
02-10 19:27:46.163: I/UnityIAP(17422): invoking callback
02-10 19:27:46.163: I/UnityIAP(17422): Checking for in-app billing 3 support.
02-10 19:27:46.253: I/UnityIAP(17422): In-app billing version 3 supported for com.rts.android.spacesim
02-10 19:27:46.263: I/UnityIAP(17422): Subscriptions AVAILABLE.
02-10 19:27:46.273: I/UnityIAP(17422): VR supported.
02-10 19:27:46.273: I/UnityIAP(17422): onIabSetupFinished: 0
02-10 19:27:46.273: I/UnityIAP(17422): Requesting 24 products
02-10 19:27:46.273: I/UnityIAP(17422): QueryInventory: 24
02-10 19:27:46.273: I/UnityIAP(17422): invoking callback
02-10 19:27:46.273: I/UnityIAP(17422): Checking for in-app billing 3 support.
02-10 19:27:46.273: I/UnityIAP(17422): In-app billing version 3 supported for com.rts.android.spacesim
02-10 19:27:46.273: I/UnityIAP(17422): Subscriptions AVAILABLE.
02-10 19:27:46.273: I/UnityIAP(17422): VR supported.
02-10 19:27:46.273: I/UnityIAP(17422): onIabSetupFinished: 0
02-10 19:27:46.273: I/UnityIAP(17422): Requesting 24 products
02-10 19:27:46.273: I/UnityIAP(17422): QueryInventory: 24
02-10 19:27:46.273: I/UnityIAP(17422): invoking callback
02-10 19:27:46.273: I/UnityIAP(17422): Querying owned items, item type: inapp
02-10 19:27:46.273: I/UnityIAP(17422): Package name: com.rts.android.spacesim
02-10 19:27:46.273: I/UnityIAP(17422): Calling getPurchases with continuation token: null
02-10 19:27:46.283: I/UnityIAP(17422): Owned items response: 0
02-10 19:27:46.283: I/UnityIAP(17422): Sku is owned: market_item_dust_cloud
02-10 19:27:46.283: I/UnityIAP(17422): Continuation token: null
02-10 19:27:46.283: I/UnityIAP(17422): Querying SKU details.
02-10 19:27:46.303: I/UnityIAP(17422): Querying owned items, item type: subs
02-10 19:27:46.303: I/UnityIAP(17422): Package name: com.rts.android.spacesim
02-10 19:27:46.303: I/UnityIAP(17422): Calling getPurchases with continuation token: null
02-10 19:27:46.303: I/UnityIAP(17422): Owned items response: 0
02-10 19:27:46.303: I/UnityIAP(17422): Continuation token: null
02-10 19:27:46.303: I/UnityIAP(17422): Querying SKU details.
02-10 19:27:46.313: I/UnityIAP(17422): onQueryInventoryFinished: true
02-10 19:27:46.313: I/UnityIAP(17422): Inventory refresh successful. (response: 0:OK)
02-10 19:27:46.323: I/UnityIAP(17422): invoking callback
02-10 19:27:46.323: I/UnityIAP(17422): Querying owned items, item type: inapp
02-10 19:27:46.323: I/UnityIAP(17422): Package name: com.rts.android.spacesim
02-10 19:27:46.323: I/UnityIAP(17422): Calling getPurchases with continuation token: null
02-10 19:27:46.333: I/UnityIAP(17422): Owned items response: 0
02-10 19:27:46.333: I/UnityIAP(17422): Sku is owned: market_item_dust_cloud
02-10 19:27:46.333: I/UnityIAP(17422): Continuation token: null
02-10 19:27:46.333: I/UnityIAP(17422): Querying SKU details.
02-10 19:27:46.333: I/UnityIAP(17422): Querying owned items, item type: subs
02-10 19:27:46.333: I/UnityIAP(17422): Package name: com.rts.android.spacesim
02-10 19:27:46.333: I/UnityIAP(17422): Calling getPurchases with continuation token: null
02-10 19:27:46.333: I/UnityIAP(17422): Owned items response: 0
02-10 19:27:46.333: I/UnityIAP(17422): Continuation token: null
02-10 19:27:46.333: I/UnityIAP(17422): Querying SKU details.
02-10 19:27:46.343: I/UnityIAP(17422): onQueryInventoryFinished: true
02-10 19:27:46.343: I/UnityIAP(17422): Inventory refresh successful. (response: 0:OK)
02-10 19:27:48.513: I/Unity(17422): 02/10/2017 18:27:48: IAP: purchase successful: market_item_dust_cloud
02-10 19:27:48.523: I/Unity(17422):
02-10 19:27:48.523: I/Unity(17422): (Filename: ./artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 37)
02-10 19:27:48.563: I/UnityIAP(17422): Finish transaction:12999763169054705758.1365179140926892
02-10 19:27:48.573: I/Unity(17422): Already recorded transaction 12999763169054705758.1365179140926892
02-10 19:27:48.573: I/Unity(17422):
02-10 19:27:48.573: I/Unity(17422): (Filename: ./artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 37)
02-10 19:27:48.573: I/UnityIAP(17422): Finish transaction:12999763169054705758.1365179140926892
@kraskon
Are both of those products non-consumable? Product restoration is only for non-consumable and subscription products.
If they are both non-consumable, would you be able to open a support ticket with your app’s project ID, and a link to your app for testing.
kraskon
February 18, 2017, 11:07am
3
One of those turned out to be consumable, was bug on our side.
Thank you!
1 Like