本文是基于api 25(Android 7.1.1),主要是安装保存在sd 卡的应用apk 的流程。
AMS之startActivity
趁着周末最后一天的晚上,大概看了startActivity 的总体的流程,目前还非常的不完善,记录下。
https 以及https 在Android 中的使用
http 是明文传输的,被攻击者截获以后会出现一些问题。客户端可能访问的是一个攻击者的服务端(被劫持),导致客户数据泄漏。服务端接收的是一个攻击者的客户端,可能导致带宽损失、数据被修改等等。对于安全级别比较高的应用仅仅的http 已经不在适用了。
属性动画源码分析
前几天与小伙伴交流,他做Android 时间不长,做了很多
View
了,觉得View
已经全部掌握了。然后我以一个过来人的身份(臭不要脸)问他属性动画的原理,然后他支支吾吾的说就是通过反射设置的啊…
自定义View那些事
最近与朋友聊天,朋友吐槽说去面试的时候自定义View
方面的问题问了好久,我说不是很正常吗,最基本的。 把好久之前学Android 自定义View
整理了一下。顺便写了一个demo。
稍微总结了一下四个点:
- 布局与绘制、基本回调方法、熟练使用
View
的api- 事件分发
- 动画
- 细节
三方sdk接入问题
在项目中接入的大大小小的sdk 有几个了,现在比较适合做一下总结。
来源
- jar包:一般是公司内部其它部门的sdk、大部分的三方sdk
- aar:一般是公司内部其它部门的sdk(一般是不同Android 小组的sdk)、三方sdk(现在接入的比较新的sdk 很多是aar)
- jar包+资源文件(aar+资源文件)
- 封装开源框架的sdk:图片加载框架、网络框架之类的封装。
- 包含gradle plugin 插件的sdk。
还有一些sdk 包含了so 文件。
Java序列化那些事
最近在入门python,然后边学的时候对java 的知识点也有一些回顾。最近又碰到单例的安全问题,所以复习下序列化知识。方案有两种,比较简单暴力的是直接实现Serializable
,稍微复杂一点的是实现Externalizable
(需要手动的去序列化哪些值)。需要注意的是实现Externalizable
的类需要有一个public 无参构造函数(会默认调用无参构造函数)。重点说说Serializable
里面需要注意的东西。
NestedScrolling笔记
最近做一个自定义Behavior
的需求,然后回过头来看了下嵌套滚动的流程。做个笔记记录下。
回顾下
View
的事件机制是由父ViewGroup
传递到子View
的。这样的一个问题是无法处理同级子View
的事件分发(特殊的手段可以实现,比如通过onTouchEvent
强行传给另外一个View
)。嵌套滚动机制的一个比较重要的封装是处理同级子View
滚动效果。
fresco(1):整体框架
之前有大概的了解fresco
,也看过部分源代码,现在项目中使用的越来越多,觉得有必要整理一下。这篇博客主要是分析了fresco
整体的框架。没有看过准备去看fresco
源代码的童鞋可以看看这篇博客进行参考一下。基于fresco 1.5.0
Andorid中VSync机制的介绍
这篇博客介绍了关于VSync 的一些概念和原理(对Android 的绘制原理非常重要),主要是从《深入理解Android内核设计思想》这本书中所讲的总结。