笔记主要是记录一些本人在开发当中的学习和使用笔记。笔记内容包含一些本人觉得重要的知识点、本人易犯的错误等。
由于本人水平有限,其中出现的错误或者不合理的地方望各位读者多多包含,并指出其中不合理和错误的地方,以便我来修改错误,避免误导读者。谢谢!
2018年12月12日
本文主要讲述旧Project适配Android Studio 3.2.1的相关事项。
Android Studio升级之后,总是不完全兼容低版本的项目,这就导致我们需要把项目适配新的Android Studio。
最近我需要修改几个旧项目。可是这几个旧项目是基于Android Studio 2.3.3 开发的,而我当前使用的是Android Studio 3.2.1。
当我们的旧项目在新版本的Android Studio中编译时,编辑器会给我们报相应的错误。我们解决这些错误就可以使项目正常编译运行。
注:编译所产生的警告多半是已经废弃的旧属性,但是在新版本中还是可以正常工作。因此我们可以暂时不处理这些警告,等我们时间充足时再来处理这些警告。
修改编译插件为Android Studio对应版本。修改位置在项目根目录build.gradle文件中的dependencies属性中;
通常Android Studio升级后gradle的版本也会相应的变化,也就表明我们需要修改gradle版本为相应版本。修改位置在根目录gradle文件夹 -> wrapper文件夹 -> gradle-wrapper.properties文件 -> distributionUrl属性。
Android Studio 3.2.1 已经不支持apt插件,但是Android Studio自带了apt的替换插件,它就是annotationProcessor。此处的修改就是删除之前的apt插件引入方式,用自带的annotationProcessor替换apt。其修改分以下几步:
1)删除apt插件的引入;
2)删除module中apt的引用;
3)替换apt为annotationProcessor
当我们引入了多个lib之后,可能会由于不同lib的一些配置不一样,导致编译通不过,报flavors 错误。这时我们可以通过flavorDimensions来处理。如下图:
用Eclipse的朋友会习惯把版本号写到AndroidManifest文件中;或者导入的是Eclipse项目,那么项目中的最小版本、版本号等都是在AndroidManifest中的。
Android Studio 3.2.1是不支持把最小版本写在AndroidManifest中的,如果把最小版本写在AndroidManifest中,编译会通不过。其他的版本号、目标版本等建议按Android Studio的标准模式写到build.gradle中。
单元测试instrumentTest 已经不再支持,需要用androidTest来替换。