最近不怎么在“捣鼓”Android,更别说什么升级迁移AndroidX。原本在使用Android Studio3.1.x的时候就动了心思,不过一直没什么兴趣和时间。当某天再次看到AndroidX的关键字眼,心血来潮决定把原来写的APP迁移到AndroidX。

首先,查看当前所用的Android Studio的版本号:

查找帮助

点击About即可看到具体的版本号:

Android Studio具体版本号

这里是升级后的新版本的查找方法,历史版本的Android Studio类似。当前版本是支持辅助工具迁移到AndroidX的。查询所使用的IDE是否支持迁移AndroidX的方法如下:

是否支持迁移AndroidX工具

在菜单栏Refactor中的选项中发现“Migrate to AndroidX...”,即是可以直接使用辅助工具进行迁移操作。否则,升级Android Studio到较新版本。

接下来就开始迁移至AndroidX的进程:

点击“Migrate to AndroidX...”,会弹出确认对话框及其选项,选项很简单就两个:一个为需要进行迁移的Android项目,另一个是否需要打包原项目的选项。如图示:

是否迁移到AndroidX

这里当然是“Migrate”以及确保勾选“Backup project as Zip file”--备份原项目为Zip文件。开始迁移工作:

选择项目和备份

点击“OK”确认,迁移就开始了:

迁移AndroidX:查找目标用法 迁移到AndroidX成功

毫无疑问,上图是迁移完成后或没有需要辅助工具帮助的地方才出现的提示,这里笔者已完成迁移AndroidX。而如果没有完成或需要迁移,则会在下面的位置给予相关的提醒:

迁移AndroidX提醒

相关需要修改的内容就会罗列在 Build Output之中,包括gradle,source和layout。其实就是完整或模糊导入的package名称。这意味着,迁移到AndroidX的实质操作就是:修改当前Android项目的gradle、source和layout等文件中的package包名和class类名。到了这里,就是比较关键的位置。需要将原package包或class类,将support v4/v7/v11等等一系列和android.*中相关和androidx.*进行一一对应。这是Android目前官方网站的package包列表地址:https://developer.android.google.cn/reference/androidx/packages

包括Kotlin和Java的:

Kotlin Java

那么按 Migrate to AndroidX的提示完成操作就万事大吉OK?答案是:不一定。可能gralde存在一些非Android体系的package包和class类没有相对应的适配。再次 Build Project 后会发现没有通过,就是这个原因。这个就需要手动去查找第三方的 文档,找出对应的解决方案。

更多相关文章

  1. 把简单的老Android(安卓)App项目转移到Android(安卓)Studio
  2. Android中使用HttpClient 服务 GET,POST和上传
  3. [Android]Android中R文件的丢失问题
  4. Android(安卓)项目组件化之创建module,生成aar,引入aar
  5. Android(安卓)6.0动态获取权限开源项目
  6. unity导出到android日志
  7. Android:eclipse中导入项目无法编译,robotium 测试用例无法正确运
  8. cocos2d-2.0-x-2.0.3多平台环境搭建(android, win32)
  9. ObjectHttp功能介绍篇

随机推荐

  1. android WebView 应用内点击超链接不调用
  2. 《Android.Programming.Pushing.the.Limi
  3. Android 自定义设置文本字体间间距
  4. Android下的junit 单元测试
  5. Android 上下文菜单
  6. Android AsyncTask Download
  7. MVC架构设计与经典三层模型
  8. Android手机访问web服务器(post请求)
  9. Android之Spinner解析
  10. Android 判断是否联网 是否打开上网