Я нашел способ, которым мы можем загрузить push-уведомление, когда приложение убито.Но счетчик значков, однако, невозможно установить в момент, когда приложение убито.Это возможно только в том случае, если вы добавите в приложение расширение слушателя, которое вызовет ваше приложение из неактивного состояния в фоновый режим и загрузит все.Или вы можете установить значок через сервер, но в то же время вы должны поддерживать значок на сервере тоже.Ниже приведен код для загрузки всех push, когда ваше приложение убито.
Всякий раз, когда приложение умирает, все уведомления поступают в центр уведомлений, и есть два, чтобы открыть ваше приложение, i) путем нажатия на любой центр уведомлений с переадресацией устройства ii) путем нажатия на значок приложения.Каким бы способом вы ни выбрали, чтобы открыть приложение, вы можете написать код ниже, чтобы загрузить все push, когда ваше приложение находилось в неактивном режиме.В
didFinishLaunchingWithOptions
[[UNUserNotificationCenter currentNotificationCenter] getDeliveredNotificationsWithCompletionHandler: ^ (NSArray * _Nonnull уведомлений) {if (notifications.count> 0) {AudioServices (13 )Services) 15для (UNNotification * уведомление в withNotifications) {// NSLog (@ "msg noti% @", messages.request);// [identifierArr addObject :tification.request.identifier];NSLog (@ "~~~>% @", notification.request.identifier);dispatch_async (dispatch_get_main_queue (), ^ {[self handlePushDatainKilledMode :tification.request.content.userInfo tappedByUser: false]; // медленная работа в фоновом режиме});} NSLog (@ "~~~> Удаление всех уведомлений");[[UNUserNotificationCenter currentNotificationCenter] removeAllDeliveredNotifications];}}];
Также важной частью является удаление после загрузки и сохранение еще при повторном открытии приложения, и если вы обрабатываете какую-либо вещь в другом полученном push-сообщении, оно также будет реплицировать каждое push-уведомление.
Я пишу это решение, возможно, оно может помочь кому-то или сэкономить его время.благодарю вас.