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

Flutter应用使用Amplify Pinpoint创建活动时Opted-in endpoints为0问题

Pinpoint集成FCM推送活动Opted-in endpoints为0问题排查方案

问题原因

  • 端点订阅状态未显式配置:Pinpoint端点默认OptOut属性为ALL(即全部退订),若集成时仅上传FCM令牌未主动修改该属性,端点会被标记为未订阅,不计入Opted-in统计。
  • 通道类型或令牌配置错误:端点的ChannelType未设置为FCM对应的GCM枚举值,或Address字段填入的FCM注册令牌无效、过期、与当前项目不匹配,Pinpoint识别不到可用的推送通道,不会将其判定为有效订阅端点。
  • Pinpoint FCM通道配置异常:Pinpoint项目后台的FCM推送通道配置的服务器密钥与Firebase控制台的密钥不一致,导致Pinpoint无法验证推送通道可用性,所有关联端点都不会被计入Opted-in数量。

解决方案

  • 主动更新端点订阅状态:在Flutter端完成FCM令牌获取后,调用Pinpoint端点更新接口时显式指定订阅状态,参考代码如下(以Amplify Flutter集成为例):
await Amplify.Notifications.Push.updateEndpoint(
  optOut: OptOut.none, // 显式设置为未退订
  address: fcmToken, // 填入真实的FCM注册令牌
  channelType: ChannelType.gcm, // FCM对应通道类型为GCM
);

若直接调用AWS Pinpoint HTTP API,对应请求参数设置OptOut: 'NONE'、ChannelType: 'GCM'即可。

  • 校验端点属性:登录AWS Pinpoint控制台,进入「用户和细分」-「端点」页面,查询对应2个端点的属性:确认Opt out字段值为无,Channel为GCM,地址字段为有效FCM令牌。
  • 验证FCM通道配置:进入Pinpoint项目「设置」-「推送通知」页面,检查FCM(GCM)通道的服务器密钥,与Firebase控制台「项目设置」-「云消息传递」下的服务器密钥完全一致。
  • 测试推送有效性:先使用Pinpoint控制台的「测试消息」功能,直接填入测试设备的FCM令牌发送单播推送,确认能正常收到后,再重新创建推送活动,此时Opted-in端点数量会正常显示。

问题参考截图

问题截图

内容的提问来源于stack exchange,提问作者pencil

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 18:45:01