2013-03-25 38 views
9

在应用结算(v3)的文档中,它指出:“成功购买后,用户的购买数据将通过Google Play的应用内结算服务在本地缓存“。如何清除“应用内结算服务”缓存

我现在想彻底测试我的应用程序的帐单代码并希望清除该高速缓存。它的重要性在于,如果没有数据存储在缓存中,收集数据可能需要一些时间 - 或者根本无法访问。我想测试我的应用程序可以处理这些情况。

那么有没有办法清除缓存?

回答

5

这应该工作,但那么你可能需要在Play商店再次进行验证:

enter image description here

+1

回复:“这个S应该工作“ - 但你确定吗?你有参考吗? – Mick 2013-03-28 12:21:28

+0

好吧,只要去测试它。虽然它可能会导致与Google Play相关的其他数据丢失,并且一旦您的配置文件再次被读取,数据就会恢复。 – 2013-04-01 21:38:32

+0

我怎么知道它是否有效? – Mick 2013-04-02 12:12:33

1

那么,有没有一种方法来清除缓存?

据我所知,没有。开发人员无法清除Google Play的IAB缓存。

你可以从官方的Android文档中找到这个有用的:Testing In-app Billing

-1

你能不能创建一个新的Android模拟从Android开发套件安装...然后保存为一个“快照”你在登录之前,它创造了所有的计费缓存?然后,您可以启动该虚拟机的新实例并运行代码,而不必使用计费缓存。

编辑:如果你不能这样做的模拟器,我会建议有一个电话是根和rom'ed。使用Rom Manager(Nandroid Backup)获取完整的系统快照,然后测试您的应用程序。当您希望重置时,通过Rom Manager恢复备份,然后在登录市场(并激活帐单缓存)之前回到您的备份。老实说,它需要更长的时间为您的手机,而不是实际的数据恢复到重新启动...所以它是相当快的(我做这一切的时候,因为我是一个狂热的根/ ROM-ER。

+1

在http://developer.android.com/google/play/billing/billing_testing.html页面上显示:“您无法使用模拟器测试应用内结算”。 – Mick 2013-04-04 11:00:56

+0

请参阅我的编辑,然后 – SnakeDoc 2013-04-04 14:38:55

+0

@Mick您可以在BlueStacks上测试应用内结算。 – zenden2k 2015-11-12 07:31:33

0

重新启动您的设备。这每次都为我工作!如果你已经在谷歌钱包中登记了订单,你还必须等待它在那里取消。它应该说“已取消:订单将不会被交付”

+0

重新启动设备不会*清除我的缓存;通过确保设备没有网络连接来验证这一点,所以我的'SkuDetails'肯定已从缓存中检索出来。 – 2014-07-02 12:58:29

5

你可以用adb适用于无根以及):

adb shell pm clear com.android.vending 

就这么简单

+0

Можноуточнить,эточто? Гдеэтоделается? – Artsait 2018-01-23 14:47:46

+0

@Artsait英语请;无论如何,这是adb cli的cli命令。启动终端并运行它,它会清除Google Play应用缓存。 – 2018-01-24 10:26:16