资讯专栏INFORMATION COLUMN

项目迁移-从Eclipse到Android Studio

xuweijian / 290人阅读

摘要:最近做的比较多的事情就是把公司的项目转入中。在中新建空项目。因此我的做法是,在中新建项目,并从项目文件夹中将文件逐步拷贝过来。当然,首先应先检查依赖包是否可从线上各种库中取得,这种幸福的方式不应错过,直接以语句形式添加到的中即可。

最近做的比较多的事情就是把公司的eclipse项目转入Android Studio中。很多问题的解决其实凭直觉瞎捣鼓即可,但是总还是能形成一些操作习惯和步骤,记录下来。

1、在AS中新建空项目。具体做法看个人喜好,但我比较偷懒,喜欢一开始就有完整的结构,所以在新建选项中选择自带Empty Activity,因此AndroidManifest.xml也会被一并创建。

2、文件拷贝。尽管Android Studio中已有工具号称协助从Eclipse中Import工程并尝试自动转换为AS项目,但实践证明它并没有足够智能地处理冲突,并且挺容易把原本清晰的文件结构和配置弄的混乱。因此我的做法是,在Android Studio中新建项目B,并从Eclipse项目A文件夹中将文件逐步拷贝过来。具体的,src、res、assets等目录可以手动逐个拷贝,其中res和assets两个目录在AS中应位于src/main中,这点应注意。

3、项目设置。Eclipse项目中的AndroidManifest.xml文件内容可以先全部拷贝,然后将部分内容挪至AS项目的build.gradle文件,主要是compileSdkVersion,buildToolsVersion,minSdkVersion,targetSdkVersion,versionCode,versionName这几个。

4、依赖处理。通常有jar包、aar包、library依赖等。当然,首先应先检查依赖包是否可从线上各种maven库中取得,这种幸福的方式不应错过,直接以compile语句形式添加到app的build.gradle中即可。本地文件例如jar或aar,可以直接放入本地文件夹,例如libs。

jar包的引入方式:

 compile fileTree(include: ["*.jar"], dir: "libs")

如果是本地aar文件,则需在module层的build.gradle中加入:

repositories {
    ...
    flatDir {
        dirs "libs"
    }
}

然后类似:

compile(name: "arcgis-android-v10.2.7", ext: "aar")
如果是library形式,则在module的settings里边新建模块,导入相应工程,并在自己的app的dependengcies里通过添加Library denpendency的方式将其加入。

5、处理文件重复。例如:Duplicate files copied in APK META-INF/LICENSE,在Module:app的build.grade文件中的android节点中增加packagingOptions选项,并用exclude关键字添加相应文件的路径,例如:

packagingOptions {
    exclude "META-INF/LGPL2.1"
    exclude "META-INF/LICENSE"
    exclude "META-INF/NOTICE"
    exclude "META-INF/LICENSE.txt"
    exclude "META-INF/NOTICE.txt"
}

6、不要忘了删除此前新建AS项目时的java文件,例如EmptyActivity.java之类,以及其资源和Manifest配置。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/12628.html

相关文章

  • 迁移项目Android Studio

    摘要:由于公司项目需要多包名的支持,所以把公司的项目从迁移到了以下是一些迁移经验迁移准备对代码检查比较严格,代码中如果存在一些重复和重复,尽量都使用处理掉。完成迁移在导入文件后,每个都有一个文件,在中会所有需要。 由于公司项目需要多包名APK的支持,所以把公司的项目从eclipse迁移到了Android Studio. 以下是一些迁移经验: 迁移准备 Android Studio对代...

    CodeSheep 评论0 收藏0
  • Android Studio vs Eclipse:你需要知道的那些事

    摘要:甚至很可能就正有一个这样的安卓项目包含了各种成员项目和编译成的文件,这些文件还会包含在最终生成的应用里。这些文件包含了一些很重要的内容,比如所支持的安卓版本和项目依赖的东西,以及安卓项目中其它重要的数据。那么这就是你需要知道的一些基础知识。 在这个指南里,包含了一些当你要把Eclipse项目转到Andorid Studio前需要知道的基本信息。 对WorkSapces和Sub-Pro...

    aervon 评论0 收藏0
  • Android Studio vs Eclipse:你需要知道的那些事

    摘要:甚至很可能就正有一个这样的安卓项目包含了各种成员项目和编译成的文件,这些文件还会包含在最终生成的应用里。这些文件包含了一些很重要的内容,比如所支持的安卓版本和项目依赖的东西,以及安卓项目中其它重要的数据。那么这就是你需要知道的一些基础知识。 在这个指南里,包含了一些当你要把Eclipse项目转到Andorid Studio前需要知道的基本信息。 对WorkSapces和Sub-Pro...

    xiaochao 评论0 收藏0
  • Gradle for Android 第一篇( Gradle 和 AS 开始 )

    摘要:和在中的两大重要的概念,分别是和。每个有至少一个。配置阶段在该阶段,脚本将会执行,为每个创建和配置所有的。除了,还有三个基本的命令运行所以的这意味着运行所有的在已连的设备或模拟器上。在下一篇文章中,我们将会定制自己的文件。 这一系列暂不更新,相关技术讨论,请移步微信群,谢谢,希望大家多多支持! showImg(https://segmentfault.com/img/bVtdBU); ...

    MobService 评论0 收藏0
  • 使用Android Studio搭建开发环境

    摘要:年大会首次发布了平台集成开发环境。它基于开发环境,旨在取代和开发者工具为开发者提供更好的开发工具。模拟器会自动生成应用并安装在你的模拟器或设备上,紧接着运行程序。 2013年Google I/O 大会首次发布了Android Studio IDE(Android平台集成开发环境)。它基于Intellij IDEA 开发环境,旨在取代Eclipse和ADT(Android开发者工具)为开...

    paraller 评论0 收藏0

发表评论

0条评论

xuweijian

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<