автоматически получать номер телефона в андроиде

Я использую код

TelephonyManager tMgr =(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE); mPhoneNumber = tMgr.getLine1Number(); 

чтобы телефон не запрограммирован в андроиде. Но это отлично работает только для одной сим-карты. Если я тестирую этот код, вставив другую сим-карту, он дает null . Я пытаюсь найти решение для этого. пожалуйста помогите. Я также включил READ_PHONE_STATE разрешение в Manifest .

Я хочу однозначно идентифицировать сим-карту. Есть ли другой способ сделать это. пожалуйста, дай мне знать.

Заранее спасибо…

    Я думаю, что серийный номер Sim уникален. Вы можете попробовать это.

     TelephonyManager telemamanger = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String getSimSerialNumber = telemamanger.getSimSerialNumber(); 

    Сообщите мне, есть ли какие-либо проблемы.

    Это известная проблема. Многие SIM-карты по всему миру вернутся к нулю. Вы должны скорее использовать номер IMEI, но даже тот, который может вернуть значение null.

     TelephonyManager.getDeviceId() 

    Найдите TelephonyManager.getSubscriberId (), это даст уникальный идентификатор для каждой SIM-карты.

    Давайте будем гением компьютера.