对付任何东西,都需要软硬兼施,对付android这家伙,软的招是搜集各种系统的、质量较高的文档及博客,先大概过一篇,看看有没有硬伤(就是自己完全不懂的领域);硬的是搭建源码编译和项目执行环境,实际动刀切进去。
开篇研究,就从这两方面入手,由于这里边有些坑,主要是硬的方面拜大GFW所赐,官方的搭建方式可能会弄得吐血,不得不搜办法绕过,感谢那些搭建了国内镜像站的骚年们,you are so great!
====== 先来软的: android 书籍、博客
下面是2014年左右新鲜出炉的android书或文档,作者都是神,大概过一遍可以快速了解android技术层面的架构和设计。
Android_Security_Intern__An_In-Depth_Guide_to_Android_s_Security_Architecture.pdf
Android_Dalvik_DEX_Internals.pdf
博客,老罗的android系列文章非常系统,缺点是版本较低,有一些知识已经不适用的,但不失为一个很好的指导
====== 硬的: android 研究环境搭建
一. ubuntu14.04 上搭建 android 5 源码编译环境
第一步,下载并安装 ubuntu14.04
第二步,下载android源码
官方下载通道非常慢,这里推荐清华大学的镜像,基本用法是:将 https://android.googlesource.com/ 全部使用git://aosp.tuna.tsinghua.edu.cn/android/ 代替即可。
本人(2015年1月)试过速度还行。
1.下载 repo
git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git/
2. 修改repo
google的地址
REPO_URL = ‘https://gerrit.googlesource.com/git-repo‘
改为清华大学的地址
REPO_URL = ‘git://aosp.tuna.tsinghua.edu.cn/android/git-repo‘
3.下载 manifest
google 的地址
$ repo init -u https://android.googlesource.com/platform/manifest
改为清华大学的地址
$ repo init -u git://aosp.tuna.tsinghua.edu.cn/android/platform/manifest
4.同步源码
repo sync
第三步,安装java
apt-get install openjdk-7-jdk, android-5 可以和 opensdk 一起工作了,不需要oracle-jdk
第四步,编译源码
0. 必须为编译机器准备至少4G的内存和80G的磁盘空间,少于4G可能编译的中间会卡死。本人为自己的ubuntu虚拟机划分了6G内存和100G的磁盘空间。
1. 安装依赖的库,
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc
2. lunch
选择一种设备
3. make -j3
第五步,执行模拟器
二. win7 上搭建 android studio 项目开发环境
同样,官方的下载渠道几乎无法使用,这里强烈推荐一个国内的android资源小站:http://www.androiddevtools.cn/ , 上面包含了android 开发和研究需要的各种源码、工具的云盘下载链接,非常快速,版本也很新。
1. 在Win7上下载 java 并安装、设置环境变量
2. 下载sdk并安装,如 D:\adt-bundle-windows-x86_64-20140321\sdk
3. 下载 android studio 并安装,关联上述sdk路径
4. 下载sdk资源,这里推荐两种方式,最好的一种是直接从上述网站下载build-tools, platforms, extras, system-images 等各种android组件,然后解压到上述 sdk 路径的相应子路径,重启 android studio ,这种方式比较快。 另外一种是设置 sdk 代理,比如东软的代理:启动 sdk manager, 点击 tools, 点击 option, 设置 http proxy server: mirrors.neusoft.edu.cn, http proxy port: 80, 点击 clear cache , 然后通过 sdk 管理器选择要下载的组件并下载,注意,东软的镜像还是有点慢
====== show time