我正在使用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的可下载系统映像。我安装了所有这些。没有复制此白屏错误。
我还能做些什么来发现这个错误?
如果它有助于回答我的问题,我的应用程序很大程度上依赖于服务器通信。整个应用只有一个Webview
,只有html
个&{ JS
个文件。
答案 0 :(得分:1)
仿真器的问题在于它们无法再现实际的设备行为(特别是,像三星这样的许多OEM倾向于根据自己的需求定制Android),所以我恐怕你唯一的选择是:
获取带有5.1.1的三星Galaxy S5
除了明确的想法“去购物和购买”,我可以推荐你:
使用Google Analytics工具从受影响的设备收集更多数据,并根据您获得的信息采取行动
有许多不同的框架可以完成它。我可以建议Crittercism作为一个超级强大而全面的工具。特别是,我肯定会记录:
this
/ Activity
生命周期方法,添加到Fragment
的方法(如启动时的白屏可能意味着某些问题),对所有有意义的异步任务等。批评也会抓住&报告所有崩溃发生在应用程序和
入门指南就在这里,非常简单:http://docs.crittercism.com/android/android.html
这么说,我建议你无论如何都要集成一些分析,因为它将来会帮助你并试图让受影响的手机进行测试。
答案 1 :(得分:0)
我猜罪魁祸首是webview。 您是否可以查看问题可重现的网页浏览版本。
要检查您需要转到设置的版本 - >应用程序管理器 - >下载的应用 - >检查“Android系统Webview”版本
当屏幕空白时,我们遇到了类似的问题,过去只在特定版本的webview上发生。谷歌后来解决了这个问题。
chrome webview图层现在可以从Google Play更新。
有关详细信息,请参阅 - http://developer.android.com/about/versions/lollipop.html#WebView
答案 2 :(得分:0)
我假设你正在构建一个混合应用程序。
如果webview是罪魁祸首,您可以尝试crosswalk。 它将Mb添加到您的应用程序,但它确保每个设备使用相同的webview(最新的铬)。此外,渲染差异等也被最小化。
如果你正在使用cordova run:cordova插件添加cordova-plugin-crosswalk-webview,那就是它。
如果你实现了这个并且白屏问题消失了,你就用sherlock holmish演绎方式调试它......
答案 3 :(得分:0)
问题不在于模拟器。它与Android版本WebView
中的5.1 onward
一致。
尝试
卸载“Android系统webview”应用的更新(转到 设置并在“下载”下查找它,它工作得很好!