使用Eclipse开发Android已经有些年头了,然而Android Studio(后面简称AS)为谷歌自己推的IDE。现在AS已经出了2.0版本,其功能的确要比Eclipse要多。
AS对硬件要求较高,Eclipse使用ADT插件也是简单易用。本文不对这2个IDE的优缺点进行阐述,没有哪个一定能完全替代哪一个这么一说,选择自己喜欢的就好。
不过博主喜欢接触新事务,AS都出这么久了,也该拿出来遛遛了。对于一直使用Eclipse开发的安卓项目如何转换增加支持AS。(是增加支持AS,处理后AS和Eclipse都可以正常使用,而不是把Eclipse废掉)
下面就从一个简单的例子来一步步说明:
1、使用Eclipse创建一个Android项目,保证可以正常运行。项目结构截图如下:
2、右键项目 —> Export —> Android —> Generate Gradle build files —> Next —> Next —> Finish
这样操作后,项目下面就生成了 build.gradle 文件。
至此,我们还需要在项目下新增一个 local.properties 配置文件,指定sdk 目录,local.properties 内容如下:
sdk.dir=D\:\\Android\\android-sdk_r10-windows
或者环境变量中有设置 ANDROID_HOME 也可以。
3、此时我们使用命令来验证一下是否可以使用gradle打包了。
首先要配置GRADLE环境变量。然后在cmd中进入当前项目目录,执行命令“gradle clean”,命令行中会看到自动下载所需插件和相关包。
如果中间出现错误:
FAILURE: Build failed with an exception.
- Where:
Build file 'F:androidWorkspaceMyAndroidbuild.gradle' line: 10 - What went wrong:
A problem occurred evaluating root project 'MyAndroid'.
Failed to apply plugin [id 'android']
Gradle version 1.10 is required. Current version is 2.10. If using the gradle wrapper, try editing the distributionU
rl in F:androidWorkspaceMyAndroidgradlewrappergradle-wrapper.properties to gradle-1.10-all.zip
则检查一下build.gradle,修改 classpath 'com.android.tools.build:gradle:0.12.+' 为 classpath 'com.android.tools.build:gradle:2.0.0-alpha3' 与自己本地gradle版本对应的地址。
我这样处理后便解决了问题,大家根据自己情况修改配置后再试。直到出现 BUILD SUCCESSFUL 为止。
4、打包apk包
在项目目录下执行命令:gradle build 即可对该项目进行打包。
可以指定--debug或 --info 参数输出日志。
执行成功后,生成的apk文件在项目目录下的 build/outputs/apk 目录中。build 目录下存放了一些报告等文件。
对比一下我们一开始的项目结构,发现我们项目中增加了一些文件,其实我们是可以手工拷贝这些文件到一个新项目中的,上个截图:
其中gradlew(Linux) 和 gradlew.bat(Windows) 是为我们生成的可以直接执行的gradle命令。
如(Linux下):
./gradlew -v 查看版本号
./gradlew clean 清除项目下的build文件夹
./gradlew build 检查依赖并编译打包
注意使用build 打包会把debug、release环境的包都打出来,如果正式环境只需要打包release,请使用下面的命令:
./gradlew assembleDebug 编译并打Debug包
./gradlew assembleRelease 编译并打Release包
./gradlew installRelease Release模式编译并安装
./gradlew uninstallRelease 卸载Release安装包
至此,我们已经将一个普通安卓项目变成一个支持gradle 命令打包的项目。
上面啰嗦了这么多,只是想让大家知道怎么使用gradle 打包apk,而不是那么直接的就转移到AS中。
5、下面可以将项目导入到AS中了
在AS中选择 File —> Open ,然后选择我们项目的目录(如:F:androidWorkspaceMyAndroid),再等待一会。
最后来张导入AS后的工程截图:
6、配置签名信息,使打包后的apk自动签名
在build.gradle 中的android {……} 中添加签名配置:
android{
…………
…………
…………
//签名信息
signingConfigs{
releaseInfo {
storeFile file("shanhy(xiaoshan).key")
storePassword "xiaoshan"
keyAlias "shanhy"
keyPassword "xiaoshan"
}
}
buildTypes {
//Debug模式
debug {
}
//Release模式
release {
// 是否启用混淆
minifyEnabled false
// 混淆文件配置
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// 签名信息配置(如果上面配置了defaultConfig则可以不用指定signingConfig)
signingConfig signingConfigs.releaseInfo
}
}
执行命令 ./gradlew build 或者 ./gradlew assembleRelease 便可在build/outputs/apk 下面看到生成的已经签名的apk
注:本文中使用的 ./gradlew 为在Linux下的命令,如果在Windows下面,请使用 gradlew.bat