现在Android开发基本都使用AndroidStudio作为IDE了,本文主要讨论如何将eclipse项目转化为AndroidStudio项目,并且用gradle的方式去打包。
Eclipse项目如何用Ant打包?
新建一个eclipse项目,然后设置android sdk环境变量和ant环境变量。
然后在命令行里面切换到项目所在目录,执行android update project -p ./。如果成功会出现这种提示。(Android Sdk环境变量配置和ANT打包环境配置不详细叙述)
在eclipse里面刷新项目,然后会看到build.xml
先clean一下整个项目,这时候右击build.xml选择run as -》 ant build ,我执行后出现以下界面。
同时在项目的bin目录下面看到打包生成的apk文件。
打开build.xml我们看到以下代码。
<property file="local.properties" />
<property file="ant.properties" />
接下来把签名打包的配置在local.properties中,配置如下:
# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
# location of the SDK. This is only used by Ant
# For customization when using a Version Control System, please read the
# header note.
sdk.dir=D:\\eclipse\\sdk
key.store=jingchen.keystore
key.alias=jingchen
key.store.password=111111
key.alias.password=111111
proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
我们可以在这里签名打包的密钥和代码混淆的配置文件。(关于签名打包的概念和混淆打包的概念这里就不做介绍。)
如果要用自己的混淆规则,则要将proguard.config=proguard-project.txt,其中proguard-project.txt是eclipse下面的混淆配置文件名称。
Ant项目如何转化成Gradle打包
gradle配置
1.下载gradle,可以在http://services.gradle.org/distributions 选择版本下载。(每个版本语法有些许不同)。
2.解压压缩包,我这里下载的是3.5.1
3.配置环境变量,在系统环境变量添加: GRADLE_HOME F:\gradle\gradle-2.11。在Path里添加%GRADLE_HOME%\bin
4. 这样就安装成功啦,可以通过以下命令来查看是否安装成功。
gradle –version 或gradle –v 来查看版本
5.
jdk和sdk配置
jdk的配置和sdk的配置这里不详细讲述了。
eclipse工程改造
把eclipse转化成androidstudio项目。
可以选用的方法是利用eclipse的export选项将项目转化成as项目,再倒入的方法。具体步骤如下:
1.在eclipse里面右击项目点击export选项。
2.点击后eclipse自动为项目生产build.gradle文件。打开android studio 点击open刚才的项目路径。这样注意的是,因为sdk的指定,因为android stuido和eclipse使用的sdk现在不是兼容的。所以建议as和eclipse的sdk分开两个目录放置。在你的项目切换过来的时候建议就使用androidstudio的sdk了。
对工程进行打包
打开cmd,进入工程根目录,输入gradlew build。
gradlew命令可以理解为对gradle的一层包装,gradlew build的作用就是编译整个项目。
发现Building Gradle project info一直在执行。怎么让Gradle使用本地的已经下载的gradle进行编译呢?
**在C:\Users\用户名.gradle\wrapper\dists\gradle-3.3-all 该目录下把下载的对应版本的压缩包放到
C:\Users\用户名.gradle\wrapper\dists\gradle-3.3-all\ace7yl0a7udokebb27mt9s3qr 这个目录下面(.gradle 是个隐藏文件夹)**
这时候再次执行grdlew build,编译成功。在bin文件夹里面可以找到打包生成的签名包和未签名包。
gradle其他命令
一些命令如 gradlew -v gradlew clean gradlew build, 这里注意是gradlew, 代表当前目录,gradlew代表 gradle wrapper,意思是gradle的一层包装,大家可以理解为在这个项目本地就封装了gradle,即gradle wrapper, 在工程下的/gradle/wrapper/gralde-wrapper.properties文件中声明了它指向的目录和版本。只要下载成功即可用grdlew wrapper的命令代替全局的gradle命令。
理解了gradle wrapper的概念,下面一些常用命令也就容易理解了。
• gradlew -v 版本号
• gradlew clean 清除9GAG/app目录下的build文件夹
• gradlew build 检查依赖并编译打包
这里注意的是 gradlew build 命令把debug、release环境的包都打出来,如果正式发布只需要打Release的包,该怎么办呢,下面介绍一个很有用的命令 assemble, 如
• gradlew assembleDebug 编译并打Debug包
• gradlew assembleRelease 编译并打Release的包(现场建议使用这个命令)
除此之外,assemble还可以和productFlavors结合使用,具体在下一篇多渠道打包进一步解释。
• gradlew installRelease Release模式打包并安装
• gradlew uninstallRelease 卸载Release模式包