Изменить конструктор push-уведомлений в willPresentNotification - PullRequest
0 голосов
/ 06 сентября 2018

Я сейчас использую SDK Salesforce Marketing Cloud iOS (v4.9.7) для отправки push-уведомлений. Я отправлю свое сообщение как "qwe | 123 | zxc". Однако я хотел бы показать "qwe" только в построителе уведомлений. Есть ли способ сделать это? Спасибо.

    - (void)userNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler {

          if (completionHandler != nil) {

            if ([[ETPush pushManager] shouldShowLocalAlert] == YES) {

              //this is the notification payload 
              NSDictionary *userInfo = notification.request.content.userInfo;

              //get the msg from notification payload
              NSString *notificationMsg = [[userInfo valueForKeyPath:@"aps.alert"] objectForKey: @"body"];

              //extract and get the "qwe"
              NSArray *msgArr = [notificationMsg componentsSeparatedByString:@"|"];
              NSString *MyMessage = msgArr[0];

              //i have tried to replace the msg but failed
              notificationMsg = MyMessage;

              completionHandler(UNNotificationPresentationOptionAlert);
            }
            else {
              [[ETPush pushManager] handleNotification:notification.request.content.userInfo forApplicationState:[UIApplication sharedApplication].applicationState];
              completionHandler(UNNotificationPresentationOptionNone);
            }
          }
          else {
            [[ETPush pushManager] handleNotification:notification.request.content.userInfo forApplicationState:[UIApplication sharedApplication].applicationState];
          }

        }

1 Ответ

0 голосов
/ 07 сентября 2018

Да, вы можете изменить содержимое push-уведомлений в iOS.

Для этого используйте «Расширение службы уведомлений» в вашем приложении. В этом вы можете добавить код модификации в didReceiveNotificationRequest .

Спасибо, Надеюсь, это поможет.

...