自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (1)
  • 收藏
  • 关注

原创 android命名空间

Android的命名空间大体上有三种:    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"android是系...

2018-11-30 13:57:42 631

原创 Windows平台下载Android源码(整理)

转载自:https://www.cnblogs.com/zhangtingkuo/p/4703142.html亲测下载ok,速度可能和自己网络有关,我这巨慢的网Google官方下载源码使用的系统Ubuntu系统,不过现在我们需要在Windows系统中下载Android源码文件。网站的地址是:https://android.googlesource.com/里面包括Android系统...

2018-11-30 10:07:38 470

转载 Android中Serializable和Parcelable序列化对象详解

转载:https://www.cnblogs.com/yezhennan/p/5527506.html学习内容:1.序列化的目的2.Android中序列化的两种方式3.Parcelable与Serializable的性能比较4.Android中如何使用Parcelable进行序列化操作5.Parcelable的工作原理6.相关实例 1.序列化的目的  (1)...

2018-11-29 15:30:25 147

原创 数据结构之一

关于HaspMap 、 HashTable 、SpraseArray、  ArrayMap、ConcurrentHashMap1.Map接口都知道,是键值对的数据结构,如题几种都是Map基于hash快速查找的:HashMap HashTable ConcurrentHashMap基于二分查找:SpraseArray  ArrayMap(这两货是android提出替代HashMap的,其...

2018-11-29 14:53:21 154

原创 直接安装打开和点击图标打开之不同

下面主要是https://www.jianshu.com/p/774c7fb83b99这篇文章的内容,但最后贴出来我们的规避方法,反正都是大家都懂的的方法问题复现方法(复现过小米、华为、三星):从文件管理器点击apk进行安装,安装完成后直接点击右下角的“打开”按钮,app被打开,点击home键,app进入后台,再点击桌面的icon进入app,app会再次启动一个MainActivi...

2018-11-28 16:39:42 784 1

原创 View的测量

view的测量是发生在activity的onResume之后,所以在resume后才可以获取到view是我大小1.测量步骤:从ViewGroup到子view一层一层遍历测量,先测量子view的大小,父view的大小是根据子view的大小计算出来的Android源码中的测量过程是从performMeasure开始的,然后是measure,onMeasure,最后setMeasuredDime...

2018-11-27 17:30:02 1117

原创 onSaveInstanceState & onRestoreInstanceState

Android 已经为activity的恢复做了大部分能做的,主要是ui部分,有id的,那如果想恢复自己的一些东西就需要自行操作了,但是不要忘记调用super的save,否则你需要保存所有ui的状态1.onSaveInstanceState(onCreate/onRestoreInstanceState中的Bundle就是它传进去的)调用时机 : Activity 容易被销毁的时候调用, ...

2018-11-26 15:42:33 131

原创 Android-InputStage

InputStage输入事件的传递过程如下,每个阶段都有拦截传递的能力。NativePreImeInputStage 分发早于IME的InputEvent事件到NativeActivity中去处理, NativeActivity和普通acitivty的功能区别不大,只是很多代码都在native层去实现,这样执行效率更高,并且NativeActivity在游戏开发中很实用。 不支持触摸事件。...

2018-11-22 17:17:50 1010 2

原创 关于同步和锁(不断更新,get倒啥就先记上)

1、实现原理首先明确一点同步(syncjronized)和锁实现的是同样的功能,线程同步,纠结原理,我觉得也是类似的synchronized(可重入):以同步代码块为例,反编译后发现有成对的:     11: monitorenter      58: monitorexitlock:源码应该是通过技术(可重入锁) 底层应该都是通过操作系统的lock或者原语操作实现的,...

2018-11-22 14:59:18 136

原创 数据和同步

ConcurrentHashMap(锁分离):ConcurrentHashMap使用分段锁技术,将数据分成一段一段的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也能被其他线程访问,能够实现真正的并发访问。ConcurrentHashMap内部分为很多个Segment,每一个Segment拥有一把锁,然后每个Segment(继承ReentrantLock...

2018-11-21 17:05:41 138

原创 volatile与同步

区别是什么呢?首先相同点:都保证可见性、有序性区别:volatile不保证原子性 对于volatile关键字,当且仅当满足以下所有条件时可使用:1. 对变量的写入操作不依赖变量的当前值,或者你能确保只有单个线程更新变量的值。//多个更新,同步问题2. 该变量没有包含在具有其他变量的不变式中。//不能保证原子性关于这个两个规则可能有点疑问:第一条简单,就是说只有单个线...

2018-11-21 16:17:29 292 1

转载 Android源码分析-点击事件派发机制

转载出处:http://blog.csdn.net/singwhatiwanna/article/details/17339857概述一直想写篇关于Android事件派发机制的文章,却一直没写,这两天刚好是周末,有时间了,想想写一篇吧,不然总是只停留在会用的层次上但是无法了解其内部机制。我用的是4.4源码,打开看看,挺复杂的,尤其是事件是怎么从Activity派发出来的,太费解了。了解Wind...

2018-11-09 16:42:47 122

原创 java对象回收

java虚拟机根据内存的使用情况会触发不同等级的gc Minor GC ,Full GC 触发条件Minor GC触发条件:当Eden区满时,触发Minor GC。Full GC触发条件:(1)调用System.gc时,系统建议执行Full GC,但是不必然执行(system.gc()后调用System.runFinalization();方法可以立马区执行finalize()方法)(...

2018-11-09 14:54:16 563

转载 安卓开发热修复技术原理及选型

转载  :  https://www.jianshu.com/p/b9ed58405ded到我写这篇博文为止,现行的热修复技术主要有四种:美团的Robust、qq空间的Nuwa,微信的Tinker,阿里百川HotFix,但是更确切的说应该是有三种,Tinker和HotFix,因为Tinker是基于Nuwa的,原理一样,是它的进化版,我们到Github(https://github.com/ja...

2018-11-01 13:17:36 234

原创 Android Runtime(三)

1.非zygote模式的RuntimeInitframeworks/base/core/java/com/android/internal/os/RuntimeInit.java221 public static final void main(String[] argv) {222 if (argv.length == 2 && argv[1].e...

2018-11-01 11:16:36 362

原创 Android Runtime(二)

接上一篇 走ZygoteInit 1.进入ZygoteInit的mainframeworks/base/core/java/com/android/internal/os/ZygoteInit.java public static void main(String argv[]) {522 try {523 // Start profil...

2018-11-01 11:03:58 5766

PluginApp.rar

replugin的demo实现。内部插件化,本地实现直接apk启动。已经趟过坑,可以直接使用。有分下载,没分联系我直接发

2020-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除