背景
在bugly上面收集到项目View.getVisiblity()的空指针异常,这个崩溃总量不大,但是一直存在,所以也没有特别花时间去关注,后面有一期需求,导致这个崩溃量上升,必须要解决了,本文将详细描述这个崩溃的排查过程和问题解决方法。
在bugly上面收集到项目View.getVisiblity()的空指针异常,这个崩溃总量不大,但是一直存在,所以也没有特别花时间去关注,后面有一期需求,导致这个崩溃量上升,必须要解决了,本文将详细描述这个崩溃的排查过程和问题解决方法。
新建一个Android项目,默认使用Gradle进行构建,相信大家或多或少都听过Gradle,Gralde也是现在项目构建的主流工具。看到项目中杂乱gradle配置,你是否手足无措,莫慌,本文将带你了解Android中Gradle插件。
gradle是一种构建工具,用来控制代码的编译、构建、打包等过程,自定义Gradle在Android中应用是很广泛的,比如在gradle构建过程中使用字节码技术、默认的Android项目中应用了很多插件,比如java、groovy、com.android.application等,了解Gradle插件有助于更好的理解生成APK的过程。
自定义插件三种方式:
build.gradle
脚本中直接编写,只能在本文件内使用;buildSrc
的Module,只能在本项目中使用;引用两句话来说明字节码文件的重要性:
代码编译的结果从本地机器码转变为字节码,是存储格式发展的一小步,却是编程语言发展的一大步。来自《深入理解Java虚拟机》-周志明
理解字节码以及理解Java编译器如何生成Java字节码与学习汇编知识对于C/C++程序员有一样的意义。来自IBM developerWorks周刊
本人在学习字节码文件后,明显能感觉到的几个好处:
阅读本文,你将学会如何分析字节码内容。
通过google查问题的时候,看到一些博客风格很简约,博客内容质量很好,不由觉得想要拥有,得知这样的博客都是通过hexo+github搭建的,都是开源免费的,那必须得自己搞一个了,话不多说,开搞!