Eu tenho um aplicativo Ionic3 usando firebase e cordova-plugin-badge. Se o aplicativo estiver sendo executado em primeiro plano e eu receber uma notificação por push, o número do selo será aumentado.
import { Badge } from "@ionic-native/badge";
declare let FCMPlugin;
constructor(private badge: Badge) {
this.platform.ready().then(() => {
FCMPlugin.onNotification((data) => {
this.badge.increase(1); // works when app is in foreground
if (data.wasTapped) {
//Notification was received on device tray and tapped by the user.
this.handleNotificationsWhenInBackground(data);
} else {
//Notification was received in foreground. Maybe the user needs to be notified.
this.handleNotificationsWhenInForeground(data);
}
},
(msg) => {
},
function (err) {
});
});
}
Eu recebo a notificação push quando o aplicativo éem segundo plano, mas o número do emblema não é incrementado. Se eu clicar na notificação push recebida no android enquanto o aplicativo estiver em segundo plano, o número do selo será incrementado. Portanto, o código para incrementar o número do selo é chamado somente quando o aplicativo está em primeiro plano.
Meu problema é: como aumentar o número do selo enquanto o aplicativo está em segundo plano e recebo uma notificação por push.
Respostas:
0 para resposta № 1A única maneira de fazer isso é definir uma propriedade em sua carga de notificação, como se você estivesse no Android, você tem que definir "click_action":"FCM_PLUGIN_ACTIVITY"
propriedade para ativar alguma ação após o usuário tocar na bandeja de notificação.