Phone.java revision e64a413b850aae224e2f56e7dfc6e0bcd667643e
10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/* 20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2007 The Android Open Source Project 30825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License. 60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at 70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * http://www.apache.org/licenses/LICENSE-2.0 90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software 110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS, 120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and 140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License. 150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 170825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.internal.telephony; 180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.content.Context; 200825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.net.LinkProperties; 2196cce86cf08e37e0f09ed5057b1196e26b302743Robert Greenwaltimport android.net.NetworkCapabilities; 220825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Handler; 230825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Message; 24ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Savilleimport android.telephony.CellInfo; 250825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.CellLocation; 260825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.PhoneStateListener; 270825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.ServiceState; 280825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.SignalStrength; 290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3038b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohenimport com.android.internal.telephony.imsphone.ImsPhone; 310825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport com.android.internal.telephony.test.SimulatedRadioControl; 32d720945f2be5ea5fe0faf67e67d9ea0e184eba67Alex Yakavenkaimport com.android.internal.telephony.uicc.IsimRecords; 33a8467dd0c524787104b1ccdddc5e8af10ba729edWink Savilleimport com.android.internal.telephony.uicc.UiccCard; 34d720945f2be5ea5fe0faf67e67d9ea0e184eba67Alex Yakavenkaimport com.android.internal.telephony.uicc.UsimServiceTable; 350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3638b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohenimport com.android.internal.telephony.PhoneConstants.*; // ???? 370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 380825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.util.List; 390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/** 410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Internal interface used to control the phone; SDK developers cannot 420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * obtain this interface. 430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@hide} 450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 470825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic interface Phone { 480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** used to enable additional debug messages */ 500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final boolean DEBUG_PHONE = true; 510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public enum DataActivityState { 530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The state of a data activity. 550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <ul> 560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>NONE = No traffic</li> 570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>DATAIN = Receiving IP ppp traffic</li> 580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>DATAOUT = Sending IP ppp traffic</li> 590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>DATAINANDOUT = Both receiving and sending IP ppp traffic</li> 600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>DORMANT = The data connection is still active, 610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville but physical link is down</li> 620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * </ul> 630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville NONE, DATAIN, DATAOUT, DATAINANDOUT, DORMANT; 65cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville } 660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville enum SuppService { 680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville UNKNOWN, SWITCH, SEPARATE, TRANSFER, CONFERENCE, REJECT, HANGUP; 69cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville } 700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // "Features" accessible through the connectivity manager 720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_MMS = "enableMMS"; 730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_SUPL = "enableSUPL"; 740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_DUN = "enableDUN"; 750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_HIPRI = "enableHIPRI"; 760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_DUN_ALWAYS = "enableDUNAlways"; 770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_FOTA = "enableFOTA"; 780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_IMS = "enableIMS"; 790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String FEATURE_ENABLE_CBS = "enableCBS"; 80cf5205f70eb1eac497164124187a088ecb03fff5Ram static final String FEATURE_ENABLE_EMERGENCY = "enableEmergency"; 810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Optional reasons for disconnect and connect 840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_ROAMING_ON = "roamingOn"; 860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_ROAMING_OFF = "roamingOff"; 870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_DISABLED = "dataDisabled"; 880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_ENABLED = "dataEnabled"; 890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_ATTACHED = "dataAttached"; 900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_DETACHED = "dataDetached"; 910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_CDMA_DATA_ATTACHED = "cdmaDataAttached"; 920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_CDMA_DATA_DETACHED = "cdmaDataDetached"; 930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_APN_CHANGED = "apnChanged"; 940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_APN_SWITCHED = "apnSwitched"; 950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_APN_FAILED = "apnFailed"; 960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_RESTORE_DEFAULT_APN = "restoreDefaultApn"; 970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_RADIO_TURNED_OFF = "radioTurnedOff"; 980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_PDP_RESET = "pdpReset"; 990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_VOICE_CALL_ENDED = "2GVoiceCallEnded"; 1000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_VOICE_CALL_STARTED = "2GVoiceCallStarted"; 1010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_PS_RESTRICT_ENABLED = "psRestrictEnabled"; 1020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_PS_RESTRICT_DISABLED = "psRestrictDisabled"; 1030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_SIM_LOADED = "simLoaded"; 1040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_NW_TYPE_CHANGED = "nwTypeChanged"; 1050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_DEPENDENCY_MET = "dependencyMet"; 1060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final String REASON_DATA_DEPENDENCY_UNMET = "dependencyUnmet"; 107ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6aWink Saville static final String REASON_LOST_DATA_CONNECTION = "lostDataConnection"; 108ff4e317d24f0d23bdc0f306d53ddc51f2f1ecf6aWink Saville static final String REASON_CONNECTED = "connected"; 1093fad7daba62dcb7aafc4adc7f8cc123726ed5a7cRobert Greenwalt static final String REASON_SINGLE_PDN_ARBITRATION = "SinglePdnArbitration"; 110a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville static final String REASON_DATA_SPECIFIC_DISABLED = "specificDisabled"; 1110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Used for band mode selection methods 1130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_UNSPECIFIED = 0; // selected by baseband automatically 1140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_EURO_BAND = 1; // GSM-900 / DCS-1800 / WCDMA-IMT-2000 1150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_US_BAND = 2; // GSM-850 / PCS-1900 / WCDMA-850 / WCDMA-PCS-1900 1160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_JPN_BAND = 3; // WCDMA-800 / WCDMA-IMT-2000 1170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_AUS_BAND = 4; // GSM-900 / DCS-1800 / WCDMA-850 / WCDMA-IMT-2000 1180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_AUS2_BAND = 5; // GSM-900 / DCS-1800 / WCDMA-850 1190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int BM_BOUNDARY = 6; // upper band boundary 1200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Used for preferred network type 1220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Note NT_* substitute RILConstants.NETWORK_MODE_* above the Phone 1230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_WCDMA_PREF = RILConstants.NETWORK_MODE_WCDMA_PREF; 1240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_GSM_ONLY = RILConstants.NETWORK_MODE_GSM_ONLY; 1250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_WCDMA_ONLY = RILConstants.NETWORK_MODE_WCDMA_ONLY; 1260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_GSM_UMTS = RILConstants.NETWORK_MODE_GSM_UMTS; 1270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_CDMA = RILConstants.NETWORK_MODE_CDMA; 1290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_CDMA_NO_EVDO = RILConstants.NETWORK_MODE_CDMA_NO_EVDO; 1310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_EVDO_NO_CDMA = RILConstants.NETWORK_MODE_EVDO_NO_CDMA; 1320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int NT_MODE_GLOBAL = RILConstants.NETWORK_MODE_GLOBAL; 1330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1341343b7ae763b3163d03bd9c4756ab4857c4658b2Uma Maheswari Ramalingam int NT_MODE_LTE_CDMA_AND_EVDO = RILConstants.NETWORK_MODE_LTE_CDMA_EVDO; 1351343b7ae763b3163d03bd9c4756ab4857c4658b2Uma Maheswari Ramalingam int NT_MODE_LTE_GSM_WCDMA = RILConstants.NETWORK_MODE_LTE_GSM_WCDMA; 136f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby int NT_MODE_LTE_CDMA_EVDO_GSM_WCDMA = RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA; 1371343b7ae763b3163d03bd9c4756ab4857c4658b2Uma Maheswari Ramalingam int NT_MODE_LTE_ONLY = RILConstants.NETWORK_MODE_LTE_ONLY; 1381343b7ae763b3163d03bd9c4756ab4857c4658b2Uma Maheswari Ramalingam int NT_MODE_LTE_WCDMA = RILConstants.NETWORK_MODE_LTE_WCDMA; 1391343b7ae763b3163d03bd9c4756ab4857c4658b2Uma Maheswari Ramalingam int PREFERRED_NT_MODE = RILConstants.PREFERRED_NETWORK_MODE; 1400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Used for CDMA roaming mode 1420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int CDMA_RM_HOME = 0; // Home Networks only, as defined in PRL 1430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int CDMA_RM_AFFILIATED = 1; // Roaming an Affiliated networks, as defined in PRL 1440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int CDMA_RM_ANY = 2; // Roaming on Any Network, as defined in PRL 1450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville // Used for CDMA subscription mode 147be3dc4b04cd65e576d250cf68f310d47637167ffWink Saville static final int CDMA_SUBSCRIPTION_UNKNOWN =-1; // Unknown 1480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int CDMA_SUBSCRIPTION_RUIM_SIM = 0; // RUIM/SIM (default) 1490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int CDMA_SUBSCRIPTION_NV = 1; // NV -> non-volatile memory 1500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int PREFERRED_CDMA_SUBSCRIPTION = CDMA_SUBSCRIPTION_NV; 1520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int TTY_MODE_OFF = 0; 1540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int TTY_MODE_FULL = 1; 1550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int TTY_MODE_HCO = 2; 1560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville static final int TTY_MODE_VCO = 3; 1570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * CDMA OTA PROVISION STATUS, the same as RIL_CDMA_OTA_Status in ril.h 1600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 1610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_SPL_UNLOCKED = 0; 1630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_SPC_RETRIES_EXCEEDED = 1; 1640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_A_KEY_EXCHANGED = 2; 1650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_SSD_UPDATED = 3; 1660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_NAM_DOWNLOADED = 4; 1670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_MDN_DOWNLOADED = 5; 1680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_IMSI_DOWNLOADED = 6; 1690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_PRL_DOWNLOADED = 7; 1700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_COMMITTED = 8; 1710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_OTAPA_STARTED = 9; 1720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_OTAPA_STOPPED = 10; 1730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public static final int CDMA_OTA_PROVISION_STATUS_OTAPA_ABORTED = 11; 1740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current ServiceState. Use 1780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>registerForServiceStateChanged</code> to be informed of 1790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * updates. 1800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 1810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville ServiceState getServiceState(); 1820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current CellLocation. 1850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 1860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville CellLocation getCellLocation(); 1870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 1880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 189ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville * @return all available cell information or null if none. 190ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville */ 191ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville public List<CellInfo> getAllCellInfo(); 192ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville 193ef1d4bff9bbf7d967dbcace73f08910e14e367d0Wink Saville /** 1945fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * Sets the minimum time in milli-seconds between {@link PhoneStateListener#onCellInfoChanged 1955fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * PhoneStateListener.onCellInfoChanged} will be invoked. 1965fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * 1975fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * The default, 0, means invoke onCellInfoChanged when any of the reported 1985fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * information changes. Setting the value to INT_MAX(0x7fffffff) means never issue 1995fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * A onCellInfoChanged. 2005fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * 2015fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville * @param rateInMillis the rate 2025fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville */ 2035fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville public void setCellInfoListRate(int rateInMillis); 2045fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville 2055fb811ff076aa6b4a9ceca6edaf504a4c6d9ad20Wink Saville /** 2060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current for the default apn DataState. No change notification 2070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * exists at this interface -- use 2080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link android.telephony.PhoneStateListener} instead. 2090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville DataState getDataConnectionState(); 2110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current DataState. No change notification exists at this 2140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * interface -- use 2150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link android.telephony.PhoneStateListener} instead. 2160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param apnType specify for which apn to get connection state info. 2170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville DataState getDataConnectionState(String apnType); 2190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current DataActivityState. No change notification exists at this 2220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * interface -- use 2230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link android.telephony.TelephonyManager} instead. 2240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville DataActivityState getDataActivityState(); 2260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the context for the phone, as set at initialization time. 2290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Context getContext(); 2310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Disables the DNS check (i.e., allows "0.0.0.0"). 2340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Useful for lab testing environment. 2350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param b true disables the check, false enables. 2360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void disableDnsCheck(boolean b); 2380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns true if the DNS check is currently disabled. 2410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isDnsCheckDisabled(); 2430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get current coarse-grained voice call state. 2460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Use {@link #registerForPreciseCallStateChanged(Handler, int, Object) 2470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * registerForPreciseCallStateChanged()} for change notification. <p> 2480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If the phone has an active call and call waiting occurs, 2490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * then the phone state is RINGING not OFFHOOK 2500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <strong>Note:</strong> 2510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * This registration point provides notification of finer-grained 2520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * changes.<p> 2530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 2540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville State getState(); 2560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns a string identifier for this phone interface for parties 2590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * outside the phone app process. 2600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return The string name. 2610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getPhoneName(); 2630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Return a numerical identifier for the phone radio interface. 2660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return PHONE_TYPE_XXX as defined above. 2670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int getPhoneType(); 2690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns an array of string identifiers for the APN types serviced by the 2720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * currently active. 2730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return The string array will always return at least one entry, Phone.APN_TYPE_DEFAULT. 2740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * TODO: Revisit if we always should return at least one entry. 2750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String[] getActiveApnTypes(); 2770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns string for the active APN host. 2800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return type as a string or null if none. 2810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getActiveApnHost(String apnType); 2830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Return the LinkProperties for the named apn or null if not available 2860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 2870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville LinkProperties getLinkProperties(String apnType); 2880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 29096cce86cf08e37e0f09ed5057b1196e26b302743Robert Greenwalt * Return the NetworkCapabilities 2910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 29296cce86cf08e37e0f09ed5057b1196e26b302743Robert Greenwalt NetworkCapabilities getNetworkCapabilities(String apnType); 2930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 2940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 2950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get current signal strength. No change notification available on this 2960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * interface. Use <code>PhoneStateNotifier</code> or an equivalent. 2970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * An ASU is 0-31 or -1 if unknown (for GSM, dBm = -113 - 2 * asu). 2980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The following special values are defined:</p> 2990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <ul><li>0 means "-113 dBm or less".</li> 3000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>31 means "-51 dBm or greater".</li></ul> 3010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 3020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return Current signal strength as SignalStrength 3030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville SignalStrength getSignalStrength(); 3050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Notifies when a previously untracked non-ringing/waiting connection has appeared. 3080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * This is likely due to some other entity (eg, SIM card application) initiating a call. 3090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForUnknownConnection(Handler h, int what, Object obj); 3110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for unknown connection notifications. 3140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForUnknownConnection(Handler h); 3160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 318e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam * Notifies when a Handover happens due to SRVCC or Silent Redial 319e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam */ 320e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam void registerForHandoverStateChanged(Handler h, int what, Object obj); 321e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam 322e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam /** 323e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam * Unregisters for handover state notifications 324e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam */ 325e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam void unregisterForHandoverStateChanged(Handler h); 326e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam 327e64a413b850aae224e2f56e7dfc6e0bcd667643eUma Maheswari Ramalingam /** 3280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for getting notifications for change in the Call State {@link Call.State} 3290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * This is called PreciseCallState because the call state is more precise than the 330cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * {@link PhoneConstants.State} which can be obtained using the {@link PhoneStateListener} 3310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 3320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Resulting events will have an AsyncResult in <code>Message.obj</code>. 3330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.userData will be set to the obj argument here. 3340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The <em>h</em> parameter is held only by a weak reference. 3350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForPreciseCallStateChanged(Handler h, int what, Object obj); 3370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for voice call state change notifications. 3400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently. 3410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForPreciseCallStateChanged(Handler h); 3430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Notifies when a new ringing or waiting connection has appeared.<p> 3460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 3470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Messages received from this: 3480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will be an AsyncResult 3490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.userObj = obj 3500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result = a Connection. <p> 3510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Please check Connection.isRinging() to make sure the Connection 3520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * has not dropped since this message was posted. 3530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If Connection.isRinging() is true, then 3540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connection.getCall() == Phone.getRingingCall() 3550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForNewRingingConnection(Handler h, int what, Object obj); 3570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for new ringing connection notification. 3600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 3610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForNewRingingConnection(Handler h); 3640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Notifies when an incoming call rings.<p> 3670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 3680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Messages received from this: 3690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will be an AsyncResult 3700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.userObj = obj 3710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result = a Connection. <p> 3720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForIncomingRing(Handler h, int what, Object obj); 3740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for ring notification. 3770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 3780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForIncomingRing(Handler h); 3810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Notifies when out-band ringback tone is needed.<p> 3840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 3850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Messages received from this: 3860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will be an AsyncResult 3870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.userObj = obj 3880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result = boolean, true to start play ringback tone 3890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and false to stop. <p> 3900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForRingbackTone(Handler h, int what, Object obj); 3920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 3940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for ringback tone notification. 3950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 3960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForRingbackTone(Handler h); 3980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 3990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 400a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Notifies when out-band on-hold tone is needed.<p> 401a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * 402a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Messages received from this: 403a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Message.obj will be an AsyncResult 404a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * AsyncResult.userObj = obj 405a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * AsyncResult.result = boolean, true to start play on-hold tone 406a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * and false to stop. <p> 407a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 408a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville void registerForOnHoldTone(Handler h, int what, Object obj); 409a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 410a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 411a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Unregisters for on-hold tone notification. 412a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 413a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 414a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville void unregisterForOnHoldTone(Handler h); 415a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 416a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 4170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Registers the handler to reset the uplink mute state to get 4180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * uplink audio. 4190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForResendIncallMute(Handler h, int what, Object obj); 4210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for resend incall mute notifications. 4240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForResendIncallMute(Handler h); 4260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Notifies when a voice connection has disconnected, either due to local 4290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * or remote hangup or error. 4300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 4310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Messages received from this will have the following members:<p> 4320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <ul><li>Message.obj will be an AsyncResult</li> 4330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>AsyncResult.userObj = obj</li> 4340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li>AsyncResult.result = a Connection object that is 4350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * no longer connected.</li></ul> 4360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForDisconnect(Handler h, int what, Object obj); 4380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for voice disconnection notification. 4410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 4420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForDisconnect(Handler h); 4440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications of initiation of a new MMI code request. 4480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * MMI codes for GSM are discussed in 3GPP TS 22.030.<p> 4490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 4500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Example: If Phone.dial is called with "*#31#", then the app will 4510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * be notified here.<p> 4520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 4530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The returned <code>Message.obj</code> will contain an AsyncResult. 4540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 4550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>obj.result</code> will be an "MmiCode" object. 4560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForMmiInitiate(Handler h, int what, Object obj); 4580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for new MMI initiate notification. 4610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 4620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForMmiInitiate(Handler h); 4640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications that an MMI request has completed 4670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * its network activity and is in its final state. This may mean a state 4680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * of COMPLETE, FAILED, or CANCELLED. 4690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 4700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>Message.obj</code> will contain an AsyncResult. 4710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>obj.result</code> will be an "MmiCode" object 4720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForMmiComplete(Handler h, int what, Object obj); 4740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for MMI complete notification. 4770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 4780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForMmiComplete(Handler h); 4800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Registration point for Ecm timer reset 4830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h handler to notify 4840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what user-defined message code 4850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj placed in Message.obj 4860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForEcmTimerReset(Handler h, int what, Object obj); 4880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregister for notification for Ecm timer reset 4910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 4920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 4930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForEcmTimerReset(Handler h); 4940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 4950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 4960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns a list of MMI codes that are pending. (They have initiated 4970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * but have not yet completed). 4980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Presently there is only ever one. 4990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Use <code>registerForMmiInitiate</code> 5000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and <code>registerForMmiComplete</code> for change notification. 5010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public List<? extends MmiCode> getPendingMmiCodes(); 5030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sends user response to a USSD REQUEST message. An MmiCode instance 5060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * representing this response is sent to handlers registered with 5070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * registerForMmiInitiate. 5080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param ussdMessge Message to send in the response. 5100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void sendUssdResponse(String ussdMessge); 5120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for ServiceState changed. 5150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 5160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a ServiceState instance 5170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForServiceStateChanged(Handler h, int what, Object obj); 5190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for ServiceStateChange notification. 5220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 5230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForServiceStateChanged(Handler h); 5250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for Supplementary Service notifications from the network. 5280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 5290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a SuppServiceNotification instance. 5300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 5320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 5330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 5340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForSuppServiceNotification(Handler h, int what, Object obj); 5360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for Supplementary Service notifications. 5390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 5400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 5420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForSuppServiceNotification(Handler h); 5440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications when a supplementary service attempt fails. 5470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 5480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 5500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 5510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 5520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForSuppServiceFailed(Handler h, int what, Object obj); 5540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregister for notifications when a supplementary service attempt fails. 5570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 5580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 5600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForSuppServiceFailed(Handler h); 5620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications when a sInCall VoicePrivacy is enabled 5650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 5670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 5680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 5690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForInCallVoicePrivacyOn(Handler h, int what, Object obj); 5710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unegister for notifications when a sInCall VoicePrivacy is enabled 5740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 5760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForInCallVoicePrivacyOn(Handler h); 5780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications when a sInCall VoicePrivacy is disabled 5810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 5830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 5840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 5850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForInCallVoicePrivacyOff(Handler h, int what, Object obj); 5870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 589cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * Unregister for notifications when a sInCall VoicePrivacy is disabled 5900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 5920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 5930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForInCallVoicePrivacyOff(Handler h); 5940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 5950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 5960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications when CDMA OTA Provision status change 5970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 5980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 5990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 6000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 6010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForCdmaOtaStatusChange(Handler h, int what, Object obj); 6030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 605cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * Unregister for notifications when CDMA OTA Provision status change 6060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 6070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForCdmaOtaStatusChange(Handler h); 6090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Registration point for subscription info ready 6120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h handler to notify 6130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what what code of message when delivered 6140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj placed in Message.obj 6150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void registerForSubscriptionInfoReady(Handler h, int what, Object obj); 6170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregister for notifications for subscription info 6200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 6210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void unregisterForSubscriptionInfoReady(Handler h); 6230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 625a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Registration point for Sim records loaded 626a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param h handler to notify 627a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param what what code of message when delivered 628a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param obj placed in Message.obj 629a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 630a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public void registerForSimRecordsLoaded(Handler h, int what, Object obj); 631a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 632a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 633a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Unregister for notifications for Sim records loaded 634a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @param h Handler to be removed from the registrant list. 635a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 636a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public void unregisterForSimRecordsLoaded(Handler h); 637a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 638a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 6390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns SIM record load state. Use 6400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>getSimCard().registerForReady()</code> for change notification. 6410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 6420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if records from the SIM have been loaded and are 6430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * available (if applicable). If not applicable to the underlying 6440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * technology, returns true as well. 6450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getIccRecordsLoaded(); 6470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the ICC card interface for this phone, or null 6500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * if not applicable to underlying technology. 6510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville IccCard getIccCard(); 6530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Answers a ringing or waiting call. Active calls, if any, go on hold. 6560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Answering occurs asynchronously, and final notification occurs via 6570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 6580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 6590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 6606d05f561549a66b597a5119665ccc3bf8a962d16Andrew Lee * @param videoState The video state in which to answer the call. 6610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException when no call is ringing or waiting 6620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6636d05f561549a66b597a5119665ccc3bf8a962d16Andrew Lee void acceptCall(int videoState) throws CallStateException; 6640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Reject (ignore) a ringing call. In GSM, this means UDUB 6670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (User Determined User Busy). Reject occurs asynchronously, 6680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and final notification occurs via 6690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 6700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 6710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 6720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException when no call is ringing or waiting 6730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void rejectCall() throws CallStateException; 6750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Places any active calls on hold, and makes any held calls 6780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * active. Switch occurs asynchronously and may fail. 6790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Final notification occurs via 6800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 6810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 6820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 6830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException if a call is ringing, waiting, or 6840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * dialing/alerting. In these cases, this operation may not be performed. 6850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void switchHoldingAndActive() throws CallStateException; 6870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Whether or not the phone can conference in the current phone 6900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * state--that is, one call holding and one call active. 6910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if the phone can conference; false otherwise. 6920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 6930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean canConference(); 6940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 6950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 6960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Conferences holding and active. Conference occurs asynchronously 6970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and may fail. Final notification occurs via 6980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 6990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 7000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException if canConference() would return false. 7020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * In these cases, this operation may not be performed. 7030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void conference() throws CallStateException; 7050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Enable or disable enhanced Voice Privacy (VP). If enhanced VP is 7080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * disabled, normal VP is enabled. 7090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param enable whether true or false to enable or disable. 7110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 7120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void enableEnhancedVoicePrivacy(boolean enable, Message onComplete); 7140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the currently set Voice Privacy (VP) mode. 7170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 7190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getEnhancedVoicePrivacy(Message onComplete); 7210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Whether or not the phone can do explicit call transfer in the current 7240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * phone state--that is, one call holding and one call active. 7250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if the phone can do explicit call transfer; false otherwise. 7260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean canTransfer(); 7280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connects the two calls and disconnects the subscriber from both calls 7310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Explicit Call Transfer occurs asynchronously 7320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and may fail. Final notification occurs via 7330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 7340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 7350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException if canTransfer() would return false. 7370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * In these cases, this operation may not be performed. 7380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void explicitCallTransfer() throws CallStateException; 7400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Clears all DISCONNECTED connections from Call connection lists. 7430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Calls that were in the DISCONNECTED state become idle. This occurs 7440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * synchronously. 7450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void clearDisconnected(); 7470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the foreground call object, which represents all connections that 7510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * are dialing or active (all connections 7520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * that have their audio path connected).<p> 7530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The foreground call is a singleton object. It is constant for the life 7550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * of this phone. It is never null.<p> 7560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The foreground call will only ever be in one of these states: 7580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * IDLE, ACTIVE, DIALING, ALERTING, or DISCONNECTED. 7590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * State change notification is available via 7610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 7620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 7630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Call getForegroundCall(); 7650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the background call object, which represents all connections that 7680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * are holding (all connections that have been accepted or connected, but 7690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * do not have their audio path connected). <p> 7700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The background call is a singleton object. It is constant for the life 7720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * of this phone object . It is never null.<p> 7730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The background call will only ever be in one of these states: 7750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * IDLE, HOLDING or DISCONNECTED. 7760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * State change notification is available via 7780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 7790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 7800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Call getBackgroundCall(); 7820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 7840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the ringing call object, which represents an incoming 7850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * connection (if present) that is pending answer/accept. (This connection 7860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * may be RINGING or WAITING, and there may be only one.)<p> 7870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 7880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The ringing call is a singleton object. It is constant for the life 7890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * of this phone. It is never null.<p> 7900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The ringing call will only ever be in one of these states: 7920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * IDLE, INCOMING, WAITING or DISCONNECTED. 7930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 7940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * State change notification is available via 7950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 7960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()}. 7970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 7980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Call getRingingCall(); 7990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Initiate a new voice connection. This happens asynchronously, so you 8020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * cannot assume the audio path is connected (or a call index has been 8030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * assigned) until PhoneStateChanged notification has occurred. 8040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8056bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn * @param dialString The dial string. 8066bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn * @param videoState The desired video state for the connection. 8070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException if a new outgoing call is not currently 8080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * possible because no more call slots exist or a call exists that is 8090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * dialing, alerting, ringing, or waiting. Other errors are 8100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * handled asynchronously. 8110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8126bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn Connection dial(String dialString, int videoState) throws CallStateException; 8130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Initiate a new voice connection with supplementary User to User 8160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Information. This happens asynchronously, so you cannot assume the audio 8170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * path is connected (or a call index has been assigned) until 8180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * PhoneStateChanged notification has occurred. 8190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8206bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn * @param dialString The dial string. 8216bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn * @param uusInfo The UUSInfo. 8226bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn * @param videoState The desired video state for the connection. 8230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @exception CallStateException if a new outgoing call is not currently 8240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * possible because no more call slots exist or a call exists 8250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * that is dialing, alerting, ringing, or waiting. Other 8260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * errors are handled asynchronously. 8270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8286bbcbfd62c9aa5787e7c33936e2246ff05b59d58Tyler Gunn Connection dial(String dialString, UUSInfo uusInfo, int videoState) throws CallStateException; 8290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Handles PIN MMI commands (PIN/PIN2/PUK/PUK2), which are initiated 8320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * without SEND (so <code>dial</code> is not appropriate). 8330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param dialString the MMI command to be executed. 8350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if MMI command is executed. 8360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean handlePinMmi(String dialString); 8380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Handles in-call MMI commands. While in a call, or while receiving a 8410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * call, use this to execute MMI commands. 8420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * see 3GPP 20.030, section 6.5.5.1 for specs on the allowed MMI commands. 8430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param command the MMI command to be executed. 8450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if the MMI command is executed. 8460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @throws CallStateException 8470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean handleInCallMmiCommands(String command) throws CallStateException; 8490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Play a DTMF tone on the active call. Ignored if there is no active call. 8520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param c should be one of 0-9, '*' or '#'. Other values will be 8530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * silently ignored. 8540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void sendDtmf(char c); 8560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Start to paly a DTMF tone on the active call. Ignored if there is no active call 8590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * or there is a playing DTMF tone. 8600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param c should be one of 0-9, '*' or '#'. Other values will be 8610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * silently ignored. 8620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void startDtmf(char c); 8640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Stop the playing DTMF tone. Ignored if there is no playing DTMF 8670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * tone or no active call. 8680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void stopDtmf(); 8700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * send burst DTMF tone, it can send the string as single character or multiple character 8730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * ignore if there is no active call or not valid digits string. 8740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Valid digit means only includes characters ISO-LATIN characters 0-9, *, # 8750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The difference between sendDtmf and sendBurstDtmf is sendDtmf only sends one character, 8760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * this api can send single character and multiple character, also, this api has response 8770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * back to caller. 8780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param dtmfString is string representing the dialing digit(s) in the active call 8800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param on the DTMF ON length in milliseconds, or 0 for default 8810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param off the DTMF OFF length in milliseconds, or 0 for default 8820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete is the callback message when the action is processed by BP 8830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void sendBurstDtmf(String dtmfString, int on, int off, Message onComplete); 8860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 8870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 8880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sets the radio power on/off state (off is sometimes 8890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * called "airplane mode"). Current state can be gotten via 8900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #getServiceState()}.{@link 8910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * android.telephony.ServiceState#getState() getState()}. 8920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <strong>Note: </strong>This request is asynchronous. 8930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * getServiceState().getState() will not change immediately after this call. 8940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * registerForServiceStateChanged() to find out when the 8950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * request is complete. 8960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 8970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param power true means "on", false means "off". 8980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 8990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setRadioPower(boolean power); 9000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get voice message waiting indicator status. No change notification 9030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * available on this interface. Use PhoneStateNotifier or similar instead. 9040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if there is a voice message waiting 9060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getMessageWaitingIndicator(); 9080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get voice call forwarding indicator status. No change notification 9110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * available on this interface. Use PhoneStateNotifier or similar instead. 9120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if there is a voice call forwarding 9140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getCallForwardingIndicator(); 9160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the line 1 phone number (MSISDN). For CDMA phones, the MDN is returned 9190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and {@link #getMsisdn()} will return the MSISDN on CDMA/LTE phones.<p> 9200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return phone number. May return null if not 9220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * available or the SIM is not ready 9230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getLine1Number(); 9250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the alpha tag associated with the msisdn number. 9280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If there is no alpha tag associated or the record is not yet available, 9290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * returns a default localized string. <p> 9300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getLine1AlphaTag(); 9320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sets the MSISDN phone number in the SIM card. 9350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param alphaTag the alpha tag associated with the MSISDN phone number 9370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (see getMsisdnAlphaTag) 9380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param number the new MSISDN phone number to be set on the SIM. 9390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 9400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setLine1Number(String alphaTag, String number, Message onComplete); 9420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the voice mail access phone number. Typically dialed when the 9450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * user holds the "1" key in the phone app. May return null if not 9460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * available or the SIM is not ready.<p> 9470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getVoiceMailNumber(); 9490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns unread voicemail count. This count is shown when the voicemail 9520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * notification is expanded.<p> 9530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int getVoiceMessageCount(); 9550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the alpha tag associated with the voice mail number. 9580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If there is no alpha tag associated or the record is not yet available, 9590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * returns a default localized string. <p> 9600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Please use this value instead of some other localized string when 9620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * showing a name for this number in the UI. For example, call log 9630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * entries should show this alpha tag. <p> 9640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Usage of this alpha tag in the UI is a common carrier requirement. 9660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getVoiceMailAlphaTag(); 9680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * setVoiceMailNumber 9710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * sets the voicemail number in the SIM card. 9720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param alphaTag the alpha tag associated with the voice mail number 9740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (see getVoiceMailAlphaTag) 9750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param voiceMailNumber the new voicemail number to be set on the SIM. 9760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 9770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setVoiceMailNumber(String alphaTag, 9790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String voiceMailNumber, 9800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete); 9810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * getCallForwardingOptions 9840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * gets a call forwarding option. The return value of 9850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * ((AsyncResult)onComplete.obj) is an array of CallForwardInfo. 9860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 9870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param commandInterfaceCFReason is one of the valid call forwarding 9880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * CF_REASONS, as defined in 9890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>com.android.internal.telephony.CommandsInterface.</code> 9900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 9910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see com.android.internal.telephony.CallForwardInfo for details. 9920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 9930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getCallForwardingOption(int commandInterfaceCFReason, 9940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete); 9950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 9960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 9970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * setCallForwardingOptions 9980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * sets a call forwarding option. 9990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param commandInterfaceCFReason is one of the valid call forwarding 10010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * CF_REASONS, as defined in 10020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>com.android.internal.telephony.CommandsInterface.</code> 10030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param commandInterfaceCFAction is one of the valid call forwarding 10040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * CF_ACTIONS, as defined in 10050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>com.android.internal.telephony.CommandsInterface.</code> 10060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param dialingNumber is the target phone number to forward calls to 10070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param timerSeconds is used by CFNRy to indicate the timeout before 10080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * forwarding is attempted. 10090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 10100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setCallForwardingOption(int commandInterfaceCFReason, 10120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int commandInterfaceCFAction, 10130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String dialingNumber, 10140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville int timerSeconds, 10150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete); 10160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * getOutgoingCallerIdDisplay 10190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * gets outgoing caller id display. The return value of 10200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * ((AsyncResult)onComplete.obj) is an array of int, with a length of 2. 10210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 10230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see com.android.internal.telephony.CommandsInterface#getCLIR for details. 10240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getOutgoingCallerIdDisplay(Message onComplete); 10260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * setOutgoingCallerIdDisplay 10290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * sets a call forwarding option. 10300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param commandInterfaceCLIRMode is one of the valid call CLIR 10320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * modes, as defined in 10330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>com.android.internal.telephony.CommandsInterface./code> 10340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 10350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setOutgoingCallerIdDisplay(int commandInterfaceCLIRMode, 10370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message onComplete); 10380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * getCallWaiting 10410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * gets call waiting activation state. The return value of 10420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * ((AsyncResult)onComplete.obj) is an array of int, with a length of 1. 10430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 10450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see com.android.internal.telephony.CommandsInterface#queryCallWaiting for details. 10460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getCallWaiting(Message onComplete); 10480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * setCallWaiting 10510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * sets a call forwarding option. 10520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param enable is a boolean representing the state that you are 10540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * requesting, true for enabled, false for disabled. 10550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 10560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setCallWaiting(boolean enable, Message onComplete); 10580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Scan available networks. This method is asynchronous; . 10610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * On completion, <code>response.obj</code> is set to an AsyncResult with 10620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * one of the following members:.<p> 10630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *<ul> 10640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li><code>response.obj.result</code> will be a <code>List</code> of 10650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>OperatorInfo</code> objects, or</li> 10660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <li><code>response.obj.exception</code> will be set with an exception 10670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * on failure.</li> 10680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * </ul> 10690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getAvailableNetworks(Message response); 10710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Switches network selection mode to "automatic", re-scanning and 10740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * re-selecting a network if appropriate. 10750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response The message to dispatch when the network selection 10770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * is complete. 10780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see #selectNetworkManually(OperatorInfo, android.os.Message ) 10800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setNetworkSelectionModeAutomatic(Message response); 10820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Manually selects a network. <code>response</code> is 10850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * dispatched when this is complete. <code>response.obj</code> will be 10860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * an AsyncResult, and <code>response.obj.exception</code> will be non-null 10870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * on failure. 10880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 10890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see #setNetworkSelectionModeAutomatic(Message) 10900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 10910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void selectNetworkManually(OperatorInfo network, 10920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville Message response); 10930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 10940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 10950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Requests to set the preferred network type for searching and registering 10960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (CS/PS domain, RAT, and operation mode) 10970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param networkType one of NT_*_TYPE 10980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message 10990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setPreferredNetworkType(int networkType, Message response); 11010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Query the preferred network type setting 11040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message to report one of NT_*_TYPE 11060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getPreferredNetworkType(Message response); 11080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the default SMSC address. 11110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param result Callback message contains the SMSC address. 11130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getSmscAddress(Message result); 11150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sets the default SMSC address. 11180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param address new SMSC address 11200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param result Callback message is empty on completion 11210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setSmscAddress(String address, Message result); 11230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Query neighboring cell IDs. <code>response</code> is dispatched when 11260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * this is complete. <code>response.obj</code> will be an AsyncResult, 11270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * and <code>response.obj.exception</code> will be non-null on failure. 11280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * On success, <code>AsyncResult.result</code> will be a <code>String[]</code> 11290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * containing the neighboring cell IDs. Index 0 will contain the count 11300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * of available cell IDs. Cell IDs are in hexadecimal format. 11310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response callback message that is dispatched when the query 11330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * completes. 11340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getNeighboringCids(Message response); 11360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sets an event to be fired when the telephony system processes 11390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * a post-dial character on an outgoing call.<p> 11400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Messages of type <code>what</code> will be sent to <code>h</code>. 11420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * The <code>obj</code> field of these Message's will be instances of 11430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <code>AsyncResult</code>. <code>Message.obj.result</code> will be 11440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * a Connection object.<p> 11450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.arg1 will be the post dial character being processed, 11470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * or 0 ('\0') if end of string.<p> 11480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If Connection.getPostDialState() == WAIT, 11500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * the application must call 11510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link com.android.internal.telephony.Connection#proceedAfterWaitChar() 11520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connection.proceedAfterWaitChar()} or 11530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link com.android.internal.telephony.Connection#cancelPostDial() 11540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connection.cancelPostDial()} 11550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * for the telephony system to continue playing the post-dial 11560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * DTMF sequence.<p> 11570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If Connection.getPostDialState() == WILD, 11590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * the application must call 11600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link com.android.internal.telephony.Connection#proceedAfterWildChar 11610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connection.proceedAfterWildChar()} 11620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * or 11630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link com.android.internal.telephony.Connection#cancelPostDial() 11640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Connection.cancelPostDial()} 11650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * for the telephony system to continue playing the 11660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * post-dial DTMF sequence.<p> 11670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Only one post dial character handler may be set. <p> 11690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Calling this method with "h" equal to null unsets this handler.<p> 11700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setOnPostDialCharacter(Handler h, int what, Object obj); 11720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Mutes or unmutes the microphone for the active call. The microphone 11760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * is automatically unmuted if a call is answered, dialed, or resumed 11770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * from a holding state. 11780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param muted true to mute the microphone, 11800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * false to activate the microphone. 11810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setMute(boolean muted); 11840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets current mute status. Use 11870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #registerForPreciseCallStateChanged(android.os.Handler, int, 11880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * java.lang.Object) registerForPreciseCallStateChanged()} 11890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * as a change notifcation, although presently phone state changed is not 11900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * fired when setMute() is called. 11910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 11920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true is muting, false is unmuting 11930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 11940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getMute(); 11950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 11960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 11970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Enables or disables echo suppression. 11980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 1199184ffb58812108624ea0be2732cdae511b99d09dVidyakumar Athota void setEchoSuppressionEnabled(); 12000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Invokes RIL_REQUEST_OEM_HOOK_RAW on RIL implementation. 12030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param data The data for the request. 12050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response <strong>On success</strong>, 12060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (byte[])(((AsyncResult)response.obj).result) 12070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <strong>On failure</strong>, 12080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).result) == null and 12090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).exception) being an instance of 12100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * com.android.internal.telephony.gsm.CommandException 12110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see #invokeOemRilRequestRaw(byte[], android.os.Message) 12130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void invokeOemRilRequestRaw(byte[] data, Message response); 12150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Invokes RIL_REQUEST_OEM_HOOK_Strings on RIL implementation. 12180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param strings The strings to make available as the request data. 12200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response <strong>On success</strong>, "response" bytes is 12210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * made available as: 12220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (String[])(((AsyncResult)response.obj).result). 12230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <strong>On failure</strong>, 12240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).result) == null and 12250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).exception) being an instance of 12260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * com.android.internal.telephony.gsm.CommandException 12270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @see #invokeOemRilRequestStrings(java.lang.String[], android.os.Message) 12290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void invokeOemRilRequestStrings(String[] strings, Message response); 12310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get the current active Data Call list 12340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response <strong>On success</strong>, "response" bytes is 12360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * made available as: 12370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (String[])(((AsyncResult)response.obj).result). 12380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * <strong>On failure</strong>, 12390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).result) == null and 12400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * (((AsyncResult)response.obj).exception) being an instance of 12410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * com.android.internal.telephony.gsm.CommandException 12420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getDataCallList(Message response); 12440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Update the ServiceState CellLocation for current network registration. 12470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void updateServiceLocation(); 12490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Enable location update notifications. 12520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void enableLocationUpdates(); 12540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Disable location update notifications. 12570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void disableLocationUpdates(); 12590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * For unit tests; don't send notifications to "Phone" 12620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * mailbox registrants if true. 12630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setUnitTestMode(boolean f); 12650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true If unit test mode is enabled 12680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getUnitTestMode(); 12700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Assign a specified band for RF configuration. 12730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param bandMode one of BM_*_BAND 12750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message 12760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setBandMode(int bandMode, Message response); 12780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Query the list of band mode supported by RF. 12810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 12820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message 12838a3cf2d80c0cdee7360404dd0ac08ca6f9a7e246Derek Tan * ((AsyncResult)response.obj).result is an int[] where int[0] is 12848a3cf2d80c0cdee7360404dd0ac08ca6f9a7e246Derek Tan * the size of the array and the rest of each element representing 12858a3cf2d80c0cdee7360404dd0ac08ca6f9a7e246Derek Tan * one available BM_*_BAND 12860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void queryAvailableBandMode(Message response); 12880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if enable data connection on roaming 12910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean getDataRoamingEnabled(); 12930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 12950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param enable set true if enable data connection on roaming 12960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 12970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setDataRoamingEnabled(boolean enable); 12980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 12990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13003a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt * @return true if user has enabled data 13013a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt */ 13023a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt boolean getDataEnabled(); 13033a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt 13043a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt /** 13053a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt * @param @enable set {@code true} if enable data connection 13063a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt */ 13073a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt void setDataEnabled(boolean enable); 13083a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt 13093a6fa6e964a0cb361f79302afe18b8d7f5f9ceefRobert Greenwalt /** 13100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Query the CDMA roaming preference setting 13110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 13120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message to report one of CDMA_RM_* 13130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void queryCdmaRoamingPreference(Message response); 13150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Requests to set the CDMA roaming preference 13180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param cdmaRoamingType one of CDMA_RM_* 13190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message 13200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setCdmaRoamingPreference(int cdmaRoamingType, Message response); 13220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Requests to set the CDMA subscription mode 13250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param cdmaSubscriptionType one of CDMA_SUBSCRIPTION_* 13260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response is callback message 13270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setCdmaSubscription(int cdmaSubscriptionType, Message response); 13290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * If this is a simulated phone interface, returns a SimulatedRadioControl. 1332cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * @return SimulatedRadioControl if this is a simulated interface; 13330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * otherwise, null. 13340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville SimulatedRadioControl getSimulatedRadioControl(); 13360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Report on whether data connectivity is allowed. 13390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isDataConnectivityPossible(); 13410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Report on whether data connectivity is allowed for an APN. 13440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isDataConnectivityPossible(String apnType); 13460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the unique device ID, e.g., IMEI for GSM phones and MEID for CDMA phones. 13490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getDeviceId(); 13510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the software version number for the device, e.g., IMEI/SV 13540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * for GSM phones. 13550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getDeviceSvn(); 13570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the unique subscriber ID, e.g., IMSI for GSM phones. 13600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getSubscriberId(); 13620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13640e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi * Retrieves the Group Identifier Level1 for GSM phones. 13650e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi */ 13660e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi String getGroupIdLevel1(); 13670e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi 13680e4abef0d7e978d4c3dea5199f451a1c69158d03Sungmin Choi /** 13690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the serial number of the ICC, if applicable. 13700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getIccSerialNumber(); 13720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /* CDMA support methods */ 13740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the MIN for CDMA phones. 13770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getCdmaMin(); 13790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Check if subscription data has been assigned to mMin 13820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 13830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * return true if MIN info is ready; false otherwise. 13840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isMinInfoReady(); 13860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves PRL Version for CDMA phones 13890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getCdmaPrlVersion(); 13910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the ESN for CDMA phones. 13940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 13950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getEsn(); 13960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 13970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 13980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves MEID for CDMA phones. 13990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getMeid(); 14010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the MSISDN from the UICC. For GSM/UMTS phones, this is equivalent to 14040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * {@link #getLine1Number()}. For CDMA phones, {@link #getLine1Number()} returns 14050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * the MDN, so this method is provided to return the MSISDN on CDMA/LTE phones. 14060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getMsisdn(); 14080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves IMEI for phones. Returns null if IMEI is not set. 14110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville String getImei(); 14130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the PhoneSubInfo of the Phone 14160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public PhoneSubInfo getPhoneSubInfo(); 14180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Retrieves the IccPhoneBookInterfaceManager of the Phone 14210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public IccPhoneBookInterfaceManager getIccPhoneBookInterfaceManager(); 14230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * setTTYMode 14260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * sets a TTY mode option. 14270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param ttyMode is a one of the following: 14280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * - {@link com.android.internal.telephony.Phone#TTY_MODE_OFF} 14290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * - {@link com.android.internal.telephony.Phone#TTY_MODE_FULL} 14300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * - {@link com.android.internal.telephony.Phone#TTY_MODE_HCO} 14310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * - {@link com.android.internal.telephony.Phone#TTY_MODE_VCO} 14320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed 14330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setTTYMode(int ttyMode, Message onComplete); 14350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * queryTTYMode 14380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * query the status of the TTY mode 14390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 14400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param onComplete a callback message when the action is completed. 14410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void queryTTYMode(Message onComplete); 14430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Activate or deactivate cell broadcast SMS. 14460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 14470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param activate 14480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 0 = activate, 1 = deactivate 14490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response 14500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Callback message is empty on completion 14510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void activateCellBroadcastSms(int activate, Message response); 14530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Query the current configuration of cdma cell broadcast SMS. 14560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 14570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response 14580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Callback message is empty on completion 14590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void getCellBroadcastSmsConfig(Message response); 14610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Configure cell broadcast SMS. 14640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 14650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * TODO: Change the configValuesArray to a RIL_BroadcastSMSConfig 14660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 14670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param response 14680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Callback message is empty on completion 14690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void setCellBroadcastSmsConfig(int[] configValuesArray, Message response); 14710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public void notifyDataActivity(); 14730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the CDMA ERI icon index to display 14760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getCdmaEriIconIndex(); 14780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the CDMA ERI icon mode, 14810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 0 - ON 14820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 1 - FLASHING 14830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getCdmaEriIconMode(); 14850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns the CDMA ERI text, 14880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public String getCdmaEriText(); 14900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * request to exit emergency call back mode 14930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * the caller should use setOnECMModeExitResponse 14940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * to receive the emergency callback mode exit response 14950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 14960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void exitEmergencyCallbackMode(); 14970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 14980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 14990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * this decides if the dial number is OTA(Over the air provision) number or not 15000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param dialStr is string representing the dialing digit(s) 15010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true means the dialStr is OTA number, and false means the dialStr is not OTA number 15020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isOtaSpNumber(String dialStr); 15040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Returns true if OTA Service Provisioning needs to be performed. 15070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean needsOtaServiceProvisioning(); 15090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for notifications when CDMA call waiting comes 15120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 15140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 15150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 15160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForCallWaiting(Handler h, int what, Object obj); 15180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unegister for notifications when CDMA Call waiting comes 15210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 15220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForCallWaiting(Handler h); 15240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for signal information notifications from the network. 15280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 15290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a SuppServiceNotification instance. 15300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 15320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 15330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 15340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForSignalInfo(Handler h, int what, Object obj) ; 15370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for signal information notifications. 15390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 15400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 15420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForSignalInfo(Handler h); 15440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for display information notifications from the network. 15470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 15480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a SuppServiceNotification instance. 15490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 15510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 15520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 15530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForDisplayInfo(Handler h, int what, Object obj); 15550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for display information notifications. 15580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 15590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 15610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForDisplayInfo(Handler h) ; 15630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for CDMA number information record notification from the network. 15660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 15670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a CdmaInformationRecords.CdmaNumberInfoRec 15680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * instance. 15690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 15710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 15720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 15730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForNumberInfo(Handler h, int what, Object obj); 15750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for number information record notifications. 15780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 15790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 15810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForNumberInfo(Handler h); 15830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for CDMA redirected number information record notification 15860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * from the network. 15870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 15880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a CdmaInformationRecords.CdmaRedirectingNumberInfoRec 15890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * instance. 15900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 15910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 15920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 15930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 15940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 15950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForRedirectedNumberInfo(Handler h, int what, Object obj); 15960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 15970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 15980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for redirected number information record notification. 15990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 16000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 16020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForRedirectedNumberInfo(Handler h); 16040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for CDMA line control information record notification 16070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * from the network. 16080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 16090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a CdmaInformationRecords.CdmaLineControlInfoRec 16100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * instance. 16110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 16130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 16140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 16150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForLineControlInfo(Handler h, int what, Object obj); 16170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for line control information notifications. 16200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 16210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 16230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForLineControlInfo(Handler h); 16250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for CDMA T53 CLIR information record notifications 16280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * from the network. 16290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 16300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a CdmaInformationRecords.CdmaT53ClirInfoRec 16310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * instance. 16320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 16340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 16350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 16360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerFoT53ClirlInfo(Handler h, int what, Object obj); 16380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for T53 CLIR information record notification 16410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 16420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 16440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForT53ClirInfo(Handler h); 16460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Register for CDMA T53 audio control information record notifications 16490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * from the network. 16500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Message.obj will contain an AsyncResult. 16510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * AsyncResult.result will be a CdmaInformationRecords.CdmaT53AudioControlInfoRec 16520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * instance. 16530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 16550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 16560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 16570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void registerForT53AudioControlInfo(Handler h, int what, Object obj); 16590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for T53 audio control information record notifications. 16620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Extraneous calls are tolerated silently 16630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 16650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unregisterForT53AudioControlInfo(Handler h); 16670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * registers for exit emergency call back mode request response 16700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler that receives the notification message. 16720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param what User-defined message code. 16730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param obj User object. 16740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setOnEcbModeExitResponse(Handler h, int what, Object obj); 16770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregisters for exit emergency call back mode request response 16800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 16810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param h Handler to be removed from the registrant list. 16820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void unsetOnEcbModeExitResponse(Handler h); 16840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Return if the current radio is LTE on CDMA. This 16870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * is a tri-state return value as for a period of time 16880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * the mode may be unknown. 16890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 1690cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * @return {@link PhoneConstants#LTE_ON_CDMA_UNKNOWN}, {@link PhoneConstants#LTE_ON_CDMA_FALSE} 1691cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville * or {@link PhoneConstants#LTE_ON_CDMA_TRUE} 16920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 16930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville public int getLteOnCdmaMode(); 16940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 16950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 16960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * TODO: Adding a function for each property is not good. 16970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * A fucntion of type getPhoneProp(propType) where propType is an 16980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * enum of GSM+CDMA+LTE props would be a better approach. 16990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * 17000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Get "Restriction of menu options for manual PLMN selection" bit 17010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * status from EF_CSP data, this belongs to "Value Added Services Group". 17020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return true if this bit is set or EF_CSP data is unavailable, 17030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * false otherwise 17040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville boolean isCspPlmnEnabled(); 17060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 17070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 17080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Return an interface to retrieve the ISIM records for IMS, if available. 17090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return the interface to retrieve the ISIM records, or null if not supported 17100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville IsimRecords getIsimRecords(); 17120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 17130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 17140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Sets the SIM voice message waiting indicator records. 17150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param line GSM Subscriber Profile Number, one-based. Only '1' is supported 17160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @param countWaiting The number of messages waiting, if known. Use 17170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * -1 to indicate that an unknown number of 17180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * messages are waiting 17190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void setVoiceMessageWaiting(int line, int countWaiting); 17210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 17220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 17230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Gets the USIM service table from the UICC, if present and available. 17240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * @return an interface to the UsimServiceTable record, or null if not available 17250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville UsimServiceTable getUsimServiceTable(); 17270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 17280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 1729a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Gets the Uicc card corresponding to this phone. 1730a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * @return the UiccCard object corresponding to the phone ID. 1731a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1732a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville UiccCard getUiccCard(); 1733a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1734a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 17350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unregister from all events it registered for and dispose objects 17360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * created by this object. 17370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void dispose(); 17390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville 17400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville /** 17410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Remove references to external object stored in this object. 17420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */ 17430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville void removeReferences(); 1744b54cd09892e0676d719e6df00e60c77b663f993cWink Saville 1745b54cd09892e0676d719e6df00e60c77b663f993cWink Saville /** 174603b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan * Update the phone object if the voice radio technology has changed 174703b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan * 174803b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan * @param voiceRadioTech The new voice radio technology 174903b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan */ 175003b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan void updatePhoneObject(int voiceRadioTech); 175103b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan 175203b37b67755a4033c6be32ae2e389c310e06e7d1Amit Mahajan /** 1753f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Read one of the NV items defined in {@link RadioNVItems} / {@code ril_nv_items.h}. 1754f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Used for device configuration by some CDMA operators. 1755f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * 1756f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param itemID the ID of the item to read 1757f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param response callback message with the String response in the obj field 1758f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby */ 1759f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby void nvReadItem(int itemID, Message response); 1760f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby 1761f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby /** 1762f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Write one of the NV items defined in {@link RadioNVItems} / {@code ril_nv_items.h}. 1763f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Used for device configuration by some CDMA operators. 1764f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * 1765f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param itemID the ID of the item to read 1766f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param itemValue the value to write, as a String 1767f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param response Callback message. 1768f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby */ 1769f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby void nvWriteItem(int itemID, String itemValue, Message response); 1770f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby 1771f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby /** 1772f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage. 1773f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * Used for device configuration by some CDMA operators. 1774f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * 1775f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param preferredRoamingList byte array containing the new PRL 1776f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param response Callback message. 1777f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby */ 1778f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby void nvWriteCdmaPrl(byte[] preferredRoamingList, Message response); 1779f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby 1780f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby /** 1781f4016c89cdb71c75b63b73a9f6d5b84681307142Jake Hamby * Perform the specified type of NV config reset. The radio will be taken offline 1782f4016c89cdb71c75b63b73a9f6d5b84681307142Jake Hamby * and the device must be rebooted after erasing the NV. Used for device 1783f4016c89cdb71c75b63b73a9f6d5b84681307142Jake Hamby * configuration by some CDMA operators. 1784f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * 1785f4016c89cdb71c75b63b73a9f6d5b84681307142Jake Hamby * @param resetType reset type: 1: reload NV reset, 2: erase NV reset, 3: factory NV reset 1786f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby * @param response Callback message. 1787f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby */ 1788f28ac81ec36df38307648d404cff4b2b11f46861Jake Hamby void nvResetConfig(int resetType, Message response); 1789a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1790a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /* 1791a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the subscription id. 1792a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1793a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public long getSubId(); 1794a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1795a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /* 1796a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Returns the phone id. 1797a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1798a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public int getPhoneId(); 1799a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1800a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 1801a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Get P-CSCF address from PCO after data connection is established or modified. 1802bc78e2f9988f380a3b88d4cb4a9c0b80b8f44beeram * @param apnType the apnType, "ims" for IMS APN, "emergency" for EMERGENCY APN 1803a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1804bc78e2f9988f380a3b88d4cb4a9c0b80b8f44beeram public String[] getPcscfAddress(String apnType); 1805a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1806a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 1807a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * Set IMS registration state 1808a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1809a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville public void setImsRegistrationState(boolean registered); 1810a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1811a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 1812888c60a7fe1c8f3612ab8e8ec5f2f7ca8f24e766Etan Cohen * Return the ImsPhone phone co-managed with this phone 1813888c60a7fe1c8f3612ab8e8ec5f2f7ca8f24e766Etan Cohen * @return an instance of an ImsPhone phone 1814a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 181538b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen public Phone getImsPhone(); 181638b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen 181738b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen /** 181838b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen * Release the local instance of the ImsPhone and disconnect from 181938b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen * the phone. 182038b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen * @return the instance of the ImsPhone phone previously owned 182138b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen */ 182238b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen public ImsPhone relinquishOwnershipOfImsPhone(); 182338b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen 182438b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen /** 182538b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen * Take ownership and wire-up the input ImsPhone 182638b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen * @param imsPhone ImsPhone to be used. 182738b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen */ 182838b5fac001d38ad7a4f886ba7fcaf7c417216b01Etan Cohen public void acquireOwnershipOfImsPhone(ImsPhone imsPhone); 1829a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville 1830a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville /** 1831888c60a7fe1c8f3612ab8e8ec5f2f7ca8f24e766Etan Cohen * Return the service state of mImsPhone if it is STATE_IN_SERVICE 1832a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville * otherwise return the current voice service state 1833a8467dd0c524787104b1ccdddc5e8af10ba729edWink Saville */ 1834888c60a7fe1c8f3612ab8e8ec5f2f7ca8f24e766Etan Cohen int getVoicePhoneServiceState(); 1835b93bb3538c55f173f94a4ee7510d9d1521d8f731Shishir Agrawal 1836b93bb3538c55f173f94a4ee7510d9d1521d8f731Shishir Agrawal /** 1837b93bb3538c55f173f94a4ee7510d9d1521d8f731Shishir Agrawal * Override the service provider name and the operator name for the input ICCID. 1838b93bb3538c55f173f94a4ee7510d9d1521d8f731Shishir Agrawal */ 1839b93bb3538c55f173f94a4ee7510d9d1521d8f731Shishir Agrawal public boolean setOperatorBrandOverride(String iccId, String brand); 184003586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla 184103586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla /** 184203586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla * Is Radio Present on the device and is it accessible 184303586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla */ 184403586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla public boolean isRadioAvailable(); 184503586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla 184603586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla /** 184703586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla * shutdown Radio gracefully 184803586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla */ 184903586878fb3d870373f2fdf65afb81cc5ae97067Naveen Kalla public void shutdownRadio(); 18500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville} 1851