Loading proto/src/telephony.proto +73 −59 Original line number Diff line number Diff line Loading @@ -51,8 +51,8 @@ message TelephonyLog { // Hardware revision (EVT, DVT, PVT etc.) optional string hardware_revision = 9; // The active subscription info for a specific slot. repeated ActiveSubscriptionInfo active_subscription_info = 10; // The last active subscription info for each slot. repeated ActiveSubscriptionInfo last_active_subscription_info = 10; } // The time information Loading Loading @@ -682,60 +682,74 @@ message TelephonyEvent { ON_DEMAND_DATA_SWITCH = 17; // SIM state change event. SIM_STATE_CHANGE = 18; SIM_STATE_CHANGED = 18; // Active subscription info change event. ACTIVE_SUBSCRIPTION_INFO_CHANGE = 19; ACTIVE_SUBSCRIPTION_INFO_CHANGED = 19; // Enabled modem change event. ENABLED_MODEM_CHANGE = 20; ENABLED_MODEM_CHANGED = 20; } enum ApnType { DEFAULT = 1; MMS = 2; SUPL = 3; DUN = 4; HIPRI = 5; FOTA = 6; IMS = 7; CBS = 8; IA = 9; EMERGENCY = 10; APN_TYPE_UNKNOWN = 0; APN_TYPE_DEFAULT = 1; APN_TYPE_MMS = 2; APN_TYPE_SUPL = 3; APN_TYPE_DUN = 4; APN_TYPE_HIPRI = 5; APN_TYPE_FOTA = 6; APN_TYPE_IMS = 7; APN_TYPE_CBS = 8; APN_TYPE_IA = 9; APN_TYPE_EMERGENCY = 10; } enum EventState { START = 1; END = 2; EVENT_STATE_UNKNOWN = 0; EVENT_STATE_START = 1; EVENT_STATE_END = 2; } enum NetworkValidationState { /** The network validation state is unknown. */ UNKOWN = 0; NETWORK_VALIDATION_STATE_UNKNOWN = 0; /** The network under validation is initial established. */ AVAILABLE = 1; NETWORK_VALIDATION_STATE_AVAILABLE = 1; /** The validation is failed. */ FAILED = 2; NETWORK_VALIDATION_STATE_FAILED = 2; /** The validation is passed. */ PASSED = 3; NETWORK_VALIDATION_STATE_PASSED = 3; } message DataSwitch { enum Reason { /** Data switch caused by unkown reason. */ UNKONWN = 0; /** Data switch caused by unknown reason. */ DATA_SWITCH_REASON_UNKNOWN = 0; /** Data switch caused by user's manual switch. */ MANUAL = 1; DATA_SWITCH_REASON_MANUAL = 1; /** Data switch caused by incoming/outgoing call. */ IN_CALL = 2; DATA_SWITCH_REASON_IN_CALL = 2; /** Data switch caused by CBRS switch. */ CBRS = 3; DATA_SWITCH_REASON_CBRS = 3; } /** The reason for data switch. */ Loading src/java/com/android/internal/telephony/CellularNetworkValidator.java +4 −4 Original line number Diff line number Diff line Loading @@ -190,9 +190,9 @@ public class CellularNetworkValidator { mState = STATE_IDLE; } TelephonyMetrics.getInstance().writeNetworkValidate( passed ? TelephonyEvent.NetworkValidationState.PASSED : TelephonyEvent.NetworkValidationState.FAILED); TelephonyMetrics.getInstance().writeNetworkValidate(passed ? TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_PASSED : TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_FAILED); } mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; Loading @@ -212,7 +212,7 @@ public class CellularNetworkValidator { logd("network onAvailable " + network); if (ConnectivityNetworkCallback.this.mSubId == CellularNetworkValidator.this.mSubId) { TelephonyMetrics.getInstance().writeNetworkValidate( TelephonyEvent.NetworkValidationState.AVAILABLE); TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_AVAILABLE); } } Loading src/java/com/android/internal/telephony/PhoneSwitcher.java +14 −10 Original line number Diff line number Diff line Loading @@ -157,8 +157,8 @@ public class PhoneSwitcher extends Handler { if (mConnectivityManager.getNetworkCapabilities(network) .hasTransport(TRANSPORT_CELLULAR)) { logDataSwitchEvent( TelephonyEvent.EventState.END, TelephonyEvent.DataSwitch.Reason.UNKONWN); TelephonyEvent.EventState.EVENT_STATE_END, TelephonyEvent.DataSwitch.Reason.DATA_SWITCH_REASON_UNKNOWN); } removeDefaultNetworkChangeCallback(); } Loading Loading @@ -333,7 +333,8 @@ public class PhoneSwitcher extends Handler { break; } case EVENT_DEFAULT_SUBSCRIPTION_CHANGED: { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.MANUAL); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_MANUAL); onEvaluate(REQUESTS_UNCHANGED, "defaultChanged"); registerDefaultNetworkChangeCallback(); break; Loading Loading @@ -372,7 +373,8 @@ public class PhoneSwitcher extends Handler { break; } case EVENT_PHONE_IN_CALL_CHANGED: { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.IN_CALL); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_IN_CALL); onEvaluate(REQUESTS_UNCHANGED, "EVENT_PHONE_IN_CALL_CHANGED"); registerDefaultNetworkChangeCallback(); break; Loading Loading @@ -470,8 +472,8 @@ public class PhoneSwitcher extends Handler { if (mNumPhones > 1 && networkRequest.networkCapabilities.hasCapability( NetworkCapabilities.NET_CAPABILITY_MMS)) { OnDemandDataSwitch onDemandDataSwitch = new OnDemandDataSwitch(); onDemandDataSwitch.apn = TelephonyEvent.ApnType.MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.START; onDemandDataSwitch.apn = TelephonyEvent.ApnType.APN_TYPE_MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.EVENT_STATE_START; TelephonyMetrics.getInstance().writeOnDemandDataSwitch(onDemandDataSwitch); } } Loading @@ -482,8 +484,8 @@ public class PhoneSwitcher extends Handler { if (mNumPhones > 1 && networkRequest.networkCapabilities.hasCapability( NetworkCapabilities.NET_CAPABILITY_MMS)) { OnDemandDataSwitch onDemandDataSwitch = new OnDemandDataSwitch(); onDemandDataSwitch.apn = TelephonyEvent.ApnType.MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.END; onDemandDataSwitch.apn = TelephonyEvent.ApnType.APN_TYPE_MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.EVENT_STATE_END; TelephonyMetrics.getInstance().writeOnDemandDataSwitch(onDemandDataSwitch); } } Loading Loading @@ -812,7 +814,8 @@ public class PhoneSwitcher extends Handler { // If validation feature is not supported, set it directly. Otherwise, // start validation on the subscription first. if (CellularNetworkValidator.isValidationFeatureSupported() && needValidation) { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.CBRS); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_CBRS); mSetOpptSubCallback = callback; mValidator.validate(subId, DEFAULT_VALIDATION_EXPIRATION_TIME, false, mValidationCallback); Loading Loading @@ -852,7 +855,8 @@ public class PhoneSwitcher extends Handler { private void setPreferredSubscription(int subId) { if (mPreferredDataSubId != subId) { mPreferredDataSubId = subId; logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.CBRS); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_CBRS); onEvaluate(REQUESTS_UNCHANGED, "preferredDataSubscriptionIdChanged"); notifyPreferredDataSubIdChanged(); registerDefaultNetworkChangeCallback(); Loading src/java/com/android/internal/telephony/metrics/TelephonyEventBuilder.java +3 −3 Original line number Diff line number Diff line Loading @@ -147,7 +147,7 @@ public class TelephonyEventBuilder { /** Set and build SIM state change event. */ public TelephonyEventBuilder setSimStateChange(SparseArray<Integer> simStates) { mEvent.type = Type.SIM_STATE_CHANGE; mEvent.type = Type.SIM_STATE_CHANGED; mEvent.simState = new int[simStates.size()]; for (int i = 0; i < simStates.size(); i++) { int key = simStates.keyAt(i); Loading @@ -158,14 +158,14 @@ public class TelephonyEventBuilder { /** Set and build subscription info change event. */ public TelephonyEventBuilder setActiveSubscriptionInfoChange(ActiveSubscriptionInfo info) { mEvent.type = Type.ACTIVE_SUBSCRIPTION_INFO_CHANGE; mEvent.type = Type.ACTIVE_SUBSCRIPTION_INFO_CHANGED; mEvent.activeSubscriptionInfo = info; return this; } /** Set and build enabled modem bitmap change event. */ public TelephonyEventBuilder setEnabledModemBitmap(int enabledModemBitmap) { mEvent.type = Type.ENABLED_MODEM_CHANGE; mEvent.type = Type.ENABLED_MODEM_CHANGED; mEvent.enabledModemBitmap = enabledModemBitmap; return this; } Loading src/java/com/android/internal/telephony/metrics/TelephonyMetrics.java +1 −1 Original line number Diff line number Diff line Loading @@ -675,7 +675,7 @@ public class TelephonyMetrics { int key = mLastActiveSubscriptionInfos.keyAt(i); activeSubscriptionInfo[key] = mLastActiveSubscriptionInfos.get(key); } log.activeSubscriptionInfo = activeSubscriptionInfo; log.lastActiveSubscriptionInfo = activeSubscriptionInfo; return log; } Loading Loading
proto/src/telephony.proto +73 −59 Original line number Diff line number Diff line Loading @@ -51,8 +51,8 @@ message TelephonyLog { // Hardware revision (EVT, DVT, PVT etc.) optional string hardware_revision = 9; // The active subscription info for a specific slot. repeated ActiveSubscriptionInfo active_subscription_info = 10; // The last active subscription info for each slot. repeated ActiveSubscriptionInfo last_active_subscription_info = 10; } // The time information Loading Loading @@ -682,60 +682,74 @@ message TelephonyEvent { ON_DEMAND_DATA_SWITCH = 17; // SIM state change event. SIM_STATE_CHANGE = 18; SIM_STATE_CHANGED = 18; // Active subscription info change event. ACTIVE_SUBSCRIPTION_INFO_CHANGE = 19; ACTIVE_SUBSCRIPTION_INFO_CHANGED = 19; // Enabled modem change event. ENABLED_MODEM_CHANGE = 20; ENABLED_MODEM_CHANGED = 20; } enum ApnType { DEFAULT = 1; MMS = 2; SUPL = 3; DUN = 4; HIPRI = 5; FOTA = 6; IMS = 7; CBS = 8; IA = 9; EMERGENCY = 10; APN_TYPE_UNKNOWN = 0; APN_TYPE_DEFAULT = 1; APN_TYPE_MMS = 2; APN_TYPE_SUPL = 3; APN_TYPE_DUN = 4; APN_TYPE_HIPRI = 5; APN_TYPE_FOTA = 6; APN_TYPE_IMS = 7; APN_TYPE_CBS = 8; APN_TYPE_IA = 9; APN_TYPE_EMERGENCY = 10; } enum EventState { START = 1; END = 2; EVENT_STATE_UNKNOWN = 0; EVENT_STATE_START = 1; EVENT_STATE_END = 2; } enum NetworkValidationState { /** The network validation state is unknown. */ UNKOWN = 0; NETWORK_VALIDATION_STATE_UNKNOWN = 0; /** The network under validation is initial established. */ AVAILABLE = 1; NETWORK_VALIDATION_STATE_AVAILABLE = 1; /** The validation is failed. */ FAILED = 2; NETWORK_VALIDATION_STATE_FAILED = 2; /** The validation is passed. */ PASSED = 3; NETWORK_VALIDATION_STATE_PASSED = 3; } message DataSwitch { enum Reason { /** Data switch caused by unkown reason. */ UNKONWN = 0; /** Data switch caused by unknown reason. */ DATA_SWITCH_REASON_UNKNOWN = 0; /** Data switch caused by user's manual switch. */ MANUAL = 1; DATA_SWITCH_REASON_MANUAL = 1; /** Data switch caused by incoming/outgoing call. */ IN_CALL = 2; DATA_SWITCH_REASON_IN_CALL = 2; /** Data switch caused by CBRS switch. */ CBRS = 3; DATA_SWITCH_REASON_CBRS = 3; } /** The reason for data switch. */ Loading
src/java/com/android/internal/telephony/CellularNetworkValidator.java +4 −4 Original line number Diff line number Diff line Loading @@ -190,9 +190,9 @@ public class CellularNetworkValidator { mState = STATE_IDLE; } TelephonyMetrics.getInstance().writeNetworkValidate( passed ? TelephonyEvent.NetworkValidationState.PASSED : TelephonyEvent.NetworkValidationState.FAILED); TelephonyMetrics.getInstance().writeNetworkValidate(passed ? TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_PASSED : TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_FAILED); } mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; Loading @@ -212,7 +212,7 @@ public class CellularNetworkValidator { logd("network onAvailable " + network); if (ConnectivityNetworkCallback.this.mSubId == CellularNetworkValidator.this.mSubId) { TelephonyMetrics.getInstance().writeNetworkValidate( TelephonyEvent.NetworkValidationState.AVAILABLE); TelephonyEvent.NetworkValidationState.NETWORK_VALIDATION_STATE_AVAILABLE); } } Loading
src/java/com/android/internal/telephony/PhoneSwitcher.java +14 −10 Original line number Diff line number Diff line Loading @@ -157,8 +157,8 @@ public class PhoneSwitcher extends Handler { if (mConnectivityManager.getNetworkCapabilities(network) .hasTransport(TRANSPORT_CELLULAR)) { logDataSwitchEvent( TelephonyEvent.EventState.END, TelephonyEvent.DataSwitch.Reason.UNKONWN); TelephonyEvent.EventState.EVENT_STATE_END, TelephonyEvent.DataSwitch.Reason.DATA_SWITCH_REASON_UNKNOWN); } removeDefaultNetworkChangeCallback(); } Loading Loading @@ -333,7 +333,8 @@ public class PhoneSwitcher extends Handler { break; } case EVENT_DEFAULT_SUBSCRIPTION_CHANGED: { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.MANUAL); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_MANUAL); onEvaluate(REQUESTS_UNCHANGED, "defaultChanged"); registerDefaultNetworkChangeCallback(); break; Loading Loading @@ -372,7 +373,8 @@ public class PhoneSwitcher extends Handler { break; } case EVENT_PHONE_IN_CALL_CHANGED: { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.IN_CALL); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_IN_CALL); onEvaluate(REQUESTS_UNCHANGED, "EVENT_PHONE_IN_CALL_CHANGED"); registerDefaultNetworkChangeCallback(); break; Loading Loading @@ -470,8 +472,8 @@ public class PhoneSwitcher extends Handler { if (mNumPhones > 1 && networkRequest.networkCapabilities.hasCapability( NetworkCapabilities.NET_CAPABILITY_MMS)) { OnDemandDataSwitch onDemandDataSwitch = new OnDemandDataSwitch(); onDemandDataSwitch.apn = TelephonyEvent.ApnType.MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.START; onDemandDataSwitch.apn = TelephonyEvent.ApnType.APN_TYPE_MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.EVENT_STATE_START; TelephonyMetrics.getInstance().writeOnDemandDataSwitch(onDemandDataSwitch); } } Loading @@ -482,8 +484,8 @@ public class PhoneSwitcher extends Handler { if (mNumPhones > 1 && networkRequest.networkCapabilities.hasCapability( NetworkCapabilities.NET_CAPABILITY_MMS)) { OnDemandDataSwitch onDemandDataSwitch = new OnDemandDataSwitch(); onDemandDataSwitch.apn = TelephonyEvent.ApnType.MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.END; onDemandDataSwitch.apn = TelephonyEvent.ApnType.APN_TYPE_MMS; onDemandDataSwitch.state = TelephonyEvent.EventState.EVENT_STATE_END; TelephonyMetrics.getInstance().writeOnDemandDataSwitch(onDemandDataSwitch); } } Loading Loading @@ -812,7 +814,8 @@ public class PhoneSwitcher extends Handler { // If validation feature is not supported, set it directly. Otherwise, // start validation on the subscription first. if (CellularNetworkValidator.isValidationFeatureSupported() && needValidation) { logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.CBRS); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_CBRS); mSetOpptSubCallback = callback; mValidator.validate(subId, DEFAULT_VALIDATION_EXPIRATION_TIME, false, mValidationCallback); Loading Loading @@ -852,7 +855,8 @@ public class PhoneSwitcher extends Handler { private void setPreferredSubscription(int subId) { if (mPreferredDataSubId != subId) { mPreferredDataSubId = subId; logDataSwitchEvent(TelephonyEvent.EventState.START, DataSwitch.Reason.CBRS); logDataSwitchEvent(TelephonyEvent.EventState.EVENT_STATE_START, DataSwitch.Reason.DATA_SWITCH_REASON_CBRS); onEvaluate(REQUESTS_UNCHANGED, "preferredDataSubscriptionIdChanged"); notifyPreferredDataSubIdChanged(); registerDefaultNetworkChangeCallback(); Loading
src/java/com/android/internal/telephony/metrics/TelephonyEventBuilder.java +3 −3 Original line number Diff line number Diff line Loading @@ -147,7 +147,7 @@ public class TelephonyEventBuilder { /** Set and build SIM state change event. */ public TelephonyEventBuilder setSimStateChange(SparseArray<Integer> simStates) { mEvent.type = Type.SIM_STATE_CHANGE; mEvent.type = Type.SIM_STATE_CHANGED; mEvent.simState = new int[simStates.size()]; for (int i = 0; i < simStates.size(); i++) { int key = simStates.keyAt(i); Loading @@ -158,14 +158,14 @@ public class TelephonyEventBuilder { /** Set and build subscription info change event. */ public TelephonyEventBuilder setActiveSubscriptionInfoChange(ActiveSubscriptionInfo info) { mEvent.type = Type.ACTIVE_SUBSCRIPTION_INFO_CHANGE; mEvent.type = Type.ACTIVE_SUBSCRIPTION_INFO_CHANGED; mEvent.activeSubscriptionInfo = info; return this; } /** Set and build enabled modem bitmap change event. */ public TelephonyEventBuilder setEnabledModemBitmap(int enabledModemBitmap) { mEvent.type = Type.ENABLED_MODEM_CHANGE; mEvent.type = Type.ENABLED_MODEM_CHANGED; mEvent.enabledModemBitmap = enabledModemBitmap; return this; } Loading
src/java/com/android/internal/telephony/metrics/TelephonyMetrics.java +1 −1 Original line number Diff line number Diff line Loading @@ -675,7 +675,7 @@ public class TelephonyMetrics { int key = mLastActiveSubscriptionInfos.keyAt(i); activeSubscriptionInfo[key] = mLastActiveSubscriptionInfos.get(key); } log.activeSubscriptionInfo = activeSubscriptionInfo; log.lastActiveSubscriptionInfo = activeSubscriptionInfo; return log; } Loading