推送通知使用FCM Android删除令牌

时间:2017-05-02 10:11:59

标签: android firebase push-notification firebase-cloud-messaging

我必须在用户登录时显示推送通知。所以当应用程序打开时我正在使用deviceToken.So它将始终注册到服务器。但是当用户注销时我不想显示推送通知。那我该怎么办呢?

现在我已经完成了检查首选项值,如下面的代码

 public void onMessageReceived(String from, Bundle data) {
    loginPref = getSharedPreferences("loginPreference", Context.MODE_PRIVATE);
    mEditPrefs = loginPref.edit();
    userID = loginPref.getString("userId", null);
    if(userID!=null){
       Bundle bundle = data.getBundle("notification");
        Log.d("Bundle123::", bundle + "");
        if (bundle != null) {
            String text = bundle.getString("text");
            String body = bundle.getString("body");
            String title = bundle.getString("title");
            Log.d("text123::", text + "");
            Log.d("title123::", title + "");
            Intent in = new Intent();
            in.setAction("GCM_RECEIVED");
            sendBroadcast(in);
            sendNotification(title,body);
        }
    }

但是当应用程序背景这个条件不起作用。我怎么能这样做?因为我无法删除令牌,因为当我尝试登录时我也必须发送设备令牌..

1 个答案:

答案 0 :(得分:0)

注销时间告诉后端将设备令牌设为null。