日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

FCM 推送

更新時(shí)間:

消息推送支持集成 Firebase 云信息傳遞(Firebase Cloud Messaging,簡稱 FCM)通道,以滿足 App 在海外安卓設(shè)備上的使用需求。

下面介紹 FCM 推送通道的接入過程。

前提條件

接入 FCM 前,需要滿足以下幾個(gè)條件:

  • 采用原生 AAR 方式接入。FCM 僅支持以原生 AAR 方式接入,不支持 Portal & Bundle 接入。

  • Gradle 版本大于 4.1。

  • 使用 AndroidX。

  • com.android.tools.build:gradle 為 3.2.1 或以上版本。

  • compileSdkVersion 為 28 或以上版本。

接入 FCM SDK

操作步驟如下:

  1. 在 Firebase 控制臺(tái)添加應(yīng)用。

    登錄 Firebase 控制臺(tái),參考 Firebase 文檔 完成應(yīng)用注冊。

  2. 將 Firebase Android 配置文件添加到您的應(yīng)用。

    下載 google-services.json 配置文件,將配置文件放置到項(xiàng)目主 module 目錄下。

  3. 在根目錄build.gradlebuildScript 依賴中加入 Google 服務(wù)插件。

     buildscript {
    
       repositories {
         // Check that you have the following line (if not, add it):
         google()  // Google's Maven repository
       }
    
       dependencies {
         // ...
    
         // Add the following line:
         classpath 'com.google.gms:google-services:4.3.4'  // Google Services plugin
       }
     }
    
     allprojects {
       // ...
    
       repositories {
         // Check that you have the following line (if not, add it):
         google()  // Google's Maven repository
         // ...
       }
     }
  4. 在主 module 工程的 build.gradle 中應(yīng)用 Google 服務(wù)插件。

     apply plugin: 'com.android.application'
     // Add the following line:
     apply plugin: 'com.google.gms.google-services'  // Google Services plugin
    
     android {
       // ...
     }
  5. 在主 module 工程的 build.gradle 中加入 FCM SDK 依賴。

     dependencies {
         // Import the BoM for the Firebase platform
         implementation platform('com.google.firebase:firebase-bom:26.1.1')
    
         // Declare the dependencies for the Firebase Cloud Messaging and Analytics libraries
         // When using the BoM, you don't specify versions in Firebase library dependencies
         implementation 'com.google.firebase:firebase-messaging'
         implementation 'com.google.firebase:firebase-analytics'
     }

接入 mPaaS

操作步驟如下:

  1. 在主 module 工程的 build.gradle 中加入 FCM Adapter 依賴。

     dependencies {
         implementation 'com.mpaas.push:fcm-adapter:0.0.2'
     }
  2. 接入消息推送組件,mPaaS 基線版本要求如下:

    • 對于 com.mpaas.push:fcm-adapter:0.0.2, 基線版本不能低于 10.1.68.34。

    • 對于 com.mpaas.push:fcm-adapter:0.0.1, 基線版本不能低于 10.1.68.19。

  3. 接收推送消息。由于 FCM SDK 本身的特性,通過控制臺(tái)或服務(wù)端向 FCM 通道推送的消息,客戶端并不總是會(huì)從 FCM 通道接收到,也可能會(huì)從自建通道接收到。具體規(guī)則為:

    • 當(dāng)應(yīng)用在后臺(tái)或應(yīng)用進(jìn)程被殺死時(shí),消息會(huì)從 FCM 通道收到,直接展示在通知欄,和其他廠商通道一樣。

    • 當(dāng)應(yīng)用在前臺(tái)時(shí),消息會(huì)被 FCM 透傳給應(yīng)用,應(yīng)用會(huì)從自建通道收到消息。

  4. (可選)可通過注冊消息接收器來獲取 FCM 初始化失敗的錯(cuò)誤信息,具體參見 錯(cuò)誤碼說明文檔。 示例如下:

             <receiver android:name=".push.FcmErrorReceiver" android:exported="false">
                 <intent-filter>
                     <action android:name="action.mpaas.push.error.fcm.init" />
                 </intent-filter>
             </receiver>
     package com.mpaas.demo.push;
    
     import android.content.BroadcastReceiver;
     import android.content.Context;
     import android.content.Intent;
     import android.widget.Toast;
    
     public class FcmErrorReceiver extends BroadcastReceiver {
         @Override
         public void onReceive(Context context, Intent intent) {
             String action = intent.getAction();
             if ("action.mpaas.push.error.fcm.init".equalsIgnoreCase(action)) {
                 Toast.makeText(context, "fcm error " + intent.getIntExtra("error", 0), Toast.LENGTH_SHORT).show();
             }
         }
     }