我正在使用genymotion android模拟器来测试我的应用程序(需要谷歌播放服务)。 由于genymotion不能支持这一点,我按照这里的指示。 How to install Google Play Services in a Genymotion VM (with no drag and drop support)?
每当我尝试在genymotion上启动此应用程序时,会出现一个对话框,说“应用程序没有响应。你要关闭吗?”。自从我第一次开发以来,我一直在使用genymotion和Galaxy Nexus-4.2.2这个app.It非常好。我不知道为什么它突然停止工作。 这个问题只发生在我在genymotion上测试我的应用程序时,而不是真正的设备和eclipse模拟器。 logcat.Emulator中没有错误可以连接到Internet。全部检查。我的代码没有问题。我删除了genymotion AVD,用新的创建和测试也无法解决问题 请告诉我如何解决这个问题?
答案 0 :(得分:2)
当您在主线程上执行长任务时,会出现此消息。它被称为ANR(应用程序无响应)。您应该使用调试和分析工具来查看正在发生的事情。
在您的代码中添加一个断点,并在设备上添加Bedug(而不是Run)您的应用。 您还可以通过DDMS分析应用程序的执行情况,以识别在UI线程上运行的代码部分,并且处理时间超过5秒。 您可以找到有关Tracedump(Android上的方法分析工具)的更多信息。{/ p>
此外,它不是来自您的应用程序,而是由您调用的第三方元素引起的。 我知道,例如,当您从云中选择尚未下载的图片时,Google应用中的新“照片”应用可能会导致ANR。
如果它来自第三方应用程序,我不知道如何解决这个问题。
答案 1 :(得分:0)
Genymotion模拟器没有集成的googleplay服务,因此我建议您在尝试访问服务之前检查设备中是否存在该服务,当您尝试访问该服务时它不会冻结。此外,您可以直接调试手机,使用adb或使用adb自己的模拟器(我知道adb上的模拟器很慢xD但仍然......)