迁移AndroidX,你该搬家了
官网链接:https://developer.android.google.cn/jetpack/androidx/migrate
androidx已经出来有一段时间了,之所以现在才搬家 也是为了强迫自己放弃使用以前的v4、v7包,跟上大部队的步伐。至于为什么Google会出androidx,这里就提一嘴 因为V4、V7、V13这些都太散了,不好管理,Google会慢慢的停止维护这些包。那么迫于形势,我也开始搬家!!!
在看我絮叨之前,您可直接跳到官网进行搬家学习,下面我开始我的表演(哈塞给,啊痛了个痛)
对于Android studio 3.2以上的版本,可以直接通过Refactor--Migrate to AndroidX,快速迁移,选择之后,系统默认保存一份项目名称命名的zip文件(应该是怕搬家不习惯的,好撤退啊),当然你也可以去掉勾选(反正我不会这么干)
选择Migrate之后,还会在AS底部给出一个提示,告诉你哪些会进行androidx的变更
我们选择DO Refactor 稍作等待,对于一些复杂的项目,一般都会跳出各种不同的问题,按照错误提示进行修改即可,还有许多文件会出现包名错误的问题,这个就必须手动一个个的去删除 重新导包了。
完成之后gradle.properties文件中会多出这两个标记,如果没有的就手动加上
android.useAndroidX=true
android.enableJetifier=true
androidx与butterknife
butterknife10.0之前的各种版本是不支持androidx的,所以对应的androidx中使用butterknife要大于10,引入方式如下
implementation 'com.jakewharton:butterknife:10.1.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.1.0'
到了这里还不算完事,因为butterknife需要用到jdk1.8的相关属性,故而还必须在app build.gradle中引入下面的内容 才能正常使用
compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}
工作映射:
下表从列出了旧包与新包的替换列表 ,也可以下载CSV格式文件
android.arch.core:common
|
androidx.arch.core:core-common:2.0.0-rc01
|
android.arch.core:core
|
androidx.arch.core:core:2.0.0-rc01
|
android.arch.core:core-testing
|
androidx.arch.core:core-testing:2.0.0-rc01
|
android.arch.core:runtime
|
androidx.arch.core:core-runtime:2.0.0-rc01
|
android.arch.lifecycle:common
|
androidx.lifecycle:lifecycle-common:2.0.0-rc01
|
android.arch.lifecycle:common-java8
|
androidx.lifecycle:lifecycle-common-java8:2.0.0-rc01
|
android.arch.lifecycle:compiler
|
androidx.lifecycle:lifecycle-compiler:2.0.0-rc01
|
android.arch.lifecycle:extensions
|
androidx.lifecycle:lifecycle-extensions:2.0.0-rc01
|
android.arch.lifecycle:livedata
|
androidx.lifecycle:lifecycle-livedata:2.0.0-rc01
|
android.arch.lifecycle:livedata-core
|
androidx.lifecycle:lifecycle-livedata-core:2.0.0-rc01
|
android.arch.lifecycle:reactivestreams
|
androidx.lifecycle:lifecycle-reactivestreams:2.0.0-rc01
|
android.arch.lifecycle:runtime
|
androidx.lifecycle:lifecycle-runtime:2.0.0-rc01
|
android.arch.lifecycle:viewmodel
|
androidx.lifecycle:lifecycle-viewmodel:2.0.0-rc01
|
android.arch.paging:common
|
androidx.paging:paging-common:2.0.0-rc01
|
android.arch.paging:runtime
|
androidx.paging:paging-runtime:2.0.0-rc01
|
android.arch.paging:rxjava2
|
androidx.paging:paging-rxjava2:2.0.0-rc01
|
android.arch.persistence.room:common
|
androidx.room:room-common:2.0.0-rc01
|
android.arch.persistence.room:compiler
|
androidx.room:room-compiler:2.0.0-rc01
|
android.arch.persistence.room:guava
|
androidx.room:room-guava:2.0.0-rc01
|
android.arch.persistence.room:migration
|
androidx.room:room-migration:2.0.0-rc01
|
android.arch.persistence.room:runtime
|
androidx.room:room-runtime:2.0.0-rc01
|
android.arch.persistence.room:rxjava2
|
androidx.room:room-rxjava2:2.0.0-rc01
|
android.arch.persistence.room:testing
|
androidx.room:room-testing:2.0.0-rc01
|
android.arch.persistence:db
|
androidx.sqlite:sqlite:2.0.0-rc01
|
android.arch.persistence:db-framework
|
androidx.sqlite:sqlite-framework:2.0.0-rc01
|
com.android.support.constraint:constraint-layout
|
androidx.constraintlayout:constraintlayout:1.1.2
|
com.android.support.constraint:constraint-layout-solver
|
androidx.constraintlayout:constraintlayout-solver:1.1.2
|
com.android.support.test.espresso.idling:idling-concurrent
|
androidx.test.espresso.idling:idling-concurrent:3.1.0
|
com.android.support.test.espresso.idling:idling-net
|
androidx.test.espresso.idling:idling-net:3.1.0
|
com.android.support.test.espresso:espresso-accessibility
|
androidx.test.espresso:espresso-accessibility:3.1.0
|
com.android.support.test.espresso:espresso-contrib
|
androidx.test.espresso:espresso-contrib:3.1.0
|
com.android.support.test.espresso:espresso-core
|
androidx.test.espresso:espresso-core:3.1.0
|
com.android.support.test.espresso:espresso-idling-resource
|
androidx.test.espresso:espresso-idling-resource:3.1.0
|
com.android.support.test.espresso:espresso-intents
|
androidx.test.espresso:espresso-intents:3.1.0
|
com.android.support.test.espresso:espresso-remote
|
androidx.test.espresso:espresso-remote:3.1.0
|
com.android.support.test.espresso:espresso-web
|
androidx.test.espresso:espresso-web:3.1.0
|
com.android.support.test.janktesthelper:janktesthelper
|
androidx.test.jank:janktesthelper:1.0.1
|
com.android.support.test.services:test-services
|
androidx.test:test-services:1.1.0
|
com.android.support.test.uiautomator:uiautomator
|
androidx.test.uiautomator:uiautomator:2.2.0
|
com.android.support.test:monitor
|
androidx.test:monitor:1.1.0
|
com.android.support.test:orchestrator
|
androidx.test:orchestrator:1.1.0
|
com.android.support.test:rules
|
androidx.test:rules:1.1.0
|
com.android.support.test:runner
|
androidx.test:runner:1.1.0
|
com.android.support:animated-vector-drawable
|
androidx.vectordrawable:vectordrawable-animated:1.0.0
|
com.android.support:appcompat-v7
|
androidx.appcompat:appcompat:1.0.0
|
com.android.support:asynclayoutinflater
|
androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
|
com.android.support:car
|
androidx.car:car:1.0.0-alpha5
|
com.android.support:cardview-v7
|
androidx.cardview:cardview:1.0.0
|
com.android.support:collections
|
androidx.collection:collection:1.0.0
|
com.android.support:coordinatorlayout
|
androidx.coordinatorlayout:coordinatorlayout:1.0.0
|
com.android.support:cursoradapter
|
androidx.cursoradapter:cursoradapter:1.0.0
|
com.android.support:customtabs
|
androidx.browser:browser:1.0.0
|
com.android.support:customview
|
androidx.customview:customview:1.0.0
|
com.android.support:design
|
com.google.android.material:material:1.0.0-rc01
|
com.android.support:documentfile
|
androidx.documentfile:documentfile:1.0.0
|
com.android.support:drawerlayout
|
androidx.drawerlayout:drawerlayout:1.0.0
|
com.android.support:exifinterface
|
androidx.exifinterface:exifinterface:1.0.0
|
com.android.support:gridlayout-v7
|
androidx.gridlayout:gridlayout:1.0.0
|
com.android.support:heifwriter
|
androidx.heifwriter:heifwriter:1.0.0
|
com.android.support:interpolator
|
androidx.interpolator:interpolator:1.0.0
|
com.android.support:leanback-v17
|
androidx.leanback:leanback:1.0.0
|
com.android.support:loader
|
androidx.loader:loader:1.0.0
|
com.android.support:localbroadcastmanager
|
androidx.localbroadcastmanager:localbroadcastmanager:1.0.0
|
com.android.support:media2
|
androidx.media2:media2:1.0.0-alpha03
|
com.android.support:media2-exoplayer
|
androidx.media2:media2-exoplayer:1.0.0-alpha01
|
com.android.support:mediarouter-v7
|
androidx.mediarouter:mediarouter:1.0.0
|
com.android.support:multidex
|
androidx.multidex:multidex:2.0.0
|
com.android.support:multidex-instrumentation
|
androidx.multidex:multidex-instrumentation:2.0.0
|
com.android.support:palette-v7
|
androidx.palette:palette:1.0.0
|
com.android.support:percent
|
androidx.percentlayout:percentlayout:1.0.0
|
com.android.support:preference-leanback-v17
|
androidx.leanback:leanback-preference:1.0.0
|
com.android.support:preference-v14
|
androidx.legacy:legacy-preference-v14:1.0.0
|
com.android.support:preference-v7
|
androidx.preference:preference:1.0.0
|
com.android.support:print
|
androidx.print:print:1.0.0
|
com.android.support:recommendation
|
androidx.recommendation:recommendation:1.0.0
|
com.android.support:recyclerview-selection
|
androidx.recyclerview:recyclerview-selection:1.0.0
|
com.android.support:recyclerview-v7
|
androidx.recyclerview:recyclerview:1.0.0
|
com.android.support:slices-builders
|
androidx.slice:slice-builders:1.0.0
|
com.android.support:slices-core
|
androidx.slice:slice-core:1.0.0
|
com.android.support:slices-view
|
androidx.slice:slice-view:1.0.0
|
com.android.support:slidingpanelayout
|
androidx.slidingpanelayout:slidingpanelayout:1.0.0
|
com.android.support:support-annotations
|
androidx.annotation:annotation:1.0.0
|
com.android.support:support-compat
|
androidx.core:core:1.0.0
|
com.android.support:support-content
|
androidx.contentpager:contentpager:1.0.0
|
com.android.support:support-core-ui
|
androidx.legacy:legacy-support-core-ui:1.0.0
|
com.android.support:support-core-utils
|
androidx.legacy:legacy-support-core-utils:1.0.0
|
com.android.support:support-dynamic-animation
|
androidx.dynamicanimation:dynamicanimation:1.0.0
|
com.android.support:support-emoji
|
androidx.emoji:emoji:1.0.0
|
com.android.support:support-emoji-appcompat
|
androidx.emoji:emoji-appcompat:1.0.0
|
com.android.support:support-emoji-bundled
|
androidx.emoji:emoji-bundled:1.0.0
|
com.android.support:support-fragment
|
androidx.fragment:fragment:1.0.0
|
com.android.support:support-media-compat
|
androidx.media:media:1.0.0
|
com.android.support:support-tv-provider
|
androidx.tvprovider:tvprovider:1.0.0
|
com.android.support:support-v13
|
androidx.legacy:legacy-support-v13:1.0.0
|
com.android.support:support-v4
|
androidx.legacy:legacy-support-v4:1.0.0
|
com.android.support:support-vector-drawable
|
androidx.vectordrawable:vectordrawable:1.0.0
|
com.android.support:swiperefreshlayout
|
androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
|
com.android.support:textclassifier
|
androidx.textclassifier:textclassifier:1.0.0
|
com.android.support:transition
|
androidx.transition:transition:1.0.0
|
com.android.support:versionedparcelable
|
androidx.versionedparcelable:versionedparcelable:1.0.0
|
com.android.support:viewpager
|
androidx.viewpager:viewpager:1.0.0
|
com.android.support:wear
|
androidx.wear:wear:1.0.0
|
com.android.support:webkit
|
androidx.webkit:webkit:1.0.0
|
迁移AndroidX,你该搬家了相关推荐
- 升级Android Studio到最新版本,升级Gradle到最新,迁移Androidx之路。
随着Android手机的发展,Android系统版本的不断更新,迁移Androidx成了绕不开的步骤.如果是新项目,那 一切好说,但如果是老项目,坑死人不偿命(尤其是中途接手别人的项目的开发). 我是 ...
- 记录Android修改报名顺便迁移androidx
修改包名: 我的方法不是正经方法..不能完全修改包名.. 1.修改app的build.gradle 的applicationId ,然后sync一下 ,接着把项目用到的一些配置文件里面哪里有用到pac ...
- 【AS-AndroidX】迁移AndroidX带来的问题
---------------------------------------------------------------------------------------------------- ...
- 2020年是时候迁移AndroidX了
引言 2018开始Andorid 已经宣布不再维护support, 最终定版在28.0.0, 而现在最新AS(Android Studio )项目新建默认都是AndroidX,甚至都不支持Androi ...
- android迁移androidx、极光推送(v4.9.0)配置
一.版本配置 编译正常配置: buildToolsVersion : "27.1.1", minSdkVersion : 19, classpath ...
- mysql数据库搬家,MySQL数据库迁移上云-数据搬家不用愁
MySQL数据库迁移上云 数据搬"家"不用愁 随着数字化时代的发展,越来越多的企业开始数字化转型.云上数据库能提升对数据库的使用及管理效率,给企业带来了很大经济效益.那么如何安全有 ...
- Android开发之将AndroidX项目改为非androidX(android.v7.support)的方法
老套路上图:看看我目前AndroidX依赖的库文件 修改方法: 1.打开gradle.properties文件将文件里面的下面两个属性 android.useAndroidX=true android ...
- 电脑游戏怎么转移新电脑,换新电脑如何迁移游戏
案例分享:"朋友们,我之前在steam上下载了泰拉瑞亚,玩了很久,但由于我换了电脑,在新设备上登录steam账号时,我的游戏存档不存在了.我不想丢失掉那些宝贵的数据.电脑游戏怎么转移新电脑? ...
- Android -- AndroidX库
前言 今天在 Android Studio 上新建了个项目,引入 butterknife:10.0.0,运行后居然抛出了异常: Manifest merger failed : Attribute a ...
最新文章
- db9针232接口波特率标准_RS232和RS485与RS422接口的基础知识详细介绍
- 专题 7 设备文件编程
- 没有CLOB类型却报ORA-00932: 数据类型不一致: 应为 -, 但却获得 CLOB
- 【下班后学Android】Android开发环境搭建
- net中 css 控制 GridView 样式
- 程序员的算法课(17)-常用的图算法:深度优先(DFS)
- nodejs生成动态网页
- 微服务架构的服务与发现-Spring Cloud
- Cocos2d Box2D之简介
- eclipse SVN javaHL not available 问题解决
- javaweb面试题2
- matlab 图案 柱状图_科学网—使用matlab绘画柱状图,且使用不同的图案填充 - 时杰的博文...
- 软件工程4-软件概要设计
- NYOJ 无主之地1
- 两代 Windows 性能大比拼!Win8 完胜 Win7
- beeline执行sql语句_beeline执行sql脚本我世界开挂
- java微信摇一摇_微信摇一摇功能实现
- Word文字怎么加粗
- 通过AOP实现全局日志打印
- 二维Poisson方程五点差分格式与Python实现
热门文章
- HTTP中的GET和POST方法详解
- jq 获取url跳转页面带的参数
- 2019全国计算机专业大专生推荐,2020年最新全国大专排名一览表
- 基于微信中介看房预约小程序系统设计与实现 开题报告
- 【读点论文】Deep Residual Learning for Image Recognition 训练更深的网络
- Windows XP操作系统自动关机的实现
- 关于计算机flash的毕业论文,用flash制作科学计算器
- TCPdump 过滤条件
- 如何邀请媒体记者,保证新闻发布会媒体邀约?
- 心理应激微反应刑事侦查应用,社交行为、情绪行为、生物行为,说谎掩饰,单向表达不分析,情绪反应管理机制,惊讶,厌恶,愤怒,恐惧,悲伤,愉悦