专栏首页老欧说安卓Android Studio 3.4升级后的运行问题解决办法

Android Studio 3.4升级后的运行问题解决办法

Android Studio 3.4推出有一段时间了,升级之后又有几个问题需要处理,说明如下:

一、把Gradle升级到AS3.4配套的5.1.1版本 1、手工下载Gradle4.6并解压,下载地址是http://downloads.gradle.org/distributions/gradle-5.1.1-all.zip。将下载的压缩包解压到本地目录,比如解压到D:\Android\gradle-5.1.1 2、打开Android Studio,依次选择菜单“File”——“Settings”——“Build, Execution, Deployment”——“Gradle”,选中“Use Local gradle distribution”,然后输入Gradle5.1.1的解压目录。配置界面如下图所示:

二、在新建的项目中导入外部模块时报错 报错信息为“错误: 程序包android.support.v7.app不存在”,错误截图如下所示:

原因是AS3.4推出了AndroidX要取代原来的support库。创建新项目的时候,如果没有勾选“Use androidx.* artifacts”,那么导入外部模块不会报错;只有勾选了“Use androidx.* artifacts”,导入外部模块才会报上面的错。勾选界面如下图所示:

而且一旦勾选了“Use androidx.* artifacts”,后续创建其它项目的时候,该选项会变成默认选中,且为灰显不可取消,只有卸载重装AS才能恢复该选项。 如果不想卸载重装,也想继续使用AndroidX的话,则要在导入外部模块之后,修改模块的build.gradle,把原来support库的路径改为对应的AndroidX库的路径。举个例子 原来导入appcompat-v7的写法是下面这样:

    implementation 'com.android.support:appcompat-v7:28.0.0'

启用AndroidX之后,导入appcompat-v7的写法要改成下面这样:

    implementation 'androidx.appcompat:appcompat:1.0.0'

详细的support依赖库的新旧对应关系见下表:

支持库的旧路径

支持库的新路径

com.android.support.constraint:constraint-layout

androidx.constraintlayout:constraintlayout:1.1.2

com.android.support.test.espresso:espresso-core

androidx.test.espresso:espresso-core:3.1.0

com.android.support.test:runner

androidx.test:runner:1.1.0

com.android.support:appcompat-v7

androidx.appcompat:appcompat:1.0.0

com.android.support:cardview-v7

androidx.cardview:cardview:1.0.0

com.android.support:design

com.google.android.material:material:1.0.0-rc01

com.android.support:multidex

androidx.multidex:multidex:2.0.0

com.android.support:palette-v7

androidx.palette:palette:1.0.0

com.android.support:recyclerview-v7

androidx.recyclerview:recyclerview:1.0.0

com.android.support:support-v4

androidx.legacy:legacy-support-v4:1.0.0

除了修改support库的路径,还要修改support控件的import导包代码,像AppCompatActivity原来的import语句是下面这样的:

import android.support.v7.app.AppCompatActivity;

启用AndroidX之后,导入AppCompatActivity的代码要改成下面这样:

import androidx.appcompat.app.AppCompatActivity;

详细的support控件的新旧对应关系见下表:

支持控件的旧包名

支持控件的旧包名

android.support.v4.app.Fragment

androidx.fragment.app.Fragment

android.support.v4.app.FragmentActivity

androidx.fragment.app.FragmentActivity

android.support.v4.app.FragmentManager

androidx.fragment.app.FragmentManager

android.support.v4.app.FragmentPagerAdapter

androidx.fragment.app.FragmentPagerAdapter

android.support.v4.view.ViewPager

androidx.viewpager.widget.ViewPager

android.support.v4.view.PagerAdapter

androidx.viewpager.widget.PagerAdapter

android.support.v4.view.PagerTabStrip

androidx.viewpager.widget.PagerTabStrip

android.support.v4.view.PagerTitleStrip

androidx.viewpager.widget.PagerTitleStrip

android.support.v7.app.AppCompatActivity

androidx.appcompat.app.AppCompatActivity

android.support.v7.widget.Toolbar

androidx.appcompat.widget.Toolbar

android.support.v7.widget.RecyclerView

androidx.recyclerview.widget.RecyclerView

android.support.v7.widget.GridLayoutManager

androidx.recyclerview.widget.GridLayoutManager

android.support.v7.widget.LinearLayoutManager

androidx.recyclerview.widget.LinearLayoutManager

android.support.v7.widget.StaggeredGridLayoutManager

