啊,终于要接触这个传说了很久的android了。小小兴奋了。恩,依旧把一些值得注意的点记录一下。
1.android系统架构
貌似任何一本android教材的开篇都会介绍上面这幅图片,对于我这种新手,理解起来颇为吃力。
从图中可以了解到,android从底向上分为四层结构:
1.Linux内核(Linux Kernel)
Android Kernel的本源就是Linux Kernel,各个版本的Android的内核版本都会有变化。安卓内核版本就是手机的硬件(如主板,GPS,摄像头,WiFi,蓝牙等)驱动集合体的版本号。Linux 内核是硬件和软件层之间的抽象层。它影响着Android系统运行的效率等各种问题。如以前最流行的android 2.3,它的Linux Kernel版本为2.6.35。而现在最新的android 4.4,则已升级到了3.8.0。
2.中间件
中间件包括两个部分:核心库(libraries)与运行时(Android runtimes).
Dalvik虚拟机:区别于Java虚拟机的是,每一个Android 应用程序都在它自己的进程中运行,都有一个属于自己的Dalvik 虚拟机,这一点可以让系统在运行时可以达到优化,程序间的影响大大降低。Dalvik虚拟机并非运行Java字节码,而是运行自己的字节码。
3.应用程序框架(Application Framework)
4.应用程序(Applications)
2.安装ADT
遥想当初,装个ADT的过程真是曲折。由于android官方提供的开发工具包除了包含ADT外还包含了eclipse等。但是我自己之前就已经安装eclipse了,实在不想再重新花费时间去另外下。忽然在官网看到有在线安装ADT的方法,就果断选择了这条路。
1.打开eclipse - Help - Install new Software - Add
2.弹出的会话框中,在“Name"中填入 ADT,在Location中填入https://dl-ssl.google.com/android/eclipse/ 后OK
身在天朝,你以为到这里就结束了?太天真了!当初我OK后等待了良久良久都没有刷新出官网所说的目录...后来才了解到咱们的GFW把google给墙了(雅蠛蝶)...所以还需要修改下HOSTS。
3.添加一条HOSTS记录:74.125.237.1 dl-ssl.google.com
4.然后eclipse就会很快刷新出目录了。如下图:
选择需要安装的工具,这里我暂时木有必要用到NDK,所以就只选了开发者工具。然后就会自动下载安装了。安装后还有漫长的一段时间会用来下载Android SDK,我只能用一个字来形容这段过程:坑。
3.使用eclipse查看android源码
之前学习JAVA时经常要用到eclipse查看源码,有了这个经验,开始学习android前就觉得很有必要设置下eclipse.让它可以方便查询android的源码。为了方便,就添加了目前最新的android 18 sources作为查询的源码库。
Ctrl TextView试试:
4.加速模拟器启动
测试最好的方法就是写个hello world看看在模拟器上能不能运行。不过这里就出现了一些让我无语的情况,启动个模拟器居然要几分钟,这还让不让我活了。然后自己瞎乱捣鼓了一下,发现启动速度变快了。
1.修改eclipse的相关设置.打开eclipse根目录下的eclipse.ini.将内容修改成了:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20130521-0416
-product
org.eclipse.epp.package.standard.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
1024M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
1024m
--launcher.defaultAction
openFile
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms1024m
-Xmx1024m
因为我电脑内存是8G,所以可以将内存上限抬高,以提高运行效率。
2.创建模拟器时,记得勾选上Snaphot。然后首次启动模拟器时,勾选Save to snashost,以后再要启动这个模拟器,就只勾选Lanuch from snaphost而不用勾选Save to snaphost,经测试这样可以大幅度提高模拟器的启动速度,感动长在!
至于原理,snaphost意为快照.那么就很容易理解,首次启动我们就将模拟器的状态保存一份快照,之后再要启动模拟器时我们可以直接从快照中恢复,从而加快了速度。当然,一旦快照缓存被删除,也就只能重新正正规规地启动模拟器了。