pxfile Blog

Thinking will not overcome fear but action will.

Dialog加载绘制流程

Dialog加载绘制流程

Dialog加载绘制流程 Android源码解析Window系列第(二)篇—Dialog加载绘制流程 AlertDialog和Activity一样,内部有一个Window,我们构造AlertDialog.Builder,通过Builder设置Dialog各种属性,,这些参数会被放在一个名为P(AlertController类型)的变量中, 在调用Aler...

ButterKnife

ButterKnife

ButterKnife ButterKnife框架原理 有个大神叫 Jake Wharton,开源了一个神奇的框架叫做 ButterKnife,这个框架虽然也采用了注解进行注入,不过人家可是编译期生成代码的方式,对运行时没有任何副作用,果真见效快,疗效好,只是编译期有一点点时间成本而已。 它用了Java Annotation Processing技术,就是在Java代码编译成Java字节...

android四种引用的详解

android四种引用的详解

android四种引用的详解 简述: 在android开发中,开发到一定程度的之后,就会开始关注关于APP的各种性能优化,其中很重要的一个点,就是关于四种引用的合理引用,另外在android的各种面试中,也会经常被问到关于四种引用的各种问题。 哪四种引用 四种引用分别为: 1. 强引用(StrongRefernce) 2. 软引用(SoftReference) 3. 弱...

Android内存泄露

Android内存泄露

Android内存泄露 定义 内存泄露是指无用对象(不再使用的对象)持续占有内存或无用对象的内存得不到及时释放,从而造成的内存空间的浪费称为内存泄露。 原因 长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄露,尽管短生命周期对象已经不再需要,但是因为长生命周期对象持有它的引用而导致不能被回收, 这就是java中内存泄露的发生场景。 危害 只有一个,那就是虚拟机占用内存过高,导...

Android中的Dalvik和ART详解及区别分析

Android中的Dalvik和ART详解及区别分析

Android中的Dalvik和ART详解及区别分析 要想知道Dalvik和ART区别分析,首先我们要分别知道这两者是什么? 什么是Dalvik? Dalvik是Google公司自己设计用于Android平台的虚拟机。 Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。 它可以支持已转换为 .dex格式的Java应用程序的运行,.dex格式是专为...

垃圾搜集算法有哪些?G1算法?

垃圾搜集算法有哪些?G1算法?

垃圾搜集算法有哪些?G1算法? 1.参考 Java垃圾收集算法 2.参考 G1 Garbage First介绍 3.参考 JVM调优总结(四)–新一代垃圾回收算法G1 4.参考 GC策略的调优

Android多进程使用及其带来的问题

Android多进程使用及其带来的问题 1.Android程序如何使用多进程 根据Processes and Threads,默认情况下,一个Android程序的所有组件都是在一个进程中执行的,该进程的名字就是程序的包名。同时,Android也允许开发者将程序的一些组件在其他进程中执行。四大组件均支持android:process属性,我们可以设置该属性的名字,将组件运行在指定的进程。参...

ANR定位和修正

ANR定位和修正

ANR定位和修正 如果开发机器上出现问题,我们可以通过查看/data/anr/traces.txt即可,最新的ANR信息在最开始部分。 主线程被IO操作(从4.0之后网络IO不允许在主线程中)阻塞。 主线程中存在耗时的计算 主线程中错误的操作,比如Thread.wait或者Thread.sleep等 Android系统会监控程序的响应状况,一旦出现下面两种情况,则弹出ANR...

反射技术在android中的应用

反射技术在android中的应用

反射技术在android中的应用 java/android中的反射机制 什么是反射机制 个人理解就是通过反编译获取类中所有的信息(包括:变量、方法、接口),供开发者利用。 优缺点 优点:增强代码的自适应能力(动态的创建对象)、调用一些类中的私有方法(例如通过反射机制调用android系统挂断电话的方法)。 缺点:降低程序性能。牛逼的背后总是苦逼,反...

Android之设计模式六大原则

Android之设计模式六大原则

Android之设计模式六大原则 设计模式六大原则1单一职责原则 设计模式六大原则2里氏替换原则 设计模式六大原则3依赖倒置原则 设计模式六大原则4接口隔离原则 设计模式六大原则5迪米特法则 设计模式六大原则6开闭原则 单一职责原则 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责...