随着 Android 手机和平板的流行,越来越多人加入到 Android 的开发者行列。本文简单讲述在 Linux 搭建 Android App 开发环境的过程,以及尝试编写一个最简单的程序,希望给对 Android 开发有兴趣但还没了解过相关知识的同学有点帮助。
在 Linux 里开发 Android App 需要满足以下环境条件:
- 一台安装 Linux 桌面的普通计算机
- Java SDK 6
- Android SDK
- Android 手机或平板(可选)
- Eclipse IDE 3.6或更高版本(可选)
1、操作系统的准备
一般的 Linux 桌面发行版都可以,32位或者64位的没关系。下面的步骤在 Arch Linux + Gnome 3 以及 Ubuntu 11.10 测试过。
2、安装 Java SDK 6(或以上版本)
有些 Linux 发行版可能已经默认安装了 JRE(Java 运行环境),但开发 Android 程序需要的是 JDK,使用如下命令安装:
$ sudo pacman -S openjdk6(在 Arch Linux 环境)$ sudo apt-get install openjdk-6-jdk(在 Ubuntu 环境)
安装之后使用命令 $ javac -version 查看结果,如果能显示 Java 的版本则说明安装成功了。
3、下载及配置 Android SDK
Android SDK 在这里(http://developer.android.com/sdk/index.html),选择”Linux (i386)”下载(在写这篇文章时,文件名为 android-sdk_r16-linux.tgz),在自家目录新建一个名为 “programs” 文件夹(即 ~/programs),把下载回来的文件保存到这个文件夹。
展开下载回来的压缩包:tar -xzvf android-sdk_r16-linux.tgz,会得到一个名为 “android-sdk-linux” 的文件夹(即 ~/programs/android-sdk-linux),这个是 Android SDK 的文件夹(下面设置 Eclipse IDE 时会用到),进入这个文件夹,然后运行:
$ tools/android
这是一个图形界面的 Android SDK 管理器。
在这个管理器里我们可以添加开发需要的 “Platform-tools”(平台工具)以及各种 Android 版本的 “SDK Platform”(平台SDK)。一般我们需要安装 “Platform-tools” + 某个版本的 “SDK Platform”。因为我的手机是 HTC Desire S(G12,Android 2.3)为了方便调试,这里我勾选了 “Android 2.3.3 (API 10)”,你可以根据实际情况选择不同的版本,点击 “Install” 按钮开始下载,然后等待完成关闭即可。
4、下载及配置 Eclipse IDE
IDE 并不是必须的,而且过分依赖 IDE 可能也不是一件好事,不过为了让首次接触 Android App 开发的同学快速地有个感性认识,这里使用 Eclipse IDE 来编写第一个 Android 程序。
到这里下载 Eclipse IDE(http://www.eclipse.org/downloads/),选择 Linux 32-bit 标准版(Eclipse IDE for Java Developers,写这篇文章时版本是 Indigo (3.7.1),文件名是 eclipse-java-indigo-SR1-linux-gtk.tar.gz)即可,保存在 ~/programs 文件夹之内。
展开下载回来的压缩包:tar -xzvf eclipse-java-indigo-SR1-linux-gtk.tar.gz,会得到一个名为 “eclipse” 的文件夹,进入这个文件夹,然后运行:
$ ./eclipse
运行 Eclipse 它首先会询问你选择一个工作空间,我们使用默认值直接点击OK即可。
5、安装 Eclipse 插件 ADT并配置现在的 Eclipse 还不能创建 Android 类型的项目,也不能调用我们第3步配置好的 Android SDK,所以还需要安装一个叫 “ADT” 的插件。
进入 Eclipse 之后,选择菜单 “Help” -> “Install New Software”,点击 “Add”,然后在 “Name” 一栏填入 “ADT”,在 “Location” 一栏填入 “http://dl-ssl.google.com/android/eclipse/“,点击 “OK” 之后应该能看到窗口中间的列表显示 “Developer Tools”一项。
勾选它然后点击 “Next” 即开始下载安装(注:一般5分钟左右下载完毕,如果你发现下载速度非常慢,可能要想办法跨越那堵墙)。完成后重新运行 Eclipse,然后它会询问你的 Android SDK 安装在哪里,填入我们第3步得到的文件夹,即 “~/programs/android-sdk-linux”,然后点击完成。
注:图片中所示的是我计算机的目录,请忽略。
然后我们还要创建一个虚拟的 Android 设备(AVD)用于在开发程序过程中调试用。
在 Eclipse 里选择菜单 “Window” -> “AVD Manager”,点击 “New”,名称填写 “MyDev001″(或者随便你喜欢的名字),”Target” 选择 “Android 2.3.3″(或者你安装的平台SDK版本),然后点击 “Create AVD” 即创建了一个 Android 2.3.3 的虚拟设备(相当于虚拟机)。点击这个虚拟设备,然后点击 “Start” 按钮你可以看到一台虚拟 Android 手机显示出来:
6、创建第一个程序
返回 Eclipse,选择菜单 “File” -> “New” -> “Project…” 选择 “Android Project”,然后会有一个向导,在向导的各个步骤里填入如下值:
- Project name: HelloAndroid
- Build Target: Android 2.3.3(或者你安装的 Android SDK平台的版本)
- Application name: Hello, Android
- Package name: com.example.helloandroid(或者随便你喜欢的名称空间)
- Create Activity: HelloAndroid
点击完成后,Eclipse 会帮你创建一个最简单的 Android 项目,在 “Package Explorer” 里展开 “src” -> “com.example.helloandroid” -> “HelloAndroid.java”,将里面的内容更改为如下:
package com.example.helloandroid;import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;public class HelloAndroid extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText(“Hello, Android”);
setContentView(tv);
}
}
保存,然后选择菜单 “Run” -> “Android Application”,即可在虚拟设备上看到运行结果。
7、准备将程序发布到自己的手机/平板上
如果要将上一步写好的程序安装到自己的手机/平板上,还需做一点工作。
首先设置你的手机允许”安装未知源的程序”以及打开”USB 调试”,这两项设置分别位于:
- 设置(Settings) > 应用程序(Applications) > 勾选未知来源 (Unknown sources)
- 设置(Settings) > 应用程序(Applications) > 开发(Development) > 勾选 USB 调试(USB debugging)
然后使用 USB 把手机连接你的计算机,如果手机询问 “USB 用途” 时则选择 “仅充电”。
虽然在 Linux 下不需要安装手机驱动程序,不过一般情况下我们没有权限访问这个 “USB设备”,在 Android SDK 文件夹里运行 ADB工具。
$ platform-tools/adb devices
将会看到虽然已经检测到手机的存在,不过没有权限访问以及识别手机的型号。解决方法很简单,在你的计算机里使用 root 权限创建文件 “/etc/udev/rules.d/51-android.rules”,并在其中写入如下内容:
SUBSYSTEM==”usb”, ATTR{idVendor}==”0bb4″, MODE=”0666″
其中的 “0bb4” 是指 HTC 手机,如果你手机不是 HTC 的,则根据这个对照表查询得并替换之(http://developer.android.com/guide/developing/device.html)。然后为这个文件添加所有人可读权限,即运行如下命令:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
重启计算机,然后再次运行上面提到的 ADB 工具,这次应该能看到手机的型号了。
8、在自己的手机/平板上运行自己写的程序
这步非常简单,在 Eclipse 里选择菜单 “Run”,这次它会问你是在虚拟设备上运行还是在真实手机(即当前用USB连接到计算机的设备)上运行,选择第二项,你写的程序即自动安装到你的手机并且自动运行了。
最后
这里只是粗略地介绍在 Linux 里搭建 Android App 开发环境的过程,而实际上开发一个实用的程序可能还需要更多知识,有兴趣的可以到 Google 的 Android 开发网站下载几个实例和阅读相关文章学习。