diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java index 81b991b0..136f8056 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/AppMaster.java @@ -259,6 +259,10 @@ public class AppMaster { ex.printStackTrace(); } + // if (BuildConfig.DEBUG) { + postParams.add(new Pair("slot", Integer.toString(mService.getActiveSlotIndex()))); + // } + try { String battery = getBatteryVoltage() + "V/" + getChargingBatteryVoltage() + "V"; postParams.add(new Pair("battery", battery)); @@ -370,6 +374,7 @@ public class AppMaster { if (items[11] > 0) { stats.add(new Pair("i1RebootTimesWk", Integer.toString(items[11]))); } + } catch (Exception ex) { ex.printStackTrace(); } diff --git a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java index caee4379..e3c8bdc1 100644 --- a/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java +++ b/mpmaster/src/main/java/com/xypower/mpmaster/MpMasterService.java @@ -896,6 +896,18 @@ public class MpMasterService extends Service { context.startActivity(LaunchIntent); } + public int getActiveSlotIndex() { + Context context = getApplicationContext(); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { + + SubscriptionManager subscriptionManager = (SubscriptionManager) getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE); + int activeSubId = SubscriptionManager.getActiveDataSubscriptionId(); + int activeSlotIdx = SubscriptionManager.getSlotIndex(activeSubId); + return activeSlotIdx + 1; + } + return 0; + } + public void selectSimCard(int num) { logger.info("Try to Switch To SimCard: " + Integer.toString(num));