新版Android Studio运行旧项目出现新ns映射旧ns警告如何解决
你遇到的命名空间映射警告是低版本Android Gradle Plugin(AGP)与新版SDK编译环境不兼容导致的:AGP 7.0以下版本无法识别新版Android SDK内置的02版官方命名空间,会自动降级映射到01版,因此抛出该系列警告,本身不影响应用编译运行,但会产生冗余日志。
同时你的模块级build.gradle存在明显配置错误:Google官方最后一个Support支持库版本为28.0.0,不存在com.android.support:appcompat-v7:30.2这类版本,且你同时依赖了旧Support库和AndroidX库,会额外引发依赖冲突。
按优先级从高到低选择即可:
方案1:升级AGP适配新版环境(推荐)
修改项目根目录build.gradle中的AGP版本到7.0+,同时修改gradle/wrapper/gradle-wrapper.properties中的Gradle版本到对应匹配版本(如AGP 7.0.4对应Gradle 7.0.2),同步后警告会彻底消除。
升级后需要处理依赖冲突:在gradle.properties中添加以下配置开启Jetifier,自动转换旧Support库依赖为AndroidX:android.useAndroidX=true android.enableJetifier=true或直接删除所有
com.android.support开头的依赖,统一使用AndroidX系列依赖包。方案2:仅升级Build Tools版本(无需大改配置)
不需要升级AGP,仅将你模块build.gradle中的buildToolsVersion '30.0.2'修改为buildToolsVersion '30.0.3',该版本针对SDK 30修复了命名空间映射警告问题,同步后即可消除警告。方案3:临时屏蔽警告(不修改核心配置)
如果不需要修改编译配置,仅想屏蔽冗余警告,直接在项目根目录的gradle.properties中添加以下配置即可:android.suppressUnsupportedNamespaceWarning=true
内容的提问来源于stack exchange,提问作者Deniz ERGÜN

