Android错误日志分析
Posted iiiLISA
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android错误日志分析相关的知识,希望对你有一定的参考价值。
android Studio下常见异常以及分析方法
常见异常
NullPointerException
原因:调用对象的方法或属性,但对象为空。
ClassCastException
原因:类型转换异常。
ActivityNotFoundException
没有在AndroidManifest.xml清单文件注册Activity,或者注册不正确
常见异常的一般分析步骤
-
在Logcat从下往上找,尽量找到causeBy(会显示哪种异常导致)
-
找到出异常的类和行号,点击进入对应的行
java.lang.NullPointerException类型
Attempt to invoke virtual method ‘boolean java.lang.String.equals(java.lang.Object)’ on a null object reference
错误提示:
java.lang.NullPointerException: Attempt to invoke virtual method ‘boolean java.lang.String.equals(java.lang.Object)’ on a null object reference
解决:在xml文件中把View控件写成了view
Gradle类型
Failed to open zip file. Gradle’s dependency cache may be corrupt(this sometimes occurs after a network connection timeout.
错误提示:
Failed to open zip file.
Gradle’s dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
解决:删除C:\\Users\\用户名.gradle\\wrapper\\dists\\gradle-版本号-all\\”key“\\目录下错误未解压的gradle-版本号-all.zip,把自己手动下好的文件复制粘贴进去。
java.lang.NullPointerException 类型
错误提示:
java.lang.NullPointerException: Attempt to invoke virtual method ‘android.view.View android.widget.RelativeLayout.findViewById(int)’ on a null object reference
解决:这是个空指针异常,说这个是一个空的引用,在Activity中检查布局是否加载正确,或者检查findViewById。
java.lang.RuntimeException类型
错误提示:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.splashscreen/com.example.splashscreen.WelcomeActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.
解决:这个错误是说Theme AppCompat中没有这个主题,需要使用Theme AppCompat中或者子类中包含的主题样式,把在Activity中修改继承的父类把AppCompatActivity改成Activity。
NDK之路
错误提示:
ava.lang.RuntimeException: Error: Flag android.useDeprecatedNdk is no longer supported and will be removed in the next version of Android Studio. Please switch to a supported build system.
解决:需要把gradle.properties中的android.useDeprecatedNdk=true注释掉,NDK改成CMake编译
错误提示:
Error: Your project contains C++ files but it is not using a supported native build system
解决: 在build.gradle 中的 buildType中添加 :
sourceSets{
main {
jni.srcDirs = []
}
}
原文:https://www.cnblogs.com/1329197745a/p/14905660.html
以上是关于Android错误日志分析的主要内容,如果未能解决你的问题,请参考以下文章
在 Android 片段中获取 Java.Lang.NullPointerException
Android 逆向整体加固脱壳 ( DEX 优化流程分析 | DexPrepare.cpp 中 dvmOptimizeDexFile() 方法分析 | /bin/dexopt 源码分析 )(代码片段
Android 事件分发事件分发源码分析 ( Activity 中各层级的事件传递 | Activity -> PhoneWindow -> DecorView -> ViewGroup )(代码片段