随着移动开发技术的不断进步,Android Studio逐渐成为Android开发者的首选集成开发环境(IDE)。本文旨在为那些使用Eclipse ADT的开发者提供一份迁移到Android Studio的详细指南。
在过去的几年里,Android开发者普遍使用Eclipse ADT作为应用开发环境。然而,随着Android Studio的推出,这一情况正在发生变化。Android Studio是基于IntelliJ IDEA和Gradle构建系统的,与基于Eclipse IDE和Apache Ant构建系统的ADT Bundle有着显著的不同。尽管底层组件和技术差异很大,但Android提供了工具和流程来支持从ADT到Android Studio的过渡。
要安装并运行Android Studio,需要有JDK 6或更高版本。可以通过打开命令提示符窗口并输入"javac -version"命令来检查JDK版本。如果版本低于1.6,请访问Oracle官网下载并安装合适的JDK版本。可能还需要设置系统环境变量"JAVA_HOME",其值为JDK安装目录。
Android Studio下载包中不包含Android SDK或SDK工具。可以选择从之前使用的IDE(例如ADT安装目录)复制现有的Android "sdk"文件夹到将要安装Android Studio的目录,例如C:\android。如果系统中还没有Android SDK,可以访问Android开发者网站下载独立的SDK工具。为了方便,可以让SDK工具安装器将所有内容放在C:\android\sdk文件夹下。
要下载Android Studio Beta,请访问官方下载页面。下载的压缩包是一个.zip文件,只需将其解压到文件夹中,例如C:\android。要启动Android Studio,只需转到C:\android\android-studio\bin并运行"studio64.exe"。如果一切顺利,将看到一个类似于图1的Android Studio启动窗口。
本文假设是一位经验丰富的Android应用开发者,并且一直使用Eclipse ADT作为开发环境。随着Android Studio的出现,可能希望将当前正在开发或维护的项目从ADT迁移到Android Studio。以例子为例,有一个餐厅业务应用(见图2),它探索了Android SDK提供的许多高级功能,如动画、传感器、地理位置和NFC。该应用是使用ADT开发的。
将提供一份逐步指南,介绍如何将项目迁移到Android Studio,以便在新的开发环境下继续开发。
可能听说过,使用Android Studio时,可以直接导入ADT项目。然而,根据经验,从ADT项目中导出Gradle构建文件,然后将生成的构建文件导入Android Studio是一种更可靠的方法。
在ADT Eclipse IDE中(见图3),右键单击打开的项目,以例子为例,是"Package Explorer"窗口中的"RestaurantApp"项目,并选择"导出"。
在"导出"对话框中,选择"Android",然后选择"生成Gradle构建文件"(见图4)。导出对话框将指导完成生成Android Studio构建文件的过程。在最后一步,需要勾选"强制覆盖现有文件"复选框,然后点击"完成"。
完成导出过程后,可以看到在项目根目录"RestaurantApp"下生成了一个build.gradle文件。这是将在Android Studio中导入项目时使用的文件。
正如所提到的,ADT Eclipse使用Apache Ant来处理项目构建,而Android Studio采用了一个名为Gradle的不同构建系统。在Gradle中,项目构建是由构建脚本驱动的,如build.gradle文件。构建脚本是用一种名为Groovy的动态语言编写的。可以查看build.gradle文件(代码示例1)以获得一些想法。最重要的关键是第一行,它将"android"插件应用于项目。该插件将为项目添加许多任务以满足构建要求。
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':google-play-services_lib')
}
android {
compileSdkVersion 20
buildToolsVersion "20.0.0"
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
// Move the build types to build-types/
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of the default location under src//... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
现在开始Android Studio,在启动窗口中选择"导入非Android Studio项目"(见图5)。
在下一个屏幕中,浏览到RestaurantApp项目文件夹,并选择ADT Eclipse生成的build.gradle文件(见图6),然后点击OK。
就是这样!在Android Studio中,现在有RestaurantApp项目(见图7)。可以在新的IDE下继续开发。
在熟悉Android Studio之后,可以看到它是一个强大的工具,用于开发运行在各种Android设备上的应用,包括手机、平板电脑、Android电视和Android Wear(见图8)。
因此,现在开始使用这个工具为Android开发者提供了巨大的优势。
需要注意的一点是,Android Studio仍然处于Beta阶段。一些功能仍在开发中,尚未包含在内。例如,在本文撰写时,NDK支持尚未集成到工具中,但Android承诺很快将会包含。
使用Android Studio构建原生Android应用*使用Intel(R) C++编译器 Android应用开发Intel平台学习系列:IA的开发流程和工具链