Android 开发环境入门

Android源码的下载

在这里面以Ubuntu(x86)操作系统为例,说明下载Android的步骤:

下载必要工具:

下载GIT工具:

$ sudo apt-get install git-core gnupg

下载JDK6:

$ sudo apt-get install sun-java6-jdk

下载下列工具包:flex, bison, gperf, libsdl-dev, libesd0-dev, libwxgtk2.6-dev (optional), build-essential, zip, curl

$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev

下载Valgrind工具:

$ sudo apt-get install valgrind

安装Repo工具:

创建目录存放Repo:

$ cd ~

$ mkdir bin
$ export PATH=~/bin:$PATH

下载Repo:

$ curl http://android.git.kernel.org/repo >~/bin/repo

$ chmod a+x ~/bin/repo

创建文件夹用于存放Android源码:

$ mkdir mydroid
$ cd mydroid

配置Repo:

$ repo init -u git://android.git.kernel.org/platform/manifest.git

下载Android源代码:

$ repo sync

注意:因为网络不稳定的原因,下载过程中经常发生下载中断的现象,这里提供通过脚本的方式自动下载当下载中断发生时,脚本如下:

#!/bin/bash

echo "======start repo sync======"

repo sync

while [ $? = 1 ]; do

echo “======sync failed, re-sync again======”

sleep 3

repo sync

done

将该脚本保存为getAndroid.sh,接着修改该文件属性:$ chmod 711 getAndroid.sh。然后运行该脚本即可下载Android源代码:

$ ./getAndroid.sh

Android源码的编译

当Android源代码下载完毕后,输入下面两条命令即可开始编码。

$ cd ~/mydroid 
$ make
源代码的编译是一个很慢长的过程,在我的电脑上花费了大约3个小时。

Linux内核编译

Windows操作系统上构建Android应用程序开发环境

下载最新的Android SDK

http://code.google.com/android/download.html

选择Windows版本的SDK,下载后直接解压缩就可以使用,为了在控制台中直接使用SDK中的工具,把SDK的目录添加到Windows的path 环境变量中。

下载JDK6

http://java.sun.com/javase/downloads/index.jsp

下载Eclipse 3.4版本

http://www.eclipse.org/downloads/

请选择Eclipse Classic 3.4.1

安装Android插件(ADT)

ADT(Android Development Tools)是Eclipse的一个插件,专门用于在Eclipse上开发Android应用程序。ADT插件的下载安装步骤如下:

启动Eclipse,点击菜单Help > Software Updates

点击Available Software标签

点击Add Site,在输入框中填入如下URL

https://dl-ssl.google.com/android/eclipse/

然后点击OK

这时在软件列表中会出来ADT插件,如图:

clip_image002

勾选上Developer Tools后,点击Install按钮。

在弹出的安装窗口中,选择Android Developer Tools,点击Finish。

然后程序将在后台下载并安装ADT插件。安装完毕后,重启Eclipse。

Eclipse重启之后,要配置Android的SDK路径:

选择Windows > Preferences

选择 Android 属性面板

点击Browse 选择Android SDK的目录

点击Apply,接着点击OK

设置Eclipse的JavaJDK的属性设置。

选择 Window > Preferences... 打开编辑属性窗口

选择 Java 属性面板

选择Java编译器为6.0

点击 Apply, 和 OK

编写Android应用程序

利用Eclipse工具可以很方便地实现Android程序的开发

选择File > New > Project 菜单创建一个新的Android工程

在新建的Android工程中,ADT工具会自动创建一个基本的程序框架,我们要做的就是在这框架的基础上添加代码实现想要的功能。

代码写好之后,选择Project > Build Project对整个工程进行编译。编译出来的是一个打包好的APK格式的程序。

选择Run > Run运行程序,也可以选择Run > Debug对程序进行调试。目标程序可以在具体机器中运行(如G1手机),不能在具体机器中调试,但可以在模拟器中进行调试。

Google也提供了ADB命令行工具用于上传程序到设备(手机或模拟器),或者从设备中下载数据到PC。

Android SDK文件夹结构分析

Android SDK文件结构如图:

clip_image004

其中:

Docs:文件夹中存放的是开发文档。

Samples:文件夹中存放着Google提供的例子

Tools:文件夹存放着各种工具(包括模拟器、ADB)

Tools>Lib:文件夹中存放着很多文件,这些文件是在编译Android程序时要用到的(还有一个文件是SDK根目录下的android.jar)。

Tools>lib>fonts:可能是为模拟器提供各种字体的支持(目前未确定)

Tools>lib>images:这个文件夹中存放着模拟器运行时要用到的文件。这些文件如下:

System.img:存放Android系统的映像文件,所使用的文件系统为YAFFS2,该文件中的内容就是/System文件夹中的内容(可通过adb shell命令查看到),使用mkyaffs2工具可将/System文件夹打包成System.img文件

Userdata.img:存放初始化数据的映像文件,也是YAFFS2文件系统,该文件中的内容就是/Data文件夹中的内容。

Ramdisk.img:这是一个普通的压缩文件,里面存放的内容大致上是系统运行时用到的一些参数设定,应该是提供给Linux Kernel起动时使用

Kernel-qemu:这是Linux Kernel。-qemu是指带模拟器功能的Kernel。

Skins:该文件夹中存放的是模拟器的界面皮肤。

其中,System.img、Userdata.img、Ramdisk.img这三个文件在编译Android源代码时可以得到,Kernel-qemu文件在编译Linux内核时可以得到(得到的应该是一个叫做zImage的文件)

Tools>lib>res:(目前未确定)

Android源代码结构

在网络上有一份源代码结构的文档,但还不全,我这边只截取出一级目录结构:

|-- Makefile        (全局的Makefile)
|-- bionic          (Bionic含义为仿生,这里面是一些基础的库的源代码)
|-- bootloader      (引导加载器)
|-- build           (build目录中的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具)
|-- dalvik          (JAVA虚拟机)
|-- development     (程序开发所需要的模板和工具)
|-- external        (目标机器使用的一些库)
|-- frameworks      (应用程序的框架层)
|-- hardware        (与硬件相关的库)
|-- kernel          (Linux2.6的源代码)
|-- packages        (Android的各种应用程序)
|-- prebuilt        (Android在各种平台下编译的预置脚本)
|-- recovery        (与目标的恢复功能相关)
`-- system          (Android的底层的一些库)

Android手机所用到的Windows驱动源代码、还有SDK中Tools目录下的大多数工具的源代码都可以在Android源代码中找到

使用Eclipse工具进行应用程序开发 – 熟悉Eclipse工具的使用

使用XML语言描述各种资源(如字符串、控件等) - 熟悉XML描述语言

使用JAVA编写应用程序 – 熟悉JAVA语法

Android提供了各种类的接口供应用程序使用 – 熟悉Android接口

大体上,Android源程序是由3个部分组成的:Java代码、XML文件、资源文件(如图片等)。

Java源代码—(JAVA编译器)-->.class字节码—(dx)à.dex文件。.dex文件加上一些资源文件通过aapt工具生成.apk文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值