Commit Graph
92 Commits
Author SHA1 Message Date
Morgan Chen 8fa6431ad5 Update environment checks (#5056)
* update environment checks

* replace deprecated macro

* update GoogleUtilities changelog
2020-03-10 15:39:03 -07:00
Chen Liang 1fb6a77a8b Add github action for Messaging (#4970) 2020-02-26 11:46:30 -08:00
Chen Liang a310248f49 Make Firebase Storage compile and work in independent watch app (#4955) 2020-02-25 14:06:40 -08:00
Chen Liang 27c4898cec Deprecating FCM Direct Channel API (#4710) 2020-02-18 10:36:39 -08:00
Chen Liang d3d27559cc Add independent watch sample app for Messaging (#4893) 2020-02-13 15:52:58 -08:00
Chen Liang f4ae4a4416 re-enable style script for messaging (#4858) 2020-02-07 14:27:18 -08:00
Chen Liang 1dad9c5c0e use secure coding and secure archiving for messaging (#4848) 2020-02-07 12:53:57 -08:00
Maksym Malyhin 25f626ca17 FCM: async remove database in FIRMessagingRmqManager (#4771)
* Add tests for removeDatabase deadlock

* Cleanup

* Cleanup and comments.

* FIRMessagingRmqManager: async remove database

* FIRMessagingRmqManager: async remove DB test fixes.

* Fix trailing spaces

* Cleanup

* FIR_MESSAGING_ASSERTIONS_BLOCKED handling added. FIR_MESSAGING_ASSERTIONS_BLOCKED is set in google3 tests

* Fix blaze tests
2020-02-03 15:59:03 -05:00
Maksym Malyhin 1bc3255436 Firebase Installations: validation of FIROptions parameters (#4683)
* FIS: Throw exception on incomplete Firebase config.

* API docs updated.

* FirebaseInstallations bump minor version: 1.1.0

* Fix tests

* Text fixed

* Make exception message more informative

* Fix Remote Config tests.

* Tests updated to use GCMSenderID if projectID is not available.

* Use `GCMSenderID` when `projectID` is not available.

* ./scripts/style.sh

* Comments

* GCMSenderID and projectID validation updated.

* Comment

* FirebaseInstallations: version bump to 1.0.1.

* FIS changelog

* FirebaseInstallations: version bump to 1.1.0

* FIS and Core changelogs.

* Changelogs remove GCMSenderID

* Typo

* Typo

* fix link

* Revert Core changelog

* FIS changelog fix.
2020-01-16 16:13:49 -05:00
Maksym Malyhin 71a001ee44 FCM: fix distant future date in the tests. (#4667) 2020-01-13 14:00:49 -05:00
Chen Liang e4456c011b Enables Firebase Messaging push notification function on watch only and independent watch app (#4016) 2019-12-23 16:45:19 -08:00
Maksym MalyhinandChen Liang f62c7ddcec IID: version dependent on FirebaseInstallations (#4533)
* Firebase Installations: Instance ID now uses FIS under the hood. (#3398)

* Fix merge errors

* Use modular import for FIRInstanceID_Private.h

* Use modular imports for FirebaseInstanceID.h (#3509)

* Changes missing during the fix.

* Changes missing during merge.

* Fix header import.

* ./scripts/style.sh

* Fix FCM tests. (#3888)

* Fix IID FCM token check.

* FirebaseInstallation: merge master into FIS integration branch (#4076)

* Fix IID FCM token check.

* Unused constant deleted.

* FCM tests: fix bad merge.

* Remote Config test app: use local IID and FIS. (#4089)

* token request should pass through if token is not fresh (#4104)

* Merge errors fix.

* IID with FIS: send FIS auth token with IID token request (#4152)

* FIRInstanceIDTokenOperation: add FIS auth token to the IID token request.

* IID tests: don't use FIS private headers.

* IID: indication of compatibility with FIS (#4262)

* FIS: IID incompatible version exception.

* FirebaseInstallations.podspec: set preprocessor flags based on env vars.

* FIS Travis: set required env vars

* /scripts/style.sh

* IID: method to indicate FIS usege added.

* FIS: FIRInstantiationTimingEagerInDefaultApp

* FIS: FIRInstantiationTimingAlwaysEager

* IID: make compatibility method static.

* Make -[FIRInstanceID appInstanceID:] safe to be called from any thread (#4482)

* IID: use a cached value of FID for -[FIRInstanceID appInstanceID:]

* TODO comment

* TODO updated

* FirebaseInstallations: prepare IID with FIS dependency for release (#4522)

* Bump FIrebaseInstallations to 1.0.0

* Travis: remove mm/fis-integration-master branch

* Travis: if_changed script updated to reflect IID dependency on FIS.

* Revert "Travis: remove mm/fis-integration-master branch"

This reverts commit 534dff990a.

* Travis: remove mm/fis-integration-master branch (#4526)

* Formatting and spelling.

* Firebase example proj: pod deintegrate

Co-authored-by: Chen Liang <chliang@google.com>
2019-12-20 10:54:11 -05:00
Chen Liang fcc2aabae8 Fix a few misuse of OCMock in Messaging and InstanceID (#4363) 2019-11-19 19:21:26 -08:00
Chen Liang 54b1458ebb Remove unnecessary rmq database operations in unit tests. (#4236) 2019-11-06 20:11:15 -08:00
Chen Liang 67de928005 move database operation off main thread (#4053) 2019-10-28 12:45:47 -07:00
Ryan Wilson 56b37d2543 Fix container instantiation timing, IID startup. (#4030)
* Fix container instantiation timing, IID startup.

The container instantiation could happen at the wrong time, before all
components have been added to the container. This fixes it, and also
moves IID to use the proper instantiation timing instead of relying on
the `configureWithApp:` call. This is part continuation of #3147, where
I'll be fixing the rest of the SDKs in follow up PRs.

* Typo

* Further work on instantiation timing.

This moves the instantiation of components to after the FirebaseApp is
completely configured and assigned, as it should be. This also exposed
a recursive issue with IID calling the Messaging singleton, which in
turn called IID and instantiated multiple instances.

A change was made to break the cycle: the Messaging `isAutoInitEnabled`
call was changed to a static method vs an instance method, allowing IID
to call it during initialization without instantiating the Messaging
instance (since it doesn't have a direct dependency on it).

* Revert unintentional formatting of entire FIRMessaging file.

* Fix tests.

* Format InstanceID.m

* Remove unused import.

* Fix ComponentContainer test.

* Minor PR feedback.
2019-10-11 17:20:46 -04:00
Chen Liang 28038e55aa Remove the class FIRMessagingRmq2PersistentStore (#4045) 2019-10-10 16:11:49 -07:00
Chen Liang b6ac437faa Remove migration logic from document folder to application folder (#4033) 2019-10-10 08:49:42 -07:00
Paul Beusterien 59db09740c Mute FCM deprecated warnings with Xcode 11 and min iOS >= 10 (#3857) 2019-09-16 10:55:20 -07:00
Chen Liang 51ded3fefb should not persist context message ID in loggedMessageIDs (#3670) 2019-08-26 11:13:50 -07:00
Ryan Wilson 615c20cf17 Ensure Messaging instance is usable after FIRApp's delete (#3579)
* Ensure Messaging instance is usable after FIRApp's `delete`

This fixes #3411. Test fails before the code change, and succeeds
afterwards.

* Update CHANGELOG.md

* Use Bug number instead of PR number
2019-08-14 15:06:22 -04:00
Paul Beusterien dbd960db22 Add interop API to prepare for RC open sourcing (#3582) 2019-08-13 18:23:59 -07:00
Chen Liang eade6bd374 kill debug assert and unnecessary macros (#3556) 2019-08-13 14:11:59 -07:00
Chen Liang f090a3cb80 remove internalHeader folder whose file is only used in unit test (#3537) 2019-08-08 13:00:47 -07:00
Chen Liang 5f0118d61f Update all the header path to pod repo relative (#3527)
* update all the path to pod repo relative

* fix a few missed out headers

* reorder the headers
2019-08-08 09:50:35 -07:00
Chen Liang 564e33834d use repo-root relative path for unit test files (#3515) 2019-08-07 17:00:01 -07:00
Chen Liang 5c26ae4e01 Always call getToken before subscription/unsubscription (#3438) 2019-07-30 13:59:29 -07:00
Paul Beusterien 55463b1551 Update to latest version of FirebaseAnalyticsInterop (#3463) 2019-07-29 16:39:29 -07:00
Chen Liang 7eb1747e4b Adding macOS support for Messaging and InstanceID (#2880) 2019-05-30 15:31:38 -07:00
Paul Beusterien 06d36108d8 Add test_spec for FCM (#3088)
* Add test_spec for FCM
* FIRMessagingRemoteNotificationsProxyTest - don't use OCMPartialMock([UIApplication sharedApplication]) to avoid crashing tests on iOS 8 (#3094)
2019-05-28 11:36:31 -07:00
Chen Liang c59c5d62d7 remove FIRMessagingRegistrar class (#2853) 2019-04-17 14:56:16 -07:00
Maksym Malyhin 76aa880853 GULAppDelegateSwizzler - proxy APNS methods separately (#2835) 2019-04-17 17:35:14 -04:00
Chen Liang 8540c21864 Remove reflection call to get checkin info from InstanceID (#2825) 2019-04-16 13:10:08 -07:00
Chen Liang ec2399683b Remove useMessagingDelegateForDirectChannel property (#2711) 2019-04-04 09:46:29 -07:00
Maksym Malyhin 267e9a6ece FIRMessagingRemoteNotificationsProxy updated to use GULAppDelegateSwizzler (#2683) 2019-04-04 09:26:12 -04:00
Chen Liang 98549593ac fix a few place that copybara not properly handle the change (#2678) 2019-03-29 12:23:43 -07:00
Chen Liang e024df5073 fix typo in iOS target (#2673)
* also a few minor cleanup
2019-03-28 16:13:20 -07:00
Maksym Malyhin 04561fe74d FIRMessagingRemoteNotificationsProxy - test only public API with no assumptions on implementation (#2672) 2019-03-28 19:06:04 -04:00
Chen Liang 0091515b98 add image on notification support (#2644) 2019-03-26 20:15:34 -07:00
Chen Liang d87b15fa69 fix analyze warning in fcm (#2650) 2019-03-26 16:25:46 -07:00
Paul Beusterien 714bb34bc3 Revert #2491 (#2582) 2019-03-18 16:28:18 -07:00
Chen Liang 8061301cb9 File directory for tvOS should change from NSApplicationSupportDirector to NSCachesDirectory (#2496) 2019-03-13 08:57:47 -07:00
Chen Liang 681a5740b0 Add image on notification support (#2491)
This is official image notification support for FCM. Now an image can be rendered in notification when user enable service extension and calling the extensionHelper API.
2019-03-11 14:36:40 -07:00
Chen Liang 00168257df Make FCM and InstanceID compatible with tvOS (#2428) 2019-03-05 11:57:10 -08:00
Maksym Malyhin 8ffd9590cb FirebaseMessaging: NSUserDefaults replaced by GULUserDefaults (#2443)
* FirebaseMessaging: `NSUserDefaults` replaced by `GULUserDefaults`

* FirebaseMessaging: `GoogleUtilities/UserDefaults` added to dependencies. `GoogleUtilities` dependencies version updated to `~> 5.3`

* FIRMessagingPubSub: imports order
2019-02-26 15:31:18 -05:00
Ryan Wilson 1b777acdca Fix IID singleton usage. (#2446)
The singleton is cached and vended from the Core component system, we
shouldn't wrap it in a dispatch_async or cache it with a global variable.

This matches a change internally that has been made and shipped.
2019-02-26 12:26:42 -08:00
Paul Beusterien 82fd4b9fc6 Fix race causing occasional flake (#2427) 2019-02-22 14:36:29 -08:00
Paul Beusterien d232d1c30c Restore FIRInstanceIDWithFCMTest.m (#2417) 2019-02-21 20:16:45 -08:00
Paul Beusterien 6df99be073 Bump FirebaseAnalyticsInterop version (#2315) 2019-02-04 08:23:10 -08:00
Ryan Wilson 5982981e12 Prevent Messaging and IID singleton usage during tests. (#2250)
* Prevent Messaging and IID singleton usage during tests.

* Remove other uses of static Messaging instance.

* Removed usages of messagingForTests.

* Remove unused imports, unify testing code.

* Use local import path instead of framework import.
2019-01-28 18:05:16 -05:00