Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android中获取SIM卡序列号_Android - Fatal编程技术网

在Android中获取SIM卡序列号

在Android中获取SIM卡序列号,android,Android,我需要确保无需在指定设备中输入pin即可使用SIM卡,但在其他设备中必须输入pin。(正在使用的设备是根设备,应用程序作为系统应用程序安装) 我想要的是识别SIM卡,并以编程方式输入pin(如果已知/已保存) 如果需要,我可以输入已知的pin码,但我的SIM卡识别有问题 我发现在输入正确的PIN之前,我无法获取SIM卡序列号或用户id 我正在使用的方法(具有权限等): 问题是,如果pin是必需的且尚未输入,则此方法返回null 我的问题是,是否有某种解决方法。 有可能吗? 还有别的办法吗 我们赞

我需要确保无需在指定设备中输入pin即可使用SIM卡,但在其他设备中必须输入pin。(正在使用的设备是根设备,应用程序作为系统应用程序安装)

我想要的是识别SIM卡,并以编程方式输入pin(如果已知/已保存)

如果需要,我可以输入已知的pin码,但我的SIM卡识别有问题

我发现在输入正确的PIN之前,我无法获取SIM卡序列号或用户id

我正在使用的方法(具有权限等):

问题是,如果pin是必需的且尚未输入,则此方法返回null

我的问题是,是否有某种解决方法。 有可能吗? 还有别的办法吗

我们赞赏这些想法和方法。 提前谢谢

TelephonyManager tm = (TelephonyManager) 
                getSystemService(Context.TELEPHONY_SERVICE);
}
String simID = tm.getSimSerialNumber();
String telNumber = tm.getLine1Number();
String IMEI = tm.getDeviceId();
许可:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

您的问题:


返回的电话号码是SIM卡MSISDN中存储的任何号码,某些运营商未填写该号码。如果您在印度,请尝试Airtel、沃达丰。

订阅管理器可用于该应用程序,但其不能由Android 10和API级别22中添加的订阅管理器用于第三方应用程序

// Requires, android.permission.READ_PHONE_STATE
SubscriptionManager sm = SubscriptionManager.from(mContext);

// it returns a list with a SubscriptionInfo instance for each simcard
// there is other methods to retrieve SubscriptionInfos List<SubscriptionInfo> 
sis = sm.getActiveSubscriptionInfoList();

// getting first SubscriptionInfo
SubscriptionInfo si = sis.get(0);
//需要,android.permission.READ\u PHONE\u状态
SubscriptionManager sm=SubscriptionManager.from(mContext);
//它返回一个列表,其中包含每个simcard的SubscriptionInfo实例
//还有其他方法可以检索SubscriptionInfo列表
sis=sm.getActiveSubscriptionInfoList();
//获取第一个订阅信息
SubscriptionInfo si=sis.get(0);

我知道MSISDN通常为空,但我相信序列号是静态的,应该一直存在。我是不是遗漏了什么?谢谢
// Requires, android.permission.READ_PHONE_STATE
SubscriptionManager sm = SubscriptionManager.from(mContext);

// it returns a list with a SubscriptionInfo instance for each simcard
// there is other methods to retrieve SubscriptionInfos List<SubscriptionInfo> 
sis = sm.getActiveSubscriptionInfoList();

// getting first SubscriptionInfo
SubscriptionInfo si = sis.get(0);