@TargetApi(Build.VERSION_CODES.LOLLIPOP_MR1)
public static String getSubscriptionInfo(Context context) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP_MR1)
return "Not supported";
if (!hasPhoneStatePermission(context))
return "No permission";
StringBuilder sb = new StringBuilder();
SubscriptionManager sm = SubscriptionManager.from(context);
sb.append("Slots ")
.append(sm.getActiveSubscriptionInfoCount())
.append('/')
.append(sm.getActiveSubscriptionInfoCountMax())
.append("\r\n");
int dataid = -1;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
dataid = sm.getDefaultDataSubscriptionId();
int voiceid = -1;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N)
voiceid = sm.getDefaultVoiceSubscriptionId();
List<SubscriptionInfo> subscriptions = sm.getActiveSubscriptionInfoList();
if (subscriptions != null)
for (SubscriptionInfo si : subscriptions)
sb.append("SIM ")
.append(si.getSimSlotIndex() + 1)
.append('/')
.append(si.getSubscriptionId())
.append(' ')
.append(si.getCountryIso())
.append('/')
.append(si.getMcc()).append(si.getMnc())
.append(' ')
.append(si.getCarrierName())
.append(si.getSubscriptionId() == dataid ? " D" : "")
.append(si.getSubscriptionId() == voiceid ? " V" : "")
.append(si.getDataRoaming() == SubscriptionManager.DATA_ROAMING_ENABLE ? " R" : "")
.append("\r\n");
if (sb.length() > 2)
sb.setLength(sb.length() - 2);
return sb.toString();
}
java类android.telephony.SubscriptionManager的实例源码
Util.java 文件源码
项目:kcanotify
阅读 32
收藏 0
点赞 0
评论 0
ServiceSinkhole.java 文件源码
项目:android-protwall
阅读 29
收藏 0
点赞 0
评论 0
@Override
public void onDestroy() {
Log.i(TAG, "Destroy");
commandLooper.quit();
logLooper.quit();
statsLooper.quit();
if (registeredInteractiveState) {
unregisterReceiver(interactiveStateReceiver);
registeredInteractiveState = false;
}
if (registeredPowerSave) {
unregisterReceiver(powerSaveReceiver);
registeredPowerSave = false;
}
if (registeredUser) {
unregisterReceiver(userReceiver);
registeredUser = false;
}
if (registeredIdleState) {
unregisterReceiver(idleStateReceiver);
registeredIdleState = false;
}
if (registeredConnectivityChanged) {
unregisterReceiver(connectivityChangedReceiver);
registeredConnectivityChanged = false;
}
if (registeredPackageAdded) {
unregisterReceiver(packageAddedReceiver);
registeredPackageAdded = false;
}
if (phone_state) {
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
if (tm != null) {
tm.listen(phoneStateListener, PhoneStateListener.LISTEN_NONE);
phone_state = false;
}
}
if (subscriptionsChangedListener != null &&
Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
SubscriptionManager sm = SubscriptionManager.from(this);
sm.removeOnSubscriptionsChangedListener((SubscriptionManager.OnSubscriptionsChangedListener) subscriptionsChangedListener);
subscriptionsChangedListener = null;
}
try {
if (vpn != null) {
stopNative(vpn, true);
stopVPN(vpn);
vpn = null;
unprepare();
}
} catch (Throwable ex) {
Log.e(TAG, ex.toString() + "\n" + Log.getStackTraceString(ex));
}
jni_done();
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
prefs.unregisterOnSharedPreferenceChangeListener(this);
super.onDestroy();
}
ServiceUtil.java 文件源码
项目:Android-App-Template
阅读 41
收藏 0
点赞 0
评论 0
@TargetApi(22)
public static SubscriptionManager getSubscriptionManager() {
return (SubscriptionManager) getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
}
Patch.java 文件源码
项目:kitkat-sms-patch
阅读 38
收藏 0
点赞 0
评论 0
private static void putPhoneIdAndSubIdExtra(Object thisObject, Intent intent) {
PhoneBase phone = (PhoneBase) XposedHelpers.getObjectField(thisObject, "mPhone");
XposedHelpers.callStaticMethod(SubscriptionManager.class, "putPhoneIdAndSubIdExtra",
intent, phone.getPhoneId());
}
Managers.java 文件源码
项目:sprockets-android
阅读 29
收藏 0
点赞 0
评论 0
/**
* @since 4.0.0
*/
public static SubscriptionManager telephonySubscription(Context context) {
return (SubscriptionManager) context.getSystemService(TELEPHONY_SUBSCRIPTION_SERVICE);
}
ShowSimOperator.java 文件源码
项目:Xposed-ShowSimOperator
阅读 19
收藏 0
点赞 0
评论 0
private static SubscriptionManager getSubscriptionManager() {
return (SubscriptionManager) getContext().getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
}
SystemServices.java 文件源码
项目:android_Skeleton
阅读 33
收藏 0
点赞 0
评论 0
@TargetApi(AndroidHelper.API_22)
public static SubscriptionManager subscriptionManager() {
return (SubscriptionManager) get(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
}
ContextUtils.java 文件源码
项目:android-wheels
阅读 33
收藏 0
点赞 0
评论 0
/**
* Obtain a {@link SubscriptionManager} instance associated with specified {@link Context}
*
* @param context Context
* @return {@link SubscriptionManager} associated with specified {@link Context}
* @throws InvalidContextException if {@link SubscriptionManager} can't be obtained
* from specified {@link Context}
*/
@NonNull
@RequiresApi(Build.VERSION_CODES.LOLLIPOP_MR1)
public static SubscriptionManager getSubscriptionManager(@NonNull Context context) {
return validate(context.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE));
}