I am writing to inquire about the access to SIM ID and IMEI in Android applications. I understand that access to these identifiers is restricted due to privacy concerns, but I have noticed that certain applications, such as banking apps, seem to have access to these details.
I am aware that starting with Android 10, the permissions for accessing device identifiers like IMEI and SIM serial number have become more stringent, requiring the READ_PRIVILEGED_PHONE_STATE permission. This permission is only granted to system apps and apps signed with the platform key. For apps not meeting these criteria, access to these identifiers is not possible without special permissions (Android Open Source Project) (Android Developers).
Could you please provide guidance on how applications, such as those developed by banks, manage to obtain access to these identifiers? Specifically, are there any steps or permissions that need to be obtained for non-system apps to access SIM ID and IMEI?
Additionally, if there are specific requirements or processes that need to be followed to request these permissions or any alternative identifiers that can be used for similar purposes, I would greatly appreciate detailed instructions or resources on how to proceed.
Shubham Kumar Pandey is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.