如何修复androidx项目中不存在的android.support.v4.app包?

时间:2019-12-20 14:52:49

标签: java android

我正在开发一个使用ActionBarSherlock库项目的应用程序,而当前项目使用的是androidx依赖项。

如果出现Make Project android.support.v4.app不存在错误。 错误:找不到符号 符号:FragmentActivity类 错误:软件包mFragments不存在 等等...

我的问题是 1.如何与androidx中的先前android.support包兼容? 2.如何使用旧的android支持库正确迁移到androidx?

我的build.gradle在模块中如下所示: 1.在Module:ActionBarSherlock中的build.gradle是模块app的lib项目 应用插件:“ com.android.library”

android {
    compileSdkVersion 29


    defaultConfig {
        minSdkVersion 4
        targetSdkVersion 29
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    lintOptions {
        abortOnError false
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
}
  1. app中使用上面的ActionBarSherlock作为lib项目的build.gradle
apply plugin: 'com.android.application'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"
    defaultConfig {
        applicationId "com.app"
        minSdkVersion 15
        targetSdkVersion 29
        multiDexEnabled true
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    compile project(':ActionBarSherlock')
    configurations.compile.exclude module: 'support-v4'
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation 'com.google.android.material:material:1.0.0'
    implementation 'androidx.multidex:multidex:2.0.0'
    implementation 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
    implementation 'com.actionbarsherlock:library:4.0.0'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

1 个答案:

答案 0 :(得分:0)

  

不推荐使用ActionBarSherlock。没有更多的发展   地方。

如其official repository

中所述

所以我提醒您不要使用该库。