Add Networking Options for Google Push Notifications
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 3.2k
- Avg merge
- 12d 11h
- Merged PRs (30d)
- 4
Description
It has recently come to light that governments use Google Push Notifications to surveil users. Given privacy focused like Calyx OS, this could be a problem for some users. Given this, I think it would be useful to give the option to users to hide their IP addresses.
A new firebase setting page could allow custom networking settings. There, a user could input a HTTPS proxy server to be inputted. All push notifications are received through an HTTPS proxy. This could reduce the information sent to Google, and make it harder for Governments to identify one person from another. Unlike TOR or VPNs, there is no difficult protocols to implement or concerns about breaking Android;s security model.The battery impact would be negligible. Although there may be a small half a second delay before a push notification will come in. But unlike TOR or VPNs, a network operator could detect the presence of a proxy and infer some information about the request. This could be mitigated with Private DNS but not completely. Another issue is if the proxy is down there needs to be some way of communicating that to the user.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are mentioned. Start by mapping the Firebase push-notification implementation and existing settings pages, then determine the scope for HTTPS proxy configuration, failure reporting, and notification routing before defining completion criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, firebase, java
- Domain
- mobile, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100