首页 > 解决方案 > 构建警告:将新 ns 映射到旧 ns

问题描述

因此,我正在使用 Flutter 并在运行应用程序时,在调试控制台中收到如下错误:

Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01

我做了flutter clean,但没有效果。

我在这里尝试了答案: How to change build tools version in Android Studio

但是,当我查找build.gradle文件时,我有两个文件,一个在/android,另一个在/android/app。但是这两者都没有任何配置可以改变buildToolsVersion

我做了sdkmanager --list_installed,我有两个构建工具版本:

  build-tools;29.0.2   | 29.0.2  | Android SDK Build-Tools 29.0.2 | build-tools/29.0.2  
  build-tools;30.0.2   | 30.0.2  | Android SDK Build-Tools 30.0.2 | build-tools/30.0.2  

我应该怎么做才能解决这个警告?

另外,我没有使用 Android Studio。我使用本指南在没有 Android Studio 的情况下安装 Flutter: 如何在没有 Android Studio 的情况下安装和配置 Flutter

标签: androidfluttergradlebuild.gradle

解决方案


尝试删除并重新安装 SDK 平台。删除 ~\Android\Sdk\platforms 中的文件夹并下载所需的 SDK。

编辑:上面以某种方式解决了之前的问题,但是当更新更多外部软件包时,我再次遇到了同样的问题。这一次,删除 SDK 平台不起作用。相反,我在项目的两个位置更新了 Gradle:

安卓/build.gradle

buildscript {
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:7.0.2' // Update this line
        ...
    }
}

注意:Gradle 7.0.2 是目前 Google 的 Maven 存储库中的最新稳定版本。要检查更新的版本,请访问https://maven.google.com。在com.android.tools.build > gradle下,您将找到适用于 Android 的版本。

android/gradle/wrapper/gradle-wrapper.properties

...
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip # Update this line

这次在这两个地方更新 Gradle 为我解决了这个问题。希望这可以帮助。


推荐阅读