从eclipse到android studio

本文主要讲解安卓工程从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的编译速度慢。其实编译慢主要是因为默认编译是执行在线编译,离线编译简直是丝般顺滑。编译速度优化的文章参考:Gradle Build速度加快终极方法

个人感觉,切换到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的源码为java路径,修改eclipse的源码路径到java
  • 指定lib到新的位置、添加JAR依赖、NDK配置,主要是修改app的module的build.gradle文件。可以参考:android studio之build.gradle写法简介

结果如下:

其中sh是原先目录的,和工程无关的一些脚本文件,可以忽略。

.classpath和.project是eclipse的工程文件

.gitignore是原eclipse工程提交到git上的忽略配置文件

.project.properties是eclipse的工程属性文件

.proguard-project.txt是混淆相关的配置

ic_launcher-web.png也拷贝过来了,作用: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下面。

而之前写的一篇文章,使用的先从eclipse导出gradle再导入到studio的方法,感觉不好,可以淘汰了:

eclipse导入到android studio的正确姿势

时间: 2024-12-06 15:16:53

从eclipse到android studio的相关文章

Eclipse 和 Android Studio 并存

当项目转到 AS后,发现AS虽然有很多优势,比如语言编辑,自动补全提示,等等, 但是还感觉没有Eclipse好用,想要在Eclipse下编辑项目,怎么办? 可以使用 Ubuntu的 文件引用功能,  ln -s新建一个空白的Eclipse工程,分别引用以下文件:AndroidManifest.xml libs res 下面是我的引用路径: lrwxrwxrwx 1 zhanglin zhanglin 83 2月 3 15:38 AndroidManifest.xml -> /home/zhang

Android 开发IDE之(Eclipse 和 Android Studio )

前面的文章写了离线下载必要的开发资源,现在小记一下Eclipse和Android Studio的安装 (一)Eclipse 1.下载 下载传送 2.一般下载Eclipse IDE for Java Developers这个就可以了,现在Eclipse比较吃内存,还是比较卡的.下载完直接解压就行了. 3.运行,配置ADT(Android Development Tools)插件. 1)在线安装:打开Eclipse, 在菜单栏上选择 help->Install New SoftWare 出现Inst

从Eclipse到Android Studio——改变了什么

你永远都不知道未来要做什么?只能先把手头上的事情做好. ps.我是老人家,刚接触Android Studio.已经会的就略过此文吧. 好吧,我承认我是一个比较怀旧的人,Eclipse已经伴随着我走过了不知道多少年风雨岁月.突然叫我换掉,还是真有点舍不得.主要是AndroidStudio卡. 刚出Android Studio的那些天,小伙伴们问我,为什么我不用as?我的第一反应就是as?Action Script?其实,我们从上面的Logo看得出来,两者都叫Android Studio,只是前者基

将应用代码由eclipse导入Android studio的方法NDK-Build和Cmake两种方法(以android_serialport_api为例)

网上翻了几百篇博客,看了半天,要不就是写的乱七八糟看不懂,要不就是隐藏了一些细节,要不就是实现不了,最后还是在Android官网上看明白了,而且说得有条有理,以后遇到不懂的一定要先翻官网. 参考资料:https://developer.android.com/studio/projects/add-native-code.html?utm_source=android-studio#link-gradle 1. 导入eclipse到Android studio 1. 导入工程: 点击如下所示:

Android开发由eclipse转Android Studio中一些常见出错问题解决方法

1.给一个Activity添加了一个Dialog主题,结果出现了下面的问题,在eclipse却没有出错 <activity android:name=".DialogActivity" android:label="@string/title_activity_dialog" android:theme="@android:style/Theme.Dialog" > </activity> 出错信息: java.lang.

Ubuntu中给eclipse和android studio添加桌面快捷图标

Ubuntu 12.04 创建应用程序启动项(可在Unity LaucherPad显示) http://www.cnblogs.com/bluestorm/archive/2012/10/12/2721025.html Android Studio.desktop: [Desktop Entry]Name=Android StudioName[zh_CN]=Android StudioComment=Android StudioExec=/home/cmm/android-studio/bin/

eclipse 和 android studio 编译时报 Unsupported major.minor version 52.0错解决办法

version 52.0 是java8的环境.当gradle tools 升级到2.2.1时候,可能编译时候会报该错误. 很多网友说更改java version,但是很多时候无效.下面是我遇到时候的解决办法: 解决思路如下: 1.Android studio 中: 出现该问题的情况,大多数是在升级完 gradle tools 2.2.1,把android studio升级到最新2.2版本时候遇到的. 原因是,没有同步更新Android SDK Build-tools.把SDK的build-too

用 天天模拟器 + Eclipse或Android Studio调试app

Android开发人员都知道,原生的模拟器启动比较慢,操作起来也不流畅,当然很多人都会选择直接使用android手机来开发,但是有时候需要在投影仪上演示程序的时候手机不太好实现.所以很多人选择使用genymotion,但是genymotion配置又过于繁琐, 所以给大家推荐一款基于genymotion的模拟器-天天模拟器. 旧版本的天天模拟器可以直接用于调试,但是由于新版本的天大模拟器端口号被修改为6555,要想用天天连接IDE开发,需要使用ADB命令进行连接. 如没配置SDK环境变量, 进入c

入门Mac快捷键详细分类整理,包括Eclipse和Android Studio中一些常用的快捷键

[通用] control(^) shift(?)   ?? option/alt (?) command(?) fn 副功能键 [效率] 1.编辑 control + space 切换输入法(改键:alt(?)+space可见  control+alt(?)+space快速切换) control+ command + space 打开系统表情 shift+control+space 手写输入(改键:alt(?)+H ) command+←/→(↑/↓) Home/End Fn+↑/↓ pageU