android - 构建警告:将新 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
解决方案
尝试删除并重新安装 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 为我解决了这个问题。希望这可以帮助。
推荐阅读
- c - 解析用户输入。C
- swift - Swift Initializer by Class Name 导致错误:类属于“协议”类型
- javascript - 如何从 Workbox 实际显示更新后的 index.html?
- javascript - 如何在带有单个复选框的框架中启用暗模式?
- python - Python:从日期、分数、百分比等字符串中提取数字
- javascript - 为什么 JS toFixed(2) 函数工作异常?
- rust - Rust TT muncher 具有无限递归
- c# - 将双打按降序排列
- r - 如何在R中进行多项式回归?
- http - websocket关闭握手的目的是什么?