哪个 sim 正在使用移动数据..?
Which sim is using mobile data..?
如何查看哪个 SIM 卡正在使用移动数据?或者这样说;哪个 sim 上启用了移动数据?
经过一番努力,我找到了哪个 SIM 卡正在使用移动数据,但此代码仅适用于 android 版本 7 及更高版本。此代码将检查,如果数据在主 sim 上启用,return true,否则 return false。
private boolean checkIsValidPrimarySim(Context context) {
boolean validSim=false;
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.N){
int mSubscriptionId=-1;
SubscriptionManager subscriptionManager=(SubscriptionManager)context.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
SubscriptionInfo subscriptionInfo=subscriptionManager.getActiveSubscriptionInfoForSimSlotIndex(0);
if(subscriptionInfo!=null){
mSubscriptionId=subscriptionInfo.getSubscriptionId();
if(mSubscriptionId!=-1){
int defaultSubscriptionId=subscriptionManager.getDefaultDataSubscriptionId();
if(mSubscriptionId==defaultSubscriptionId){
validSim=true;
}
else {
//display message to change your defalult data sim
}
}else {
//display message to change your defalult data sim
}
}
else {
//display message to change your defalult data sim
}
}
return validSim;
}
如何查看哪个 SIM 卡正在使用移动数据?或者这样说;哪个 sim 上启用了移动数据?
经过一番努力,我找到了哪个 SIM 卡正在使用移动数据,但此代码仅适用于 android 版本 7 及更高版本。此代码将检查,如果数据在主 sim 上启用,return true,否则 return false。
private boolean checkIsValidPrimarySim(Context context) {
boolean validSim=false;
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.N){
int mSubscriptionId=-1;
SubscriptionManager subscriptionManager=(SubscriptionManager)context.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
SubscriptionInfo subscriptionInfo=subscriptionManager.getActiveSubscriptionInfoForSimSlotIndex(0);
if(subscriptionInfo!=null){
mSubscriptionId=subscriptionInfo.getSubscriptionId();
if(mSubscriptionId!=-1){
int defaultSubscriptionId=subscriptionManager.getDefaultDataSubscriptionId();
if(mSubscriptionId==defaultSubscriptionId){
validSim=true;
}
else {
//display message to change your defalult data sim
}
}else {
//display message to change your defalult data sim
}
}
else {
//display message to change your defalult data sim
}
}
return validSim;
}