我正在测试具有应用内订阅功能的应用。我使用测试订阅来测试似乎有效的购买。然后我想测试应用程序是否响应已取消的订阅,因此我从Play中取消了订阅。但getPurchase()调用仍然会返回购买对象。我使用TrivalDrive示例中的代码,包括IABHelper。取消应用测试订阅
if (refsub != null && refsub.isAutoRenewing()) {
mRefTechSku = REFTECH_SKU;
mAutoRenewEnabled = true;
} else {
mRefTechSku = "";
mAutoRenewEnabled = false;
}
// The user is subscribed if either subscription exists, even if neither is auto
// renewing
mSubscribedToRefSub = (refsub != null && verifyDeveloperPayload(refsub));
mSubscribedToRefSub在我期待它返回false时返回true。但是,mAutoRenewEnabled确实会返回false,但这是检查有效订阅的有效方法,因为我们需要保持该用户的应用程序处于活动状态,直到订阅期结束。