2.在高版本的androidstudio上,有直接导入ADT项目的选项,点击导入
3.导入之后会存在一些问题,根据公司这个项目实际情况,记录如下:
a.androidstudio自动创建的gradle文件一些基本参数修改(包括gradle版本,build tools版本,targetVersion版本),关于gradle版本,我之前在eclipse上面因为是1.7的jdk和jre版本,在studio上面因为使用了自带的jre,studio版本为2.2.3,jre版本为1.8,所以gradle版本我改为2.1.0之后才构建成功。gradle版本调低之后,gradle-wrapper.properties里面的distributionUrl值也需要修改,根据实际情况。
b.eclipse使用了butterknife第三方注解框架,eclipse上面使用apt工具生成了很多viewbinder类,导入的时候在编译的时候出现了类重复的错误,所以我直接把butterknife由之前的使用jar包引用改为了butterknife的依赖(compile),删除掉了viewbinder文件。
c.导入项目的时候,还存在对于某些 .9图的编译不通过,按照规则 9Patch图片的左边框和上边框至少有一个描点,右边框和下边框则有且只有一段描点。修改了两个 .9背景图的描边,编译通过。
d.还是编译时候的错误,因为studio存在jpg文件限制,修改后缀名的方式并不能通过编译,所以在module下的gradle文件的android标签里面添加两行规则 1. aaptOptions.cruncherEnabled = false 2. aaptOptions.useNewCruncher = false,忽略png图片格式审核。
4.解决上述问题之后,项目正常运行,其他bug待测
项目导入完成,但是运行或者打包的时候报了很多错误依然能运行或者打包成功,有待查看(Ignoring InnerClasses attribute for an anonymous inner class ):查明结果,在项目下的每个module下的gradle文件的android标签下的defaultConfig标签里面添加 multiDexEnabled true 打包没有出现类似错误。
项目导入过程中,遇到exception的时候学会了一个方法查看具体的错误(解决了jre的那个问题):app:mergeDebugResources FAILED。 在Android studio的Terminal中直接敲入一个命令 - gradlew compileDebug --stacktrace,就可以输出较详细的信息,然后根据命令行给出的提示,还可以在后面加上-info或者-debug的选项得到更详细的信息。jre那个问题就是在这个命令输入之后,看到了Unsupported major.minor version 52.0 段,查询之后通过改变gradle版本号问题解决。