Zrobiłem aplikację, która używa powiadomień push Parse. Mam stronę ustawień, na której można włączać i wyłączać powiadomienia push. Strona ustawień działa dobrze, zmienia używane preferencje, ale powiadomienia push nie zatrzymają się.Problem z powiadomieniem push firmy Parse. anulowanie subskrypcji nie działa, wciąż otrzymuję powiadomienia push. (Android)
Oto mój kod, w którym Subskrypcja/Rezygnuję:
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);
}
}
});
}
Jeśli "pushNotificationsPreference" jest fałszywe, to wywołuje metodę "ParsePush.unsubscribeInBackground (" Android "nowy SaveCallback()", ale wygrał „t subskrybować, wciąż jestem ich otrzymania.
poszedłem na Parse.com, a ja jestem tylko zarejestrowany na«Android»kanału.
jestem brakuje czegoś?
Czy zrezygnować z powodzeniem (w dzienniku)? Zwracając uwagę, twój stan IF ustawiony jest w odwrotnej kolejności. IF (e == null) oznacza, że nie ma błędu, masz go na odwrót. TAKŻE twoje preferencje najprawdopodobniej nie istnieją i domyślnie przyjmuje wartość "true". – Aashir