您的位置:首页 > 移动开发 > Android开发

升级安卓开发环境到Android Studio和Genymotion

2014-01-02 09:30 337 查看
2014新年第一天,全面升级安卓开发环境。主要做两件事:1. 把IDE从eclipse转到Android Studio(又去掉了一个与IBM Rational的联系,多少有些感伤,可是,旧的不去新的不来啊),将以前的安卓projects移到新的IDE下 2. 使用Genymotion 替代安卓自带的emulator。

安装Genymotion

1. 下载安装Genymotion之前需要免费注册一个账号。这个账号不仅在下载时需要,在以后创建每一个虚拟设别时也都会用到

2. 下载带 VirtualBox的Genymotion安装包并且安装。 windows系统下的下载地址在这儿

详细说明请点击官方说明网站

安装Android Studio

Android Studio是建立在IntelliJ上的开发IDE。它集成了多种方便的android 工具,包括基于Gradle的build支持,代码检查工具lint和android SDK等。windows版本的下载地址在这里

下载完成后按提示进行安装。

详细说明请点击官方站点

使用Android Studio(以导入GreenDroid为例)

GreenDroid是一个用于简化android UI开发的开源库,但其中提供的许多API,高版本的Android SDK也已经支持,所以这个项目的owner现在已经不再维护它了,但看看其中的代码还是能有很多收货的。下面就以GreenDroid的导入为例简单说明Android Studio的使用

启动Android Studio后系统弹出一个quick start界面,可以选择打开现有项目或者创建/导入项目,也可以选择plugin管理。可以在这时候安装Genymotion plugin,也可以打开项目后再安装这个plugin。

下载greendroid(
git 命令:git clone http://github.com/cyrilmottier/GreenDroid.git[/code])。 
假设GreenDroid被下载到目录d:\projects\greendroid,有两种方式可以导入greendroid到Android Studio. 第一种是通过导入gradle的方式导入。这需要先在Eclipse中导入GreenDroid,然后再把它导出生成Gradle文件,然后点击import project后选择目录d:\projects\greendroid\bin\gradle。我采用这种方式导入时一直报告gradle文件版本太低导入失败的错误,所以就采用了第二种方式。这种方式的导入过程如下:

1. 点击import project后选择目录d:\projects(注意不能选择目录d:\projects\greendroid,否则会强制要求采用导入gradle方式)。系统提示import方式。选择第一种:Create project from existing sources.

2. 设置项目名称GreenDroid,project location设为d:\projects\greendroid,按wizard走下去完成导入。注意当进行到"选择project SDK"页面时,注意选择Android 3.0以下的Google API版本,原因有二。一是有项目中用到了Google Map API,所以必须选择带了map.jar的Google API作为Target,而是Android 3.0以上支持ActionBar,这会跟GreenDroid的ActionBar发生冲突,产生许多错误。

项目导入后会自动build,build 完成点击运行图标,即可启动ADT emulator并自动加载运行demo应用 GDCatalog。

设置GenyMotion plugin

在Android Studio的工具栏点击

图标,第一次运行需要输入genymotion的安装地址,在windows下,地址为:C:\Program Files\Genymobile\Genymotion 。选择OK关闭。第二次点击该图标可以对Genymotion plugin进行配置,创建虚拟设备。针对该项目,需要选择创建带有Google
API的虚拟主机(遗憾的是genymotion 2.0以上不支持Google API,详情见此链接) 。为了可以选择在GenyMotion的虚拟设备上运行应用,需要点击Run->Edit Configuration打开Run/Debug Configuration对话框,并在Target Device
section选择Show Choose Dialog。这样在运行应用时会问使用何种设备运行,然后选择genymotion.

已知问题和解决方案:

1. 如果在运行android studio之前genymotion已经创建了virtual device,那么在运行genymotion plugin时会出现android studio吊死现象,这个问题在eclipse中也存在

解决办法:在运行android studio前保证genymotion没有安装任何虚拟设备。运行studio后使用genymotion plugin添加设备(最近的genymotion已经解决该问题了)。

2. 导入gradle时报告gradle文件版本太低造成导入失败

解决办法:

修改gradle wrapper设置-找到<project root>\gradle\wrapper\gradle-wrapper.properties,把distributionUrl的gradle-1.6-bin.zip 改成gradle-1.9-all.zip

./gradle/wrapper/gradle-wrapper.properties :
#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.9-all.zip


在项目的根目录下创建文件local.properties,在文件中设置android sdk的路径(注意如果是用 "\" 做路径分割符,必须用双斜线"\\")

sdk.dir=/home/user/pathtosdk


修改build.gradle,将其中的
com.android.tools.build:gradle:0.5.+
改成
com.android.tools.build:gradle:0.7.+


小贴士:如果还遇到gradle build失败,可以在命令行下转到项目根目录下找到gradlew,用gradlew --debug看更详细的错误。

3. 导入gradle时报告"Failed to import Gradle project at '...' java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map

解决办法:

原因是由于android studio 0.3.2对Gradle 1.9不兼容。将android studio升级到0.4以上版本可以解决该问题

4. IDE异常中断后再运行,gradle project同步总是出现下面错误: Could not run build action using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.10-bin.zip'

解决办法:点击File->Invalidate Caches/Restart
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: