83.android 简单的获取手机SIM卡卡槽数量,当前SIM卡数量。

//第一步 先加入权限,在AndroidManifest.xml里加入:

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

//动态权限申请:

//权限初始化
private int READ_PHONE_STATE = 1;
private String[] CALLS_STATE = {
        Manifest.permission.READ_PHONE_STATE,
        Manifest.permission.WRITE_EXTERNAL_STORAGE,
        Manifest.permission.RECORD_AUDIO,
};
/*
 * 方法名:verifyStoragePermissions(Activity activity)
 * 功    能:6.0动态权限
 * 参    数:Activity activity
 * 返回值:无
 */
public void verifyStoragePermissions(Activity activity) {
    int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.READ_PHONE_STATE);
    if (permission != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(activity, CALLS_STATE, READ_PHONE_STATE);
    }
}

//在Activity里调用:

verifyStoragePermissions(this);//调用请求6.0权限的方法

//好了 权限申请完成后开始获取SIM卡槽数量,可用SIM卡数量:

@TargetApi(Build.VERSION_CODES.M)
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP_MR1)
private void JudgeSIM() {
    TelephonyManager tm = (TelephonyManager)getContext().getSystemService(TELEPHONY_SERVICE);
    int phoneCount = tm.getPhoneCount(); //获取当前SIM卡槽数量
    //获取当前SIM卡数量
    int activeSubscriptionInfoCount = SubscriptionManager.from(getContext()).getActiveSubscriptionInfoCount();
    Toast.makeText(getContext(), "卡槽数量:"+phoneCount, Toast.LENGTH_SHORT).show();
    Toast.makeText(getContext(), "当前SIM卡数量:"+activeSubscriptionInfoCount, Toast.LENGTH_SHORT).show();
}

//--------------------------------------------------------------------完--------------------------------------------------------------------------------------

猜你喜欢

转载自blog.csdn.net/weixin_42061754/article/details/83147631