我在处理具有多个帐户的设备上的应用内结算库存时遇到问题。
设备 1:
- 设备上只有一个帐户(用户 = X)
- 在 google play 上使用帐户 X 登录
- 在 google play games 上使用帐户 X 登录
- 购买完成(sku = remove_ads)
设备 2:
- 设备上的三个帐户(用户 = X、Y、Z)
- 在 google play 上使用帐户 X 登录
- 在 google play games 上使用帐户 X 登录
- 查询库存
处理查询库存响应的代码如下:
@Override
public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
if (result.isFailure()) {
Log.d("billing", "inventory: failed (" + result.mMessage + ")");
return;
}
Log.d("billing", "inventory: remove_ads purchased=" + inventory.hasPurchase("remove_ads");
}
DEVICE 1 上的 logcat 输出为:
inventory: remove_ads purchased=true
DEVICE 2 上的 logcat 输出为:
inventory: remove_ads purchased=false
我错过了什么?谢谢!