Я внедряю новое расширение iOS10 для использования расширенных уведомлений. Я пытаюсь протестировать его на push-уведомлениях, но не работает, я просто получаю простое уведомление и не использую расширение.
Я сделал все, что указано на официальных сайтах и в некоторых других местах:
- У меня запущено и работает приложение с push-уведомлениями и правильным профилем подготовки
- Я добавил новую цель в свое приложение, расширение службы уведомлений.
- Реализовал свой собственный код (на самом деле это не имеет значения, потому что он даже не входит в новый класс)
- Кроме того, мне пришлось установить профиль подготовки для этого расширения, я просто использую один с подстановочным знаком, я не вижу никакой документации, указывающей, должна ли цель расширения включать возможность push-уведомлений, в этом случае мне потребуется специальная подготовка для этого во-первых, на данный момент я просто использую подстановочный знак, в любом случае он соответствует (должен соответствовать) профилю, который я использую в целевом приложении, и возможность push-уведомлений включена только для целевого приложения.
- Я добавил UNNotificationExtensionCategory и NSExtensionPointIdentifier. Также я отправляю категорию как часть полезной нагрузки push с сервера.
Как я уже сказал, я получаю уведомление, но никогда не использую расширение. Я вижу, как ОС пытается загрузить расширение, но затем выдает ошибку без соответствующего описания для определения проблемы:
Dec 31 21:00:00 iPhone SpringBoard(libextension.dylib)[51] <Notice>: calling plugIn beginUsing:
Dec 31 21:00:57 iPhone pkd[86] <Notice>: assigning plug-in com.test.app.NotificationWithAttachmentExtension(1.0) to plugin sandbox
Dec 31 21:03:57 iPhone pkd[86] <Notice>: enabling pid=51 for plug-in com.test.app.NotificationWithAttachmentExtension(1.0) 38BB5FF1-2597-42E0-B950-169DBFA80573 /private/var/containers/Bundle/Application/A8C47706-C0EC-4FB1-ABA7-0118372F6900/testapp.app/PlugIns/NotificationWithAttachmentExtension.appex
Dec 31 21:00:53 iPhone SpringBoard(PlugInKit)[51] <Notice>: plugin com.test.app.NotificationWithAttachmentExtension interrupted
Dec 31 21:03:56 iPhone SpringBoard(PlugInKit)[51] <Notice>: Hub connection error Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.test.app.NotificationWithAttachmentExtension" UserInfo={NSDebugDescription=connection to service named com.test.app.NotificationWithAttachmentExtension}
Jun 29 13:33:36 iPhone SpringBoard(libextension.dylib)[51] <Notice>: PlugInKit error in beginUsing:
Jun 17 23:33:04 iPhone SpringBoard(libextension.dylib)[51] <Notice>: killing invalid plugIn
Dec 31 21:00:00 iPhone SpringBoard(UserNotificationsServer)[51] <Error>: Extension error whilst trying to modify push notification F502-9B36: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named com.test.app.NotificationWithAttachmentExtension" UserInfo={NSDebugDescription=connection to service named com.test.app.NotificationWithAttachmentExtension}
Dec 31 21:00:00 iPhone SpringBoard(UserNotificationsServer)[51] <Notice>: [com.test.app] Saving notification F502-9B36
Dec 31 21:00:00 iPhone SpringBoard(libextension.dylib)[51] <Notice>: completed calling plugIn beginUsing: for pid: 0
Соответствующее расширение .plist:
<dict>
<key>NSExtensionAttributes</key>
<dict>
<key>UNNotificationExtensionCategory</key>
<string>attachmentCategory</string>
<key>UNNotificationExtensionInitialContentSizeRatio</key>
<real>1</real>
</dict>
<key>NSExtensionPointIdentifier</key>
<string>com.apple.usernotifications.service</string>
<key>NSExtensionPrincipalClass</key>
<string>$(PRODUCT_MODULE_NAME).NotificationService</string>
</dict>
Что не так или отсутствует?
NSExtensionAttributes
- person Or Arbel   schedule 07.10.2016