Skip to content
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

Notification not fired #562

Open
wants to merge 347 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
347 commits
Select commit Hold shift + click to select a range
49646a4
Adjusted old supportLibraryVersion variable to const format
andrehtissot Mar 29, 2020
0f72ce1
Adjusted old supportLibraryVersion variable to const format
andrehtissot Mar 29, 2020
9b4beab
Adjusted old supportLibraryVersion variable to const format
andrehtissot Mar 29, 2020
a0f0273
New the build uses variables from package.json
andrehtissot Mar 29, 2020
b031a91
Upgraded version to 4.5.0
andrehtissot Mar 29, 2020
9342279
Disabled injection of app id and key from google service to strings.xml
andrehtissot Mar 30, 2020
99dfd99
Update README.md
andrehtissot Mar 30, 2020
0ca8053
Update README.md
andrehtissot Mar 30, 2020
12d69ad
Update README.md
andrehtissot Mar 30, 2020
94d0d45
Hot fix for CDN failure
andrehtissot Apr 2, 2020
2da28e2
CDN programatically replacing the Github source when cocoapods minimu…
andrehtissot Apr 2, 2020
6e71c3d
Reading package.json on Android build is optional
andrehtissot Apr 4, 2020
ac6260c
Version upgraded to 4.5.4
andrehtissot Apr 4, 2020
239dbdc
Update FCMPlugin.gradle
andrehtissot Apr 4, 2020
d67ce66
Upgraded version to 4.5.5
andrehtissot Apr 4, 2020
fb5b3bf
4.5.1 date fix
andrehtissot Apr 4, 2020
58c4c33
Experiment to add onFirebaseDataNotificationIOS as to support FIRMess…
andrehtissot Mar 26, 2020
4af8554
Merge pull request #33 from andrehtissot/on-firebase-data-notificatio…
andrehtissot Apr 4, 2020
789ed4d
Version upgraded to 4.6.0
Apr 4, 2020
48d4883
Added onFirebaseDataNotificationIOS notes
andrehtissot Apr 4, 2020
58209ec
Create FUNDING.yml
andrehtissot Apr 8, 2020
e009363
Added donation badge
andrehtissot Apr 8, 2020
56fe06c
Update README.md
andrehtissot Apr 8, 2020
3c7819b
Avoiding running registerForRemoteNotifications on a non-main thread
andrehtissot Apr 8, 2020
883fd71
Update MyFirebaseMessagingService.java
andrehtissot Apr 8, 2020
f85a41a
Version upgraded to 4.6.1
andrehtissot Apr 10, 2020
e73c6cb
github file removed for now
andrehtissot Apr 10, 2020
3b8c06e
Removed support for iOS 9, cleanup and checking support with @available
andrehtissot Apr 11, 2020
732ff1d
Added automatic background mode inclusion to Info.plist
andrehtissot Apr 11, 2020
5b8a845
Added copy_google_service_files.js hook to also after install
andrehtissot Apr 11, 2020
592902e
Upgraded version to 5.0.0
andrehtissot Apr 11, 2020
31a2de7
Update .prettierrc
andrehtissot Apr 11, 2020
7385010
Upgraded Firebase Dependencies
andrehtissot Apr 11, 2020
264d2f1
Firebase's auto-swizzle disabled
andrehtissot Apr 11, 2020
346d567
Removed, soon-to-be unsupported, onFirebaseDataNotificationIOS method
andrehtissot Apr 11, 2020
0406a25
Removed deprecated Firebase upstream methods, iOS 9-specific implemen…
andrehtissot Apr 11, 2020
1f0d057
Removed, soon-to-be unsupported, notifyOfFirebaseDataMessage method
andrehtissot Apr 11, 2020
7c80827
Removed, soon-to-be unsupported, notifyOfFirebaseDataMessage method
andrehtissot Apr 11, 2020
d403e8b
Removed, soon-to-be unsupported, onFirebaseDataNotificationIOS method
andrehtissot Apr 11, 2020
2a425ee
Set version to 5.0.0-beta.0, as a prerelease
andrehtissot Apr 11, 2020
52e67d3
Fixed small version bug
andrehtissot Apr 11, 2020
2620633
Upgraded version to 5.0.0-beta.1
andrehtissot Apr 11, 2020
d5ca8e8
Delayed registerForNotifications to avoid issues with Watchdog
Apr 14, 2020
83cd413
Upgraded beta version
Apr 14, 2020
d348da9
Fixed registerForNotifications conditional exection
Apr 14, 2020
54ba17f
Cleanup unused android code and removed androidx imported classes
Apr 15, 2020
87a1d90
Upgraded version to 5.0.0-beta.3
Apr 15, 2020
392cf16
Upgraded to v5.0.0
andrehtissot Apr 16, 2020
7358375
Version 5.0.0 announced
andrehtissot Apr 16, 2020
4c438f9
Update README.md
andrehtissot Apr 16, 2020
238dfe0
Replace UIWebView for WKWebView
andrehtissot Apr 18, 2020
de02dc9
Update README.md
andrehtissot Apr 18, 2020
8ae2a99
Update README.md
andrehtissot Apr 18, 2020
1d98435
FCMPlugin.requestPushPermissionIOS is now required
andrehtissot Apr 18, 2020
f97fbc6
Small contextual pointer creation improvement
andrehtissot Apr 18, 2020
bb7db86
Fixed initialisation issue
andrehtissot Apr 18, 2020
9db9edc
Added 6.0.0 description
andrehtissot Apr 18, 2020
ee9f909
Hotfix to avoid compatibility issue with cordova-plugin-ionic-webview
andrehtissot Apr 20, 2020
803ec57
Small version typo fixed
andrehtissot Apr 20, 2020
9edc9a4
Removed commented configuration
andrehtissot Apr 20, 2020
3d91602
Added createNotificationChannelAndroid feature.
andrehtissot Apr 24, 2020
08e5a9b
Upgraded version to 6.1.0
andrehtissot Apr 24, 2020
3f1adf9
Added Version 6.1.0 anouncement
andrehtissot Apr 24, 2020
72cca36
Update README.md
andrehtissot Apr 24, 2020
df94ff6
Implemented iOS 9 support for requestPushPermission and hasPushPermis…
andrehtissot Apr 26, 2020
56c06d6
Implemented iOS 9 support for didReceiveRemoteNotification
andrehtissot Apr 26, 2020
2aa4c98
Added deprecation exceptions for old iOS 9 implementation.
andrehtissot Apr 26, 2020
c73fe2d
Merge pull request #63 from andrehtissot/ios9-support-wip
andrehtissot Apr 26, 2020
986d566
Update README.md
andrehtissot Apr 26, 2020
4d00ea3
Upgraded version to 6.2.0
andrehtissot Apr 26, 2020
9bdafb1
Upgraded to 6.2.1
andrehtissot Apr 26, 2020
b5c15f7
Add custom sound, lights, vibrations for Android channel notifications.
av-alex Apr 27, 2020
5b6da26
Merge pull request #65 from avoskresenskiy-alytics/android-channel-so…
andrehtissot Apr 27, 2020
e9f0c54
Added non-definition (device's default) value instead of false, for t…
andrehtissot Apr 27, 2020
2fe1747
Upgraded version to 6.3.0
andrehtissot Apr 27, 2020
99d9f8a
Anounced version 6.3.0
andrehtissot Apr 27, 2020
0d44eed
bug fix: app not running: push message received but when notification…
cesarak May 5, 2020
1481137
Merge pull request #66 from cesarak/fix-push-inactive
andrehtissot May 5, 2020
4fe3acc
Upgraded version to 6.3.1
andrehtissot May 5, 2020
54b83aa
Now requestPushPermissionIOS returns from callback true (permission g…
andrehtissot May 21, 2020
a4d99ef
Added RequestPushPermissionIOSOptions for higher control of current i…
andrehtissot May 21, 2020
b4ed82c
Version upgraded
andrehtissot May 21, 2020
4b0a677
Anounced version 6.4.0
andrehtissot May 21, 2020
94190bc
Announced version 6.4.0
andrehtissot May 21, 2020
2f22e52
Update README.md
andrehtissot May 23, 2020
2a95eb3
Announcing FCM Image Support plugin
andrehtissot May 23, 2020
a7c2b5f
Now, on the message service "onNewToken", the plugin triggers "onToke…
andrehtissot May 26, 2020
f2fbe71
FCMPlugin.requestPushPermissionIOS callback fixed for Android
andrehtissot May 26, 2020
24d910d
Merge branch 'master' of github.com:andrehtissot/cordova-plugin-fcm-w…
andrehtissot May 26, 2020
cc61314
Version upgraded to 6.4.1
andrehtissot May 26, 2020
06a924a
Small check for undefined on FCMPlugin.requestPushPermissionIOS
andrehtissot May 26, 2020
5eaec5c
Work in progress. Documentation generation work fine, but cordova is …
andrehtissot May 30, 2020
e62b0e5
FCMPlugin js interface refactored
andrehtissot May 31, 2020
9a9dc32
Ionic-specific wrapper now generated with d.ts
andrehtissot May 31, 2020
5b8eeb7
IonicNativePlugin methods implemented
andrehtissot Jun 2, 2020
a9ac9e9
Now www build is set in src/www
andrehtissot Jun 2, 2020
60238c0
NGX first build done
andrehtissot Jun 2, 2020
2aa072d
Ionic definition inspired on current version and ngx
andrehtissot Jun 2, 2020
7d857bb
ionic v4-compatible first build
andrehtissot Jun 2, 2020
a79d2e7
Debugging compatibility with v4
andrehtissot Jun 2, 2020
9fae566
/ionic/v4 Works well
andrehtissot Jun 3, 2020
151f97f
Fixed directory importing source
andrehtissot Jun 3, 2020
de8039a
Changed version to v7.0.0-beta.0
andrehtissot Jun 3, 2020
803c967
tslint script improvement
andrehtissot Jun 3, 2020
b33de84
Announced Version 7.0.0 Beta
andrehtissot Jun 4, 2020
5a512f2
Added summary
andrehtissot Jun 4, 2020
d827173
Added warning for onNotification()
andrehtissot Jun 4, 2020
c25a30f
Fixed incompatibility with [email protected]
andrehtissot Jun 7, 2020
12e3693
Upgraded version to 7.0.0-beta.1
andrehtissot Jun 7, 2020
995a0d4
Lowered cordova-ios required version;
andrehtissot Jun 8, 2020
03fd751
Upgraded version to 7.0.0-beta.2
andrehtissot Jun 8, 2020
cd8430a
improved ionic/ngx support.
andrehtissot Jun 8, 2020
c5de903
Update README.md
andrehtissot Jun 14, 2020
f2dac1d
Update README.md
andrehtissot Jun 14, 2020
1052e3a
Update README.md
andrehtissot Jun 14, 2020
5a0a413
For ionic, now listening the the correct event name onTokenRefresh.
andrehtissot Jun 14, 2020
7addec0
Merge branch 'v7.0.0-beta' of github.com:andrehtissot/cordova-plugin-…
andrehtissot Jun 14, 2020
260e91a
Small improvements for onNotification and onTokenRefresh and removed …
andrehtissot Jun 22, 2020
ce67c9f
Dependencies updated
andrehtissot Jun 22, 2020
1084e3f
FCM.onNotification() and FCM.onTokenRefresh() now returns disposable.
andrehtissot Jun 22, 2020
0e93182
typings/index now has new IDisposable
andrehtissot Jun 23, 2020
2e23c2b
Upgraded version to 7.0.0-beta.5
andrehtissot Jun 23, 2020
57491fc
Merge branch 'v7.0.0-beta' of github.com:andrehtissot/cordova-plugin-…
andrehtissot Jun 23, 2020
77e8694
Renamed Android plugin preferences AND fixed new EventTarget crash
andrehtissot Jun 27, 2020
52eaa29
Upgraded version to 7.0.0
andrehtissot Jun 27, 2020
73c6a90
Removed unnecessary android directory
andrehtissot Jun 27, 2020
48d3730
Remove unnecessary ANDROID_SUPPORT_LIBRARY_VERSION preference
andrehtissot Jun 27, 2020
52177ed
Installation and Push Payload Configuration added to readme
andrehtissot Jun 27, 2020
06f036e
Update README.md
andrehtissot Jun 27, 2020
f503e6a
Update README.md
andrehtissot Jun 27, 2020
bf28111
Update README.md
andrehtissot Jun 27, 2020
5857144
Update README.md
andrehtissot Jun 27, 2020
82fd67c
Update README.md
andrehtissot Jun 27, 2020
bcd1aa6
Update README.md
andrehtissot Jun 27, 2020
3539fbb
Update README.md
andrehtissot Jun 27, 2020
bde0740
Update README.md
andrehtissot Jun 27, 2020
d884d33
Update README.md
andrehtissot Jun 27, 2020
c5b374f
Update README.md
andrehtissot Jun 27, 2020
e515b26
Update README.md
andrehtissot Jun 27, 2020
4f657a5
Update README.md
andrehtissot Jun 28, 2020
f5ee22a
Update README.md
andrehtissot Jun 28, 2020
c6828f8
Avoided JS injection, by having a js event bridge.
andrehtissot Jun 28, 2020
d7975d9
Version upgraded to 7.0.1
andrehtissot Jun 28, 2020
8153678
Update README.md
andrehtissot Jun 28, 2020
830a418
Update README.md
andrehtissot Jun 29, 2020
16c2e40
Update README.md
andrehtissot Jun 29, 2020
de24ee8
Update README.md
andrehtissot Jun 29, 2020
51c16ee
Update README.md
andrehtissot Jun 29, 2020
b3a9f14
Update README.md
andrehtissot Jun 30, 2020
9959b0f
Simplified import/export on .d.ts files
andrehtissot Jul 1, 2020
6c15ded
Merge branch 'master' of github.com:andrehtissot/cordova-plugin-fcm-w…
andrehtissot Jul 1, 2020
e28ec40
Upgraded version to 7.0.2
andrehtissot Jul 1, 2020
b88ea5f
Update README.md
andrehtissot Jul 1, 2020
279d56d
Update README.md
andrehtissot Jul 1, 2020
f897e6a
Create FUNDING.yml
andrehtissot Jul 3, 2020
192f792
Update README.md
andrehtissot Jul 3, 2020
a54f002
Build changed to simplify ionic/v4/FCM.js
andrehtissot Jul 7, 2020
4dfb2dd
Update README.md
andrehtissot Jul 12, 2020
c9c1f93
Update README.md
andrehtissot Jul 12, 2020
2c2c941
Improved install_ionic_dependencies compatibility with windows
andrehtissot Jul 12, 2020
fcfb562
Merge branch 'master' of github.com:andrehtissot/cordova-plugin-fcm-w…
andrehtissot Jul 12, 2020
aac238a
SImplified main ionic and ionic/ngx builds
andrehtissot Jul 13, 2020
0b29726
Upgraded version to 7.0.4
andrehtissot Jul 13, 2020
551e426
Renamed extension of script to have it running also on windows
andrehtissot Jul 13, 2020
d294594
Upgraded version to 7.0.5
andrehtissot Jul 13, 2020
c8a3e55
Simplified imports for ionic/ngx
andrehtissot Jul 14, 2020
bd6a1d3
Upgraded version to 7.0.6
andrehtissot Jul 14, 2020
959e58f
Fixed typings
andrehtissot Jul 14, 2020
77d8567
- Removed auto-cdnfy due to service issues;
andrehtissot Jul 16, 2020
33e1958
Upgraded version to 7.0.7
andrehtissot Jul 16, 2020
7e9a94a
Update README.md
andrehtissot Jul 16, 2020
3979371
How it works improved
andrehtissot Jul 17, 2020
c3b3413
Update README.md
andrehtissot Jul 19, 2020
be93b05
Update README.md
andrehtissot Jul 19, 2020
ee4d112
Update README.md
andrehtissot Jul 20, 2020
474ff55
Less annoying post-install dependencies for ionic
andrehtissot Jul 20, 2020
41116ec
Update README.md
andrehtissot Jul 20, 2020
2faa697
Removed explicit library iOS requirement
andrehtissot Jul 20, 2020
a2b5019
Merge branch 'master' of github.com:andrehtissot/cordova-plugin-fcm-w…
andrehtissot Jul 20, 2020
9930f7f
Upgraded version to 7.0.8
andrehtissot Jul 20, 2020
6ad3597
Convertion of NSData* into NSDictonary* fix
andrehtissot Jul 21, 2020
91af03e
Added log for getAPNSToken
andrehtissot Jul 21, 2020
4ce8f00
getAPNSToken log changed place
andrehtissot Jul 21, 2020
dcfb540
Fixed local variable exception is accessed from within inner class error
andrehtissot Jul 21, 2020
46164d2
Version upgraded from 7.0.8 to 7.0.9
andrehtissot Jul 21, 2020
6d60bf6
Small readme improvement
andrehtissot Jul 25, 2020
e2c592d
Update README.md
andrehtissot Jul 29, 2020
b491c36
Update issue templates
andrehtissot Aug 1, 2020
d3e5cb6
Correct an explanation
Gregordy Aug 10, 2020
bfc2b1b
Merge pull request #152 from Gregordy/patch-1
andrehtissot Aug 16, 2020
7a340b8
Added required global cordova version 9+
andrehtissot Aug 16, 2020
2628369
Minimal cordova required is now 9, due to cocoapods configuration,
andrehtissot Aug 16, 2020
dfe78b7
Upgraded version to 7.0.10
andrehtissot Aug 16, 2020
ad539da
iOS: Added title, subtitle, body and badge. From notfication to the d…
andrehtissot Aug 16, 2020
f620e0f
Upgraded version to 7.1.0
andrehtissot Aug 16, 2020
7de9266
Changelog is now available in its own file
andrehtissot Aug 16, 2020
4d280fd
Changelog is now available in its own file
andrehtissot Aug 16, 2020
007f8bf
Small android code refactor
andrehtissot Aug 16, 2020
4b36138
iOS: Now values sent as data on push payload are not overwritten by n…
andrehtissot Aug 16, 2020
6be9fb0
Version upgraded to 7.1.1
andrehtissot Aug 16, 2020
7e6d4ba
Removed [email protected] due to reported incompatibility
andrehtissot Aug 16, 2020
1e9c6fa
7.1.1 update improved
andrehtissot Aug 16, 2020
921e7b2
Added "Push Notifications on iOS" section
andrehtissot Aug 22, 2020
e723046
Typo fix
andrehtissot Aug 22, 2020
19afd26
Update README.md
andrehtissot Aug 22, 2020
65ceb35
Added deleteInstanceId method.
andrehtissot Aug 22, 2020
f25c6eb
Upgraded version to 7.2.0
andrehtissot Aug 22, 2020
efa8657
Added FCM.deleteInstanceId()
andrehtissot Aug 22, 2020
df6dc26
Update README.md
andrehtissot Aug 22, 2020
1a83031
Small text improvement
andrehtissot Aug 30, 2020
d4e2caf
Removed optional Firebase/Analytics
andrehtissot Aug 30, 2020
c6b84b9
Upgraded version to 7.3.0
andrehtissot Aug 30, 2020
e223838
Merge branch 'master' of github.com:andrehtissot/cordova-plugin-fcm-w…
andrehtissot Aug 30, 2020
22e2387
Update README.md
andrehtissot Sep 6, 2020
12bbbcb
Fixed initialPushPayload being set by non-tapped notifications
andrehtissot Sep 6, 2020
3b23348
Upgraded version to 7.3.1
andrehtissot Sep 6, 2020
5aba553
Follow breaking change of didReceiveRegistrationToken signature of Fi…
QuentinFarizon Oct 28, 2020
67c7e73
Merge pull request #190 from QuentinFarizon/fix_firebase_pod_7.0.0
andrehtissot Nov 1, 2020
d86faef
Upgraded node dependencies
andrehtissot Nov 1, 2020
3803b7f
Upgraded Android dependencies
andrehtissot Nov 1, 2020
43dd411
Upgraded version to 7.4.0
andrehtissot Nov 1, 2020
9cf95f1
Update README.md
andrehtissot Nov 1, 2020
46c0aa8
Update README.md
andrehtissot Nov 1, 2020
b516c35
Testing omission of ionic dep install for pure cordova projects
andrehtissot Nov 8, 2020
ccda23f
Fixed ionic install script
andrehtissot Nov 8, 2020
01b1bbe
Improved ionic install skipped message
andrehtissot Nov 8, 2020
7bb368e
Added chdir
andrehtissot Nov 8, 2020
f71a9d9
Ionic dependency install is now skipped for pure cordova projects
andrehtissot Nov 8, 2020
c9d7e13
Upgraded version 7.4.0 to 7.5.0
andrehtissot Nov 8, 2020
7a3558b
Adding IOS_FIREBASE_MESSAGING_VERSION plugin variable.
andrehtissot Nov 8, 2020
11251c8
Small typo fix
andrehtissot Nov 8, 2020
d436e68
Upgraded version to 7.6.0
andrehtissot Nov 8, 2020
fb456df
Updaded plugin Preferences table
andrehtissot Nov 8, 2020
1c43714
Added sh text styling
andrehtissot Nov 8, 2020
0e0a09a
Fix install error on windows
Allisson95 Dec 7, 2020
394864c
Merge pull request #207 from Allisson95/master
andrehtissot Dec 11, 2020
77b8f06
Upgraded version to 7.6.1
andrehtissot Dec 11, 2020
4912309
Upgraded dependencies
andrehtissot Dec 11, 2020
05c828d
Downgraded required cordova and cordova-android versions
andrehtissot Dec 11, 2020
002fb2a
Downgraded required cordova-android version further
andrehtissot Dec 11, 2020
96b740e
Now src/android/FCMPlugin.gradle is more resilient
andrehtissot Dec 11, 2020
3a70fb5
Upgraded version to 7.7.0
andrehtissot Dec 11, 2020
48b7eb1
Fixed umlaut problems on iOS
Jan 14, 2021
f870d4b
Merge pull request #220 from yeener/umlaut-fix-ios
andrehtissot Feb 1, 2021
94e8826
Upgraded default IOS_FIREBASE_MESSAGING_VERSION
andrehtissot Feb 1, 2021
be75cce
Now, on iOS, FCM.getToken won't return if the current value is nil
andrehtissot Feb 3, 2021
9e92cf9
hasPermission now supports Android
andrehtissot Feb 3, 2021
b17d06f
Upgraded version and added changelog
andrehtissot Feb 3, 2021
460e901
Update README.md
andrehtissot Oct 13, 2021
7687e25
Update README.md
andrehtissot Oct 13, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
custom: ['https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=B33LA4QVUGVBW&source=url']
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Environment (please complete the following information):**
- Developer OS and version: [e.g. MacOS Mojave]
- Mobile OS and version: [e.g. iOS 13.0.1]
- Cordova CLI version (cordova --version): [e.g. 9.0.0 ]
- Cocoapods version (pod --version): [e.g. 9.0.0]
- Xcode version (xcodebuild -version): [e.g. 11.1.0]

**Package.json**
Please add your package.json, as to provide the dependencies version.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,4 @@ Temporary Items
.apdisk

npm-debug.log
node_modules
7 changes: 7 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"semi": false,
"singleQuote": true,
"trailingComma": "none",
"printWidth": 100,
"tabWidth": 4,
}
311 changes: 311 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,311 @@
# Changelog

## Version 7

### Version 7.8.0 (03/02/2020)

- IOS_FIREBASE_MESSAGING_VERSION upgraded to 7.4.0;
- FCM.hasPermission now supports Android;
- On iOS, getToken will now wait until fcm token is defined to return it;
- FCM.getInitialPushPayload now uses UTF8 instead of ISOLatin;

### Version 7.7.0 (11/12/2020)

Downgraded Cordova and Cordova-Android minimal required versions.

### Version 7.6.1 (11/12/2020)

Fixed auto install of ionic-specific dependencies on Windows

### Version 7.6.0 (08/11/2020)

Added IOS_FIREBASE_MESSAGING_VERSION plugin variable to force a fixed Firebase/Messaging pod version.

### Version 7.5.0 (08/11/2020)

For pure Cordova projects, ionic dependencies are skipped for "ionic", "ionic/ngx" and "ionic/v4".

### Version 7.4.0 (01/11/2020)

Upgraded Android and Node depenencies.

### Version 7.3.1 (06/09/2020)

Android: Avoided setting initialPushPayload from a non-tapped notification.

### Version 7.3.0 (30/08/2020)

Removed optional Firebase/Analytics iOS dependency.

### Version 7.2.0 (23/08/2020)

Added deleteInstanceId to allow user's "resetting" Firebase session (https://firebase.google.com/support/privacy/manage-iids#delete_an_instance_id).

### Version 7.1.1 (16/08/2020)

iOS: Values sent as notification on push payload should never overwrite values sent as data.

Android: tapping action small refactor.

Ionic: Removed tslib dependency due to reported incompatibility.

### Version 7.1.0 (16/08/2020)

For iOS: Added `title`, `subtitle`, `body` and `badge` to the data given to JS.

This data is coming from notification part of the push payload, instead of only from data.

Android has been responding this way for a long time with `title` and `body`.

### Version 7.0.10 (16/08/2020)

Defined minimal version of "cordova" package supported as version 9. Due to issues of supporting lower versions and "cordova-ios@5+" without deprecated configuration.

Removed explicit definition of "Firebase/Analytics" and "Firebase/Messaging" due to lack of matching “>=” definitions between plugins.

### Version 7.0.9 (21/07/2020)

getInitialPushPayload: Conversion of NSData* into NSDictonary* fix -- Thanks to @medeirosrafael for debugging and fixing it!

### Version 7.0.8 (20/07/2020)

Avoided execution of install_ionic_dependencies.bat after the app is installed;

Removed old framework dependencies -- Thanks for @QuentinFarizon, for pointing it out!

### Version 7.0.7 (17/07/2020)

Removed auto-cdnfy due to service issues;

Set AndroidXEnabled for cordova-android-9.0.0 (https://cordova.apache.org/announcements/2020/06/29/cordova-android-9.0.0.html).

### Version 7.0.6 (14/07/2020)

Simplified ionic/ngx/FCM.d.ts imports

### Version 7.0.5 (13/07/2020)

Renamed extension scripts/install_ionic_dependencies.sh to .bat, to have it running on windows.

### Version 7.0.4 (13/07/2020)

Simplified ionic/FCM.js and ionic/ngx/FCM.js files to ease building with them.

Improved scripts/install_ionic_dependencies.sh windows support.

### Version 7.0.3 (07/07/2020)

Simplified ionic/v4/FCM.js file by setting the FCM function in the global context.

### Version 7.0.2 (01/07/2020)

Simplified .d.ts files by removing the new "type" from imports and exports.

### Version 7.0.1 (28/06/2020)

Replaced native to JS context messaging, from JS injection to event subscription.

### Version 7.0.0 (27/06/2020)

Breaking update released. Please pay atention to the changes in plugin preferences and API methods.

## Version 6

### Version 6.4.0 (21/05/2020)

The `FCMPlugin.requestPushPermissionIOS` function now, not only triggers the request alert, but also returns, as boolean, if the permission was given.

```javascript
FCMPlugin.requestPushPermissionIOS(
function(wasPermissionGiven) {
console.info("Was permission given: "+wasPermissionGiven);
},
function(error) {
console.error(error);
},
ios9Support: {
timeout: 10, // How long it will wait for a decision from the user before returning `false`
interval: 0.3 // How long between each permission verification
}
);
```

Note:
On iOS 9, there is no way to know if the user has denied the permissions or he has not yet decided.
For this reason, specifically for iOS 9, after presenting the alert, a timed loop waits until it knows that the user has either given the permissions or that the time has expired.
On iOS 10+, the return is given as soon as the user has selected, ignoring these options.

### Version 6.3.0 (27/04/2020)

FCMPlugin.createNotificationChannelAndroid improved, now accepting three other options: "sound", "lights" and "vibration", like in:
```javascript
FCMPlugin.createNotificationChannelAndroid({
id: "urgent_alert", // required
name: "Urgent Alert", // required
description: "Very urgent message alert",
importance: "high", // https://developer.android.com/guide/topics/ui/notifiers/notifications#importance
visibility: "public", // https://developer.android.com/training/notify-user/build-notification#lockscreenNotification
sound: "alert_sound", // In the "alert_sound" example, the file should located as resources/raw/alert_sound.mp3
lights: true, // enable lights for notifications
vibration: true // enable vibration for notifications
});
```

### Version 6.2.0 (26/04/2020)

IOS 9 support reintroduced.

### Version 6.1.0 (24/04/2020)

For Android, some notification properties are only defined programmatically, one of those is channel.
Channel can define the default behavior for notifications on Android 8.0+.
This feature was meant to bring the channel-only configurations importance and visibility:

```javascript
FCMPlugin.createNotificationChannelAndroid({
id: "urgent_alert", // required
name: "Urgent Alert", // required
description: "Very urgent message alert",
importance: "high", // https://developer.android.com/guide/topics/ui/notifiers/notifications#importance
visibility: "public", // https://developer.android.com/training/notify-user/build-notification#lockscreenNotification
});
```

:warning: Once a channel is created, it stays unchangeable until the user uninstalls the app.

To have a notification to use the channel, you have to add to the push notification payload the key `android_channel_id` with the id given to `createNotificationChannelAndroid` (https://firebase.google.com/docs/cloud-messaging/http-server-ref#notification-payload-support)

### Version 6.0.1 (20/04/2020)

As a hotfix to avoid incompatibility with cordova-plugin-ionic-webview, the the changes requested for cordova support (https://cordova.apache.org/howto/2020/03/18/wkwebviewonly) will not be automatic applied.

### Version 6.0.0 (18/04/2020)

On iOS, first run doesn't automatically request Push permission.

The permission, as it is still required, may now be requested from javascript at any moment by executing:
```javascript
//FCMPlugin.requestPushPermissionIOS( successCallback(), errorCallback(err) );
FCMPlugin.requestPushPermissionIOS();
```

## Version 5
Minor changes omitted.

### Version 5.1.0 (18/04/2020)

Replaced `UIWebView` with `WKWebView`, as required by Apple (https://developer.apple.com/documentation/uikit/uiwebview).

For a smooth upgrade, the changes requested for cordova support (https://cordova.apache.org/howto/2020/03/18/wkwebviewonly) are applied automatically.

### Version 5.0.0 (16/04/2020)

For both platforms:
- Not only copies, from application root, the Google Services configuration files on build, but also on install;
- `onFirebaseDataNotificationIOS` removed, as relied on upstream socket connection, which will is deprecated and will be removed in Firebase 7 (https://firebase.google.com/support/release-notes/ios#fcm, announced in February 25, 2020).

For iOS:
- On install "Remote Notification" is set as a "Background Mode" capacity automatically;
- Firebase now is handled manually, due to complications of auto-swizzling;
- Firebase dependencies are now set to 6.21.0;
- Delayed Firebase registration, by 300ms, to avoid deadlock issue with Watchdog;
- Removed support for iOS 9.

For Android:
- Demonstrative code, for custom notifications, was removed and its imports of androidx classes to improve compatibility with older cordova plugins.

## Version 4
Minor changes omitted.

### Version 4.6.0 (04/04/2020)

For the IOS, if app is on the foreground and the app receives a `data` push notification, the data can be retrieved by setting the callback to the new method: `FCMPlugin.onFirebaseDataNotificationIOS` [Deprecated].

```javascript
FCMPlugin.onFirebaseDataNotificationIOS(
function(payload) {
console.info("Message id: "+payload.messageID)
console.info("Data parameters: "+payload.appData)
}
);
```

This method is specifically implemented on IOS due to specific payload format ([src/FCMPlugin.d.ts](https://github.com/andrehtissot/cordova-plugin-fcm-with-dependecy-updated/blob/master/src/FCMPlugin.d.ts)).


### Version 4.5.1 (30/03/2020)

Due to a bug introduced in v4.4.3, the file `platforms/android/app/src/main/res/values/strings.xml` had two tags included on install, tags which, on build, are also included by [email protected]. Hence failing the build process.

To apply the fix, install the new version and remove these two tags from your values/strings.xml:
* `<string name="google_app_id">...</string>`
* `<string name="google_api_key">...</string>`

### Version 4.2.0 (24/02/2020)

`ANDROID_DEFAULT_NOTIFICATION_ICON` included as a variable.

To define the default icon for notifications (`com.google.firebase.messaging.default_notification_icon`), install this plugin like:
```bash
cordova plugin add cordova-plugin-fcm-with-dependecy-updated --variable ANDROID_DEFAULT_NOTIFICATION_ICON="@mipmap/notification_icon"
```

### Version 4.1.0 (26/10/2019)

Older notifications can be cleared from notification center.
Works on both IOS and Android.

```javascript
//FCMPlugin.clearAllNotifications( successCallback(msg), errorCallback(err) );
FCMPlugin.clearAllNotifications();
```

### Version 4.0.0 (12/10/2019)
The old `FCMPlugin.getToken` is focused on retrieving the FCM Token.
For the IOS, APNS token can now be retrieved by the new method:

```javascript
FCMPlugin.getAPNSToken(
function(token) {
console.info("Retrieved token: "+token)
},
function(error) {
console.error(error);
}
);
```

On android, it will always return `null`.

The APNS token, once given, should not change for the same user (as commented on in https://stackoverflow.com/questions/6652242/does-the-apns-device-token-ever-change-once-created).

Although, contrary to APNS, the FCM tokens do expire, and for this reason, `FCMPlugin.onTokenRefresh` will be called with the new one FCM token.

## Version 3
Minor changes omitted.

### Version 3.2.0 (16/09/2019)

#### Checking for permissions
Useful for IOS. On android, it will always return `true`.

```javascript
FCMPlugin.hasPermission(function(doesIt){
// doesIt === true => yes, push was allowed
// doesIt === false => nope, push will not be available
// doesIt === null => still not answered, recommended checking again later
if(doesIt) {
haveFun();
}
});
```

## Version 2
Minor changes omitted.

### Version 2.1.2 (03/06/2017)
- Tested on Android and iOS using Cordova cli 6.4.0, Cordova android 6.0.0 and Cordova ios 4.3.1
- Available sdk functions: onTokenRefresh, getToken, subscribeToTopic, unsubscribeFromTopic and onNotification
- 'google-services.json' and 'GoogleService-Info.plist' are added automatically from Cordova project root to platform folders
- Added data payload parameter to check whether the user tapped on the notification or was received while in foreground.
- **Free testing server available for free! https://cordova-plugin-fcm.appspot.com**
19 changes: 19 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Loading