FCM(GCM)
1. 进入Firebase的控制台添加我们的项目(firebaseProject)(https://console.firebase.google.com/)
按照官方引导操作就可以了。
如果使用的是AS 2.3以上版本可以按照如下图的步骤进行FirebaseProject的配置(需要测试设备安装了Google play的商店应用或者Google API的模拟器)
2. 如果是通过AS的引导进行配置项目的话一下步骤可以跳过(AS会自动帮我们配置完成了)
在应用级的build.gradle中添加对FCM的依赖
在dependencies{ ... }中添加
compile 'com.google.firebase:firebase-messaging:10.0.1'
同时在此文件中的
最后一行添加
apply plugin: 'com.google.gms.google-services'3. 环境部署完之后,现在开始配置我们的项目
按照官方文档上面:
- 一项可以扩展
FirebaseMessagingService
的服务。如果您希望在后台进行接收应用通知之外的任何消息处理,则必须添加此服务。要在前台应用中接收通知、接收数据负载以及发送上游消息等,您必须扩展此服务。 - 一项可以扩展
FirebaseInstanceIdService
的服务,用于处理注册令牌的创建、轮转和更新。如果要发送至特定设备或者创建设备群组,则必须添加此服务。 - 如果FCM对于 Android 应用的功能至关重要,应确保在清单中设置
android:minSdkVersion="8"
或更高版本。这可确保 Android 应用无法安装在其不能正常运行的环境中
在我们的项目中new service继承FirebaseMessagingService
重写onMessageReceived方法,和发送通知的方法,完整如下
package com.example.tao.fcm; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.support.v4.app.NotificationCompat; import android.util.Log; import android.content.Context; import com.google.firebase.messaging.FirebaseMessagingService; import com.google.firebase.messaging.RemoteMessage; public class MyFCMService