gpt4 book ai didi

android - registerReceiver 应用内计费消息的问题?

转载 作者:行者123 更新时间:2023-11-29 22:24:49 25 4
gpt4 key购买 nike

我正在我的应用程序中实现应用内结算支持。我刚刚意识到,即使应用程序已停止,标准计费广播接收器仍在接收来自市场服务的计费消息。因此,不是在 list 文件中声明我的接收器:

    <receiver android:name=".receiver.billing.BillingReceiver">
<intent-filter>
<action android:name="com.android.vending.billing.IN_APP_NOTIFY" />
<action android:name="com.android.vending.billing.RESPONSE_CODE" />
<action android:name="com.android.vending.billing.PURCHASE_STATE_CHANGED" />
</intent-filter>
</receiver>

我决定使用 Context.registerReceiver 方法以确保我的应用程序实际上已准备好正确处理计费消息:

    _billingReceiver = new BillingReceiver();
final IntentFilter filter = new IntentFilter("com.android.vending.billing.IN_APP_NOTIFY");
filter.addAction("com.android.vending.billing.RESPONSE_CODE");
filter.addAction("com.android.vending.billing.PURCHASE_STATE_CHANGED");
_billingService.registerReceiver(_billingReceiver, filter);

现在的问题是不再调用 BillingReceiver.onReceive。是否存在某种阻止将计费消息发送到动态注册的接收者的问题。我查看了 Google/Android 的文档,但一无所获。

最佳答案

为什么您不想在应用程序停止时收到计费消息?这意味着您可能会错过来自市场的关于购买和退款的重要信息。

您会注意到,在地下城示例中,他们有一个数据库,用于记录所有购买信息。然后他们的 UI 使用数据库让用户了解他们的购买状态。这样一来,如果用户在处理购买时转到其他应用,他们可以返回并看到购买已成功完成。

关于android - registerReceiver 应用内计费消息的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6229639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com