Фоновый обработчик Flutter Firebase iOS не работаетIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Фоновый обработчик Flutter Firebase iOS не работает

Сообщение Anonymous »

Я знаю, что об этом уже спрашивали, но этот запрос немного отличается.
Я отправляю push-уведомление в приложение iOS Flutter. Обработка переднего плана работает правильно. Фоновый/уничтоженный режим работает так, что на панели задач появляется сообщение с уведомлением, и если пользователь нажимает на это сообщение, открывается приложение, и детали сообщения пересылаются.
Однако, если я поставлю приложение в фоновом режиме, отправьте сообщение, я НЕ нажимаю на уведомление на панели задач, а вместо этого просто возвращаю приложение на передний план, я вижу, что фоновый обработчик/прослушиватель ничего не сделал. Таким образом, если пользователь (хм, клиент) запускает приложение в фоновом режиме и игнорирует уведомление на панели задач, сам переводит приложение на передний план, данные сообщения не принимаются.
Кроме того, включение часть изображения также полностью игнорируется.
Возможности xCode включают фоновые режимы (фоновое получение и удаленные уведомления) и push-уведомления.
Мой полезная нагрузка выглядит следующим образом:

Код: Выделить всё

"message": {
"token": "my-token-here",
"data": {
"data_value_1": "DATA VALUE 1 test",
},
"notification": {
"title": "NOTIFICATION Title",
"body": "NOTIFICATION Body",
},
"apns":{
"payload":{
"aps":{
"mutable-content": 1,
"content_available": 1,
}
},
"headers": {
"apns-priority": "10",
},
"fcm_options": {
"image": 'https://t4.ftcdn.net/jpg/01/43/42/83/240_F_143428338_gcxw3Jcd0tJpkvvb53pfEztwtU9sxsgT.jpg'
}
}

}
В дополнение к обработке FirebaseMessaging.onMessageOpenedApp.listen и FirebaseMessaging.onMessage.listen (оба работают), я включаю это в свой файл main.dart, который, похоже, не работает :

Код: Выделить всё

void main() async{
WidgetsBinding widgetsBinding = WidgetsFlufluttertterBinding.ensureInitialized();

...
...
@pragma('vm:entry-point')
FuturefirebaseMessagingBackgroundHandler(RemoteMessage message) async {
print('listener hit (background)...message is received!!!!!!!!!!');
//THE ABOVE NEVER TRIGGERS!;
}
FirebaseMessaging.onBackgroundMessage(firebaseMessagingBackgroundHandler);
await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform );
runApp(MyApp());
}
Я проверил все документы в Firebase и аналогичные сообщения, но не могу заставить их работать...
Согласно https:/ /firebase.google.com/docs/cloud-messaging/concept-options#notifications_and_data_messages:

В ФОНОВОМ режиме приложения получают полезные данные уведомления в уведомлении. лоток и обрабатывает полезную нагрузку ТОЛЬКО тогда, когда пользователь нажимает на уведомление.

Это говорит мне о том, что размещение приложения из фонового режима на передний план без нажатие на уведомление, которое приходит через системный трей, полностью игнорирует сообщение. Итак, вопрос в том, почему тогда существует «firebaseMassagingBackgroundHandler»? Это только для Android?

Подробнее здесь: https://stackoverflow.com/questions/783 ... ot-working
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»