TelephonyManagerを使用していて、SIM1のSubscriberID(IMSI)を取得できましたが、SIM2で同じ値を取得できませんでした。しかし、私は両方のSIMスロットでIMEI noを取得することができましたが、まだ私は第2シムのIMSIを取得することができません。この情報を得る方法はありますか?Android PhoneでSecond SimのIMSI Noを取得する方法
1
A
答えて
0
1
が、これは加入者IDを取得するためにハック方法ですREMEMBERテレフォニーマネージャからgetDeviceIdメソッドを使用することができ、SO
動作するすべてのデバイスで文句を言わないWORK ITをすることができますandroid.permission.READ_PHONE_STATEのAndroid 5.1.1上と上記とを必要な許可
(それは危険としてマークされているとして、上記のマシュマロに アンドロイドのバージョンをandroid.permission.READ_PHONE_STATE権限をユーザーに尋ねることを忘れないでください)
public String getSim1IMSI() {
String imsi = null;
TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
try {
Method getSubId = TelephonyManager.class.getMethod("getSubscriberId", int.class);
SubscriptionManager sm = (SubscriptionManager) getSystemService(TELEPHONY_SUBSCRIPTION_SERVICE);
imsi = (String) getSubId.invoke(tm, sm.getActiveSubscriptionInfoForSimSlotIndex(0).getSubscriptionId()); // Sim slot 1 IMSI
return imsi;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return imsi;
}
public String getSim2IMSI() {
String imsi = null;
TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
try {
Method getSubId = TelephonyManager.class.getMethod("getSubscriberId", int.class);
SubscriptionManager sm = (SubscriptionManager) getSystemService(TELEPHONY_SUBSCRIPTION_SERVICE);
imsi = (String) getSubId.invoke(tm, sm.getActiveSubscriptionInfoForSimSlotIndex(1).getSubscriptionId()); // Sim slot 2 IMSI
return imsi;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return imsi;
}
+0
ですこれを行うネイティブメソッド: 'tm.createForSubscriptionId(sm.getActiveSubscriptionInfoForSimSlotIndex(1).getSubscriptionId())。getSubscriberId()' – davkutalek
関連する問題
- 1. Windows PhoneアプリケーションでSIM MSISDNとIMSI番号を取得する
- 2. アンドロイドデュアルSIMデバイスからimsi番号リストを取得するには?
- 3. AndroidデュアルSIM両方のSIMのSim Detaisを取得する
- 4. Windows Phone 7プラットフォームのIMSI?
- 5. UWP - IMSIとIMEIを取得する
- 6. サブスクリプションマネージャがデュアルSIMデバイスのIMSIを読んで、Android 5.1+を破棄しました
- 7. アンドロイドでモバイルSIM番号(GSM)を取得する方法
- 8. イオンコードバのアプリでSIM情報を取得する方法
- 9. SIM IDを取得する
- 10. 同じIMSIを持つ2つのSIMカード
- 11. スレーブスロットのSIMのオペレータ名を取得する方法は?
- 12. ipadのSIMアドレスを取得する方法
- 13. SIMカードからTMSIを取得する
- 14. Windows Phone 7マーケットプレイスから情報を取得する方法
- 15. Androidで自分の電話番号を取得する方法
- 16. Xamarin.Formsで正しいWindows Phoneバージョンを取得する方法
- 17. Xamarin- Restart Android Phoneレッスンなしでシステムのユーザアクセスを取得する
- 18. どのようにAndroidでデュアルSIMシリアル番号を取得する
- 19. はATコマンドでIMSIとIMEIを取得できません
- 20. Androidでキャッシュサイズを取得する方法
- 21. Androidでスポットプレーヤーを取得する方法
- 22. Windows Phone 8.1のカメラロールからストレージファイルを取得する方法
- 23. Windows phone:現在のアプリケーションIDを取得する方法
- 24. マシュマロのSIMスロットでアンドロイドの通話ログを取得
- 25. すべてのSIMの電話番号を取得
- 26. アンドロイドでSIMカードからSMSメッセージを取得する
- 27. amazon製品広告APIからフィーチャーを取得する方法
- 28. ListViewでアイテムを取得するWindows Phone
- 29. Androidイメージを取得する方法を取得するには?
- 30. SIM情報の要求時にjava.lang.SecurityExceptionを取得する
があるのAndroid 7.0のように、これはIMEIないIMSI – davkutalek