You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter集成Agora UIKit构建Android项目时遭遇Namespace未指定错误

Flutter集成Agora UIKit构建Android项目时遭遇Namespace未指定错误

看起来你碰到的是新版Android Gradle插件(AGP)和旧版Agora UIKit库不兼容的问题——虽然你自己的App模块已经在build.gradle.kts里指定了namespace,但问题出在你依赖的agora_uikit这个第三方库本身的Android模块上,它的build.gradle文件里没配置namespace,不符合新版AGP的要求。

给你几个可行的解决办法,按优先级推荐:

方法一:升级Agora UIKit到最新版本

这是最省心的解决方案,因为官方大概率已经在新版本中修复了AGP适配的问题:

  • 打开项目根目录的pubspec.yaml文件,找到agora_uikit的依赖配置行
  • 将版本号替换为最新稳定版(比如直接写成agora_uikit: ^x.x.x,把x.x.x换成当前最新版本号)
  • 执行flutter pub get拉取新依赖,之后再尝试flutter run构建项目

方法二:手动修改缓存中的库配置文件

如果暂时无法升级,或者新版本仍存在问题,可以手动修复缓存里的库文件:

  • 找到错误日志中给出的库路径:/Users/mac/.pub-cache/hosted/pub.dev/agora_uikit-1.3.10/android/build.gradle
  • 打开这个build.gradle文件,找到android代码块,在里面添加一行namespace "io.agora.agora_uikit"(这个包名对应库的AndroidManifest.xml里的package值,一般就是这个)
  • 保存文件后,先执行flutter clean清理旧构建缓存,再运行flutter run

注意事项

手动修改缓存文件的缺点是:下次你执行flutter pub get或者重新拉取依赖时,这个修改会被覆盖。如果之后再出现相同问题,需要重复操作,或者考虑将该库fork到自己的仓库进行维护,直到官方推出适配版本。

为什么自己的App模块设置了Namespace还是报错?

新版AGP要求每个Android模块(包括所有依赖的第三方库模块)都必须单独在build.gradle中指定namespace,不再是仅主App模块配置就可以覆盖全部模块了。你使用的agora_uikit 1.3.10版本比较旧,没有适配这个新规则,所以才会触发这个构建错误。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 07:29:33