当前位置: 首页 > news >正文

Android集成FCM(Firebace Cloud Messaging )

集成FCM官方文档

Firebace主页面

将 Firebase 添加到您的 Android 应用

1、进入Firebace页面,创建自己的项目

2、点击自己创建好的项目,在右侧选择Cloud Messaging

3、点击Android去创建 google-services.json

 

4、将下载的 google-services.json 文件移到您的模块(应用级)根目录中

5、添加相关SDK(根据自己AGP版本去添加对应的SDK版本,否则可能会编译失败) 

将该插件作为依赖项添加到您的项目级 build.gradle 文件中:

根级(项目级)Gradle 文件 (<project>/build.gradle):

plugins {// ...// Add the dependency for the Google services Gradle pluginid 'com.google.gms.google-services' version '4.4.2' apply false}

然后,在模块(应用级) build.gradle 文件中,同时添加要在您的应用中使用的 google-services 插件和任何 Firebase SDK:

模块(应用级)Gradle 文件 (<project>/<app-module>/build.gradle):

plugins {id 'com.android.application'// Add the Google services Gradle pluginid 'com.google.gms.google-services'...
}dependencies {// Import the Firebase BoMimplementation platform('com.google.firebase:firebase-bom:33.6.0')// TODO: Add the dependencies for Firebase products you want to use// When using the BoM, don't specify versions in Firebase dependenciesimplementation 'com.google.firebase:firebase-analytics'// Add the dependencies for any other desired Firebase products// https://firebase.google.com/docs/android/setup#available-librariesimplementation 'com.google.firebase:firebase-messaging:24.0.3'
}

重写FirebaseMessagingService 

public class MyFirebaseMessagingService extends FirebaseMessagingService {private static final String TAG = MyFirebaseMessagingService.class.getSimpleName();/*** 监听推送的消息* 三种情况:* 1,通知时:* 当应用处于前台的时候,推送的消息会走onMessageReceived方法,处于后台时走系统托盘。* 2,数据时:* 当应用处于前、后台的时候,会走onMessageReceived方法。* 3,通知且携带数据:* 当应用处于前台的时候,推送的消息会走onMessageReceived方法,处于后台时,通知走系统托盘,数据走Intent 的 extra 中(点击通知栏后)。*/@Overridepublic void onMessageReceived(@NonNull RemoteMessage message) {}/*** 当有新的Firebase token 时的回调* 第一次安装app 获取到的 pushtoken*/@Overridepublic void onNewToken(@NonNull String token) {//token 传递给后端//在Firebase控制台测试push的时候,需要将token配置进去Logger.i(TAG, "onNewToken =" + token);}}
<serviceandroid:name="com.xx.xx.push.fcm.MyFirebaseMessagingService"android:exported="false"><intent-filter><action android:name="com.google.firebase.MESSAGING_EVENT" /></intent-filter></service>

完成以上工作就可以正常接收到消息了

注意:系统设置中需要开启通知权限

控制台调试

进入Firebase Messaging页面,点击制作首个宣传活动

将设备上生成的token添加进去

问题

如果杀进程后接收不到FCM消息,
方法1:进入系统设置-找到自己的应用-找到电池-点进去-将受限制改成不受限制或者优化
方法2:进入系统设置-电池-后台使用限制-自定运行应用程序-找到自己的应用选上

设置后,进程被杀进后会被系统拉起

方法1设置完后,去设置查看方法2也被设置上了;反之亦然

问题相关文档​​​​​​​

stackoverflow

阿里云​​​​​​​

http://www.lryc.cn/news/488654.html

相关文章:

  • 基于 RBF 神经网络辨识的单神经元 PID 模型参考自适应控制
  • 2024年 Web3开发学习路线全指南
  • Ubuntu22.04LTS 部署前后端分离项目
  • 「Mac玩转仓颉内测版23」基础篇3 - 深入理解整数类型
  • 渗透测试导学
  • Django实现智能问答助手-基础配置
  • 亚马逊商品详情API接口解析,Json数据示例返回
  • git根据远程分支创建本地新分支
  • Android U 多任务启动分屏——SystemUI流程(更新中)
  • 使用SaaS化的Aurora应用快速搭建私人ChatGPT助手
  • .NET 9与C# 13革新:新数据类型与语法糖深度解析
  • 2.fs文件系统模块
  • Ubuntu24.04LTS设置root用户可远程登录
  • ROS2指令总结(跟随古月居教程学习)
  • IPTV智慧云桌面,后台服务器搭建笔记
  • 徒手从零搭建一套ELK日志平台
  • udp_socket
  • 肝了半年,我整理出了这篇云计算学习路线(新手必备,从入门到精通)
  • 【Golang】手搓DES加密
  • YouQu使用手册【元素定位】
  • Spark RDD sortBy算子什么情况会触发shuffle
  • 机器视觉相机重要名词
  • Django:从入门到精通
  • android viewpager2 嵌套 recyclerview 手势冲突
  • 依赖管理(go mod)
  • Apple Vision Pro开发001-开发配置
  • android 动画原理分析
  • Elasticsearch 6.8 分析器
  • 实验室资源调度系统:基于Spring Boot的创新
  • 实验三:构建园区网(静态路由)