Android学习计划

一个计划

在我所认知的 Android 开发中,可以大致分为如下几部分,分别如下:

  • 系统服务,亦即系统提供的底层功能,主要涵盖 ActivityManagerServices 、WindowManagerService 、SystemServer 等等

  • 应用组件,Android 是基于组件进行的开发系统。众所周知的四大组件Activity 、Services 、Broadcast 、ContentProvider。几乎所有 Android 程序都是由这 4 大组件通过通信框架进行内部串联,并与系统服务进行通信,从而得到具有特定功能的应用。

  • 通信框架,这里主要是指进程间通信 和 线程间通信两大部分。有Binder和Handler。

  • UI框架,这里会包括Surface机制(阐述Activity、Window和View的关系)以及View和动画的工作原理

  • 专用驱动, Android专用驱动构成了Android运行时的基石。从技术上来讲,Android专用驱动也是整个Android系统的亮点,特别是Binder驱动。一共三种专用驱动Logger、Binder和Ashmem

  • Dalvik和ART虚拟机,注重内存管理、垃圾收集、即时编译、Java本地调用、GC、进程和线程管理等。

  • 安全机制,一共有SO注入/加壳、C/C++函数GOT拦截/INLINE拦截、DEX注入/加壳、Java函数拦截,这七种

  • 防反编译,三种APK防反编译技术:1)添加非法指令;2)隐藏敏感代码;3)伪APK加密技术。此外,还有Dex和Native加壳技术来防止别人反编译我们的APK。

  • 开源架构

     

拟定的目录如下:

系统服务篇

  • Android 应用进程安装流程

  • Android 应用进程显示流程

  • 什么是系统服务

  • ActivityManagerServices

  • SystemServer

  • WindowManagerService

  • Zoyote 前世今生

 

应用组件篇

  • Application 是什么?

  • Context 分析

  • Activity 组件分析

  • Services 组件分析

  • ContentProvider 组件分析

  • Broadcast 组件分析

     

通信框架篇

  • Binder

  • Handler

 

UI框架篇

  • Surface机制

  • View的工作原理

  • 动画的工作原理

专用驱动篇

  • Binder

  • Logger

  • Ashmem

 

虚拟机篇

  • Dalvik

  • ART

 

安全机制篇

  • 待续

 

防反编译篇

  • TODO

 

开源架构篇

  • TODO

posted @ 2016-07-07 10:24  Zhou_SYSU  阅读(200)  评论(0)    收藏  举报