在Galaxy S5中调试应用程序

GRY*_*GRY 11 android android-virtual-device android-studio

我正在使用Android Studio 1.5.1为我的公司构建一个Android应用程序.我发现该应用程序无法在某些 Galaxy S5手机上运行.

当应用运行时,这些手机只显示白屏.在使用Android版本5.1.1的Galaxy S5设备上会出现此错误,但在运行Android 5.0版本的Galaxy S5设备上则不会

我专注于Android版本作为解决此错误的线索.我实际上无法获得其中一个设备,所以我创建了几个虚拟设备.Android Studio的虚拟设备配置向导中有6个Android 5.1.1的可下载系统映像.我安装了所有这些.没有复制此白屏错误.

我还能做些什么来发现这个bug?

如果它有助于回答我的问题,我的应用很大程度上依赖于服务器通信.整个应用程序只是一个Webview有一些html&JS文件.

Kon*_*nov 1

模拟器的问题在于它们无法重现实际的设备行为(特别是,一旦像三星这样的许多 OEM 倾向于根据自己的需求定制 Android),所以恐怕您唯一的选择是:

  1. 获取三星 Galaxy S5 5.1.1

    除了显而易见的“去商店购买”的想法之外,我还可以向您推荐:

    • 看看 开放设备实验室。它在世界各地运营,可以说有很好的机会在那里找到您需要的设备;
    • 建立一个 alpha-beta 用户池,您可以与之交谈并分享新版本。Google Play 在这方面有相当丰富的功能。三星S5是相当常见的型号,所以找到使用它的人应该不成问题。如果您的产品是“公开的”,您可以尝试在BetaBound等服务上或在您的社交媒体网络中寻找测试版用户;
  2. 使用分析工具从受影响的设备收集更多数据,并根据获得的信息采取行动

    有数十种不同的框架可以实现它。我可以建议Crittercism作为一个超级强大且全面的工具。特别是,我肯定会记录:

    • 所有已处理的异常
    • 将面包屑(用于捕获应用程序运行时信息的短字符串)添加到所有Activity/Fragment生命周期方法、Application方法(因为启动时的白屏可能意味着存在一些问题)、所有有意义的异步任务等。
    • 如果应用程序进入可疑状态 - 将其记录为已处理的异常,以便您可以查看面包屑的整个踪迹并跟踪用户的异常历史记录。不幸的是,在某些事情被记录为问题(崩溃或异常)之前,您不会得到面包屑的踪迹。有一些框架可以记录所有内容,例如MixPanel,但老实说,我认为 Crittercism 更适合这里)

    Crittercism 还将捕获并报告应用程序中发生的所有崩溃,

    入门指南在这里,非常简单:http://docs.crittercism.com/android/android.html

话虽如此,我还是建议您集成一些分析,因为它将在将来帮助您并尝试将受影响的手机拿到手中进行测试。