I want to get IMSI number of SIM of Android phone using command line.
Is there any adb command or any shell command in android for this???
I tried adb shell getprop ril.IMSI command in Samsung Galaxy ace, it works. It gives me IMSI number. But I tried the same command in Samsung Galaxy S3. It doesn't return anything.
I want to get IMSI number of SIM card in Samsung Galaxy S3 using command line only. (Not Android Application code) either using adb command or some shell command in Android.
Also, I know there is a simple code in JAVA to run in Android Application which gives IMSI number:
TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String imsi = mTelephonyMgr.getSubscriberId();
Can I somehow run this Android Java code from command line? This will also solve my problem.
解决方案
To call TelephonyManager.getSubscriberId() in Android versions 5.x-7.x via adb shell run:
adb shell service call iphonesubinfo 7
This command no longer (i.e. on most 6.0+ devices) requires the device to be rooted.
For proper parsing of the service call command output on the device side and without external dependencies see my answer here