Android Q has restricted to access for both IMEI and serial no. It is available only for platform and apps with special carrier permission. Also the permission READ_PRIVILEGED_PHONE_STATE is not available for non platform apps.
If you try to access it throws below exception
java.lang.SecurityException: getImeiForSlot: The user 10180 does not meet the requirements to access device identifiers.
For getting the IMEI these are also the steps:
1) Define permission in manifest:
or if API level is > 22
2) Get the IMEI in java using TelephonyManager
Android Q has restricted to access for both IMEI and serial no. It is available only for platform and apps with special carrier permission. Also the permission READ_PRIVILEGED_PHONE_STATE is not available for non platform apps.
If you try to access it throws below exception
Please refer documentation: https://developer.android.com/preview/privacy/data-identifiers#device-ids
Also refer Issue