После автоматического обновления и перезагрузки c OSX и XCode мое расширение службы уведомлений больше не устанавливается с моим приложением.
Если я установлю схему на свое приложение и запустю ее, расширение уведомления не будет вызываться на моем устройстве. Если я установлю схему на расширение и выберу свое приложение для запуска, то все будет нормально.
Я сделал git diff между версией кода, которая работала, и той, которая не работает и ничего не стоит. вне. Я удалил все и пошел к самым голым костям, которые я могу себе представить:
import UserNotifications
class NotificationService: UNNotificationServiceExtension {
var contentHandler: ((UNNotificationContent) -> Void)?
var bestAttemptContent: UNMutableNotificationContent?
override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
self.contentHandler = contentHandler
bestAttemptContent = (request.content.mutableCopy() as? UNMutableNotificationContent)
if let bestAttemptContent = bestAttemptContent {
bestAttemptContent.body = "modified content here"
contentHandler(bestAttemptContent)
}
}
override func serviceExtensionTimeWillExpire() {
// Called just before the extension will be terminated by the system.
// Use this as an opportunity to deliver your "best attempt" at modified content, otherwise the original push payload will be used.
if let contentHandler = contentHandler, let bestAttemptContent = bestAttemptContent {
contentHandler(bestAttemptContent)
}
}
}
Я проверил фазы сборки, и, похоже, соответствующие настройки верны:
Я вижу, что он должен быть встроен, а источники настроены правильно. Где-то еще есть настройка? Я перезагрузил ОС и устройство снова. Стоит отметить, что у меня не было проблем с этим до обновления.