开发者社区> eclipse_xu> 正文

创建兼容Android Studio和eclipse的AS工程

简介: 创建兼容Android Studio和eclipse的AS工程 虽然我的博客名叫eclipse_xu,但是我已经将近一年多没有用过eclipse了,早已拜在Android Studio门下。
+关注继续查看

创建兼容Android Studio和eclipse的AS工程

虽然我的博客名叫eclipse_xu,但是我已经将近一年多没有用过eclipse了,早已拜在Android Studio门下。但是,最近的项目由于要兼容eclipse和Android Studio,让一些还未脱贫的朋友也能使用AS创建的工程,所以,找到了一种能够同时兼容ant和gradle的方式,来创建兼容的工程。


创建普通的Android Studio工程

非常简单,创建好之后,我们切换到project标签,目录结构是这样的:

这里写图片描述

但是eclipse的目录结构不是这样的,所以eclipse默认的ant就无法编译这样的工程,所以我们需要对目录进行下修改:
删除main文件夹,将java文件夹内的代码移动到src中,作为代码文件夹。
如下图所示:

这里写图片描述

但是你这样改了,gradle又不认了,所以,在这生死存亡之际,我们再取修改下build.gradle文件。
在Android标签下,增加如下所示的配置:

    sourceSets {
        main {
            java.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
            jni.srcDirs = ['jni']
            jniLibs.srcDirs = ['libs']
            manifest.srcFile 'AndroidManifest.xml'
        }
    }

相信大家都能看的懂,其实就是重新制定下对应的文件夹,例如src、res等。

这样,我们再切换到Android标签下,显示的结构其实和原来是一样的。但是这样的工程却可以作为lib库给eclipse工程直接引用。

外传:导入eclipse项目

除了使用eclipse导出gradle项目的方式来导入Android Studio。我们也可以直接打开eclipse工程,即直接open eclipse project。但是,最重要的是,导入之后,直接在项目配置中删除这个module,重新import module,再次选择我们刚刚导入的项目,这时候,AS就会提示你使用gradle来编译项目了。这样也同样完美的兼容了eclipse和Android Studio。

警告

虽然本文讲解了如何兼容Android Studio和eclipse项目的方法,但坚决反对继续使用eclipse进行Android App开发,你看看2015 Google IO 上,Android Studio已经拉开eclipse几个天文单位了,不使用工具革新生产力,我只能说%¥%#……&&(……¥……¥#*&。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Android自定义控件(八)——详解创建bitmap的方式
Android自定义控件(八)——详解创建bitmap的方式
127 0
Android OpenGL ES(六)----进入三维在代码中创建投影矩阵和旋转矩阵
Android OpenGL ES(六)----进入三维在代码中创建投影矩阵和旋转矩阵
52 0
使用Android Studio 创建flutter工程
使用Android Studio 创建flutter工程
50 0
使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。
使用 Android Studio 开发工具创建一个 Android 应用程序,显示一行文字“Hello Android”,并将应用程序的名称更改为“FirstApp”。
118 0
使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行
使用 Android Studio 开发工具创建一个 Android 应用程序,并在 Genymotion 模拟器上运行
83 0
【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | dex_file.cc 中创建 DexFile 实例对象的相关函数分析 )
【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | dex_file.cc 中创建 DexFile 实例对象的相关函数分析 )
80 0
【Android 逆向】使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )
【Android 逆向】使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )
136 0
【Android 插件化】VirtualApp 接入 ( 在 VirtualApp 工程下创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )(二)
【Android 插件化】VirtualApp 接入 ( 在 VirtualApp 工程下创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )(二)
81 0
【Android 插件化】VirtualApp 接入 ( 在 VirtualApp 工程下创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )(一)
【Android 插件化】VirtualApp 接入 ( 在 VirtualApp 工程下创建 Module | 添加依赖 | 启动 VirtualApp 插件引擎 )(一)
79 0
【错误记录】Android Studio 创建报错 ( The length of the module location exceeds the limit of 100 characters. )
【错误记录】Android Studio 创建报错 ( The length of the module location exceeds the limit of 100 characters. )
88 0
+关注
eclipse_xu
《Android群英传》作者
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Android组件化实现
立即下载
蚂蚁聚宝Android秒级编译—— Freeline
立即下载
Android开发之多进程架构
立即下载