
我认为到目前为止,每件事都很完美.
我的问题是
>这个Toast来自哪里.我找不到我的代码.
>我怎样才能覆盖这个Toast?是否因为我使用的保留产品ID?一旦我使用自己的产品ID,它会改变吗?
>应该使用哪个被覆盖的函数,知道用户是否购买或取消了请求.
@OverrIDe public voID onPurchaseStateChange(PurchaseState purchaseState,String itemID,long purchaseTime,String developerPayload) { if (purchaseState == PurchaseState.PURCHASED) { // Is it here? } } >最后,我可以在onPurchaseStateChange中执行用户界面修改吗?
这是我的onPurchaseStateChange方法
@OverrIDe public voID onPurchaseStateChange(PurchaseState purchaseState,String developerPayload) { if (Consts.DEBUG) { Log.i(TAG,"onPurchaseStateChange() itemID: " + itemID + " " + purchaseState); } if (purchaseState == PurchaseState.PURCHASED) { for (CatalogEntry e : CATALOG) { if (e.sku.equals(itemID) && e.managed.equals(Managed.SUBSCRIPTION)) { } } } Toast.makeText(getApplicationContext(),"purchase Failed",Toast.LENGTH_LONG).show(); } 任何帮助将不胜感激! :) 谢谢!
解决方法 首先,吐司来自市场活动. user1378730在评论中发布的链接说明了如何删除它.正如您所做的那样在onPurchaseStateChange中确定购买结果是正确的,purchaseState对象有几个您可以检查的枚举.
我不建议在onPurchaseStateChange方法中执行接口交互,因为在购买完成时可能会多次调用它.我从我的活动中跳出一些自定义的方法来决定做什么,例如一个onPurchaseCancel和onPurchaseSuccess方法可以判断它是否已经运行了它自己.这样做还允许您将市场交互与其余代码流分开,从而使调试更容易.
总结以上是内存溢出为你收集整理的Android应用内购买问题全部内容,希望文章能够帮你解决Android应用内购买问题所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)