Previously, we wanted to throw on all unknown push errors so that we were notified on them. Since this seems to be more common than originally expected, we should just catch them and in a future version, we should log them without crashing. All of these push errors can be considered recoverable except for InternalPanic. |
||
|---|---|---|
| .. | ||
| src | ||
| build.gradle | ||
| proguard-rules.pro | ||
| README.md | ||
Android Components > Libraries > Push-Firebase
A concept-push implementation using Firebase Cloud Messaging (FCM).
This implementation of concept-push uses Firebase Cloud Messaging. It can be used by Android devices that are supposed by Google Play Services.
Usage
Add the push service for providing the encrypted messages:
class FirebasePush : AbstractFirebasePushService()
Expose the service in the AndroidManifest.xml:
<service android:name=".push.FirebasePush">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
The service can be started/stopped directly if required:
val service = FirebasePush()
serivce.start()
serivce.stop()
See feature-push for more details on how to use the service with Autopush.
Setting up the dependency
Use Gradle to download the library from maven.mozilla.org (Setup repository):
implementation "org.mozilla.components:lib-push-firebase:{latest-version}"
Adding Firebase Support
Extend AbstractFirebasePushService with your own class:
class FirebasePush : AbstractFirebasePushService()
Place your keys file (google-services.json) for FCM in the app module of the project.
Optionally, add meta tags to your This is not support ed yet (see #2603).AndroidManifest.xml to disable the push service from automatically starting.
See the concept-push documentation for generic examples of using the API of components implementing concept-push.
License
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/