使用Agora官方Flutter包运行项目时遇类型不匹配错误
解决Agora Flutter SDK(agora_rtc_engine 5.1.0)Android端类型不匹配错误
错误详情:
/.pub-cache/hosted/pub.dartlang.org/agora_rtc_engine-5.1.0/android/src/main/kotlin/io/agora/agora_rtc_engine/AgoraRtcEnginePlugin.kt: (251, 18): Type mismatch: inferred type is String? but String was expected
可行解决方案:
升级SDK到稳定版本
该问题是agora_rtc_engine 5.1.0版本的已知bug,后续版本已修复。修改pubspec.yaml中的依赖版本:dependencies: agora_rtc_engine: ^5.3.0 # 选择5.1.0以上的稳定版本执行
flutter pub get完成依赖更新后重新运行项目。本地临时修复(不升级SDK)
若暂时无法升级,可手动修改缓存中的Kotlin文件:- 找到报错文件的本地路径,定位到第251行代码
- 针对出现类型不匹配的String?变量,添加非空处理:
- 确认变量不会为null时,使用非空断言:
val targetString = nullableString!! - 不确定时,设置默认空字符串:
val targetString = nullableString ?: ""
- 确认变量不会为null时,使用非空断言:
校验Flutter与Kotlin版本兼容性
检查项目android/build.gradle中的Kotlin版本,确保与Agora SDK兼容:buildscript { ext.kotlin_version = '1.7.10' // 参考Agora官方文档推荐的版本 // 其他配置... }
内容的提问来源于stack exchange,提问作者MUHAMMAD SHAHID RAFI C P
相关产品推荐
相关产品推荐

