Я установил модуль чата в своем приложении, используя сервис PubNub, а не подсистему чата PubNub.Все работает нормально, пока не появятся push-уведомления.Это приложение имеет версию Android (не построен мной).Мне удалось получить полнофункциональное Apple Push Notification, используя payload1 , упомянутый ниже.Но это работает только для устройств iOS с точки зрения уведомлений, никаких уведомлений для устройств Android, для которых добавлен GCM для уведомлений.
Так что я сделал несколько RND и нашел Link и использовал Полезная нагрузка2 упоминается ниже.Благодаря этому обе платформы получают уведомления.Но теперь в iOS уведомление приходит как на переднем плане, так и в фоновом состоянии приложения.но все перечисленные ниже методы не вызывают, теперь вызывается только один метод - willPresent на переднем плане.Я хочу знать, почему это так.Что-то не так с Payload или Tag или как?Пожалуйста, помогите мне, борясь за это за неделю.Заранее спасибо.
payload1 = [
"aps" : [
"alert" : [
"title" : self.loginUserProfile.firstName,
"body" : message],
"pn_exceptions" : [
tokenString
],
"content-available": 1,
"sound" : "marco_alert.aiff",
"publisher" : self.loginUserProfile.userId,
"date" : Date().dateString()]
] as [String : Any]
payload2 = [
"pn_apns":
[
"date": Date().dateString(),
"aps":
[
"sound": "marco_alert.aiff",
"alert":
[
"title": self.loginUserProfile.firstName,
"body": message
],
],
"pn_exceptions": [tokenString],
"publisher": self.loginUserProfile.userId,
"content-available": 0
],
"pn_gcm": [
"data": messageString
]] as [String : Any]
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
И
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any])
И
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)```