无题
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195CG 3D Blender 操作 ...
无题
Android 网络请求框架
无题
ANativeWindow
无题
Androd Instant-run
无题
Android 增量更新.md前言 在前几年,整体移动网络环境相比现在差很多,加之流量费用又相 对较高,因此每当我们发布新版本的时候,一些用户升级并不是很 积极,这就造成了新版本的升级率并不高。而 google 为了解决了 这个问题,提出了 Smart App Update,即增量更新(也叫做差分升级)。 尽管现在网络环境有了很大的提升,但一个不争的事实就是应用越 做越大,因此,增量更新在目前的仍然是一种解决 APP 更新包过 大的有效方案。今天,我们就来聊聊增量更新。
什么是增量更新? 增量更新的关键在于如何理解增量一词。来想想平时我们的开发过程,往往都是 今天在昨天的基础上修改一些代码,app 的更新也是类似的:往往都是在旧版本 的 app 上进行修改。这样看来,增量更新就是原有 app 的基础上只更新发生变 化的地方,其余保持原样。 与原来每次更新都要下载完整 apk 包的做法相比,这样做的好处显而易见:每次 变化的地方总是比较少,因此更新包的体积就会小很多。比如“师父说”安装包的 体积在 6m 左右,如果不采用增量更新,用户每次更新都需要下载大约 6m 左右 的安装包,而采用增 ...
无题
Android 多线程Android沿用了Java的线程模型,一个Android应用在创建的时候会开启一个线程,我们叫它主线程或者UI线程。如果我们想要访问网络或者数据库等耗时的操作时,都会开启子线程去处理,从Android 3.0开始,系统要求网络访问必须在子线程中进行,否则会抛出异常;也就是为了避免主线程被耗时操作阻塞从而产生ANR,同时也说明了多线程在Android应用开发占据着十分重要的位置。《Android进阶之光》
进程与线程
进程
一个“进行中”的程序。
系统进行资源分配和调度的基本单位。
线程
CPU调度的最小单元。
与进程相比,线程创建和切换开销更小。
Java线程的状态(6种)
网上5种状态的说法误导的,5种状态是属于早期进程的状态。
下面是JDK源码:src/main/java/java/lang/Thread.java 中 线程状态State枚举 代码:
1234public enum State { NEW, RUNNABLE, BLOCKED, WAITING ...
无题
Android 安卓打包工具 AAPT