我正在为Android实现应用内结算,我对处理IN_APP_NOTIFY意图有疑问。有没有办法确定原始请求触发了这个意图?例如,如果我向Market服务发送多个请求,我的BroadcastReceiver将如何知道哪个请求触发了意图?
由于
Shravan
答案 0 :(得分:1)
您似乎可以使用NotificationID来跟踪不同的意图。有关详细信息,请参阅http://developer.android.com/guide/market/billing/billing_reference.html。
答案 1 :(得分:1)
我认为我遇到了同样的问题:当用户在我的应用中发起购买时,我希望能够判断收到的IN_APP_NOTIFY是否是由特定购买触发的,还是由先前未经证实的交易触发的。 IN_APP_NOTIFY的notification_id字段对此无用,IN_APP_NOTIFY不向我们提供有用的request_id字段。即使从PURCHASE_STATE_CHANGED收到的数据也无法确定Android Market已完全处理了特定的已启动购买。可以尝试在购买时生成某种唯一令牌,在购买时将其存储在developerPayload字段中,然后在接收PURCHASE_STATE_CHANGED时将其用作某种请求ID。