diff options
author | Ricardo Cerqueira <ricardo@cyngn.com> | 2015-11-05 02:27:28 +0000 |
---|---|---|
committer | Ricardo Cerqueira <ricardo@cyngn.com> | 2015-11-05 15:13:26 +0000 |
commit | a89168479cb14f482268af6f1a650b28eba0b393 (patch) | |
tree | 8552b9d49ecfad6a453ee5f743571b700b4d3d3c /telephony | |
parent | 8331d3e508498a19c296fed41b9d4b23ea960031 (diff) | |
parent | 25b5096f154721c8142d54f1b3af9e2998deffe9 (diff) | |
download | frameworks_base-a89168479cb14f482268af6f1a650b28eba0b393.zip frameworks_base-a89168479cb14f482268af6f1a650b28eba0b393.tar.gz frameworks_base-a89168479cb14f482268af6f1a650b28eba0b393.tar.bz2 |
Merge tag 'android-6.0.0_r26' into HEAD
Android 6.0.0 release 26
Conflicts:
cmds/bootanimation/BootAnimation.cpp
core/java/android/accounts/AccountManager.java
core/java/android/app/AppOpsManager.java
core/java/android/os/PowerManagerInternal.java
core/java/android/os/storage/IMountService.java
core/java/android/provider/Settings.java
core/java/com/android/internal/widget/ILockSettings.aidl
core/res/res/values-mcc204-mnc12/config.xml
core/res/res/values-mcc219-mnc02/config.xml
core/res/res/values-mcc730-mnc07/config.xml
core/res/res/values/config.xml
core/res/res/values/symbols.xml
packages/SystemUI/res/values/config.xml
packages/SystemUI/src/com/android/systemui/doze/DozeService.java
packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java
packages/SystemUI/src/com/android/systemui/statusbar/ExpandableOutlineView.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeParameters.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/DozeScrimController.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarHeaderView.java
packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java
packages/SystemUI/src/com/android/systemui/statusbar/stack/StackScrollAlgorithm.java
services/core/java/com/android/server/LocationManagerService.java
services/core/java/com/android/server/am/ActivityManagerService.java
services/core/java/com/android/server/pm/PackageManagerService.java
services/core/java/com/android/server/power/PowerManagerService.java
telecomm/java/android/telecom/Phone.java
telephony/java/android/telephony/CarrierConfigManager.java
telephony/java/android/telephony/RadioAccessFamily.java
telephony/java/android/telephony/ServiceState.java
telephony/java/android/telephony/SignalStrength.java
telephony/java/android/telephony/TelephonyManager.java
telephony/java/com/android/ims/ImsCallProfile.java
telephony/java/com/android/ims/ImsReasonInfo.java
telephony/java/com/android/ims/ImsSuppServiceNotification.aidl
telephony/java/com/android/ims/ImsSuppServiceNotification.java
telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl
telephony/java/com/android/internal/telephony/RILConstants.java
Change-Id: I99c6edb8e25a77145b5adef97d0d55bfbe676959
Diffstat (limited to 'telephony')
9 files changed, 242 insertions, 125 deletions
diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index aa88bb2..94bf4eb 100644 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -78,6 +78,15 @@ public class CarrierConfigManager { public static final String KEY_WORLD_PHONE_BOOL = "world_phone_bool"; /** + * Flag to require or skip entitlement checks. + * If true, entitlement checks will be executed if device has been configured for it, + * If false, entitlement checks will be skipped. + * @hide + */ + public static final String + KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL = "require_entitlement_checks_bool"; + + /** * If true, enable vibration (haptic feedback) for key presses in the EmergencyDialer activity. * The pattern is set on a per-platform basis using config_virtualKeyVibePattern. To be * consistent with the regular Dialer, this value should agree with the corresponding values @@ -259,6 +268,35 @@ public class CarrierConfigManager { = "carrier_allow_turnoff_ims_bool"; /** + * Flag specifying whether IMS instant lettering is available for the carrier. {@code True} if + * instant lettering is available for the carrier, {@code false} otherwise. + * @hide + */ + public static final String KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL = + "carrier_instant_lettering_available_bool"; + + /** + * When IMS instant lettering is available for a carrier (see + * {@link #KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL}), determines the list of characters + * which may not be contained in messages. Should be specified as a regular expression suitable + * for use with {@link String#matches(String)}. + * @hide + */ + public static final String KEY_CARRIER_INSTANT_LETTERING_INVALID_CHARS_STRING = + "carrier_instant_lettering_invalid_chars_string"; + + /** + * When IMS instant lettering is available for a carrier (see + * {@link #KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL}), determines a list of characters which + * must be escaped with a backslash '\' character. Should be specified as a string containing + * the characters to be escaped. For example to escape quote and backslash the string would be + * a quote and a backslash. + * @hide + */ + public static final String KEY_CARRIER_INSTANT_LETTERING_ESCAPED_CHARS_STRING = + "carrier_instant_lettering_escaped_chars_string"; + + /** * If Voice Radio Technology is RIL_RADIO_TECHNOLOGY_LTE:14 or RIL_RADIO_TECHNOLOGY_UNKNOWN:0 * this is the value that should be used instead. A configuration value of * RIL_RADIO_TECHNOLOGY_UNKNOWN:0 means there is no replacement value and that the default @@ -281,6 +319,14 @@ public class CarrierConfigManager { public static final String KEY_CARRIER_FORCE_DISABLE_ETWS_CMAS_TEST_BOOL = "carrier_force_disable_etws_cmas_test_bool"; + /** + * The default flag specifying whether "Turn on Notifications" option will be always shown in + * Settings->More->Emergency broadcasts menu regardless developer options is turned on or not. + * @hide + */ + public static final String KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL = + "always_show_emergency_alert_onoff_bool"; + /* The following 3 fields are related to carrier visual voicemail. */ /** @@ -334,6 +380,47 @@ public class CarrierConfigManager { "ci_action_on_sys_update_extra_val_string"; /** + * Specifies the amount of gap to be added in millis between DTMF tones. When a non-zero value + * is specified, the UE shall wait for the specified amount of time before it sends out + * successive DTMF tones on the network. + * @hide + */ + public static final String KEY_GSM_DTMF_TONE_DELAY_INT = "gsm_dtmf_tone_delay_int"; + + /** + * Specifies the amount of gap to be added in millis between DTMF tones. When a non-zero value + * is specified, the UE shall wait for the specified amount of time before it sends out + * successive DTMF tones on the network. + * @hide + */ + public static final String KEY_IMS_DTMF_TONE_DELAY_INT = "ims_dtmf_tone_delay_int"; + + /** + * Determines whether conference calls are supported by a carrier. When {@code true}, + * conference calling is supported, {@code false otherwise}. + * @hide + */ + public static final String KEY_SUPPORT_CONFERENCE_CALL_BOOL = "support_conference_call_bool"; + + /** + * Determine whether user can toggle Enhanced 4G LTE Mode in Settings. + * @hide + */ + public static final String KEY_EDITABLE_ENHANCED_4G_LTE_BOOL = "editable_enhanced_4g_lte_bool"; + + /** + * Determine whether IMS apn can be shown. + * @hide + */ + public static final String KEY_HIDE_IMS_APN_BOOL = "hide_ims_apn_bool"; + + /** + * Determine whether preferred network type can be shown. + * @hide + */ + public static final String KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL = "hide_preferred_network_type_bool"; + + /** * If this is true, the SIM card (through Customer Service Profile EF file) will be able to * prevent manual operator selection. If false, this SIM setting will be ignored and manual * operator selection will always be available. See CPHS4_2.WW6, CPHS B.4.7.1 for more @@ -375,6 +462,15 @@ public class CarrierConfigManager { public static final String KEY_MMS_UA_PROF_URL_STRING = "uaProfUrl"; public static final String KEY_MMS_USER_AGENT_STRING = "userAgent"; + /** + * Determines whether the carrier supports making non-emergency phone calls while the phone is + * in emergency callback mode. Default value is {@code true}, meaning that non-emergency calls + * are allowed in emergency callback mode. + * @hide + */ + public static final String KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL = + "allow_non_emergency_calls_in_ecm_bool"; + /** The default value for every variable. */ private final static PersistableBundle sDefaults; @@ -393,6 +489,9 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_CARRIER_VOLTE_PROVISIONING_REQUIRED_BOOL, false); sDefaults.putBoolean(KEY_CARRIER_VOLTE_TTY_SUPPORTED_BOOL, true); sDefaults.putBoolean(KEY_CARRIER_ALLOW_TURNOFF_IMS_BOOL, true); + sDefaults.putBoolean(KEY_CARRIER_INSTANT_LETTERING_AVAILABLE_BOOL, false); + sDefaults.putString(KEY_CARRIER_INSTANT_LETTERING_INVALID_CHARS_STRING, ""); + sDefaults.putString(KEY_CARRIER_INSTANT_LETTERING_ESCAPED_CHARS_STRING, ""); sDefaults.putBoolean(KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL, false); sDefaults.putBoolean(KEY_DTMF_TYPE_ENABLED_BOOL, false); sDefaults.putBoolean(KEY_ENABLE_DIALER_KEY_VIBRATION_BOOL, true); @@ -413,6 +512,7 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL, false); sDefaults.putBoolean(KEY_VOICE_PRIVACY_DISABLE_UI_BOOL, false); sDefaults.putBoolean(KEY_WORLD_PHONE_BOOL, true); + sDefaults.putBoolean(KEY_REQUIRE_ENTITLEMENT_CHECKS_BOOL, true); sDefaults.putInt(KEY_VOLTE_REPLACEMENT_RAT_INT, 0); sDefaults.putString(KEY_DEFAULT_SIM_CALL_MANAGER_STRING, ""); sDefaults.putString(KEY_VVM_DESTINATION_NUMBER_STRING, ""); @@ -424,12 +524,19 @@ public class CarrierConfigManager { sDefaults.putString(KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING, ""); sDefaults.putString(KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING, ""); sDefaults.putBoolean(KEY_CSP_ENABLED_BOOL, false); + sDefaults.putBoolean(KEY_ALWAYS_SHOW_EMERGENCY_ALERT_ONOFF_BOOL, false); sDefaults.putStringArray(KEY_GSM_ROAMING_NETWORKS_STRING_ARRAY, null); sDefaults.putStringArray(KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY, null); sDefaults.putStringArray(KEY_CDMA_ROAMING_NETWORKS_STRING_ARRAY, null); sDefaults.putStringArray(KEY_CDMA_NONROAMING_NETWORKS_STRING_ARRAY, null); sDefaults.putBoolean(KEY_FORCE_HOME_NETWORK_BOOL, false); + sDefaults.putInt(KEY_GSM_DTMF_TONE_DELAY_INT, 0); + sDefaults.putInt(KEY_IMS_DTMF_TONE_DELAY_INT, 0); + sDefaults.putBoolean(KEY_SUPPORT_CONFERENCE_CALL_BOOL, true); + sDefaults.putBoolean(KEY_EDITABLE_ENHANCED_4G_LTE_BOOL, true); + sDefaults.putBoolean(KEY_HIDE_IMS_APN_BOOL, false); + sDefaults.putBoolean(KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL, false); // MMS defaults sDefaults.putBoolean(KEY_MMS_ALIAS_ENABLED_BOOL, false); @@ -463,6 +570,7 @@ public class CarrierConfigManager { sDefaults.putString(KEY_MMS_UA_PROF_TAG_NAME_STRING, "x-wap-profile"); sDefaults.putString(KEY_MMS_UA_PROF_URL_STRING, ""); sDefaults.putString(KEY_MMS_USER_AGENT_STRING, ""); + sDefaults.putBoolean(KEY_ALLOW_NON_EMERGENCY_CALLS_IN_ECM_BOOL, true); } /** diff --git a/telephony/java/android/telephony/PhoneNumberUtils.java b/telephony/java/android/telephony/PhoneNumberUtils.java index df40afd..4b37cdb 100644 --- a/telephony/java/android/telephony/PhoneNumberUtils.java +++ b/telephony/java/android/telephony/PhoneNumberUtils.java @@ -1188,6 +1188,8 @@ public class PhoneNumberUtils "VI", // U.S. Virgin Islands }; + private static final String KOREA_ISO_COUNTRY_CODE = "KR"; + /** * Breaks the given number down and formats it according to the rules * for the country the number is from. @@ -1508,7 +1510,19 @@ public class PhoneNumberUtils String result = null; try { PhoneNumber pn = util.parseAndKeepRawInput(phoneNumber, defaultCountryIso); - result = util.formatInOriginalFormat(pn, defaultCountryIso); + /** + * Need to reformat any local Korean phone numbers (when the user is in Korea) with + * country code to corresponding national format which would replace the leading + * +82 with 0. + */ + if (KOREA_ISO_COUNTRY_CODE.equals(defaultCountryIso) && + (pn.getCountryCode() == util.getCountryCodeForRegion(KOREA_ISO_COUNTRY_CODE)) && + (pn.getCountryCodeSource() == + PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN)) { + result = util.format(pn, PhoneNumberUtil.PhoneNumberFormat.NATIONAL); + } else { + result = util.formatInOriginalFormat(pn, defaultCountryIso); + } } catch (NumberParseException e) { } return result; diff --git a/telephony/java/android/telephony/RadioAccessFamily.java b/telephony/java/android/telephony/RadioAccessFamily.java index c079eae..2906a2d 100755 --- a/telephony/java/android/telephony/RadioAccessFamily.java +++ b/telephony/java/android/telephony/RadioAccessFamily.java @@ -187,35 +187,35 @@ public class RadioAccessFamily implements Parcelable { case RILConstants.NETWORK_MODE_GLOBAL: raf = GSM | WCDMA | CDMA | EVDO; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_ONLY: + case RILConstants.NETWORK_MODE_TDSCDMA_ONLY: raf = RAF_TD_SCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA: + case RILConstants.NETWORK_MODE_TDSCDMA_WCDMA: raf = RAF_TD_SCDMA | WCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_LTE: - raf = RAF_TD_SCDMA | LTE; + case RILConstants.NETWORK_MODE_LTE_TDSCDMA: + raf = RAF_LTE | RAF_TD_SCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM: + case RILConstants.NETWORK_MODE_TDSCDMA_GSM: raf = RAF_TD_SCDMA | GSM; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_LTE: - raf = RAF_TD_SCDMA | GSM | LTE; + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM: + raf = RAF_LTE | RAF_TD_SCDMA | GSM; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA: + case RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA: raf = RAF_TD_SCDMA | GSM | WCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA_LTE: - raf = RAF_TD_SCDMA | WCDMA | LTE; + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA: + raf = RAF_LTE | RAF_TD_SCDMA | WCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_LTE: - raf = RAF_TD_SCDMA | GSM | WCDMA | LTE; + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA: + raf = RAF_LTE | RAF_TD_SCDMA | GSM | WCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_CDMA_EVDO: - raf = RAF_TD_SCDMA | GSM | WCDMA | CDMA | EVDO; + case RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA: + raf = RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA; break; - case RILConstants.NETWORK_MODE_TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA: - raf = RAF_TD_SCDMA | LTE | CDMA | EVDO | GSM | WCDMA; + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA: + raf = RAF_LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA; break; default: raf = RAF_UNKNOWN; @@ -282,34 +282,34 @@ public class RadioAccessFamily implements Parcelable { type = RILConstants.NETWORK_MODE_GLOBAL; break; case RAF_TD_SCDMA: - type = RILConstants.NETWORK_MODE_TD_SCDMA_ONLY; + type = RILConstants.NETWORK_MODE_TDSCDMA_ONLY; break; case (RAF_TD_SCDMA | WCDMA): - type = RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA; + type = RILConstants.NETWORK_MODE_TDSCDMA_WCDMA; break; - case (RAF_TD_SCDMA | LTE): - type = RILConstants.NETWORK_MODE_TD_SCDMA_LTE; + case (RAF_LTE | RAF_TD_SCDMA): + type = RILConstants.NETWORK_MODE_LTE_TDSCDMA; break; case (RAF_TD_SCDMA | GSM): - type = RILConstants.NETWORK_MODE_TD_SCDMA_GSM; + type = RILConstants.NETWORK_MODE_TDSCDMA_GSM; break; - case (RAF_TD_SCDMA | GSM | LTE): - type = RILConstants.NETWORK_MODE_TD_SCDMA_GSM_LTE; + case (RAF_LTE | RAF_TD_SCDMA | GSM): + type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM; break; case (RAF_TD_SCDMA | GSM | WCDMA): - type = RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA; + type = RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA; break; - case (RAF_TD_SCDMA | WCDMA | LTE): - type = RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA_LTE; + case (RAF_LTE | RAF_TD_SCDMA | WCDMA): + type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA; break; - case (RAF_TD_SCDMA | GSM | WCDMA | LTE): - type = RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_LTE; + case (RAF_LTE | RAF_TD_SCDMA | GSM | WCDMA): + type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA; break; - case (RAF_TD_SCDMA| GSM | WCDMA | CDMA | EVDO): - type = RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_CDMA_EVDO; + case (RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA): + type = RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA; break; - case (RAF_TD_SCDMA| LTE | CDMA | EVDO | GSM | WCDMA): - type = RILConstants.NETWORK_MODE_TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA; + case (RAF_LTE | RAF_TD_SCDMA | RAF_LTE | CDMA | EVDO | GSM | WCDMA): + type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA; break; default: type = RILConstants.PREFERRED_NETWORK_MODE ; diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index d3a7fa2..dd86830 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -1069,22 +1069,22 @@ public class TelephonyManager { case RILConstants.NETWORK_MODE_GSM_UMTS: case RILConstants.NETWORK_MODE_LTE_GSM_WCDMA: case RILConstants.NETWORK_MODE_LTE_WCDMA: - case RILConstants.NETWORK_MODE_TD_SCDMA_ONLY: - case RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA: - case RILConstants.NETWORK_MODE_TD_SCDMA_LTE: - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM: - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_LTE: - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA: - case RILConstants.NETWORK_MODE_TD_SCDMA_WCDMA_LTE: - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_LTE: + case RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA: + case RILConstants.NETWORK_MODE_TDSCDMA_ONLY: + case RILConstants.NETWORK_MODE_TDSCDMA_WCDMA: + case RILConstants.NETWORK_MODE_LTE_TDSCDMA: + case RILConstants.NETWORK_MODE_TDSCDMA_GSM: + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM: + case RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA: + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA: + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA: + case RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA: return PhoneConstants.PHONE_TYPE_GSM; // Use CDMA Phone for the global mode including CDMA case RILConstants.NETWORK_MODE_GLOBAL: case RILConstants.NETWORK_MODE_LTE_CDMA_EVDO: - case RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA: - case RILConstants.NETWORK_MODE_TD_SCDMA_GSM_WCDMA_CDMA_EVDO: - case RILConstants.NETWORK_MODE_TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA: + case RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA: return PhoneConstants.PHONE_TYPE_CDMA; case RILConstants.NETWORK_MODE_LTE_ONLY: @@ -3660,11 +3660,12 @@ public class TelephonyManager { * * @hide */ - public boolean setNetworkSelectionModeManual(int subId, OperatorInfo operator) { + public boolean setNetworkSelectionModeManual(int subId, OperatorInfo operator, + boolean persistSelection) { try { ITelephony telephony = getITelephony(); if (telephony != null) - return telephony.setNetworkSelectionModeManual(subId, operator); + return telephony.setNetworkSelectionModeManual(subId, operator, persistSelection); } catch (RemoteException ex) { Rlog.e(TAG, "setNetworkSelectionModeManual RemoteException", ex); } catch (NullPointerException ex) { @@ -4458,13 +4459,13 @@ public class TelephonyManager { } } - /** - * Returns the Status of Volte - *@hide - */ - public boolean isVolteEnabled() { + /** + * Returns the Status of Volte + * @hide + */ + public boolean isVolteAvailable() { try { - return getITelephony().isVolteEnabled(); + return getITelephony().isVolteAvailable(); } catch (RemoteException ex) { return false; } catch (NullPointerException ex) { @@ -4472,13 +4473,27 @@ public class TelephonyManager { } } - /** - * Returns the Status of Wi-Fi Calling - *@hide - */ - public boolean isWifiCallingEnabled() { + /** + * Returns the Status of video telephony (VT) + * @hide + */ + public boolean isVideoTelephonyAvailable() { + try { + return getITelephony().isVideoTelephonyAvailable(); + } catch (RemoteException ex) { + return false; + } catch (NullPointerException ex) { + return false; + } + } + + /** + * Returns the Status of Wi-Fi Calling + * @hide + */ + public boolean isWifiCallingAvailable() { try { - return getITelephony().isWifiCallingEnabled(); + return getITelephony().isWifiCallingAvailable(); } catch (RemoteException ex) { return false; } catch (NullPointerException ex) { diff --git a/telephony/java/com/android/ims/ImsSuppServiceNotification.aidl b/telephony/java/com/android/ims/ImsSuppServiceNotification.aidl index ff21047..6b4479f 100644 --- a/telephony/java/com/android/ims/ImsSuppServiceNotification.aidl +++ b/telephony/java/com/android/ims/ImsSuppServiceNotification.aidl @@ -1,30 +1,17 @@ /* - * Copyright (c) 2015, The Linux Foundation. All rights reserved. + * Copyright (c) 2015 The Android Open Source Project * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials provided - * with the distribution. - * * Neither the name of The Linux Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at * - * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE - * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN - * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ diff --git a/telephony/java/com/android/ims/ImsSuppServiceNotification.java b/telephony/java/com/android/ims/ImsSuppServiceNotification.java index 91171c7..faf7499 100644 --- a/telephony/java/com/android/ims/ImsSuppServiceNotification.java +++ b/telephony/java/com/android/ims/ImsSuppServiceNotification.java @@ -1,30 +1,17 @@ /* - * Copyright (c) 2015, The Linux Foundation. All rights reserved. + * Copyright (c) 2015 The Android Open Source Project * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above - * copyright notice, this list of conditions and the following - * disclaimer in the documentation and/or other materials provided - * with the distribution. - * * Neither the name of The Linux Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at * - * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE - * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN - * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. */ diff --git a/telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl b/telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl index 2e94536..507a293 100644 --- a/telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl +++ b/telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl @@ -78,7 +78,7 @@ interface IImsRegistrationListener { * @param disabledFeatures features disabled as defined in com.android.ims.ImsConfig#FeatureConstants. */ void registrationFeatureCapabilityChanged(int serviceClass, - out int[] enabledFeatures, out int[] disabledFeatures) = 6; + in int[] enabledFeatures, in int[] disabledFeatures) = 6; /** * Updates the application with the waiting voice message count. diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index 5c05191..c3db8c2 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -813,9 +813,13 @@ interface ITelephony { * * @param subId the id of the subscription. * @param operatorInfo the operator to attach to. + * @param persistSelection should the selection persist till reboot or its + * turned off? Will also result in notification being not shown to + * the user if the signal is lost. * @return true if the request suceeded. */ - boolean setNetworkSelectionModeManual(int subId, in OperatorInfo operator); + boolean setNetworkSelectionModeManual(int subId, in OperatorInfo operator, + boolean persistSelection); /** * Set the preferred network type. @@ -1057,6 +1061,7 @@ interface ITelephony { * @return {@code true} if the device supports hearing aid compatibility. */ boolean isHearingAidCompatibilitySupported(); + /** * Get IMS Registration Status */ @@ -1064,15 +1069,18 @@ interface ITelephony { /** * Returns the Status of Wi-Fi Calling - *@hide */ - boolean isWifiCallingEnabled(); + boolean isWifiCallingAvailable(); + + /** + * Returns the Status of Volte + */ + boolean isVolteAvailable(); /** - * Returns the Status of Volte - *@hide + * Returns the Status of VT (video telephony) */ - boolean isVolteEnabled(); + boolean isVideoTelephonyAvailable(); /** * Returns the unique device ID of phone, for example, the IMEI for @@ -1101,7 +1109,6 @@ interface ITelephony { /** * Return the modem activity info. - *@hide */ ModemActivityInfo getModemActivityInfo(); diff --git a/telephony/java/com/android/internal/telephony/RILConstants.java b/telephony/java/com/android/internal/telephony/RILConstants.java index f1fc50f..af79ff8 100755 --- a/telephony/java/com/android/internal/telephony/RILConstants.java +++ b/telephony/java/com/android/internal/telephony/RILConstants.java @@ -96,17 +96,16 @@ public interface RILConstants { int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10; /* LTE, CDMA, EvDo, GSM/WCDMA */ int NETWORK_MODE_LTE_ONLY = 11; /* LTE Only mode. */ int NETWORK_MODE_LTE_WCDMA = 12; /* LTE/WCDMA */ - int NETWORK_MODE_TD_SCDMA_ONLY = 13; /* TD-SCDMA only */ - int NETWORK_MODE_TD_SCDMA_WCDMA = 14; /* TD-SCDMA and WCDMA */ - int NETWORK_MODE_TD_SCDMA_LTE = 15; /* TD-SCDMA and LTE */ - int NETWORK_MODE_TD_SCDMA_GSM = 16; /* TD-SCDMA and GSM */ - int NETWORK_MODE_TD_SCDMA_GSM_LTE = 17; /* TD-SCDMA,GSM and LTE */ - int NETWORK_MODE_TD_SCDMA_GSM_WCDMA = 18; /* TD-SCDMA, GSM/WCDMA */ - int NETWORK_MODE_TD_SCDMA_WCDMA_LTE = 19; /* TD-SCDMA, WCDMA and LTE */ - int NETWORK_MODE_TD_SCDMA_GSM_WCDMA_LTE = 20; /* TD-SCDMA, GSM/WCDMA and LTE */ - int NETWORK_MODE_TD_SCDMA_GSM_WCDMA_CDMA_EVDO = 21; /*TD-SCDMA,EvDo,CDMA,GSM/WCDMA*/ - int NETWORK_MODE_TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA = 22; /* TD-SCDMA/LTE/GSM/WCDMA, CDMA, and - EvDo */ + int NETWORK_MODE_TDSCDMA_ONLY = 13; /* TD-SCDMA only */ + int NETWORK_MODE_TDSCDMA_WCDMA = 14; /* TD-SCDMA and WCDMA */ + int NETWORK_MODE_LTE_TDSCDMA = 15; /* TD-SCDMA and LTE */ + int NETWORK_MODE_TDSCDMA_GSM = 16; /* TD-SCDMA and GSM */ + int NETWORK_MODE_LTE_TDSCDMA_GSM = 17; /* TD-SCDMA,GSM and LTE */ + int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18; /* TD-SCDMA, GSM/WCDMA */ + int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19; /* TD-SCDMA, WCDMA and LTE */ + int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20; /* TD-SCDMA, GSM/WCDMA and LTE */ + int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21; /*TD-SCDMA,EvDo,CDMA,GSM/WCDMA*/ + int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22; /* TD-SCDMA/LTE/GSM/WCDMA, CDMA, and EvDo */ int PREFERRED_NETWORK_MODE = SystemProperties.getInt("ro.telephony.default_network", NETWORK_MODE_WCDMA_PREF); |