114: It's All Unified

Published: July 13, 2016, 6:15 p.m.

Discussion - Notifications in iOS 10\n\n\nBrief breakdown of WWDC sessions related to notifications\n\n\nWhat\u2019s New in the Apple Push Notification Service\nIntroduction to Notifications\nAdvanced Notifications\n\n\nNew stuff\n\n\nAPNS Token-based authentication\nUserNotifications (and UserNotificationsUI) Framework (Unifies Remote and Local Notifications)\nAccess to user-defined notification settings\nExpanded content\n\n\nTitles\nSubtitles\nMedia attachments\n\n\nScheduling and handling within Extensions\nIn-app presentation\nRemoval/update of pending notifications\nDismissal actions\nService Extensions\n\n\nAPNS Token-based authentication\n\n\nUses JSON Web Tokens (libraries widely available to assist with token generation)\nFor server-side solutions where using a certificate isn\u2019t practical/feasible\nAddresses issue of certificate expiration (though tokens also expire, new ones can be generated on the fly)\n\n\nUserNotifications Framework\n\n\nProvides a single notifications API across iOS, watchOS and tvOS\n\n\niOS: Full support for scheduling and management of notifications\nwatchOS: Support for forwarded notifications and local notifications on the watch\ntvOS: Support for badging app icons\n\n\nKey components/concepts:\n\n\nUNUserNotificationCenter\n\n\nAuthorization requests\nScheduling via requests (by providing content and triggers)\n\n\nUNNotificationRequest\n\n\nIdentifier\nContent\nTrigger\n\n\nUNMutableNotificationContent\nUNNotificationAttachment\n\n\nAudio\nImages\nVideo\n\n\nTriggers\n\n\nPush (UNPushNotificationTrigger is not instantiated by apps)\nUNTimeIntervalNotificationTrigger\nUNCalendarNotificationTrigger\nUNLocationNotificationTrigger\n\n\nUNUserNotificationCenterDelegate Protocol\n\n\nuserNotificationCenter:willPresentNotification:withCompletionHandler:\nuserNotificationCenter:didReceiveNotificationResponse:withCompletionHandler\n\n\nUNNotificationCategory - defines a type of notification, allows actionable notifications and content extensions\nUNNotificationAction - represents a task you can perform in response to a notification\nUNNotificationServiceExtension - Entry point for service extensions. Allows you to process the payload of a push notification before it is presented (eg: end-to-end encryption or notification attachments). Use in conjunction with \u201cmutable-content: 1\u201d in the aps portion of an APNS payload.\n\n\n\n\nUserNotificationsUI Framework\n\n\nProvides the UNNotificationContentExtension protocol\nView controllers adopt this protocol, using the VC\u2019s view to display the notification contents\nCustom content is sandwiched between a header with the application icon and title and the default notification payload (default payload can be hidden using an attribute in the Info.plist)\nNo user interaction\nActions are displayed and extensions can respond to them by intercepting action responses\nProtocol provides a didRecieveNotification: method you can use to set up UI in response to the notification\n\n\n\n\n\nPicks\n\nDarryl\n\n\nNew Swift, Core Data and Cocoa Books - Use Your Loaf\n\n\n\nJohn\n\n\nList of Public Slack Groups\nMr Robot returns to USA Network July 13