Android Studio新建项目时,appcompat的app包不能识别问题解决.
版本:androidx.appcompat:appcompat:1.2.0

AppCompatActivity类无法找到

1.问题出现环境


文章目录

  • AppCompatActivity类无法找到
  • 1.问题出现环境
  • 1.1.兼容包版本
  • 1.2具体现象
  • 1.3问题思考
  • 1.3.1问题根源
  • 1.3.2相关知识点
  • 1.3.2.1androidx升级
  • 1.3.2.2关于kotlin项目依赖库的添加
  • 2.解决方法
  • 3.打赏鼓励
  • 3.1微信打赏
  • 3.2支付宝打赏


1.1.兼容包版本

implementation ‘androidx.appcompat:appcompat:1.2.0’

1.2具体现象

android AppCompatActivity 没有oncreate方法 appcompatactivity找不到_依赖库

1.3问题思考

1.3.1问题根源

(1)问题的根源还是出在androidx依赖库的添加上面

  • app模块引用了common模块,在这两个模块中都添加了对appcompat的引用,其实只需要在common模块中添加即可.
  • app模块中相关版本应该与common中的相关版本保持一致,不一致的情况下会出现引用混乱的问题。
  • app的配置
compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
  • common模块的配置
compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.gdc.kotlinproject"
        minSdkVersion 14
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

保持一致能解决什么问题,就是在依赖库里面,不会出现引用两个SDK的情况。

  • appcompat库与core库有紧密关联,都要引入才可以。
1.3.2相关知识点
1.3.2.1androidx升级

(1)在gradle.properties中的相关属性配置

  • android.useAndroidX=true
    表示启用 androidx
  • android.enableJetifier=true
    表示将依赖包也迁移到androidx 。如果取值为false,表示不迁移依赖包到androidx,
    但在使用依赖包中的内容时可能会出现问题,如果项目中没有使用任何三方依赖,可以设置为false。
  • 使用android.enableJetifier=true
    表示将项目中使用的第三方库也迁移到androidx,迁移后还需要 Flie -> Invalidate Caches /Restart 一下。
1.3.2.2关于kotlin项目依赖库的添加

(1)kotlin的项目需要添加用kotlin语言编写的三方依赖库(个人理解,正确与否有待判断)

2.解决方法

(1)在gradle.properties文件配置appcompat与core的版本号

appcompat_version=1.3.0
core_version = 1.5.0

(2)在app或者其他依赖module中引用该版本号

//1.兼容包
    implementation "androidx.appcompat:appcompat:$appcompat_version"
    /**
     * 2.针对最新的平台功能和 API 调整应用,同时还支持旧设备。
     */
    implementation "androidx.core:core-ktx:$core_version"