在Android即时应用程序中使用应用内计费是否可行?

4

这是我的实现:

private IabHelper mIabHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mIabHelper = new IabHelper(this, GOOGLE_BASE64_KEY);
    mIabHelper.startSetup(this);
}

@Override
public void onIabSetupFinished(IabResult result) {
    if (result.isSuccess()){
        mIabHelper.queryInventoryAsync(true, this);
    } else {
        Log.e("test","onIabSetupFinished-result:"+result.getMessage());
    }
}

然后我得到了这个:

08-09 21:44:00.859 5839-5839/? D/IabHelper: IAB helper created.
08-09 21:44:00.859 5839-5839/? D/IabHelper: Starting in-app billing setup.
08-09 21:44:00.923 5839-5839/? D/IabHelper: Billing service connected.
08-09 21:44:00.925 5839-5839/? D/IabHelper: Checking for in-app billing 3 support.
08-09 21:44:00.934 17057-17069/? I/Finsky: [430] com.google.android.finsky.billing.iab.z.b(44): ...: Account from first account - [...]
08-09 21:44:00.937 17057-17069/? W/Finsky: [430] com.google.android.finsky.billing.iab.z.a(64): Package name ... does not match UID 99089
08-09 21:44:00.938 5839-5839/? E/test: onIabSetupFinished-result:Error checking for billing v3 support. (response: 5:Developer Error)

1
目前答案仍然是否定的,但您可以在以下链接中查找更新:https://developer.android.com/google/play/billing/billing_library_releases_notes.html 和 https://developer.android.com/topic/instant-apps/release-notes.html - ManmeetP
3个回答

4

Google Play计费目前还不支持即时应用,但我们正在努力解决这个问题。


0
截至本文撰写日期,即2019年10月12日,我发现我可以从自己的游戏应用程序的“即时”版本中进行应用内购买。我在网上或文档中完全找不到任何关于这个问题的信息,所以我只能自己尝试。

当您在安装版本的应用程序中进行应用内购买时,它会作为“测试购买”进行,实际上不会向您收费。直到我从我的即时版本购买物品之前,Google Play没有我的付款信息。不幸的是,在您自己的应用程序的即时版本中,您不被认为是开发人员,至少我不是,因此它会要求您提供付款信息并向您收费。这很烦人,因为它会干扰我的统计数据,并引入一些问题,例如我是否应该从开发人员控制台退款给自己,还是让谷歌保留他们的份额(退款请求会看起来很糟糕吗?)。

我发现安装和即时版本的应用内购买似乎是分开的。每个版本的查询结果都不同。我希望即时购买可以延续到安装版本。无论是否免费,我的安装版本都不是免费的。我正在进一步测试这个问题,但如果它不能延续,我将不得不删除应用内即时应用程序购买,以免让稍后安装完整应用程序的玩家失望。

顺便说一下,摆脱测试购买是非常困难的。即使您卸载了应用程序,离线并从Android Studio重新安装它,库存查询仍会在您的设备上找到过去的购买记录,因为它将其存储在其中。即使清除Play商店和应用程序本身的缓存也无法摆脱它。您必须在发布版本上拥有一个秘密按钮或类似物来使用适当的代码“消耗”测试购买。


0

关于Android Instant Apps政策Android Instant Apps开发者必须使用Google支付API,如果这些购买不受Google Play应用内计费支持并且开发者没有用户的付款信息。开发者必须使用Google支付API收集任何用户的新或替换付款信息。

已在他们的即时应用程序中实现了Google支付API的开发者还可以提供纯线下付款,例如货到付款,或在其即时应用程序中存储礼品卡。

Play计费库的更多更新


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接