美文网首页
Android使用FireBase推送

Android使用FireBase推送

作者: 7570146919ac | 来源:发表于2020-02-14 18:02 被阅读0次

须知:本文所提到的链接需要科学上网,自行想办法咯

认识FCM

FireBase官网## 标题 ##
Google自己维护一套推送系统,境外开发者基本推送走的是Google的服务,但是由于哈哈哈哈的关系,在国内我们无法使用Google的服务,收不到Google的推送,也因此特殊环境下第三方推送群起,但是强杀之后收到离线消息依然弱爆,除了Google。

Google以前的推送叫GCM,后来收购FireBase退出的FCM是GCM的升级版,本质用的还是GCM.

FireBase为开发团队提供了云托管、机器学习、身份验证、性能监控、谷歌分析和云消息传递等,鉴于公司的海外项目需要开发消息推送功能,而国内第三方和BAT大厂的推送受限性,考虑使用FireBase的云消息传递(Cloud Message/FCM(ClodeMessage官方文档))来满足需求。

想要使用FCM需要满足几个条件:

  • 设备必须是android4.0以上,Google Play Service 必须是11.2.0以上版本
  • Android SDK Manager 必须有Google Play service SDK
  • Android Studio 必须是1.5以上版本

后台接入FireBase管理后台接入

Android接入FireBase CloudMessage

设置FireBase和FCM SDK

  1. 将FireBase添加到您的Android项目配置Android应用并下载google-service.json文件
  2. 请务必在项目级别build.gradle文件中的buildscript和allprojects部分添加Google的Maven代码库
classpath 'com.google.gms:google-services:4.1.0'
  1. 请将Android版云消息传递库的依赖项添加到模块级别(一般是app)的build.gradle文件中
apply plugin: 'com.google.gms.google-services'
dependencies {
   ...
   implementation 'com.google.firebase:firebase-messaging:20.0.0'
}
  1. 添加两个Service

在配置文件(AndroidManifest)中添加

<service
    android:name=".MyFirebaseMessagingService">
    <intent-filter>
        <action android:name="com.google.firebase.MESSAGING_EVENT"/>
    </intent-filter>
</service>

<service
    android:name=".MyFirebaseInstanceIDService">
    <intent-filter>
        <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
    </intent-filter>
</service>

项目中新建MyFirebaseMessagingService继承于FirebaseInstanceIdService:

public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {
}

新建MyFirebaseMessagingService继承于FirebaseMessagingService:

public class MyFirebaseMessagingService extends FirebaseMessagingService {
}

以上便完成Android的集成了

相关文章

网友评论

      本文标题:Android使用FireBase推送

      本文链接:https://www.haomeiwen.com/subject/txejfhtx.html