Android Studio升级到3.2.1

一、说明

  笔记主要是记录一些本人在开发当中的学习和使用笔记。笔记内容包含一些本人觉得重要的知识点、本人易犯的错误等。
  由于本人水平有限,其中出现的错误或者不合理的地方望各位读者多多包含,并指出其中不合理和错误的地方,以便我来修改错误,避免误导读者。谢谢!

二、笔记时间

  2018年12月12日

三、简述

  本文主要讲述旧Project适配Android Studio 3.2.1的相关事项。

四、详情

1 Project 随 Android Studio 升级

  Android Studio升级之后,总是不完全兼容低版本的项目,这就导致我们需要把项目适配新的Android Studio。
  最近我需要修改几个旧项目。可是这几个旧项目是基于Android Studio 2.3.3 开发的,而我当前使用的是Android Studio 3.2.1。
  当我们的旧项目在新版本的Android Studio中编译时,编辑器会给我们报相应的错误。我们解决这些错误就可以使项目正常编译运行。
  注:编译所产生的警告多半是已经废弃的旧属性,但是在新版本中还是可以正常工作。因此我们可以暂时不处理这些警告,等我们时间充足时再来处理这些警告。

2 常规修改

2.1 Android Studio 插件版本修改

  修改编译插件为Android Studio对应版本。修改位置在项目根目录build.gradle文件中的dependencies属性中;


Android Studio 插件版本修改前

Android Studio 插件版本修改后

2.2 gradle 版本修改

  通常Android Studio升级后gradle的版本也会相应的变化,也就表明我们需要修改gradle版本为相应版本。修改位置在根目录gradle文件夹 -> wrapper文件夹 -> gradle-wrapper.properties文件 -> distributionUrl属性。


gradle 版本修改前

gradle 版本修改后

3 其他修改

3.1 apt插件替换

  Android Studio 3.2.1 已经不支持apt插件,但是Android Studio自带了apt的替换插件,它就是annotationProcessor。此处的修改就是删除之前的apt插件引入方式,用自带的annotationProcessor替换apt。其修改分以下几步:

1)删除apt插件的引入;


删除 apt 插件前

删除 apt 插件后

2)删除module中apt的引用;


删除module中apt引用前

删除module中apt引用后

3)替换apt为annotationProcessor


替换apt前

替换apt后

3.2 多lib导致的配置不统一

  当我们引入了多个lib之后,可能会由于不同lib的一些配置不一样,导致编译通不过,报flavors 错误。这时我们可以通过flavorDimensions来处理。如下图:


3.3 不支持在AndroidManifest中标志最小版本

  用Eclipse的朋友会习惯把版本号写到AndroidManifest文件中;或者导入的是Eclipse项目,那么项目中的最小版本、版本号等都是在AndroidManifest中的。
  Android Studio 3.2.1是不支持把最小版本写在AndroidManifest中的,如果把最小版本写在AndroidManifest中,编译会通不过。其他的版本号、目标版本等建议按Android Studio的标准模式写到build.gradle中。

3.4 instrumentTest 过时

  单元测试instrumentTest 已经不再支持,需要用androidTest来替换。


替换前

替换后

你可能感兴趣的:(Android Studio升级到3.2.1)