Configurar proveedor de push
Última actualización
¿Te fue útil?
Sigue la guía de Google: Configurar una aplicación cliente FCM en Android.
A grandes rasgos:
Crea un proyecto de Firebase y registra tu aplicación Android.
Añade Firebase a tu proyecto Android.
Implementa un servicio que extienda FirebaseMessagingService:
Sobrescribe onNewToken para admitir la actualización del token push
Sobrescribe onMessageReceived para gestionar la notificación push del backend de NFC Wallet.
Declara el servicio en el manifiesto de tu aplicación.
Para dispositivos Huawei sin los servicios de Google Play, configura HMS Push Kit.
Sigue la guía de Huawei: Codelabs de HMS Push Kit (Android).
Para enrutar correctamente los mensajes, antepone a los tokens HMS el prefijo HMS:.
A grandes rasgos:
Habilita Push Kit para tu aplicación en AppGallery Connect.
Integra HMS Core SDK en tu aplicación de cartera digital.
Implementa un servicio que extienda HmsMessageService:
Sobrescribe onNewToken para admitir la actualización del token push
Sobrescribe onMessageReceived para gestionar la notificación push del backend de NFC Wallet..
Declara el servicio en el manifiesto de tu aplicación.
Última actualización
¿Te fue útil?
¿Te fue útil?
public class FcmService extends FirebaseMessagingService {
@Override
public void onNewToken(@NonNull final String token) {
super.onNewToken(token);
// Notifica al SDK de NFC Wallet sobre el nuevo token.
updateToken(this, token);
}
@Override
public void onMessageReceived(@NonNull final RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
// Enruta la carga útil de push a tu controlador común.
processIncomingMessage(this, remoteMessage.getData());
}
}public class HmsService extends HmsMessageService {
// Usa el prefijo "HMS:" para el token de HMS Push Kit
private static final String HMS_TOKEN_PREFIX = "HMS:";
@Override
public void onNewToken(final @NonNull String token) {
super.onNewToken(token);
// Notifica al SDK de NFC Wallet sobre el nuevo token.
updateToken(this, HMS_TOKEN_PREFIX + token);
}
@Override
public void onMessageReceived(@NonNull final RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
// Enruta la carga útil de push a tu controlador común.
processIncomingMessage(this, remoteMessage.getDataOfMap());
}
}