从Eclipse项目导入到Android Studio项目中

在开始导入前先说一下Android Studio中的Project和Module, Studio中的Project和Eclipse中的Project概念有些不同,你可以把Studio中的Project理解成Eclipse中的Workspace,把Studio中的Module理解成Eclipse中的Project。Android Studio默认使用 Gradle 构建项目, Eclipse 默认使用Ant构建项目。建议Android Studio导入项目时,使用 Gradle 构建项目。导入一个android工程有多种方式,下面我会主介绍两种不同的方式。

第一种,通过Generate Gradle build files 导入项目。

这种方式有一个好处就是兼容 Eclipse 的文件目录结构,通过版本控制中的文件过滤,可以在一个项目组中,同时使用 Eclipse 和Android Studio。Google官方建议是通过本方法进行Android Studio导入 Eclipse 项目。

1。在Eclipse中,选择File->Export…->Generate Gradle build files。选择你的工程(这里已TestProject为例)。

最后一图中Force overriding of existing files 表示覆盖导出文件。使用 Generate Gradle build files 的方式导出项目,会在项目目录中生成一些文件。这里的覆盖文件指的就是覆盖这些可能已经生成过的文件。如果你之前有使用这种方式导出过项目,建议勾选。

android studio导入项目gradle android studio导入新项目_Android

2。刷新工程,可以看到生成了一些新的文件。

这些文件和文件夹都和 Gradle 有关系,用于构建项目。

android studio导入项目gradle android studio导入新项目_Gradle_02

3。在这里要注意一点,Eclipse生成的 Gradle 编译设置可能会和我们使用的Android Studio的不同,所以我们需要手动修改一些内容,否则可能会引起导入项目失败,或者编译失败。

如图所示,有两处位置需要修改,主要是gradle的版本问题,可参考Android Studio项目中的配置

TestProject\gradle\wrapper\gradle-wrapper.properties

(distributionUrl=https://services.gradle.org/distributions/gradle-2.8-all.zip

TestProject\build.gradle

(classpath ‘com.android.tools.build:gradle:2.0.0-alpha2’)

android studio导入项目gradle android studio导入新项目_工具_03

4。打开Android Studio,选择 Open an existing Android Studio project,选择你的项目。

android studio导入项目gradle android studio导入新项目_android_04

到这里我们已经导入成功了Android项目。

android studio导入项目gradle android studio导入新项目_Android_05

第二种,直接导入Eclipse项目

1。打开Android Studio,选择Import Project(Eclipse ADT, Gradle,etc.),选择你要导入的项目。

android studio导入项目gradle android studio导入新项目_工具_06

2。Android Studio会完整复制项目文件到一个新的目录中,你需要设置这个新目录的地址。

android studio导入项目gradle android studio导入新项目_工具_07

3。Android Studio会使用Gradle来重新架构你的项目结构,这里全部勾上,不需要做更改。

–将 Ant 的 jar 依赖关系使用 dependencies 重构。

–将 Ant 的 library 项目的依赖关系使用 dependencies 重构

–使用 Gradle 的样式构建Android Studio的 Module名称

android studio导入项目gradle android studio导入新项目_android studio_08


到这里我们已经导入成功了Android项目,可以看到项目的结构已和Eclipse中不同了。在之后我会对Gradle架构的项目再做分析。

android studio导入项目gradle android studio导入新项目_工具_09

第三种,在Android Studio主页中进行导入

File ->New-> Import Project 或者 File ->New-> Import Module ,导入的过程和前面的讲解都是差不多,就不在赘述了。不同版本的Android Studio中import位置可能也些不同,但都在File中。

android studio导入项目gradle android studio导入新项目_android_10

新建Android Studio项目

Android Studio有两种创建项目的方法,第一个是在Android Studio起始页选择,二个是在Android Studio主页选择 。

android studio导入项目gradle android studio导入新项目_Android_11

Application name :应用程序的名称。它是app在设备上显示的应用程序名称,也是在Android Studio Project 的名称。

Company Domain :公司域名。影响下面的 Package name 。

Package name :应用程序包名。

Project localtion : 项目存放的本地目录

android studio导入项目gradle android studio导入新项目_工具_12

在这里,你可以你的 Project 中 Module 的类型以及支持的最低版本。

Phone and Tablet :表示是一个手机和平板项目。

Wear :表示是一个可穿戴设备(例如手表)项目。

TV :表示是一个Android TV项目。

Android Audio :表示是一个Android Audio项目

Glass :表示 Module 是一个 Google Glass 项目。

你可以同时选择多个类型,区别就是项目会根据你选择的类型创建一个或多个 Module 。

Minimum SDK 表示的是 Module 支持的Android最低版本。根据不同的用户可以选择不同的版本。你可以点击 Help me choose 来查看当前Android版本分布情况。

android studio导入项目gradle android studio导入新项目_Android_13

这个页面是让我们选择是否创建 Activity以及创建 Activity 的类型。这里我选择不创建 Activity

android studio导入项目gradle android studio导入新项目_android_14

如果你选择自动创建 Activity,Android Studio会自动帮你生成一些代码,并且还有个页面来做一些基本设置。

Activity Name :自动创建的 Activity 的类名。

Layout Name :自动创建的 Activity 的布局文件名称。

Title :自动创建的 Activity 的名称。

Menu Resource Name :自动创建的 Activity 的 Menu 文件名称。

Use a Fragment :在Activity中创建Fragment。

android studio导入项目gradle android studio导入新项目_Gradle_15

创建完成。Project创建好后,会自动生成一个叫app的Module.

android studio导入项目gradle android studio导入新项目_工具_16

我们也可以在这个Project中新添加一个Module. File->New->New Module…

这里我们可以创建手机,平板,手表等等的应用或者Library库,也可以导入原来有的Eclipse项目,其步骤和之前描述的过程大体相同,这里也就不在重复叙述了。

android studio导入项目gradle android studio导入新项目_android studio_17

到这里,Android Studio中如何导入或者创建工程就基本结束了,再重复说一下的是ProjectModule 。在Android Studio中, Project 的真实含义是工作空间, Module 为一个具体的项目。

在 Eclipse 中,我们可以同时对多个 Eclipse 的 Project 进行同时编辑,这些 Project 在同一个 workspace 之中。在Android Studio中,我们可以同时对多个Android Studio的 Module 进行同时编辑,这些 Module 在同一个 Project 之中。

Eclipse 的 Project 等同于Android Studio的 Module
Eclipse 的 workspace 等同于Android Studio的 Project

Android Studio中首先要先创建 Project 。但是你创建项目的同时, Project 自动创建了,有时候容易混淆这两种概念。