Android项目从Eclipse增加支持Android Studio

使用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:\androidWorkspace\MyAndroid\build.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:\androidWorkspace\MyAndroid\gradle\wrapper\gradle-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:\androidWorkspace\MyAndroid),再等待一会。

最后来张导入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

时间: 2024-07-30 13:43:10

Android项目从Eclipse增加支持Android Studio的相关文章

Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]问题解决

后来我发现在eclipse的Preferences -> Android -> Build中有一项“Skip packaging and dexing until export or launch....”,原来这个选项默认是被勾选的,这个选项的意思是“跳过packing和dexing,直到export或者 launch...”,去掉这个选项即可解决问题. Android项目在eclipse中无法打包apk文件[bin目录下没生成apk文件]问题解决

Android项目使用Eclipse进行单元测试

Android项目如果每次都整个调试的话,要加载UI,会等很长时间.所以单元测试就显得很方便了. 要进行单元测试,首先得修改下AndroidManifest.xml文件.在Instrument标签里点右侧的Add按钮.然后在弹出的窗口双击 Instrument.然后在右侧就会多出一些东西赖.先选择第二行的Target package 的Browse……,选择要测试的包.或者要测试的类所属的包.我这里选的事 com.example.scrollview 包,然后再选择第一行 Name 后的Brow

Android 项目的代码混淆,Android proguard 使用说明

简单介绍 Java代码是非常easy反编译的. 为了非常好的保护Java源码,我们往往会对编译好的class文件进行混淆处理. ProGuard是一个混淆代码的开源项目.它的主要作用就是混淆,当然它还能对字节码进行缩减体积.优化等,但那些对于我们来说都算是次要的功能. 官网地址:http://proguard.sourceforge.net/ 原理 Java 是一种跨平台的.解释型语言,Java 源码编译成中间"字节码"存储于 class 文件里.因为跨平台的须要,Java 字节码中包

之前的Android项目报错,新建Android项目报错,代码中找不到错误解决方案

打开一年前的东西,结果发现里面的android项目全部有个红叉,也找不到错误.新建一个项目也报错,首先确定自己的环境应该没问题,然后通过查看网上的资料,发现可能是debug的keystore到期啦. 通过网上资料的引导,做以下操作: 1.进入C:\Documents and Settings\Administrator\.android 删除路径下的debug.keystore及 ddms.cfg(我只删除了debug.kestore也可以.网上说两个都删除).(不同环境下的目录可能略有不同,可

将公司的主要项目从eclipse迁移到android studio for mac环境

上星期,我决定要解决这个问题.理由如下: 3个月之前,我已经投入一段时间要做好这个迁移工作,直到最后,我发现能够安装了,但是运行不了,这个过程也看不到bugly上传,在找不到原因的情况下,我放弃了. 后来,我在svn 下载代码后,在esclipse中运行时,发现这个app可以安装,但是不能运行,和之前我遇到的问题一样.后来,我了解到了是.so文件的缺失.然后联想到之前的迁移问题应该也是这个原因,所以我也开始下定决心,去解决这个问题.  接下来,我整理一下我遇到的问题,和我如何解决: 1.从svn

android studio不能创建android项目,或者不能识别android项目的解决方法

1.先点击file->close project回到android studio 欢迎界面,然后按如下图步骤添加相关的plugin就行了,然后重启. 2.如图 3. 4.

(已解决)Eclipse报错:Could not find XXX.apk. 没有Android项目命名. There is no android project named

可能是你把当前项目设置为library项目了,按以下步骤切换回普通项目: 选择 Project->Properties 在左边的列表中,选择 Android 取消钩中"Is Library" 复选框 报错提示: 解决办法:

android项目导入eclipse出错

原因: 下载工程时把该工程放在了workspace目录下.eclipse插件在创建项目的时候需要在workspace目录下创建一个同名的目录. 但发现workspace目录下已存在对应的目录时,就会报上面的处错误信息了. 解决方法: 把工程从workspace中移出来就可以了,重新导入就可以了.

Android项目在Eclipse中的目录结构

src/ 存放源代码的地方. bin/ 编译后的输出目录.这里你可以找到.apk文件和其他编译后的资源. gen/ 包含R.java文件,这个文件是由ADT自动生成的,请不要随意修改它 assets/ 你能在这里放入原始的asset 文件.例如一些文档,这里的文件会保留原来的文件名被编译到.apk文件中,并且你还能使用文件系统的URL机制来读取文件,例如使用AssetManager类来读取一个字节流. res/ 包含应用程序的资源,如drawable文件, layout文件, string值.