最近随视频教程学习Android,原本都是用Adt写Android程序,中途教程换成了Android Studio,于是我自己下了android studio 2.2.2安装好,并下载好sdk,也跟着更换开发环境。

但教程并未讲解如何将旧有的Eclipse项目导入到Android Studio(以下简称as)中。

自己花了一整天的时间,在网上找相关文章,发现都不能完全解决问题,可能是因为新版本的as相关文章较少吧。所以在费了好一番周折自己一步步试着导入,初步搞定后,记录一下导入时遇见的问题及解决方法。

as 启动界面上有 Android Studio - Import project(Eclipse ADT, Gradle, etc.) 选项,就是用来导入Eclipse项目的,这是全新的Android Gradle Project导入方式。

但不能直接导入Eclipse编写的项目,这样导入完成后会导致报错

Could not find method android() for arguments [build_9xx8trk5589b51rsvzzdwphd5$_run_closure2@3c62b433] on root project 'xxxxxx' of type org.gradle.api.Project.

查了好久,也未找到解决方法,甚至提到这个错误的文章都很少。

于是改用第二种方式,兼容Eclipse的导入方式。

  1. 在eclipse中Export  选择Android  - Generate - Gradle build files ,再选择要导出的项目,最后点击finish就完成。注意:事先要把Eclipse项目拷一份副本保存好,否则这么导出不能指定目标路径,直接在原项目中生成了build.gradle文件,我不清楚会不会有什么后患。
  2. 打开as,在启动界面上选择Import project(Eclipse ADT, Gradle, etc.) ,再选择Eclipse项目中生成的build.gradle文件,导入。
  3. 导入完成后,因原来项目的目标Android平台比较低,只是Android-18,我的as的sdk中并没有下载android-18,提示让我下载,我在项目止右键 - Open Module Settings,选择我的module(就是导入的project,project在Eclipse中是项目,在as中是工作空间)将右侧区域 Properties下的Compile Sdk Version和Build Vools Version  改成我已下载的版本,我这里是Api 21:Android 5.0和21.1.2。
  4. As中运行按钮是灰的,要点击菜单Run - Edit Configration 选择Android App 下的自己的项目名,在右侧区域分别选择好module、Deploy、Launch,这几项一看就明白,不再赘述。
  5. 此时运行按钮变绿,点击运行,报错:Some file crunching failed ,这是因为有些.9图不标准导致。

    修改主工程文件夹下的build.gradle文件,在android {}中加入以下两行

    android {
    
        aaptOptions.cruncherEnabled = false
    aaptOptions.useNewCruncher = false ...... }
  6. 又报Crunching Cruncher xxxx.9.png failed 错误,索性把报错的这几张.9图全部替换为普通png图片,将报错的.9图全部删除
  7. 最后:Build - Clean Project,错误信息消失。Run 试试,app在模拟器上安装成功并运行。至此,项目导入成功,并可以在as中跑起来了。

最新文章

  1. 使用shell脚本实现ping对应IP所对应的人名
  2. js DIV延时几秒后消失或显示代码
  3. NameError: name 'pip' is not defined
  4. IntelliJ IDEA修改Output输出缓存区大小【应对:too much output to process】
  5. LeetCode22 Generate Parentheses
  6. JAXB - Calling marshal
  7. Codeforces Round #215 (Div. 1)
  8. Spark系列(一)Spark1.0.0源码编译及安装
  9. lsof-列出当前系统打开文件
  10. android - gradle编译错误 exit value 1,2,3总结
  11. 利用Unity3D与Oculus实现机器情绪安抚师的一种方案
  12. 在source中查看代码
  13. 网络协议 2 - IP 是怎么来,又是怎么没的?
  14. 国外线下技术俱乐部建设(1) - Belgrade Python技术俱乐部2019-01-25活动感悟
  15. Linux 中磁盘阵列RAID10损坏以及修复
  16. mssql sqlserver 表增加列后,视图不会自动更新相关列的两种解决方法分享
  17. java判断通常的逻辑
  18. CoderForce 140C-New Year Snowmen(贪心)
  19. composer随笔
  20. SharePoint 2013 本地创建解决方案

热门文章

  1. Linux笔记之——Linux关机命令详解(转)
  2. 【记录】vmware fusion 7 windows 10 unidentified network
  3. 小菜学习Winform(七)系统托盘
  4. C# 将PDF文件转换为word格式
  5. android view 中各函数的执行顺数
  6. js面试题之数组去重对比
  7. HTML label标签的一点理解
  8. JsTree实现简单的CRUD
  9. Myeclipse 的hadoop环境搭建
  10. php设置手机访问浏览器版apache配置