【发布时间】:2014-11-23 20:29:31
【问题描述】:
是否可以禁用应用内计费/购买并在 Android 模拟器上测试我的应用程序?我想在多个模拟器上对我的应用程序进行一些功能测试。 稍后我会在真实设备上测试“应用内计费”。
有人有经验吗? 我该怎么做?
来自谷歌: http://developer.android.com/guide/market/billing/billing_testing.html
要在应用程序中测试应用内计费,您必须安装 Android 设备上的应用程序。您无法使用 Android 模拟器来测试应用内计费。您用于测试的设备必须 运行标准版本的Android 1.6或更高平台(API级别 4 或更高版本),并拥有最新版本的 Android 电子市场 已安装应用程序。
【问题讨论】:
-
您是否尝试仅在模拟器上运行该应用程序?只要您不尝试使用应用内计费功能,就不会有任何问题。您的应用还应该能够检测应用内结算是否可用,如果不可用,仍然可以(以有限的方式)运行。
-
我试过了,但该应用程序无法在模拟器上运行,因为它依赖于谷歌服务。
-
将 AVD 与 Google API 结合使用(请参阅 documentation)。
-
问题是应用程序没有在 de AVD 中启动,因为这个 AVD 不是真正的设备,应用程序需要与真正的谷歌服务通信,附加到一个真正的谷歌帐户。应用内结算检查用户已经拥有/购买了哪些服务。
-
如我上面链接的文档中所述,您必须检查 Google Play 服务的可用性。无论如何,它还说可以使用带有运行 Android 4.2.2+ 的 Google API 的 AVD 来测试它们。我不确定 Google 帐户的要求。在模拟器中运行时,您应该尝试禁用所有应用内计费功能,例如,使用动态checks。