最新消息:欢迎访问Android开发中文站!商务联系微信:loading_in

从eclipse到android studio

新手入门 AndroidChina 3012浏览 0评论

本文主要讲解安卓工程从eclipse导出到Android studio,下面简称studio,并且兼容两种环境。

android studio是谷歌官方推的安卓开发IDE,和eclipse相比,有很多优点,比如:

  • 日志更人性,有各种标记,URL可以直接点击,可以直接选中复制。eclipse的复制则比较麻烦,偶尔会乱滚动,bug较多
  • studio可以使用网络路径依赖支持的JAR,结构更清晰。eclipse会遇到这样的问题:“引用的两个库都有自己的support-v4.jar,需要统一版本去重”
  • 很多的开源工程都使用studio
  • studio打多渠道包要更加方便
  • studio的联想功能更强大,如“ic_loading_selector.xml”,输load就可以联想,码代码丝般顺滑
  • studio即时同步文件的变化,省去eclipse刷新再clean的步骤
  • studio的工具更多,调试更方便
  • studio集成了版本控制工具,提交更方便
  • stdudio通过project管理多个module,使项目更加模块化

当然studio也有缺点:

  • 前期编辑native C代码没有eclipse方便
  • 相对eclipse工程稍重
  • 老项目比较成熟,移动到gradle为项目增加风险。增加学习成本
  • 一些依赖文件需要翻墙。
  • 不同程序员写的工程gradle版本不一样,在导入他人工程时可能要加载gradle支持文件,而这个支持文件较大,时间慢,UI只有一个loading状态,下载需要翻墙,导致失败。(这个文件可以直接用迅雷下载然后放入指定目录。在windows下,目录位置为“C:\Users\Administrator\.gradle\wrapper\dists”,在linux下对应“/home/用户名”)如下图:

个人感觉,切换到studio还是好处更多,也是大势所趋。

首先是单module的eclipse工程导出到studio。eclipse工程目录结构如下:

从eclipse导出到studio有两种方式:

  • 使用eclipse导出gradle文件,再从studio导入
  • 直接从studio导入

先说第一种,先从eclipse导出gradle文件,再导入到studio,目录如下:

多了studio相关的文件。在导入过程中,会提示如此导入会导致工程结构不是studio风格的,studio会建议以studio风格的方式导入,不推荐,后续可能遇到一些问题。

现在,两种IDE都可以打开此工程了。

下面是第二种,直接把eclipse工程导入到studio后的结果:

在外层有一套project对应的配置文件,而eclipse的唯一的module,名称变为了app,module内按照studio的风格排布,也有自己的gradle文件了。

现在兼容eclipse,需要做一下工作:

  • 把lib拷贝到src/main目录下,来和eclipse保持一致
  • 拷贝原eclipse中的工程配置文件到src/main目录下,来和eclipse保持一致
  • 最后修改studio的工程参数,指定lib到新的位置
  • studio的源码为java路径,修改eclipse的源码路径到java
结果如下:
其中sh是原先目录的,和工程无关的一些脚本文件,可以忽略。
.classpath和.project是eclipse的工程文件
.gitignore是原eclipse工程提交到git上的忽略配置文件
.project.properties是eclipse的工程属性文件
.proguard-project.txt是混淆相关的配置
ic_launcher-web.png也拷贝过来了,作用如下:
github上很多工程都是使用类似的配置方式。
关于多module的eclipse工程导入到studio,本人只研究了谷歌推荐的直接导入法,即不在eclipse生成gradle的方法。
举例:
图中的工程为eclipse的project,包含一个主module,一个lib module。
在studio选择import文件夹的时候,切勿选择sample-master这个目录,本人尝试过一次,结果新工程比较混乱,且无法添加网络依赖的support jar。
正确方法应该选择sample文件夹。
如果eclipse依赖正常,studio在导入时检测到两个module的关系,会自动在新的project中创建sample以及sample-lib的module文件夹。
当然后续如果要支持eclipse,还需要前面写到的操作。
最后,在已经配置OK的多module的studio工程中追加eclipse的module,直接导入即可,然后还是执行前面说的操作,把eclipse文件拷贝到src/main下面。

转载请注明:Android开发中文站 » 从eclipse到android studio

您必须 登录 才能发表评论!