1、 eclipse导出gradle项目。
File->Export->Generate Gradle build files然后一直下一步,选择你要导出的项目。
2、 AS导入。
启动AS进入“welcome to android studio”这个界面,选择“Import Non-Andorid Studio Project”,一定是这个选项,不然导入有问题。(如果你的AS不是在这个界面,那么通过File->close project就可以进入这个界面了)然后找到步骤1中的那个项目就可以成功导入了。
3、 耐心等待。
导入的时候可能比较慢,因为要下载gradle,然后就等下载完成。如果是因为自身网络的问题那么就用vpn、代理之类的(File->Settings->Http proxy)。
4、 更改Gradle版本(非必须)。一般导出的项目都会有版本不一致的问题,那么在AS提示修复Gradle版本同意修复就可以了。
根据以上的步骤基本上算是成功迁移了项目。你的项目如果有多个依赖包,那么可能编译不过,大概提示是有多个相同的包,比如support-v4包。如果遇到这样的问题,可以进行如下操作。
1、 那么可以把support-v4.jar删掉。
2、 打开project structrue(ctrl+alt+shift+s),找刚刚那个module,选择Dependencies,点击右边的”+”号重新添加v4包即可
参考http://developer.android.com/sdk/installing/studio.html
Android Studio与Eclipse的不同点主要有
Gradle-based build support.
Built-in support for Google Cloud Platform, making it easy to integrate Google Cloud Messaging and App Engine as server-side components.
其中原生支持Google Cloud Platform貌似很有吸引力,可以很容易地把架在App Engine上的web端与Android端统一起来。
由于我做的项目是基于Eclipse做的开发,非常希望能丢弃Ant,使用Gradle来彻底基于AndroidStudio做开发,这当然也是Google推荐的方式。
为了使用AndroidStudio,需要利用ADT从Eclipse中导出Gradle build files。按照官方文档中记载的步骤,
Update your Eclipse ADT Plugin (you must have version 22.0 or higher).In Eclipse, select File > Export.In the window that appears, open Android and select Generate Gradle build files.Select the project you want to export for Android Studio and click Finish.
此时工程根目录下会生成一个build.gradle文件和一个gradle文件夹,继续执行以下步骤:
In Android Studio, close any projects currently open. You should see the Welcome to Android Studio window.Click Import Project.Locate the project you exported from Eclipse, expand it, select the build.gradle file and clickOK.In the following dialog, leave Use gradle wrapper selected and clickOK. (You do not need to specify the Gradle home.)
但是第2步之后,出现错误,弹出一个Resolve error的对话框。错位内容是:
Unknown host 'repo1.maven.org’
因为公司内部访问外网需要代理,所以这个错误应该是由于没有给AndroidStudio设置代理导致的。
关掉错误对话框,回到起始页面,选择Configure -> settings, 搜索proxy,设置好代理。
然后顺利到达第4步,进入Import Project from Gradle对话框。接下来可能会有各种情况出现,但是解决方法其实也很简单,大可不必觉得麻烦。
本质上只要保证build.gradle以及\gradle\wrapper\gradle-wrapper.properties的两个配置文件的内容与AndroidStudio的版本相兼容,并且AndroidStudio中提供了要导入的工程所需要的Android SDK。
其中build.gradle文件内容如下
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.1+'
}
}
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
android {
compileSdkVersion 19
buildToolsVersion "19.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']
}
instrumentTest.setRoot('tests')
}
}
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.8-bin.zip
第一,保证这两个配置文件中红色部分一致。AndroidStudio会自动下载Gradle包,比方说gradle-1.8-bin.zip
第二,由于最新版AndroidStudio已经不支持gradle1.6,所以如果由Eclipse生成的两个配置文件版本太旧,则手动修改为新版即可。
第三,确保AndroidStudio确实提供了如下版本的SDK,当然也可以把配置文件中的版本号修改为AndroidStudio支持的版本。
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
这样应该就可成功迁移了。