From ac426cc5b5c588c1e6fd1ba78c0301aac8fb9b0b Mon Sep 17 00:00:00 2001
From: Peter Easton
@@ -180,6 +188,34 @@
devices produced based on an SoC reference design with minor improvements for privacy
and security. Broad device support is the opposite of what the project wants to
achieve in the long term.
Starting with the Android 10 specification, apps can no longer extract the phone's
+ IMEI or Serial Number, SIM Card Serial Number, Subscriber ID, MAC Address or other
+ non-resettable unique device identifiers, even if granted access to
+ READ_PHONE_STATE
. Apps must have the
+ READ_PRIVILEGED_PHONE_STATE
new to Android 10 in order to get access to
+ any of these non-resettable, persistent device identifiers. Apps using the Android 10
+ API will recieve a SecurityException
error, and any older apps simply get
+ an empty value if the READ_PHONE_STATE
permission has been granted to them,
+ or a SecurityException
error if they don't. MAC Addresses are randomized
+ per WiFi network on GrapheneOS. Apps, even if granted full network access, cannot read
+ nor change the MAC Address.
GrapheneOS does not utilize Advertising IDs, even though the Advertising ID + normally seen on Android and iOS devices is resettable.
+ +ANDROID_ID
is persistent between application installs but is resettable.
+ Pull requests are welcomed in this area.