NullPointerException: Attempt to invoke virtual method 'int com.huawei.lcagent.client.LogCollectMana
来源:互联网 发布:产品分析软件 编辑:程序博客网 时间:2024/06/01 07:15
华为手机的那些坑。
把app运行到华为手机上,跳转到某个页面时就会闪退。但是在其他的手机上都是运行正常的,包括在安卓7.0的手机上也运行正常。但是一旦在这个6.0的华为手机上就会出现那个bug。查看日志发现是NullPointerException!
日志是这样的:
java.lang.NullPointerException: Attempt to invoke virtual method 'int com.huawei.lcagent.client.LogCollectManager.getUserType()' on a null object reference
详细的可以看看下面截图:
log只是提示了与com.huawei.lcagent.client.LogCollectManager.getUserType()这个有关,很明显是华为系统的原因。但是百度了一下,网上都说是LogCollectManager这个类把日志给隐藏了,导致真正的日志无法显示,把app运行到其他手机上,再看别的手机上打印出的log吧。
但是我的app只有在华为手机上才崩溃,在其他的手机上都没有问题啊。怎么办。一步步分析吧。从头把思路捋一捋。
我的app是跳转到MainActivity时才崩溃的,所以崩溃的原因应该在MainActivity里。
后来发现我的MainActivity里有一段代码涉及到了安卓6.0!
这段代码的意思就是当检测到系统版本是安卓6.0及其以上版本时。就检查自己是不是在系统的电量白名单里,如果不是就调用意图使用户同意本app加入到白名单中。
我把这段代码注释掉就好了。重新运行后,再次进入MainActivity也不会崩溃了。
另外,我发现华为手机会过滤掉一些log信息,只显示NullPointException,让你看不出来到底出了什么bug导致app崩溃了。出现这种情况,大家可以换一台手机试试。把bug复现一下。其他品牌的手机不会像华为这样过滤log信息,报了什么错,在控制台上就直接显示出来了。
如果本文对你有帮助的话,麻烦在下方点个赞,谢谢支持。
- NullPointerException: Attempt to invoke virtual method 'int com.huawei.lcagent.client.LogCollectMana
- com.huawei.lcagent.client.LogCollectManager.getUserType() NullPointerException
- java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Integer.intValue()'
- ava.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.ViewGroup.getPaddi
- Android程序报错:java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.
- Android程序报错:java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View
- java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImporta..
- java.lang.NullPointerException: Attempt to invoke virtual method 'int java.io.InputStream.read(byte[
- error: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getIm
- Android异常 NullPointerException: Attempt to invoke virtual method int java.lang.Integer.intValue()
- java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportant
- java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Integer.intValue()'
- java.lang.NullPointerException Attempt to invoke virtual method 'int android.widget.Editor
- java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportant
- java.lang.NullPointerException: Attempt to invoke virtual method 'void com.hhl.library.FlowTagLayout
- java.lang.NullPointerException: Attempt to invoke virtual method 'void com.moreunion.zhenghao.ui.pr
- java.lang.NullPointerException: Attempt to invoke virtual method 'void com.moreunion.zhenghao.ui.wi
- NullPointerException: Attempt to invoke virtual method 'android.view.ViewGroup$LayoutParam
- 第三周 leetcode 102. Binary Tree Level Order Traversal(Medium)
- 数组方式赋值字符串及字面值常量赋值字符串的区别
- ros源码分析(1)—roscore概况
- ionic之 bug
- 移动开发----BigSmallTextView方便设置大小字体颜色的View
- NullPointerException: Attempt to invoke virtual method 'int com.huawei.lcagent.client.LogCollectMana
- libevent
- springloaded--热部署设置,替代jrebel
- 使用mysql事务报错:Lock wait timeout exceeded; try restarting transaction Query:
- 医疗化验单的进展和展望
- 【集训】jzoj 2017.7.14 noip模拟赛A 总结
- C++编程规范19:总是初始化变量
- Jmeter JDBC显示事务处理(优化版本)
- **农商手机银行app更新代码后访问速度非常慢