将eclipse项目导入AndroidStudio

2017-03-07  本文已影响0人  威宸

作为一名光荣的实习生我被安排去维护一个两年前的项目。这份工作对我来说真是太好了,既能学些东西,也有时间做些自己的东西。

首先我是按照网上的正确导入法导入项目(具体可以搜下,网上资源很多),嗯,可能是项目时间太长了。。。。(这是借口)反正我是没有搞定。这时候只能去请教前辈了。

然后前辈就交给了我这个方法,在这里记录下过程和期间遇到的坑:

过程

导入Module.png 为app添加相应依赖.png

其中我们的项目中用到了android-async-http,而这个网络框架已经停止更新,所以要手动添加useLibrary 'org.apache.http.legacy'。因为录音功能用到了jni所以要添加sourceSets.main.jniLibs.srcDirs=['libs']。当然还有其他配置这就要看具体项目了。

app的build.gradle部分配置.png 删除res中的文件只留一个layout测试.png 运行项目检测资源文件是否有问题.png

这个方法的好处在于每一步都可以运行MainActivity检测下转过来的项目是否有问题。

其实这次记录我主要想要记录的是转化过程中我踩到的坑:

  1. 资源文件里面是很坑的,尤其是eclipse没有AS检测的那么严格。
    比如说:刚开始运行资源文件那里,总是报图片错误。经过2个多小时的检测,发现问题是"有的图片的命名是XXX..png",这在eclipse中运行正确,但在AS中就会被检测出来。有没有看到这是坑人啊!!!
    当然这可能是人为因素,看下一个问题:因为项目中用到了XXX.9.png图片,而在AS中XXX.9.png文件必须4个点都描了,否则就会报错。好吧,其实我两个多小时大部分都花费在在一百多张图片中查找错误的XXX.9.png。。。
  2. 因为是两年前的项目,Android中有些方法已经过时了,所以这时候就要你将之改正过来了。
  3. 权限问题,在Android6.0后危险权限都要写成动态权限。当然还有些框架也过时了,这时候就看你们是继续用这框架还是重构代码(其实我想重构会更好吧。。。)
  4. 最后在集合AndroidMainfast.xml中,总是会遇到各种奇葩问题,例如:
    Error:Execution failed for task ':app:processDebugManifest'
    这个问题的原因是我没有加</application>。。。。
最后让我感谢下前辈的悉心教授
上一篇 下一篇

猜你喜欢

热点阅读