| #
efd75dec |
| 16-Aug-2021 |
Tomasz Sapeta <[email protected]> |
[ios] Migrate all remaining native code
|
| #
0468182d |
| 24-Jun-2020 |
James Ide <[email protected]> |
[ios14] Get the app store client compiling & running on iOS 14 (#8938)
The main compiler-breaking change was the addition of a new notification option ("ephemeral notifications" for App Clips) that
[ios14] Get the app store client compiling & running on iOS 14 (#8938)
The main compiler-breaking change was the addition of a new notification option ("ephemeral notifications" for App Clips) that we needed to declare in a switch-case statement. Also left some comments for where we want to use some new enum values that replace alerts.
# Test Plan
The app compiles for iOS 14 with Xcode 12 beta. I needed to run it twice -- the first time it got stuck on the launch screen with the spinner -- and was able to log into my account and load published NCL. Images don't show up.
show more ...
|
| #
bfb365de |
| 22-May-2020 |
Łukasz Kosmaty <[email protected]> |
[expo-notification][ios] Add ScopedNotificationPresentationModule (#8386)
* [expo-notification][ios] Add ScopedNotificationPresentationModule
* [expo-notification] Pass to block only experienceId
|
| #
347b872b |
| 30-Mar-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Resolve presentNotificationAsync with the notification identifier
|
| #
d7188e77 |
| 30-Mar-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Deprecate `presentNotificationAsync` (#7497)
# Why
On iOS, calling `presentNotificationAsync` internally does `addNotificationRequest:` with a `nil` trigger, which makes the
[expo-notifications] Deprecate `presentNotificationAsync` (#7497)
# Why
On iOS, calling `presentNotificationAsync` internally does `addNotificationRequest:` with a `nil` trigger, which makes the notification request go all around and eg. trigger `willPresentNotification:`, etc.
Thanks to a flexible architecture we can support presenting the notification, but it feels like allowing the developers not to set a notification handler which is highly encouraged (instead of relying on library defaults). I have talked with Bartek and Tomasz and we've decided that deprecating `presentNotificationAsync` while presenting a smooth path one can take to migrate to the new API may be the best option for now.
# How
- added `NotificationPresentationModule` as `NotificationCenterDelegate`s listener
- `PresentationModule` holds a counted set of notification identifiers, if an identifier of the to-be-presented notification is in that set, the notification will be presented with all the presentation options
- deprecated `presentNotificationAsync` by showing a warning message once per application run (when `__DEV__` is `true`). The warning message contains a link redirecting to https://github.com/expo/fyi/pull/2
# Test Plan
`presentNotificationAsync` presents the notification even if there is no `setNotificationHandler` set.
show more ...
|
| #
98ad892a |
| 27-Mar-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Add a getPresentedNotificationsAsync method (#7494)
# Why
I thought we would have to implement this all ourselves on Android, but then yesterday I noticed that actually Andro
[expo-notifications] Add a getPresentedNotificationsAsync method (#7494)
# Why
I thought we would have to implement this all ourselves on Android, but then yesterday I noticed that actually Android exposes a `getActiveNotifications()` method which we could use to expose this functionality.
# How
First I implemented required parts in the _native-native_ Android part of `expo-notifications` — added an appropriate _task request_ to `BaseNotificationsService` and implemented appropriate function in `ExpoNotificationsService`.
All that was left to do was just to bind React Native module layer to native parts.
During the testing phase I noticed that even though in theory I could add `NotificationRequest` to `Notification`'s extras (as it is `Parcelable`), in practice the class loader used when unmarshalling notification's extras wasn't able to find the `NotificationRequest` class. I worked around it by marshalling and unmarshalling the request myself.
# Test Plan
The `test-suite` passes on both platforms.
show more ...
|
| #
03034614 |
| 09-Mar-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Notification dismissal (#7284)
# Why
Current API allows this.
# How
- added support for dismissing notifications to the Android notification service
- added simple exp
[expo-notifications] Notification dismissal (#7284)
# Why
Current API allows this.
# How
- added support for dismissing notifications to the Android notification service
- added simple exported methods to notification presentation modules
- exported JS methods
In a separate pull request, in the future we could also implement `getDeliveredNotifications` since it is exposed by iOS and we could implement it on Android too by:
- persisting which notifications have been presented
- setting `deleteIntent` to an intent that will notify the service of the dismissal
- responding to `ACTION_MY_PACKAGE_REPLACED` — dismissing notifications — that's what Android does when the app is installed (would have to check if it's true in production mode too)
# Test Plan
Added a ~smoke test to `test-suite` which passes on both platforms.
show more ...
|
| #
56128cf9 |
| 18-Feb-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Presenting notifications (#6932)
# Why
Another feature for `expo-notifications`.
# How
On top of `@sjchmiela/expo-notifications-building-notifications`:
- added _prese
[expo-notifications] Presenting notifications (#6932)
# Why
Another feature for `expo-notifications`.
# How
On top of `@sjchmiela/expo-notifications-building-notifications`:
- added _presenter_ modules, which basically just pass in an object-y request to builders
# Test Plan
Added the most adorable tests I've ever seen:


show more ...
|