androidx.recyclerview.widget.StaggeredGridLayoutManager

android.support.v7.widget.CardView

androidx.cardview.widget.CardView

android.support.v7.graphics.Palette

androidx.palette.graphics.Palette

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客:https://blog.csdn.net/aqi00复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。
登录 后参与评论
0 条评论

相关文章

  • Android Studio 3.2升级后的编译问题解决办法

    2018年9月24日,Android Studio千呼万唤终于放出了3.2正式版,博主赶紧下载了安装包升级到最新版,每次AS升级都会带来各种各样的惊喜(大坑),...

    用户4464237
  • Android Studio升级到2.3的编译问题解决办法

    2017年3月2日,谷歌发布了Android Studio 2.3,想必不少朋友已经兴冲冲把Android Studio更新到...

    用户4464237
  • 解决Android studio 2.3升级到Android studio 3.0 后apt报错问题

    原来项目在Android studio 2.3一切正常,升级3.0之后报如下错误:

    砸漏
  • 解决Android studio 2.3升级到Android studio 3.0 后apt报错问题

    今天从gaithub上下载了一个项目,一直提示apt报错,网上找了很久才找到答案,在这里给大家整理一下

    程思扬
  • 解决android studio卡顿,提升studio运行速度的方法

    点击Finder,在应用程序中找到android studio—– Contents文件夹—– bin文件夹—– studio.vmoptions文件。

    砸漏
  • Android Studio使用Kotlin时,修改代码后运行不生效的解决方法

    前段时间升级 Android Studio 3.1.3+ 版本后,决定尝试使用 Kotlin 做 APP 开发看看。结果却发现,修改 String 资源后,“运...

    砸漏
  • Android Studio Gradle问题集合

    1.开发环境:android studio,项目gradle文件添加ndk代码后配置构建出现问题 externalNativeBuild{ ndkBui...

    用户1148881
  • 开发工具总结(2)之全面总结Android Studio2.X的填坑指南

    前言:好多 Android 开发者都在说Android Studio太坑了,老是出错,导致开发进度变慢,出错了又不知道怎么办,网上去查各种解决方案五花八门,有些...

    AWeiLoveAndroid
  • Android Studio 3.5: 稳步推进 Project Marble 计划

    您是否曾希望 Android Studio 可以速度更快、性能更优、效率更高?如是的话,请立即下载最新的 Android Studio 3.5!您将会体验到前所...

    Android 开发者
  • 解决Android Studio日志太长或滚动太快问题

    安卓开发经常遇到那种日志太长或滚动得太快, 我们直接的解决办法就是进行日志输出长度增大和添加日志过滤器,个人推荐用adb logcat处理更加方便灵活。

    砸漏
  • Android Studio 遇到问题集锦

    Android Studio First Run 检测 Android SDK 及更新,由于众所周知的原因,我们会「Unable to access Andro...

    mzlogin
  • Android Studio 遇到问题集锦

    Android Studio First Run 检测 Android SDK 及更新,由于众所周知的原因,我们会「Unable to access Andro...

    零式的天空
  • Android Studio preview 不固定及常见问题的解决办法

    Android Studio提供了一个强大的“Preview”工具,可以帮助您预览您的布局文件将如何在用户的设备上呈现。XML布局可能是Android开发中最常...

    砸漏
  • 解决Android studio3.6安装后gradle Download失败(构建不成功)

    因为课程需要,昨天好多同学在安装Android studio3.6.1后,无法构建,不知道什么原因,我的电脑上使用的是之前3.4版本的,可以正常使用,所以没太关...

    砸漏
  • 良心解析 | 搭建NDK环境历程及问题记录 暨 Android Studio 2.3.3 to 3.3 填坑之路(Update坑 + AVD坑 + NDK坑)

    (前言部分有点日记性质,对整个历程做了一个概况,如果你时间紧迫,可以跳过这部分直接看正文部分,正文部分分点分部分给出问题的描述和对应的解决方法)

    凌川江雪
  • AndroidStudio自带模拟器不能上网问题解决 Mac

    最近因为疫情在家办公,而且Android手机并不在身边,用模拟器比较多,但是最近模拟器一直连不上网很是蛋疼。

    Jingbin
  • android studio更新gradle错误构建项目失败的解决方法

    对应版本,修改gradle version,和plusing version两个地方修改gradle version,和plusing version的方法有两...

    砸漏

扫码关注云+社区

领取腾讯云代金券