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

安卓基础(Firebase Cloud Messaging)

FCM Token 是什么?

FCM Token(Firebase Cloud Messaging Token) 是一个 唯一的标识符,用于区分设备,Firebase 服务器 通过 Token 知道要把消息推送到哪个设备

为什么需要 FCM Token?

你的 App 需要一个唯一 ID,这样 Firebase 服务器才能准确地把推送消息发送给这个设备

就像每个人的手机号码一样,别人发短信给你时,必须知道你的号码。FCM Token 就相当于你的 App 设备的“手机号码”! 📱

流程

  1. 你在代码里调用 FirebaseMessaging.getInstance().getToken()
  2. Firebase 服务器会生成一个唯一的 Token,然后发送到你的手机
  3. 手机上的 App 获取这个 Token,并可以在 Logcat 里打印出来

如何获取 FCM Token?

在 Android App 里,你可以这样获取 FCM Token:

// 引入所需的 Android 类
import android.os.Bundle; // 用于管理 Activity 的生命周期
import android.util.Log; // 用于日志输出,方便调试
import com.google.firebase.messaging.FirebaseMessaging; // FCM 推送消息服务
import androidx.appcompat.app.AppCompatActivity; // 兼容性 Activity,适用于大多数 Android 版本

// 定义 MainActivity 类,并继承 AppCompatActivity
public class MainActivity extends AppCompatActivity {
    // 定义一个日志 TAG,用于在 Logcat 中标识日志输出
    private static final String TAG = "FCM-Demo";

    // Activity 生命周期中的 onCreate 方法(当 Activity 创建时执行)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState); // 调用父类的 onCreate 方法,初始化 Activity
        setContentView(R.layout.activity_main); // 设置界面布局文件 activity_main.xml

        // 获取 FCM Token(Firebase Cloud Messaging 的唯一标识符)
        FirebaseMessaging.getInstance().getToken() // 通过 Firebase 获取当前设备的推送 Token
            .addOnCompleteListener(task -> { // 添加一个监听器,处理获取 Token 任务的结果
                if (!task.isSuccessful()) { // 检查是否获取失败
                    Log.w(TAG, "获取 FCM Token 失败", task.getException()); // 记录错误信息
                    return; // 退出方法
                }
                // 如果成功,获取 Token 并存储到字符串变量中
                String token = task.getResult();
                // 在 Logcat 输出 Token,用于调试
                Log.d(TAG, "FCM Token: " + token);
            });
    }
}

代码解读

FirebaseMessaging.getInstance().getToken():从 Firebase 服务器获取当前设备的推送 Token。
addOnCompleteListener:异步回调,获取 Token 成功或失败后都会触发这个监听器。
task.isSuccessful():检查获取 Token 是否成功,失败时记录日志。
Log.d(TAG, "FCM Token: " + token);:打印获取到的 Token,方便在 Logcat 查看。

完整流程(图示)

1. 手机 App 请求 Token  ——>  2. Firebase 生成 Token  ——>  3. Firebase 发送 Token 给手机
makefile
复制
编辑
手机App: Firebase,我要一个 Token!
   ⬇️
Firebase 服务器: 这是你的 Token!
   ⬇️
手机App: 收到 Token,我可以接收推送消息了!


http://www.kler.cn/a/553684.html

相关文章:

  • 图解循环神经网络(RNN)
  • 15-贪心算法
  • stream流常用方法
  • mac os设置jdk版本
  • DeepSeek-V3模型底层架构的核心技术一(多Token预测(MTP)技术)
  • 动态规划之背包问题
  • 力扣-二叉树-235 二叉搜索树的最近公共祖先
  • 位运算,双指针,二分,排序算法
  • 一台服务器将docker image打包去另一天服务器安装这个镜像
  • 2025年02月18日Github流行趋势
  • 【基础架构篇九】《DeepSeek模型版本管理:Git+MLflow集成实践》
  • MySQL面试考点汇总
  • 基于SpringBoot+Vue的老年人体检管理系统的设计与实现(源码+SQL脚本+LW+部署讲解等)
  • 变相提高大模型上下文长度-RAG文档压缩-3.优化map-reduce(reranker过滤+社区聚类)
  • 零基础学QT、C++(三)魔改QT组件库(付源码)
  • 闲鱼IP属地为何频繁变化:深入解析与应对策略
  • Redis为什么速度快、性能高?
  • 基于YOLO11深度学习的果园苹果检测与计数系统设计与实现【python源码+Pyqt5界面+数据集+训练代码】
  • Transformer多头注意力并行计算原理与工业级实现:从数学推导到PyTorch工程优化
  • WebAssembly:现代Web开发的革命性技术