Parse.com推送通知问题.取消订阅不起作用,仍然接收推送通知.(Android)

Vla*_*ncu 5 notifications android parse-platform

我创建了一个使用Parse.com推送通知的应用程序.我有一个设置页面,您可以在其中启用/禁用推送通知.设置页面运行良好,它会更改使用的首选项,但推送通知不会停止.

这是我订阅/取消订阅的代码:

SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
            pushNotificationsPreference = sharedPrefs.getBoolean("PUSH_NOTIFICATION_PREFERENCE", true);

            if (pushNotificationsPreference) {
                ParsePush.subscribeInBackground("Android", new SaveCallback() {
                    @Override
                    public void done(ParseException e) {
                        if (e != null) {
                            Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
                        } else {
                            Log.e("com.parse.push", "failed to subscribe for push" + e);
                        }
                    }
                });
            } else {
                ParsePush.unsubscribeInBackground("Android", new SaveCallback() {
                    @Override
                    public void done(ParseException e) {
                        if (e != null) {
                            Log.d("com.parse.push", "successfully subscribed to the broadcast channel.");
                        } else {
                            Log.e("com.parse.push", "failed to unsubscribe for push" + e);
                        }
                    }
                });

            }
Run Code Online (Sandbox Code Playgroud)

如果"pushNotificationsPreference"为false,则调用方法"ParsePush.unsubscribeInBackground("Android",new SaveCallback()",但它不会订阅,我仍然会收到它们.

我去了Parse.com,我只在"Android"频道注册.

我错过了什么吗?

Gra*_*lov 0

只需添加

if (e == null) {
    ParseInstallation.getCurrentInstallation().saveInBackground();
}
Run Code Online (Sandbox Code Playgroud)

进入done()ParsePush.unsubscribeInBackground(...)