Background
NitroPing currently relies on Firebase Cloud Messaging (FCM) for Android push notifications. However, this creates a dependency on Google Mobile Services (GMS), which:
- Prevents distribution through F-Droid
- Excludes users on de-Googled Android ROMs (GrapheneOS, LineageOS, etc.)
- Raises privacy concerns for users who prefer to avoid Google services
- Limits self-hosting capabilities for truly independent infrastructure
Question for the Community
We're exploring alternatives to FCM for Android push notifications. We'd love to hear your experiences and thoughts on the following:
Potential Solutions We're Considering:
-
UnifiedPush Protocol
- Open standard for decentralized push notifications
- WebPush compatible (as of 2024)
- Supports multiple distributors (ntfy, Gotify, etc.)
- Questions: Has anyone successfully implemented this in production? What are the battery life implications?
-
Gotify
- Self-hosted push notification server
- Simple REST API
- Native Android client
- Questions: How reliable is it for production use? Any scaling concerns?
-
MQTT/WebSocket Persistent Connections
- Direct connection approach
- Full control over the implementation
- Questions: Battery drain? Connection reliability on different Android versions?
-
Polling/Pull-based Approach
- Simple to implement
- No persistent connections needed
- Questions: Obviously not ideal for real-time, but viable as a fallback?
What We Need From You
- Your Experience: Have you implemented FCM-free push notifications? What worked? What didn't?
- Battery Life: What's the real-world battery impact of these alternatives?
- Reliability: How do these solutions perform across different Android versions and device manufacturers?
- User Adoption: Would your users accept installing a separate app (like UnifiedPush distributor)?
- Other Solutions: Are there alternatives we haven't considered?
Goals
- Maintain FCM as the default for users who prefer it
- Add support for at least one privacy-respecting alternative
- Enable F-Droid distribution
- Support de-Googled Android devices
Looking forward to your insights! 🚀
Related Resources
Background
NitroPing currently relies on Firebase Cloud Messaging (FCM) for Android push notifications. However, this creates a dependency on Google Mobile Services (GMS), which:
Question for the Community
We're exploring alternatives to FCM for Android push notifications. We'd love to hear your experiences and thoughts on the following:
Potential Solutions We're Considering:
UnifiedPush Protocol
Gotify
MQTT/WebSocket Persistent Connections
Polling/Pull-based Approach
What We Need From You
Goals
Looking forward to your insights! 🚀
Related Resources