[ios] Fix lint issues in Swift files (#15640)
[notifications][ios] Scope notification identifiers (#12055)* create method to override request IDs * scope notification request IDs in Expo Go * add method to Presentation header file * r
[notifications][ios] Scope notification identifiers (#12055)* create method to override request IDs * scope notification request IDs in Expo Go * add method to Presentation header file * rename scoping methods to be more general (not just category IDs are scoped) * only scope emitterModule, handlerModule, and presentationModule in Expo Go
show more ...
[notifications][ios] Only scope notification categories in Expo Go (#11651)* create service extension * Scope category ID in client if provided * ONLY scope categories in Expo Go * remove
[notifications][ios] Only scope notification categories in Expo Go (#11651)* create service extension * Scope category ID in client if provided * ONLY scope categories in Expo Go * remove serviceExtensionTimeWillExpire method * modify service entension's CFBundleDisplayName * use '/' as delimiter to match Android * rename CFBundleDisplayName * escape experience ID and category ID * remove extraneous code * remove NSRegularExpression code * [notifications][ios] migrate notification categories (#11789) * extract category creation logic to separate method * migrate '-' delimiter to '/' in Expo Go, and migrate scoped to unscoped in standalones * escape experienceId * extract migration logic to it's own class * escape user-provided category ID in Expo Go * only used EXScopedNotificationSchedulerModule in Expo Go * move all scoping and escaping logic to EXScopedNotificationsUtils * use EXScopedNotificationsUtils in NotificationServiceExtension * search for substring, not regex * move migrations from constructor to static method; only use EXScopedNotificationCategoriesModule in Expo Go * replace replaceAllCategoryIdPrefixesMatching with renameCategoryIdentifiersWithPrefix:withBlock * dont serialize category to create a new one; use UNNotification API directly * use backslash escaping instead of URL encoding * add todo to remove in SDK 47 * add back comment * rename some vars, fix indent * only escape & unescape forward slash * use '//' as delimiter * use '/' as delimiter, use regex * move legacy scope-checking logic to EXScopedNotificationsUtils * only replace legacy scope if anchored to beginning of string * add changelog entry * Update ios/Exponent/Versioned/Core/UniversalModules/EXNotifications/EXScopedNotificationsUtils.m Co-authored-by: James Ide <[email protected]> Co-authored-by: James Ide <[email protected]>
Revert "[ios][android][docs] Supports rich content (image, audio, and video) in push notifications (#4787)" (#6139)This reverts commit 3bd027a087c5ab3e23e060506f69b966869c8c48.
[ios][android][docs] Supports rich content (image, audio, and video) in push notifications (#4787)* [android] Add basic support for displaying an image in push notification * [ios] Add support f
[ios][android][docs] Supports rich content (image, audio, and video) in push notifications (#4787)* [android] Add basic support for displaying an image in push notification * [ios] Add support for displaying rich content This is done by creating a `UNNotificationServiceExtension`. Ref: - https://docs.leanplum.com/docs/adding-images-to-push-notifications - https://developer.apple.com/documentation/usernotifications/unnotificationattachment - https://stackoverflow.com/a/40734571/2603230 * [ios] Change variable names * [ios] Use escaping for callback * [ios] Minor change * [ios] Add support for displaying rich content without extension * [ios] Use `response.suggestedFilename` instead of manually finding the extension * [ios] Use Objective-C instead of Swift for UNNotificationServiceExtension * [ios] Add support for receiving and using user options for rich content * [android] Fix crash due to IllegalStateException when handling invalid rich content (image) URL * [android] Add support for using a custom icon for push notification * [android] Add support for push notification body with rich content options though none of those options are supported on Android and are ignored * [android] Do not display any rich content if `isMultiple` * [android] Add support for `thumbnailHidden` option * [docs] Add documentation for rich content in push notification * [docs] Add note for rich content displaying priority on iOS * Update CHANGELOG.md * [ios] Add support for an option `_displayInForeground` to allow displaying push notification in foreground * Update push-notifications.md * [ios] Fix formatting * Update push-notifications.md * Revert changes related to `_displayInForeground` (doing it in a new branch) * [ios] Use spaces instead of tabs to be consistent * [ncl] Add rich content push notification demo It will only be actually displayed after #4802 is merged so that the notification will be displayed in foreground * [ncl] Add alert for Android to notify that rich content other than images are only supported on iOS * [ncl] Minor change to rich content video source * [test-suite] Add tests for push notifications * [test-suite] Minor change to push notifications test * Update docs/pages/versions/unversioned/guides/push-notifications.md Co-Authored-By: Eric Samelson <[email protected]> * Update NotificationService.m * Update NotificationService.h * [test-suite] Restrict the test to the receipt of the notification https://github.com/expo/expo/pull/4787#discussion_r305522008 * [android] Log exceptions * Update PushNotificationHelper.java * [docs] Add notes about GIFs on Android https://github.com/expo/expo/pull/4787#discussion_r305478102 * [ios] Rename `NotificationService` to `ExNotificationService` https://github.com/expo/expo/pull/4787/files#discussion_r305483876 * [ios] Rename `NotificationService` file to `EXNotificationService` file * [ios] Minor change * [ncl] Add "image with a custom icon" for NotificationScreen