diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java index 396efff928..a8b324a58e 100644 --- a/core/java/android/net/ConnectivityManager.java +++ b/core/java/android/net/ConnectivityManager.java @@ -387,6 +387,12 @@ public class ConnectivityManager { */ public static final int TYPE_MOBILE_IA = 14; +/** + * Emergency PDN connection for emergency calls + * {@hide} + */ + public static final int TYPE_MOBILE_EMERGENCY = 15; + /** * The network that uses proxy to achieve connectivity. * {@hide} @@ -490,6 +496,8 @@ public class ConnectivityManager { return "WIFI_P2P"; case TYPE_MOBILE_IA: return "MOBILE_IA"; + case TYPE_MOBILE_EMERGENCY: + return "MOBILE_EMERGENCY"; case TYPE_PROXY: return "PROXY"; default: @@ -515,6 +523,7 @@ public class ConnectivityManager { case TYPE_MOBILE_IMS: case TYPE_MOBILE_CBS: case TYPE_MOBILE_IA: + case TYPE_MOBILE_EMERGENCY: return true; default: return false; diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 19fff55464..7fe1e821e2 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -3925,6 +3925,8 @@ public class ConnectivityService extends IConnectivityManager.Stub { usedNetworkType = ConnectivityManager.TYPE_MOBILE_IMS; } else if (TextUtils.equals(feature, Phone.FEATURE_ENABLE_CBS)) { usedNetworkType = ConnectivityManager.TYPE_MOBILE_CBS; + } else if (TextUtils.equals(feature, Phone.FEATURE_ENABLE_EMERGENCY)) { + usedNetworkType = ConnectivityManager.TYPE_MOBILE_EMERGENCY; } else { Slog.e(TAG, "Can't match any mobile netTracker!"); }