Android 平台
本文将介绍了如何设置 SDK 环境来部署 Cordova 应用到 Android 设备上,以及在你的开发流程中如何选择使用 Android 命令行工具。不管你是以平台为中心的工作流程还是跨平台(命令行界面)的工作流程都需要安装 Android SDK。
需求及支持
Cordova 开发 Android 需要 Android SDK,可以安装在 OS X, Linux 或 Windows 操作系统。详见 Android SDK 系统需求.
Cordova 支持 Android 4.0.x(Android API 14 开始) 及更高版本。原则是,Cordova 不再支持 市场占有率少于 5% 的 Android 版本(可参见 Goolge 看板)。Android 版本早于 Android API 10 及 3.x 版本占有率少于 5%。
安装 Java Development Kit (JDK)
安装 JDK 7 或更高版本。
Windows 系统,需设置 JAVA_HOME值为 JDK 的安装路径。如, C:\Program Files\Java\jdk1.7.0_75)
安装 Android SDK
安装 Android Stand-alone SDK Tools 或 Android Studio。 若需要开发新的 Cordova 的 Android 插件,或者使用原生工具来运行或者调试 Android 平台,那么选择 Android Studio。否则 Android Stand-alone SDK Tools 足够用了。
需要将 SDK 的tools 和 platform-tools目录放到你的 PATH中。
- Mac 或 Linux :修改
~/.bash_profile文件,添加 SDK安装信息,如下:export PATH=${PATH}:/Development/android-sdk/platform-tools:/Development/android-sdk/tools - Windows : 修改环境变量
PATH,添加 SDK安装信息,如下:;C:\Development\android-sdk\platform-tools;C:\Development\android-sdk\tools
安装 SDK 包
打开 Android SDK Manager (例如,通过终端: android) 安装如下内容:
- Android 5.1.1 (API 22) platform SDK
- Android SDK Build-tools version 19.1.0 or higher
- Android Support Repository (Extras)
细节可以参考http://developer.android.com/sdk/installing/adding-packages.html
配置模拟器
Android sdk 没有提供默认的模拟器,需要自己配置。命令行运行android,点击Tools → Manage AVDs 选择Device Definitions

点击 Create AVD ,选择修改名称,点击 OK

此时,AVD 将出现在 Android Virtual Devices 列表中:

打开模拟器,选择 AVD 并点击 Start。

使用Virtual Machine Acceleration可以加速虚拟机,获得更好的体验。先确认你的系统是否支持如下该技术:
- Intel Virtualization Technology (VT-x, vmx) → Intel VT-x 支持处理器的列表
- AMD Virtualization (AMD-V, SVM), 支持 Linux (自 2006 年5月, 所有 CPU AMD 包含 AMD-V, 除了 Sempron)
Windows 环境下,另外一个查找 Intel 处理器支持 VT-x 技术,是通过执行 Intel Processor Identification Utility ,你可以在 https://downloadcenter.intel.com/Detail_Desc.aspx?ProductID=1881&DwnldID=7838 下载该工具。或者使用 OS Independent,在 https://downloadcenter.intel.com/Detail_Desc.aspx?ProductID=1881&DwnldID=7840&lang=eng 下载该工具。
执行 Intel Processor Identification Utility,可看到如下界面:

为加速模拟器,下载至少一个 Intel x86 Atom System Image,如
Intel Hardware Accelerated Execution Manager (HAXM)
打开 Android SDK Manager,选择如下:

下载后,可以执行 Android SDK 中的 extras/intel/Hardware_Accelerated_Execution_Manager 的 Intel 安装包,安装过程,遇到问题,可以查阅 http://software.intel.com/en-us/android/articles/speeding-up-the-android-emulator-on-intel-architecture
步骤如下:
- 安装至少一个
Intel x86 Atom System Image,如Intel Hardware Accelerated Execution Manager - 运行
Intel安装包,在 Android SDK 的extras/intel/Hardware_Accelerated_Execution_Manager - 创建新的 AVD 目标设为这个 Intel image
- 当启动模拟器, 确保加载 HAX 模块时没有错误
创建项目
创建项目可以是选择 CLI 或者是 Android 特有的 shell 工具。使用 CLI 如下:
$ cordova create hello com.waylau.cordova.hello HelloWorld
$ cd hello
$ cordova platform add android
$ ccordova prepare # or "cordova build"
Unix 、Windows 环境下,使用低级别的 shell 工具:
$ /path/to/cordova-android/bin/create /path/to/new/hello com.waylau.cordova.hello HelloWorld
C:\path\to\cordova-android\bin\create.bat C:\path\to\new\hello com.waylau.cordova.hello HelloWorld
构建项目
若使用 CLI,则项目的顶级 www 目录包含的就是源文件。构建执行如下:
$ cordova build # build all platforms that were added
$ cordova build android # build debug for only Android
$ cordova build android --debug # build debug for only Android
$ cordova build android --release # build release for only Android
若使用 Android 特有的 shell 工具,则有些不同。生成项目,默认的应用源码是在 assets/www 子目录。执行build将会清空项目文件,从新构建。以下是 Mac 和 Windows 下的语法,分别用于 debug 和 release
$ /path/to/project/cordova/build --debug
C:\path\to\project\cordova\build.bat --debug
$ /path/to/project/cordova/build --release
C:\path\to\project\cordova\build.bat --release
部署应用
使用 CLI ,部署应用到模拟器或者设备
$ cordova emulate android #to deploy the app on a default android emulator
$ cordova run android --device #to deploy the app on a connected device
否则,使用备用 shell 界面:
$ /path/to/project/cordova/run --emulator
$ /path/to/project/cordova/run --device
可以使用 cordova run android --list 查看所有存在的目标, cordova run android --target=target_name 来运行特定的模拟器或者是设备(如cordova run android --target="Nexus4_emulator")
使用cordova run --help 来查看其他的构建和运行选项。
启动应用,界面如下:

执行 run 它默认就 build了项目,其他附加参数有 --debug, --release, 和 --nobuild,来控制是否需要重新构建
$ /path/to/project/cordova/run --emulator --nobuild
其他命令
生成日志:
$ /path/to/project/cordova/log
C:\path\to\project\cordova\log.bat
清除项目:
$ /path/to/project/cordova/clean
C:\path\to\project\cordova\clean.bat
在 SDK 中打开新项目
当项目中已经添加了 android 平台,则可以用 Android Studio 打开:
- 启动 Android Studio
- 选择 Import Project (Eclipse ADT, Gradle, etc)

- 选择 android 平台存储的位置 (
your/project/platforms/android)

Gradle Sync的问题,直接回答 Yes
此时,可以从 Android Studio 直接构建和运行应用了

更多细节,可以参考 Android Studio Overview 和 Building and Running from Android Studio