bug: PushNotifications registration & registrationError listeners not fired
See original GitHub issueBug Report
Capacitor Version
npx cap doctor
output:
Installed Dependencies: @capacitor/cli 1.4.0 @capacitor/core 1.4.0 @capacitor/ios 1.4.0 @capacitor/android 1.4.0 [success] Android looking great! 👌 Found 0 Capacitor plugins for ios: success] iOS looking great! 👌
Affected Platform(s)
- iOS
- Android
- Electron
- Web
Current Behavior
First I remove the app and on start up, the “permission alert” appears asking for notification permissions. Whether I accept or decline, no listener is fired on my real iOS device (iPhone Xs 13.1.3). However, when testing using the iOS Simulator, the registrationError
listener is indeed fired.
When I click on the “permission alert”, this is printed in the console:
APP ACTIVE ⚡️ TO JS {“isActive”:true} ⚡️ [log] - onAppStateChange {“isActive”:true}
So for some reason, this listener is fired instead.
Expected Behavior
PushNotifications listeners should fire after accepting/declining permissions.
Sample Code or Sample Application Repo
I am using Ionic + Vue.js.
PushNotifications.register();
PushNotifications.addListener('registration', token => {
console.log('Push registration success, token: ' + token.value);
});
PushNotifications.addListener('registrationError', error => {
console.log('Error on registration: ' + JSON.stringify(error));
});
PushNotifications.addListener('pushNotificationReceived', notification => {
console.log('Push received: ' + JSON.stringify(notification));
});
PushNotifications.addListener('pushNotificationActionPerformed', notification => {
console.log('Push action performed: ' + JSON.stringify(notification));
});
Other Technical Details
npm --version
output: 6.13.0
node --version
output: v12.9.1
pod --version
output (iOS issues only): 1.8.4
Issue Analytics
- State:
- Created 4 years ago
- Comments:10 (1 by maintainers)
Top GitHub Comments
Had this exact problem, even after reinstalling packages. Writing to the file solved it. Thanks!
I would wager it is related to this PR (the doc update came out in 1.4.0 and there was a small code change or two around the push code on iOS): https://github.com/ionic-team/capacitor/pull/2078