Android Studio 使用- 7 - Eclipse项目转移到AS项目中「原创」


本文会带来什么

  1. 当团队有人用Eclipse 有人用 Android Studio时怎么共存

怎么共存?

其实 用 Eclipse 将 Eclipse 项目转成 Android Studio项目即可,不破坏目录结构,多余生成的项目 ignore 即可


eclipse->Android Studio?

当你开发一个旧的项目时,要将它迁移到AS中是很简单的,比较复杂的部分可能有jar,so,依赖工程等,以下以百度地图sdk(Eclipse版)依次进行讲解。

1. 下载百度SDK,并导入eclipse,并请确认可运行

2. 右键工程->Export->Android Generate Gradle build files,然后选择next,next,勾选项目,直到finish即可

3. 此时你在eclipse 中会发现多了一些文件,如build.gradle等,此时已经可以导入到AS中了(该工程仍然可以用eclipse打开并进行编辑)

4. 打开AS,选择Open an existing Android Studio project,选择刚才百度sdk目录导入即可。这里官网的说法是选第二个,实际应用中,要选择第四个。

5. 导入后,发现报了一个错,如图,不要紧张,这就是AS智能化的一面,点击 一下,AS会尝试自动修复 project,选择刚才百度sdk目录导入即可。这里官网的说法是选第二个,实际应用中,要选择第四个。

6. 点击后,发现果然不报错了,界面如下,点击run运行一下,然后就开始build,但是竟然报错了!!! project,选择刚才百度sdk目录导入即可。这里官网的说法是选第二个,实际应用中,要选择第四个。

7. 错误log就不贴了,能从中看到 jni ,library等什么的,没错,是 so文件没有正确导入,这时,稍微修改下build.gradle(导入so,jar都是在该文件中声明)文件内容即可,我们看下当前的build.gradle project,选择刚才百度sdk目录导入即可。这里官网的说法是选第二个,实际应用中,要选择第四个。

8. 因为看这篇文章的估计是新手,所以就不解(知)释(道)为什么这么做了,只要按照下图修改后,点击Sync Now 即可导入so

9. 现在,运行一下吧,没问题了,是不是很简单?

10. 其他情况补充

10.1 在有的工程里可能还包含lib文件夹或者其他的包含jar的文件夹,如果打包的时候需要将jar编译进去 那就和 编译libs文件夹下jar一样,加入命令:

1
compile fileTree(dir: 'xxx', include: '*.jar')

10.2 如果某些jar不需要编译进最后的apk呢?在某些插件机制下,插件中如果包含了某些和主体重复的jar会报错,这时候就不能用compile,而用provided,如下:

1
provided files('lib/android-support-v4.jar')

PS

1.eclipse export 成 AS项目后,项目根目录位置不变,只不过多了一些文件和目录

2.如果该eclipse项目是在svn中的,你会发现,eclipse export 成 AS项目后,src,res,AndroidMenifest.xml文件目录都没变

只需要把多余出来的文件和文件夹ignore即可,所以,你用AS,我用Eclipse,大家安心进行开发吧,没问题!

3.本文讲了怎么导入so文件,那依赖工程呢?依赖工程也可以通过eclipse 转化,但是个人推荐重建Module的方式,然后把代码,资源copy过去


小结

本文讲解了怎么把Eclipse项目转移到AS中,并针对导入so做了解答,导入jar或者依赖工程可以在ps部分找到答案,如果有问题可以在hi中找我一起交流