1

我正准备在 Google Play 市场上发布 6 个应用程序,一个工作人员带来了一部新手机,该手机运行的 android 版本显示支持清单文件,但它没有按预期工作,即使它确实在模拟器上工作。这就提出了一个问题

如果不购买每台设备,我们如何确保我们的应用程序可以在运行清单文件表示支持的 android 版本的所有设备上运行?

有没有建议的方法来做到这一点?不同屏幕尺寸、密度和 android 版本的组合可以使 android 开发成为真正的痛苦。

编辑:

“没有按预期工作”的部分是一些 javascript 调用。特别是像 window.width 和 window.height 这样的调用,在 2.3.4 上,宽度被报告为高度,高度被报告为宽度,但不是 2.1 或 3+。另一个问题,同样是 2.3.4 和 javascript,window.open(url, target) 调用只会shouldOverrideUrlLoading在我WebViewClient第一次为每个目标而不是每次调用时调用。同样,它适用于 2.1 和 3+。

目前,我在运行 2.3.4、2.3.5、4.0.3 和 4.0.4 的设备上进行测试。我还在运行 2.1、2.2、2.3.3、3.0、3.1、3.2 和 4.1 的模拟器上进行了测试,这些模拟器具有各种屏幕尺寸和密度。javascript bug 不存在于 2.3.3 或任何其他模拟器上,这就是为什么我宁愿在设备上进行测试,它们让我更准确地了解用户会遇到什么

4

2 回答 2

1

首先,这是一个讨论如何潜在地解决问题的演示文稿。这显然不容易,但这是另一个类似的 SO 帖子

于 2012-08-30T21:21:54.430 回答
1

我不完全是你所说的“没有按预期工作”的确切意思,但这可以帮助你很多:

在我看来,测试您的 Android 应用程序的最佳方法是安装 Jenkins 持续集成服务器,并使用 Android Emulator 插件在您的应用程序上执行应用程序,该应用程序构建在具有各种设置(屏幕密度、操作系统版本等)的模拟器上. 该插件可以自动截取屏幕截图,因此您可以在之后查看您的应用程序在每个配置上的外观。此外,构建和测试可以每天触发,或者每次您在 SCM(Git、SVN 等)上提交一些代码时触发。

插件的配置详见官网:https ://wiki.jenkins-ci.org/display/JENKINS/Android+Emulator+Plugin

于 2012-08-30T22:28:00.167 回答