- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我目前正在测试我的 InApp 计费机制(使用 InApp Billing 版本 3 API,因此以 TrivialDrive 示例作为引用)。
我有一个托管项目,升级到高级版本。
现在,使用我的测试帐户购买该商品是可行的,但是当我之后在 Google 结帐中取消整个订单时,我的代码仍然告诉我该商品已购买并因此授予高级功能。
这是我在 MainActivity 中检查购买的方式。我不会在本地某处保存购买状态,据我了解,使用计费 API v3,您可以根据需要查询临时购买。
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
iabHelper = new IabHelper(this, Helper.getPKey());
iabHelper.enableDebugLogging(true);
iabHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
@Override
public void onIabSetupFinished(IabResult result) {
Log.d("IAB", "SETUP FINISHED");
if(!result.isSuccess())
{
Log.d("IAB", "SETUP NOT OK");
return;
}
else
Log.d("IAB", "SETUP OK");
iabHelper.queryInventoryAsync(
new QueryInventoryFinishedListener() {
@Override
public void onQueryInventoryFinished(IabResult result, Inventory inv) {
Log.d("IAB", "Query inventory finished.");
if (result.isFailure()) {
Log.d("IAB","Failed to query inventory: " + result);
return;
}
Log.d("IAB", "Query inventory was successful.");
// Do we have the premium upgrade?
boolean mIsPremium = inv.hasPurchase(Helper.premiumSku);
Purchase p = inv.getPurchase(Helper.premiumSku);
if(p != null)
Log.d("IAB PURCHASE STATE", IabHelper.getResponseDesc(p.getPurchaseState()));
else
Log.d("IAB PURCHASE STATE", "Purchase is null");
Log.d("IAB", "User is " + (mIsPremium ? "PREMIUM" : "NOT PREMIUM"));
}
}
);
}
});
}
我不断得到 getPurchaseState = 0,这意味着已购买,即使在我取消订单一小时后也是如此。为什么?
最佳答案
在等待了大约 12 个小时并尝试了此处建议的所有内容后,我仍然面临同样的问题。对我有用的是以下 adb 命令:
adb shell pm clear com.android.vending
关于Android 应用内结算 : Purchase state stays "purchased" after order cancelation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14303850/
我有一个 MySQL 数据库,其中包含订单表和具有可用库存的零件号表。 例如 ==Orders Table== part_number order_date qty ==Stock Table== p
我正在使用 Libgdx + Android Studio 并尝试实现 Google Play Billing。我按照 here 中的说明进行操作.我修改了我的依赖项,如示例所示: dependenc
背景:我们有一个电视应用程序,它提供每月订阅作为其唯一的应用程序内项目。 我主要是在寻找我认为是真实的确认: 从 Google Play 计费库 2.0 版开始,就有一种称为待定购买的东西。主要的实际
我正在尝试集成 Google Play 结算。 这是我的 onCreate : private final static String TAG = "MainActivity" ; priva
我遵循了 Google 开发者文档中的所有最佳实践:https://developer.android.com/google/play/billing/billing_library_overview
我想知道文档是否将使用 ProGuard 的含义错误(相反)? 来源:https://developer.android.com/google/play/billing/billing_library
编辑:因为有些人仍在检查这个线程,我想提一下,这是非常过时的,因为它是关于应用程序购买中的 v2,现在已弃用。请查看latest (目前是 v3)文档,非常简单 关于这个问题有很多话题,我想我理解这个
在 2020 年 11 月之前,Google Play 上的 Android 应用必须管理“帐户保留”状态。 https://developer.android.com/distribute/play
我创建了一个带有应用内计费的测试应用。将其上传到 google play 并将其发送给 beta 测试人员。当他们尝试购买时,他们会收到 Error retrieving information fr
我是一名优秀的程序员,十分优秀!