如何将java代码从GCM功能更改为FCM功能

时间:2017-08-11 12:34:00

标签: java android firebase firebase-cloud-messaging

public class GcmIntentService extends FirebaseInstanceIdService {

    public GcmIntentService() {
        // super("GcmIntentService");
    }

    @Override
    protected void onHandleIntent(Intent intent) {
        Bundle extras = intent.getExtras();
        GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(this);
        String messageType = gcm.getMessageType(intent);
        if (!extras.isEmpty() && GoogleCloudMessaging.MESSAGE_TYPE_MESSAGE.equals(messageType)) {
            sendNotification(intent.getExtras());
        }

        GcmBroadcastReceiver.completeWakefulIntent(intent);
    }

最初我在GCM中构建了一个没有任何错误的文件并将其附加到firebase,但是当我在手机中运行它时它不起作用,那么如何将我的java代码从GCM更改为FCM以便它可以工作正确地按照火力基地工作。

1 个答案:

答案 0 :(得分:1)

official documentation中有关从GCM迁移到现代FCM的答案。

流程如下:

  1. 将您的GCM项目导入为Firebase项目
  2. 在应用级build.gradle中切换到FCM

    compile "com.google.firebase:firebase-messaging:9.0.0"
    
  3. 删除GCM所需的权限
  4. 从应用清单中删除接收器
  5. 迁移您的侦听器服务
  6. 更新Android清单
  7. 更新InstanceIDListenerService
  8. 删除注册
  9. 迁移您的GcmListenerService
  10. 更新Android清单
  11. 更新您的GcmListenerService
  12. 更新GcmPubSub的使用情况
  13. 更新服务器端点