一、客户端注册与获取设备令牌
集成FCM SDK
- Android:
在`build.gradle`文件中添加依赖:
```gradle
implementation 'com.google.firebase:firebase-messaging:23.0.0'
```
并在`AndroidManifest.xml`中配置服务:
```xml
<service
android:name=".MyFirebaseMessagingService"
android:exported="false">
```
- iOS:使用Firebase Console生成Provisioning Profile,配置后台模式为"Push Notifications"。
获取设备令牌
- 应用启动时,通过`FirebaseMessaging.getInstance().getToken()`获取唯一令牌,需保存至服务器端用于后续消息发送。
二、服务器端配置与消息发送
注册应用与获取API Key
- 在Firebase Console创建新项目,添加移动应用并获取API Key。
存储设备令牌
- 服务器需维护设备令牌映射表,建议存储带时间戳的令牌,并定期清理过期项。
发送消息
- 使用HTTP请求将消息发送至FCM服务器:
```json
{
"to": "device_token",
"notification": {
"title": "标题",
"body": "内容"
},
"data": {
// 可包含自定义数据
"key1": "value1"
}
}
```
- 可通过Firebase控制台或第三方服务(如极光推送)简化操作。
三、注意事项
权限配置
- Android需在`AndroidManifest.xml`添加网络权限:
```xml
```
- iOS需在Provisioning Profile中启用"Push Notifications"。
调试与统计
- Firebase控制台提供消息发送状态、设备活跃度等统计信息,便于优化推送策略。
四、补充说明
跨平台兼容性:
FCM支持iOS、Android及网页应用,但需针对不同平台集成相应SDK。 第三方服务集成
通过以上步骤,可实现高效、精准的FCM消息推送功能。
文章评论