-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(PushNotifications): Make register method to return if permission was granted #2324
Conversation
NOTE: This conflicts with the proposed approach in #2249. Preferring the approach codified here as opposed to ^^ as it allows a consuming app to simply 'await' the response as per the standard approach documented in most Capacitor native APIs, rather than having to register / maintain event listeners. |
For what it's worth, I'd prefer this method as well ☝️ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you move the unregister functionality to a separate PR?
And it would need to be added in the types and implemented for Android too.
And about the register change, the same, the types should be updated too, and in Android, as it doesn't ask for permission, I think it should just always return granted.
unregister()
method
@jcesarmobile - Ok, |
@jcesarmobile - Anything else you want changing on this, or is this good to go? |
Since it changes the API it's a breaking change, so won't be merging until I start working on Capacitor 2.0 You can send a separate PR with the unregister implementation, that could be merged before 2.0 since it's a new API |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thanks!
* upstream/master: (50 commits) feat(Device): Add getBatteryInfo function (ionic-team#2435) fix(doctor): add electron checks (ionic-team#2434) chore(android): target SDK version 29 (ionic-team#2433) feat(android): update gradle and dependencies (ionic-team#2431) fix(ios): Make Clipboard plugin return errors (ionic-team#2430) feat(android): Handle onDestroy lifecycle event in plugins (ionic-team#2421) docs(ce-plugins): Remove or replace deprecated plugins (ionic-team#2419) feat(ios): change native location accuracy values (ionic-team#2420) docs(ce-guides): Remove dead link (ionic-team#2418) docs(network): Remove example guide because of dead link (ionic-team#2417) feat(electron): Remove injectCapacitor function (ionic-team#2415) fix(android): plugin retained events not being retained if listeners were empty (ionic-team#2408) chore(android): remove unused launch_splash.xml (ionic-team#2411) feat(Filesystem): Remove createIntermediateDirectories from MkdirOptions (ionic-team#2410) feat(android): use Fused Location Provider on Geolocation plugin (ionic-team#2409) fix(toast): unify duration across platforms (ionic-team#2340) feat(PushNotifications): Make register method return if permission was granted (ionic-team#2324) chore(circleci): update Xcode and remove install-cocoapods job (ionic-team#2402) chore(cli): fix tests for newer node versions (ionic-team#2403) fix(android): return original camera image if edition was canceled (ionic-team#2358) ...
I've added a new |
Rather than simply calling
call.success()
on iOS as soon as a user requests permissions (regardless of result), this adds a completion that allows the user toawait
the result in their app and passes back the response or error.