flutter androidx 降级

2,041 阅读1分钟

老的项目不兼容,以及涉及到多项目共用,需要降级

developer.android.com/topic/libra…

去maven仓库找到对应的support包 替换即可

maven.aliyun.com/mvn/search

gradle.properties

删除以下代码

android.useAndroidX=true
android.enableJetifier=true

gradle 替换


implementation 'com.android.support:coordinatorlayout:28.0.0'

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

implementation 'androidx.appcompat:appcompat:1.1.0' ->
implementation 'com.android.support:support-compat:28.0.0'
    
implementation 'com.google.android.material:material:1.0.0'->
implementation 'com.android.support:design:28.0.0'

androidx.annotation:annotation:1.0.0 ->
com.android.support:support-annotations:28.0.0
    
androidx.webkit:webkit:1.0.0->
com.android.support:webkit:28.0.0

def lifecycle_version = "1.1.1"
compileOnly "android.arch.lifecycle:common-java8:$lifecycle_version"
compileOnly "android.arch.lifecycle:runtime:$lifecycle_version"
androidx.test.runner.AndroidJUnitRunner ->
android.support.test.runner.AndroidJUnitRunner

androidTestImplementation 'androidx.test.ext:junit:1.1.0'->
com.android.support.test:runner:1.0.2

androidx.test:runner:1.2.0->
com.android.support.test:runner:1.0.2

androidx.test:rules:1.2.0->
com.android.support.test:rules:1.0.2

androidx.test.espresso:espresso-core:3.2.0->
com.android.support.test.espresso:espresso-core:3.0.2

代码修改

import androidx.test.rule.ActivityTestRule; ->
import android.support.test.rule.ActivityTestRule;

import androidx.annotation.NonNull;->
import android.support.annotation.NonNull;

import androidx.annotation.Nullable;->
import android.support.annotation.Nullable;

import androidx.annotation.VisibleForTesting;->
import android.support.annotation.VisibleForTesting;

import androidx.core.app.ActivityCompat;->
import android.support.v4.app.ActivityCompat;

import androidx.core.content.FileProvider;->
import android.support.v4.content.FileProvider;

import androidx.annotation.Keep;->
import android.support.annotation.Keep;

错误处理

Flutter SDK version

The current Flutter SDK version is 1.9.1+hotfix.6. Because connectivity_example depends on connectivity_macos from path which requires Flutter SDK version >=1.10.0 <2.0.0, version solving failed.