集成awesome_notifications_fcm后Android编译及代码报错求助
解决Flutter中awesome_notifications_fcm的两类编译错误
一、Android重复类错误(me.carda.awesome_notifications.core.utils下工具类重复)
问题原因
添加awesome_notifications_fcm后未编写业务代码就触发编译错误,本质是awesome_notifications与awesome_notifications_fcm版本不兼容,导致两者依赖的awesome_notifications_core模块版本不一致,出现类重复定义。
解决步骤
- 统一依赖版本
打开pubspec.yaml,确保awesome_notifications和awesome_notifications_fcm使用完全匹配的版本(建议参考pub.dev上awesome_notifications_fcm页面的依赖要求),示例配置:dependencies: flutter: sdk: flutter awesome_notifications: ^0.7.4+1 awesome_notifications_fcm: ^0.7.4+1 - 清理缓存并重拉依赖
执行以下命令:flutter clean flutter pub get - 检查Android端配置
打开android/app/build.gradle,确认没有手动引入awesome_notifications_core相关依赖,避免重复引入。
二、AwesomeAssertUtils.extractValue参数过多编译错误
问题原因
官方示例代码的版本与你当前依赖的awesome_notifications版本不匹配,extractValue方法的参数签名在不同版本中发生了变更。
解决步骤
- 核对当前版本的API签名
查看你使用的awesome_notifications版本对应的官方文档,确认AwesomeAssertUtils.extractValue的正确参数列表。 - 修改示例代码适配当前版本
比如旧版本示例可能是:
若新版本将默认值改为命名参数,需修改为:AwesomeAssertUtils.extractValue(jsonData, 'targetKey', defaultValue);
若新版本移除了默认值参数,则直接保留必要参数:AwesomeAssertUtils.extractValue(jsonData, 'targetKey', defaultValue: defaultValue);AwesomeAssertUtils.extractValue(jsonData, 'targetKey');
内容的提问来源于stack exchange,提问作者user14828291
相关产品推荐
相关产品推荐

