Ionic - Firebase Push-уведомления на фоне в Android
Я отправляю push-уведомления с помощью Firebase Admin Java SKD, и в моем приложении Ionic я использую https://github.com/phonegap/phonegap-plugin-push.
Моя проблема заключается в том, что, когда мое приложение находится в фоновом режиме, функция push.on("уведомление", функция (данные) {} не вызывается. Я думаю, что это проблема, упомянутая здесь. Проблема возникает только на устройствах Android, на устройствах iOS Функция уведомления вызывается без проблем, даже когда приложение находится в фоновом режиме.
Решение говорит, что мы должны установить "content-available" равным 1, чтобы заставить функцию вызываться.
Класс com.google.firebase.messaging.Aps предоставляет доступ к свойствам содержимого, но я не могу найти то же самое в классе AndroidNotification.
Как отправить свойство "контентно-доступный" вместе с полезной нагрузкой в Android? И это действительно проблема? Почему iOS не нужно это свойство?
Это код, который я использую для отправки уведомления:
AndroidConfig androidConfig = AndroidConfig.builder()
.setTtl(Duration.ofMinutes(2).toMillis()).setCollapseKey("key")
.setPriority(Priority.HIGH)
.setNotification(AndroidNotification.builder().setTag("tag").build()).build();
ApnsConfig apnsConfig = ApnsConfig.builder()
.setAps(Aps.builder().setCategory("category").setThreadId("thread").build()).build();
Message message = Message.builder().putAllData(data).setTopic("topic")
.setApnsConfig(apnsConfig).setAndroidConfig(androidConfig)
.setNotification(
new Notification("Title", "Message"))
.build();
String response = FirebaseMessaging.getInstance().sendAsync(message).get();