Privacy restrictions in Android 10

Android 10 introduces several privacy-related restrictions which disallow apps to access certain information that could be potentially misused for fingerprinting and data collection.

First, Android 10 is stricter about access to the wifi scanning API and requires the fine location permission instead of the coarse location permission which was sufficient previously.

The restriction which affects Network Analyzer the most is disallowing apps to access the /proc/net system directory which contains information used by the LAN scanner, routing table and connection list.

While it is really great that apps don't have unrestricted access to this info and cannot misuse it, there should be a way for users to allow certain apps to access this information. The current API in Android doesn't allow apps to access the ARP cache needed by the LAN scanner, active connection list, and the routing table (fortunately accessible by some other means but with less details).

I created the following bug reports against Android with more details and some proposed solutions: