文档

Firebase通道升级指南

更新时间:

Firebase通道升级指南

背景

Firebase Cloud Messaging API旧版(原谷歌云消息传递,Google Cloud Messaging)将于2023年6月20日弃用。需在2024年6月20日之前迁移到最新的Firebase Cloud Messaging(简称:FCM) API HTTP v1。

image

阿里云EMAS移动推送已经正式支持FCM API HTTP v1,仅需进行几步操作就能支持新版API。

操作

1.申请和下载FCM 服务账号私钥文件。

a.在 Firebase 控制台中,打开设置 > 服务账号。

image

b.点击生成新的私钥,然后点击生成密钥进行确认。

c.妥善存储包含密钥的 JSON 文件。

注:

a.上述过程也可以参考:https://firebase.google.com/docs/cloud-messaging/migrate-v1?hl=zh&authuser=0#provide-credentials-manually

b.下载的JSON文件可用文本编辑器打开,其中type对应的值应该为service_account,具有project_id键值。

c.可通过点击“管理服务账号权限”进入“IAM和管理”中对服务账号的权限进行管理。

2.上传FCM密钥到阿里云EMAS移动推送

进入EMAS移动推送控制台,进入对应的app。点击应用配置→厂商通道,点击GCM/FCM对应的“编辑信 息”,选择“新版HTTP v1”并上传从firebase下载的密钥文件,最后点击确定。

image

配置完成后,厂商通道界面会显示:“鉴权方式:新版HTTP v1”及“FCM服务账号密钥:已配置”字样。 此时即可使用FCM API HTTP v1进行推送。

3.更新Android SDK(可选)

为了更好地使用FCM API HTTP v1,我们强烈建议您升级app的SDK,最新版本3.9.0对FCM的支持进行了 全方位的升级。

说明

1.本次升级我们的服务器端程序有什么需要改动的?

本次升级为了更好地支持FCM,我们把通道名称从gcm改为了fcm,如果您接入了回执日志,需要注意event_channel将会出现新的值“fcm”。通过新版API推送的event_channel均会标记为“fcm”,但arrive、click、clean回执依赖于端侧上报,若SDK没有升级,将会继续返回gcm字样,即event_channel: gcm。

2.不升级Android SDK是否可以用FCM API HTTP v1进行推送?

可以。

3.有什么兼容性需要注意的。

a.若接入了回执日志,需要兼容event_type:sent and event_channel:fcm对应的回执可能是event_channel:gcm and (event_type:arrive or event_type:click or event_type:clean)。

b.上传密钥文件前,请检查密钥文件格式,密钥文件默认的下载文件名不是google-services.json,其内容应包含:“type”:“service_account”。

4.如果切到新版HTTP v1, 影响已经发出去的旧版HTTP吗?

新版HTTP v1上传不会失效,上传后鉴权方式切换到“新版HTTP v1”并确认后,正式修改推送API。所以点确认前检查一下各选项是否正确。

5.切到新版HTTP v1后还可以再切回旧版HTTP吗?

可以切回

6.是否需要强制升级sdk到3.9.0?

建议您升级app的SDK,最新版本3.9.0对FCM的支持进行了全方位的升级。