TelephonyManager
public
class
TelephonyManager
extends Object
| java.lang.Object | |
| ↳ | android.telephony.TelephonyManager |
Provides access to information about the telephony services on the device. Applications can use the methods in this class to determine telephony services and states, as well as to access some types of subscriber information. Applications can also register a listener to receive notification of telephony state changes.
You do not instantiate this class directly; instead, you retrieve
a reference to an instance through
Context.getSystemService(Context.TELEPHONY_SERVICE).
The returned TelephonyManager will use the default subscription for all calls.
To call an API for a specific subscription, use createForSubscriptionId(int). e.g.
telephonyManager = defaultSubTelephonyManager.createForSubscriptionId(subId);
Note that access to some telephony information is permission-protected. Your application cannot access the protected information unless it has the appropriate permissions declared in its manifest file. Where permissions apply, they are noted in the the methods through which you access the protected information.
Summary
Nested classes | |
|---|---|
class |
TelephonyManager.UssdResponseCallback
Used to notify callers of
|
Constants | |
|---|---|
String |
ACTION_CONFIGURE_VOICEMAIL
Open the voicemail settings activity to make changes to voicemail configuration. |
String |
ACTION_PHONE_STATE_CHANGED
Broadcast intent action indicating that the call state on the device has changed. |
String |
ACTION_RESPOND_VIA_MESSAGE
The Phone app sends this intent when a user opts to respond-via-message during an incoming call. |
String |
ACTION_SHOW_VOICEMAIL_NOTIFICATION
Broadcast intent action for letting the default dialer to know to show voicemail notification. |
int |
APPTYPE_CSIM
UICC application type is CSIM |
int |
APPTYPE_ISIM
UICC application type is ISIM |
int |
APPTYPE_RUIM
UICC application type is RUIM |
int |
APPTYPE_SIM
UICC application type is SIM |
int |
APPTYPE_USIM
UICC application type is USIM |
int |
AUTHTYPE_EAP_AKA
Authentication type for UICC challenge is EAP AKA. |
int |
AUTHTYPE_EAP_SIM
Authentication type for UICC challenge is EAP SIM. |
int |
CALL_STATE_IDLE
Device call state: No activity. |
int |
CALL_STATE_OFFHOOK
Device call state: Off-hook. |
int |
CALL_STATE_RINGING
Device call state: Ringing. |
int |
DATA_ACTIVITY_DORMANT
Data connection is active, but physical link is down |
int |
DATA_ACTIVITY_IN
Data connection activity: Currently receiving IP PPP traffic. |
int |
DATA_ACTIVITY_INOUT
Data connection activity: Currently both sending and receiving IP PPP traffic. |
int |
DATA_ACTIVITY_NONE
Data connection activity: No traffic. |
int |
DATA_ACTIVITY_OUT
Data connection activity: Currently sending IP PPP traffic. |
int |
DATA_CONNECTED
Data connection state: Connected. |
int |
DATA_CONNECTING
Data connection state: Currently setting up a data connection. |
int |
DATA_DISCONNECTED
Data connection state: Disconnected. |
int |
DATA_SUSPENDED
Data connection state: Suspended. |
String |
EXTRA_CALL_VOICEMAIL_INTENT
The intent to call voicemail. |
String |
EXTRA_HIDE_PUBLIC_SETTINGS
The boolean value indicating whether the voicemail settings activity launched by |
String |
EXTRA_INCOMING_NUMBER
The lookup key used with the |
String |
EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT
The intent to launch voicemail settings. |
String |
EXTRA_NOTIFICATION_COUNT
The number of voice messages associated with the notification. |
String |
EXTRA_PHONE_ACCOUNT_HANDLE
The extra used with an |
String |
EXTRA_STATE
The lookup key used with the |
String |
EXTRA_VOICEMAIL_NUMBER
The voicemail number. |
String |
METADATA_HIDE_VOICEMAIL_SETTINGS_MENU
A boolean meta-data value indicating whether the voicemail settings should be hidden in the
call settings page launched by
|
int |
NETWORK_TYPE_1xRTT
Current network is 1xRTT |
int |
NETWORK_TYPE_CDMA
Current network is CDMA: Either IS95A or IS95B |
int |
NETWORK_TYPE_EDGE
Current network is EDGE |
int |
NETWORK_TYPE_EHRPD
Current network is eHRPD |
int |
NETWORK_TYPE_EVDO_0
Current network is EVDO revision 0 |
int |
NETWORK_TYPE_EVDO_A
Current network is EVDO revision A |
int |
NETWORK_TYPE_EVDO_B
Current network is EVDO revision B |
int |
NETWORK_TYPE_GPRS
Current network is GPRS |
int |
NETWORK_TYPE_GSM
Current network is GSM |
int |
NETWORK_TYPE_HSDPA
Current network is HSDPA |
int |
NETWORK_TYPE_HSPA
Current network is HSPA |
int |
NETWORK_TYPE_HSPAP
Current network is HSPA+ |
int |
NETWORK_TYPE_HSUPA
Current network is HSUPA |
int |
NETWORK_TYPE_IDEN
Current network is iDen |
int |
NETWORK_TYPE_IWLAN
Current network is IWLAN |
int |
NETWORK_TYPE_LTE
Current network is LTE |
int |
NETWORK_TYPE_TD_SCDMA
Current network is TD_SCDMA |
int |
NETWORK_TYPE_UMTS
Current network is UMTS |
int |
NETWORK_TYPE_UNKNOWN
Network type is unknown |
int |
PHONE_TYPE_CDMA
Phone radio is CDMA. |
int |
PHONE_TYPE_GSM
Phone radio is GSM. |
int |
PHONE_TYPE_NONE
No phone radio. |
int |
PHONE_TYPE_SIP
Phone is via SIP. |
int |
SIM_STATE_ABSENT
SIM card state: no SIM card is available in the device |
int |
SIM_STATE_CARD_IO_ERROR
SIM card state: SIM Card Error, present but faulty |
int |
SIM_STATE_CARD_RESTRICTED
SIM card state: SIM Card restricted, present but not usable due to carrier restrictions. |
int |
SIM_STATE_NETWORK_LOCKED
SIM card state: Locked: requires a network PIN to unlock |
int |
SIM_STATE_NOT_READY
SIM card state: SIM Card is NOT READY |
int |
SIM_STATE_PERM_DISABLED
SIM card state: SIM Card Error, permanently disabled |
int |
SIM_STATE_PIN_REQUIRED
SIM card state: Locked: requires the user's SIM PIN to unlock |
int |
SIM_STATE_PUK_REQUIRED
SIM card state: Locked: requires the user's SIM PUK to unlock |
int |
SIM_STATE_READY
SIM card state: Ready |
int |
SIM_STATE_UNKNOWN
SIM card state: Unknown. |
int |
USSD_ERROR_SERVICE_UNAVAIL
Failure code returned when a USSD request has failed to execute because the Telephony service is unavailable. |
int |
USSD_RETURN_FAILURE
Failed code returned when the mobile network has failed to complete a USSD request. |
String |
VVM_TYPE_CVVM
A flavor of OMTP protocol with a different mobile originated (MO) format |
String |
VVM_TYPE_OMTP
The OMTP protocol. |
Fields | |
|---|---|
public
static
final
String |
EXTRA_STATE_IDLE
Value used with |
public
static
final
String |
EXTRA_STATE_OFFHOOK
Value used with |
public
static
final
String |
EXTRA_STATE_RINGING
Value used with |
Public methods | |
|---|---|
boolean
|
canChangeDtmfToneLength()
Whether the device supports configuring the DTMF tone length. |
TelephonyManager
|
createForPhoneAccountHandle(PhoneAccountHandle phoneAccountHandle)
Create a new TelephonyManager object pinned to the subscription ID associated with the given phone account. |
TelephonyManager
|
createForSubscriptionId(int subId)
Create a new TelephonyManager object pinned to the given subscription ID. |
List<CellInfo>
|
getAllCellInfo()
Returns all observed cell information from all radios on the device including the primary and neighboring cells. |
int
|
getCallState()
Returns one of the following constants that represents the current state of all phone calls. |
PersistableBundle
|
getCarrierConfig()
Returns the carrier config of the subscription ID pinned to the TelephonyManager. |
CellLocation
|
getCellLocation()
This method was deprecated
in API level O.
use |
int
|
getDataActivity()
Returns a constant indicating the type of activity on a data connection (cellular). |
int
|
getDataNetworkType()
Returns a constant indicating the radio technology (network type) currently in use on the device for data transmission. |
int
|
getDataState()
Returns a constant indicating the current data connection state (cellular). |
String
|
getDeviceId()
This method was deprecated in API level O. Use (@link getImei} which returns IMEI for GSM or (@link getMeid} which returns MEID for CDMA. |
String
|
getDeviceId(int slotIndex)
This method was deprecated in API level O. Use (@link getImei} which returns IMEI for GSM or (@link getMeid} which returns MEID for CDMA. |
String
|
getDeviceSoftwareVersion()
Returns the software version number for the device, for example, the IMEI/SV for GSM phones. |
String[]
|
getForbiddenPlmns()
Returns an array of Forbidden PLMNs from the USIM App Returns null if the query fails. |
String
|
getGroupIdLevel1()
Returns the Group Identifier Level1 for a GSM phone. |
String
|
getIccAuthentication(int appType, int authType, String data)
Returns the response of authentication for the default subscription. |
String
|
getImei(int slotIndex)
Returns the IMEI (International Mobile Equipment Identity). |
String
|
getImei()
Returns the IMEI (International Mobile Equipment Identity). |
String
|
getLine1Number()
Returns the phone number string for line 1, for example, the MSISDN for a GSM phone. |
String
|
getMeid()
Returns the MEID (Mobile Equipment Identifier). |
String
|
getMeid(int slotIndex)
Returns the MEID (Mobile Equipment Identifier). |
String
|
getMmsUAProfUrl()
Returns the MMS user agent profile URL. |
String
|
getMmsUserAgent()
Returns the MMS user agent. |
List<NeighboringCellInfo>
|
getNeighboringCellInfo()
This method was deprecated
in API level 23.
Use |
String
|
getNetworkCountryIso()
Returns the ISO country code equivalent of the current registered operator's MCC (Mobile Country Code). |
String
|
getNetworkOperator()
Returns the numeric name (MCC+MNC) of current registered operator. |
String
|
getNetworkOperatorName()
Returns the alphabetic name of current registered operator. |
String
|
getNetworkSpecifier()
Returns the network specifier of the subscription ID pinned to the TelephonyManager. |
int
|
getNetworkType()
|
int
|
getPhoneCount()
Returns the number of phones available. |
int
|
getPhoneType()
Returns a constant indicating the device phone type. |
ServiceState
|
getServiceState()
Returns the current |
String
|
getSimCountryIso()
Returns the ISO country code equivalent for the SIM provider's country code. |
String
|
getSimOperator()
Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. |
String
|
getSimOperatorName()
Returns the Service Provider Name (SPN). |
String
|
getSimSerialNumber()
Returns the serial number of the SIM, if applicable. |
int
|
getSimState()
Returns a constant indicating the state of the default SIM card. |
int
|
getSimState(int slotIndex)
Returns a constant indicating the state of the device SIM card in a slot. |
String
|
getSubscriberId()
Returns the unique subscriber ID, for example, the IMSI for a GSM phone. |
String
|
getVisualVoicemailPackageName()
Returns the package responsible of processing visual voicemail for the subscription ID pinned to the TelephonyManager. |
String
|
getVoiceMailAlphaTag()
Retrieves the alphabetic identifier associated with the voice mail number. |
String
|
getVoiceMailNumber()
Returns the voice mail number. |
int
|
getVoiceNetworkType()
Returns the NETWORK_TYPE_xxxx for voice |
Uri
|
getVoicemailRingtoneUri(PhoneAccountHandle accountHandle)
Returns the URI for the per-account voicemail ringtone set in Phone settings. |
boolean
|
hasCarrierPrivileges()
Has the calling application been granted carrier privileges by the carrier. |
boolean
|
hasIccCard()
|
boolean
|
iccCloseLogicalChannel(int channel)
Closes a previously opened logical channel to the ICC card. |
byte[]
|
iccExchangeSimIO(int fileID, int command, int p1, int p2, int p3, String filePath)
Returns the response APDU for a command APDU sent through SIM_IO. |
IccOpenLogicalChannelResponse
|
iccOpenLogicalChannel(String AID)
This method was deprecated
in API level O.
Replaced by |
IccOpenLogicalChannelResponse
|
iccOpenLogicalChannel(String AID, int p2)
Opens a logical channel to the ICC card. |
String
|
iccTransmitApduBasicChannel(int cla, int instruction, int p1, int p2, int p3, String data)
Transmit an APDU to the ICC card over the basic channel. |
String
|
iccTransmitApduLogicalChannel(int channel, int cla, int instruction, int p1, int p2, int p3, String data)
Transmit an APDU to the ICC card over a logical channel. |
boolean
|
isConcurrentVoiceAndDataSupported()
Whether the device is currently on a technology (e.g. |
boolean
|
isDataEnabled()
Returns whether mobile data is enabled or not. |
boolean
|
isHearingAidCompatibilitySupported()
Whether the phone supports hearing aid compatibility. |
boolean
|
isNetworkRoaming()
Returns true if the device is considered roaming on the current network, for GSM purposes. |
boolean
|
isSmsCapable()
|
boolean
|
isTtyModeSupported()
Whether the phone supports TTY mode. |
boolean
|
isVoiceCapable()
|
boolean
|
isVoicemailVibrationEnabled(PhoneAccountHandle accountHandle)
Returns whether vibration is set for voicemail notification in Phone settings. |
boolean
|
isWorldPhone()
Whether the device is a world phone. |
void
|
listen(PhoneStateListener listener, int events)
Registers a listener object to receive notification of changes in specified telephony states. |
void
|
sendDialerSpecialCode(String inputCode)
Send the special dialer code. |
String
|
sendEnvelopeWithStatus(String content)
Send ENVELOPE to the SIM and return the response. |
void
|
sendUssdRequest(String ussdRequest, TelephonyManager.UssdResponseCallback callback, Handler handler)
Sends an Unstructured Supplementary Service Data (USSD) request to the mobile network and
informs the caller of the response via the supplied |
void
|
sendVisualVoicemailSms(String number, int port, String text, PendingIntent sentIntent)
Send a visual voicemail SMS. |
void
|
setDataEnabled(boolean enable)
Turns mobile data on or off. |
boolean
|
setLine1NumberForDisplay(String alphaTag, String number)
Set the line 1 phone number string and its alphatag for the current ICCID for display purpose only, for example, displayed in Phone Status. |
boolean
|
setOperatorBrandOverride(String brand)
Override the branding for the current ICCID. |
boolean
|
setPreferredNetworkTypeToGlobal()
Set the preferred network type to global mode which includes LTE, CDMA, EvDo and GSM/WCDMA. |
void
|
setVisualVoicemailSmsFilterSettings(VisualVoicemailSmsFilterSettings settings)
Set the visual voicemail SMS filter settings for the subscription ID pinned to the TelephonyManager. |
boolean
|
setVoiceMailNumber(String alphaTag, String number)
Sets the voice mail number. |
void
|
setVoicemailRingtoneUri(PhoneAccountHandle phoneAccountHandle, Uri uri)
Sets the per-account voicemail ringtone. |
void
|
setVoicemailVibrationEnabled(PhoneAccountHandle phoneAccountHandle, boolean enabled)
Sets the per-account preference whether vibration is enabled for voicemail notifications. |
Inherited methods | |
|---|---|
java.lang.Object
| |
Constants
ACTION_CONFIGURE_VOICEMAIL
String ACTION_CONFIGURE_VOICEMAIL
Open the voicemail settings activity to make changes to voicemail configuration.
The EXTRA_HIDE_PUBLIC_SETTINGS hides settings the dialer will modify through public
API if set.
See also:
Constant Value: "android.telephony.action.CONFIGURE_VOICEMAIL"
ACTION_PHONE_STATE_CHANGED
String ACTION_PHONE_STATE_CHANGED
Broadcast intent action indicating that the call state on the device has changed.
The EXTRA_STATE extra indicates the new call state.
If the new state is RINGING, a second extra
EXTRA_INCOMING_NUMBER provides the incoming phone number as
a String.
This was a sticky
broadcast in version 1.0, but it is no longer sticky.
Instead, use getCallState() to synchronously query the current call state.
Requires the READ_PHONE_STATE permission.
Constant Value: "android.intent.action.PHONE_STATE"
ACTION_RESPOND_VIA_MESSAGE
String ACTION_RESPOND_VIA_MESSAGE
The Phone app sends this intent when a user opts to respond-via-message during an incoming
call. By default, the device's default SMS app consumes this message and sends a text message
to the caller. A third party app can also provide this functionality by consuming this Intent
with a Service and sending the message using its own messaging system.
The intent contains a URI (available from getData())
describing the recipient, using either the sms:, smsto:, mms:,
or mmsto: URI schema. Each of these URI schema carry the recipient information the
same way: the path part of the URI contains the recipient's phone number or a comma-separated
set of phone numbers if there are multiple recipients. For example, smsto:2065551234.
The intent may also contain extras for the message text (in EXTRA_TEXT) and a message subject
(in EXTRA_SUBJECT).
Note:
The intent-filter that consumes this Intent needs to be in a Service
that requires the
permission SEND_RESPOND_VIA_MESSAGE.
For example, the service that receives this intent can be declared in the manifest file with an intent filter like this:
<!-- Service that delivers SMS messages received from the phone "quick response" -->
<service android:name=".HeadlessSmsSendService"
android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="sms" />
<data android:scheme="smsto" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
</service>
Output: nothing.
Constant Value: "android.intent.action.RESPOND_VIA_MESSAGE"
ACTION_SHOW_VOICEMAIL_NOTIFICATION
String ACTION_SHOW_VOICEMAIL_NOTIFICATION
Broadcast intent action for letting the default dialer to know to show voicemail notification.
The EXTRA_PHONE_ACCOUNT_HANDLE extra indicates which PhoneAccountHandle the
voicemail is received on.
The EXTRA_NOTIFICATION_COUNT extra indicates the total numbers of unheard
voicemails.
The EXTRA_VOICEMAIL_NUMBER extra indicates the voicemail number if available.
The EXTRA_CALL_VOICEMAIL_INTENT extra is a PendingIntent that
will call the voicemail number when sent. This extra will be empty if the voicemail number
is not set, and EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT will be set instead.
The EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT extra is a
PendingIntent that will launch the voicemail settings. This extra is only
available when the voicemail number is not set.
See also:
Constant Value: "android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION"
APPTYPE_CSIM
int APPTYPE_CSIM
UICC application type is CSIM
Constant Value: 4 (0x00000004)
APPTYPE_ISIM
int APPTYPE_ISIM
UICC application type is ISIM
Constant Value: 5 (0x00000005)
APPTYPE_RUIM
int APPTYPE_RUIM
UICC application type is RUIM
Constant Value: 3 (0x00000003)
APPTYPE_SIM
int APPTYPE_SIM
UICC application type is SIM
Constant Value: 1 (0x00000001)
APPTYPE_USIM
int APPTYPE_USIM
UICC application type is USIM
Constant Value: 2 (0x00000002)
AUTHTYPE_EAP_AKA
int AUTHTYPE_EAP_AKA
Authentication type for UICC challenge is EAP AKA. See RFC 4187 for details.
Constant Value: 129 (0x00000081)
AUTHTYPE_EAP_SIM
int AUTHTYPE_EAP_SIM
Authentication type for UICC challenge is EAP SIM. See RFC 4186 for details.
Constant Value: 128 (0x00000080)
CALL_STATE_IDLE
int CALL_STATE_IDLE
Device call state: No activity.
Constant Value: 0 (0x00000000)
CALL_STATE_OFFHOOK
int CALL_STATE_OFFHOOK
Device call state: Off-hook. At least one call exists that is dialing, active, or on hold, and no calls are ringing or waiting.
Constant Value: 2 (0x00000002)
CALL_STATE_RINGING
int CALL_STATE_RINGING
Device call state: Ringing. A new call arrived and is ringing or waiting. In the latter case, another call is already active.
Constant Value: 1 (0x00000001)
DATA_ACTIVITY_DORMANT
int DATA_ACTIVITY_DORMANT
Data connection is active, but physical link is down
Constant Value: 4 (0x00000004)
DATA_ACTIVITY_IN
int DATA_ACTIVITY_IN
Data connection activity: Currently receiving IP PPP traffic.
Constant Value: 1 (0x00000001)
DATA_ACTIVITY_INOUT
int DATA_ACTIVITY_INOUT
Data connection activity: Currently both sending and receiving IP PPP traffic.
Constant Value: 3 (0x00000003)
DATA_ACTIVITY_NONE
int DATA_ACTIVITY_NONE
Data connection activity: No traffic.
Constant Value: 0 (0x00000000)
DATA_ACTIVITY_OUT
int DATA_ACTIVITY_OUT
Data connection activity: Currently sending IP PPP traffic.
Constant Value: 2 (0x00000002)
DATA_CONNECTED
int DATA_CONNECTED
Data connection state: Connected. IP traffic should be available.
Constant Value: 2 (0x00000002)
DATA_CONNECTING
int DATA_CONNECTING
Data connection state: Currently setting up a data connection.
Constant Value: 1 (0x00000001)
DATA_DISCONNECTED
int DATA_DISCONNECTED
Data connection state: Disconnected. IP traffic not available.
Constant Value: 0 (0x00000000)
DATA_SUSPENDED
int DATA_SUSPENDED
Data connection state: Suspended. The connection is up, but IP traffic is temporarily unavailable. For example, in a 2G network, data activity may be suspended when a voice call arrives.
Constant Value: 3 (0x00000003)
EXTRA_CALL_VOICEMAIL_INTENT
String EXTRA_CALL_VOICEMAIL_INTENT
The intent to call voicemail.
Constant Value: "android.telephony.extra.CALL_VOICEMAIL_INTENT"
EXTRA_HIDE_PUBLIC_SETTINGS
String EXTRA_HIDE_PUBLIC_SETTINGS
The boolean value indicating whether the voicemail settings activity launched by ACTION_CONFIGURE_VOICEMAIL should hide settings accessible through public API. This is
used by dialer implementations which provides their own voicemail settings UI, but still
needs to expose device specific voicemail settings to the user.
Constant Value: "android.telephony.extra.HIDE_PUBLIC_SETTINGS"
EXTRA_INCOMING_NUMBER
String EXTRA_INCOMING_NUMBER
The lookup key used with the ACTION_PHONE_STATE_CHANGED broadcast
for a String containing the incoming phone number.
Only valid when the new call state is RINGING.
Retrieve with
getStringExtra(String).
Constant Value: "incoming_number"
EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT
String EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT
The intent to launch voicemail settings.
Constant Value: "android.telephony.extra.LAUNCH_VOICEMAIL_SETTINGS_INTENT"
EXTRA_NOTIFICATION_COUNT
String EXTRA_NOTIFICATION_COUNT
The number of voice messages associated with the notification.
Constant Value: "android.telephony.extra.NOTIFICATION_COUNT"
EXTRA_PHONE_ACCOUNT_HANDLE
String EXTRA_PHONE_ACCOUNT_HANDLE
The extra used with an ACTION_SHOW_VOICEMAIL_NOTIFICATION Intent to specify
the PhoneAccountHandle the notification is for.
Retrieve with getParcelableExtra(String).
Constant Value: "android.telephony.extra.PHONE_ACCOUNT_HANDLE"
EXTRA_STATE
String EXTRA_STATE
The lookup key used with the ACTION_PHONE_STATE_CHANGED broadcast
for a String containing the new call state.
Retrieve with
getStringExtra(String).
Constant Value: "state"
EXTRA_VOICEMAIL_NUMBER
String EXTRA_VOICEMAIL_NUMBER
The voicemail number.
Constant Value: "android.telephony.extra.VOICEMAIL_NUMBER"
METADATA_HIDE_VOICEMAIL_SETTINGS_MENU
String METADATA_HIDE_VOICEMAIL_SETTINGS_MENU
A boolean meta-data value indicating whether the voicemail settings should be hidden in the
call settings page launched by
ACTION_SHOW_CALL_SETTINGS.
Dialer implementations (see getDefaultDialerPackage())
which would also like to manage voicemail settings should set this meta-data to true
in the manifest registration of their application.
Constant Value: "android.telephony.HIDE_VOICEMAIL_SETTINGS_MENU"
NETWORK_TYPE_1xRTT
int NETWORK_TYPE_1xRTT
Current network is 1xRTT
Constant Value: 7 (0x00000007)
NETWORK_TYPE_CDMA
int NETWORK_TYPE_CDMA
Current network is CDMA: Either IS95A or IS95B
Constant Value: 4 (0x00000004)
NETWORK_TYPE_EDGE
int NETWORK_TYPE_EDGE
Current network is EDGE
Constant Value: 2 (0x00000002)
NETWORK_TYPE_EHRPD
int NETWORK_TYPE_EHRPD
Current network is eHRPD
Constant Value: 14 (0x0000000e)
NETWORK_TYPE_EVDO_0
int NETWORK_TYPE_EVDO_0
Current network is EVDO revision 0
Constant Value: 5 (0x00000005)
NETWORK_TYPE_EVDO_A
int NETWORK_TYPE_EVDO_A
Current network is EVDO revision A
Constant Value: 6 (0x00000006)
NETWORK_TYPE_EVDO_B
int NETWORK_TYPE_EVDO_B
Current network is EVDO revision B
Constant Value: 12 (0x0000000c)
NETWORK_TYPE_GPRS
int NETWORK_TYPE_GPRS
Current network is GPRS
Constant Value: 1 (0x00000001)
NETWORK_TYPE_GSM
int NETWORK_TYPE_GSM
Current network is GSM
Constant Value: 16 (0x00000010)
NETWORK_TYPE_HSDPA
int NETWORK_TYPE_HSDPA
Current network is HSDPA
Constant Value: 8 (0x00000008)
NETWORK_TYPE_HSPA
int NETWORK_TYPE_HSPA
Current network is HSPA
Constant Value: 10 (0x0000000a)
NETWORK_TYPE_HSPAP
int NETWORK_TYPE_HSPAP
Current network is HSPA+
Constant Value: 15 (0x0000000f)
NETWORK_TYPE_HSUPA
int NETWORK_TYPE_HSUPA
Current network is HSUPA
Constant Value: 9 (0x00000009)
NETWORK_TYPE_IDEN
int NETWORK_TYPE_IDEN
Current network is iDen
Constant Value: 11 (0x0000000b)
NETWORK_TYPE_IWLAN
int NETWORK_TYPE_IWLAN
Current network is IWLAN
Constant Value: 18 (0x00000012)
NETWORK_TYPE_LTE
int NETWORK_TYPE_LTE
Current network is LTE
Constant Value: 13 (0x0000000d)
NETWORK_TYPE_TD_SCDMA
int NETWORK_TYPE_TD_SCDMA
Current network is TD_SCDMA
Constant Value: 17 (0x00000011)
NETWORK_TYPE_UMTS
int NETWORK_TYPE_UMTS
Current network is UMTS
Constant Value: 3 (0x00000003)
NETWORK_TYPE_UNKNOWN
int NETWORK_TYPE_UNKNOWN
Network type is unknown
Constant Value: 0 (0x00000000)
PHONE_TYPE_CDMA
int PHONE_TYPE_CDMA
Phone radio is CDMA.
Constant Value: 2 (0x00000002)
PHONE_TYPE_GSM
int PHONE_TYPE_GSM
Phone radio is GSM.
Constant Value: 1 (0x00000001)
PHONE_TYPE_NONE
int PHONE_TYPE_NONE
No phone radio.
Constant Value: 0 (0x00000000)
PHONE_TYPE_SIP
int PHONE_TYPE_SIP
Phone is via SIP.
Constant Value: 3 (0x00000003)
SIM_STATE_ABSENT
int SIM_STATE_ABSENT
SIM card state: no SIM card is available in the device
Constant Value: 1 (0x00000001)
SIM_STATE_CARD_IO_ERROR
int SIM_STATE_CARD_IO_ERROR
SIM card state: SIM Card Error, present but faulty
Constant Value: 8 (0x00000008)
SIM_STATE_CARD_RESTRICTED
int SIM_STATE_CARD_RESTRICTED
SIM card state: SIM Card restricted, present but not usable due to carrier restrictions.
Constant Value: 9 (0x00000009)
SIM_STATE_NETWORK_LOCKED
int SIM_STATE_NETWORK_LOCKED
SIM card state: Locked: requires a network PIN to unlock
Constant Value: 4 (0x00000004)
SIM_STATE_NOT_READY
int SIM_STATE_NOT_READY
SIM card state: SIM Card is NOT READY
Constant Value: 6 (0x00000006)
SIM_STATE_PERM_DISABLED
int SIM_STATE_PERM_DISABLED
SIM card state: SIM Card Error, permanently disabled
Constant Value: 7 (0x00000007)
SIM_STATE_PIN_REQUIRED
int SIM_STATE_PIN_REQUIRED
SIM card state: Locked: requires the user's SIM PIN to unlock
Constant Value: 2 (0x00000002)
SIM_STATE_PUK_REQUIRED
int SIM_STATE_PUK_REQUIRED
SIM card state: Locked: requires the user's SIM PUK to unlock
Constant Value: 3 (0x00000003)
SIM_STATE_READY
int SIM_STATE_READY
SIM card state: Ready
Constant Value: 5 (0x00000005)
SIM_STATE_UNKNOWN
int SIM_STATE_UNKNOWN
SIM card state: Unknown. Signifies that the SIM is in transition between states. For example, when the user inputs the SIM pin under PIN_REQUIRED state, a query for sim status returns this state before turning to SIM_STATE_READY. These are the ordinal value of IccCardConstants.State.
Constant Value: 0 (0x00000000)
USSD_ERROR_SERVICE_UNAVAIL
int USSD_ERROR_SERVICE_UNAVAIL
Failure code returned when a USSD request has failed to execute because the Telephony service is unavailable.
Returned via onReceiveUssdResponseFailed(TelephonyManager, String, int).
Constant Value: -2 (0xfffffffe)
USSD_RETURN_FAILURE
int USSD_RETURN_FAILURE
Failed code returned when the mobile network has failed to complete a USSD request.
Returned via onReceiveUssdResponseFailed(TelephonyManager, String, int).
Constant Value: -1 (0xffffffff)
VVM_TYPE_CVVM
String VVM_TYPE_CVVM
A flavor of OMTP protocol with a different mobile originated (MO) format
Constant Value: "vvm_type_cvvm"
VVM_TYPE_OMTP
String VVM_TYPE_OMTP
The OMTP protocol.
Constant Value: "vvm_type_omtp"
Fields
EXTRA_STATE_IDLE
String EXTRA_STATE_IDLE
Value used with EXTRA_STATE corresponding to
CALL_STATE_IDLE.
EXTRA_STATE_OFFHOOK
String EXTRA_STATE_OFFHOOK
Value used with EXTRA_STATE corresponding to
CALL_STATE_OFFHOOK.
EXTRA_STATE_RINGING
String EXTRA_STATE_RINGING
Value used with EXTRA_STATE corresponding to
CALL_STATE_RINGING.
Public methods
canChangeDtmfToneLength
boolean canChangeDtmfToneLength ()
Whether the device supports configuring the DTMF tone length.
| Returns | |
|---|---|
boolean |
true if the DTMF tone length can be changed, and false otherwise.
|
createForPhoneAccountHandle
TelephonyManager createForPhoneAccountHandle (PhoneAccountHandle phoneAccountHandle)
Create a new TelephonyManager object pinned to the subscription ID associated with the given phone account.
| Parameters | |
|---|---|
phoneAccountHandle |
PhoneAccountHandle |
| Returns | |
|---|---|
TelephonyManager |
a TelephonyManager that uses the given phone account for all calls, or null
if the phone account does not correspond to a valid subscription ID.
This value may be |
createForSubscriptionId
TelephonyManager createForSubscriptionId (int subId)
Create a new TelephonyManager object pinned to the given subscription ID.
| Parameters | |
|---|---|
subId |
int |
| Returns | |
|---|---|
TelephonyManager |
a TelephonyManager that uses the given subId for all calls. |
getAllCellInfo
List<CellInfo> getAllCellInfo ()
Returns all observed cell information from all radios on the
device including the primary and neighboring cells. Calling this method does
not trigger a call to onCellInfoChanged(), or change the rate at which
onCellInfoChanged() is called.
The list can include one or more CellInfoGsm,
CellInfoCdma,
CellInfoLte, and
CellInfoWcdma objects, in any combination.
On devices with multiple radios it is typical to see instances of
one or more of any these in the list. In addition, zero, one, or more
of the returned objects may be considered registered; that is, their
CellInfo.isRegistered()
methods may return true.
This method returns valid data for registered cells on devices with
FEATURE_TELEPHONY. In cases where only
partial information is available for a particular CellInfo entry, unavailable fields
will be reported as Integer.MAX_VALUE. All reported cells will include at least a
valid set of technology-specific identification info and a power level measurement.
This method is preferred over using getCellLocation().
However, for older devices, getAllCellInfo() may return
null. In these cases, you should call getCellLocation()
instead.
Requires the ACCESS_COARSE_LOCATION permission.
| Returns | |
|---|---|
List<CellInfo> |
List of CellInfo; null if cell
information is unavailable.
|
getCallState
int getCallState ()
Returns one of the following constants that represents the current state of all
phone calls.
CALL_STATE_RINGING
CALL_STATE_OFFHOOK
CALL_STATE_IDLE
| Returns | |
|---|---|
int |
|
getCarrierConfig
PersistableBundle getCarrierConfig ()
Returns the carrier config of the subscription ID pinned to the TelephonyManager. If an invalid subscription ID is pinned to the TelephonyManager, the returned config will contain default values.
This method may take several seconds to complete, so it should only be called from a worker thread.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
PersistableBundle |
|
getCellLocation
CellLocation getCellLocation ()
This method was deprecated
in API level O.
use getAllCellInfo() instead, which returns a superset of this API.
Returns the current location of the device.
If there is only one radio in the device and that radio has an LTE connection, this method will return null. The implementation must not to try add LTE identifiers into the existing cdma/gsm classes.
Requires the ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permissions.
| Returns | |
|---|---|
CellLocation |
Current location of the device or null if not available. |
getDataActivity
int getDataActivity ()
Returns a constant indicating the type of activity on a data connection (cellular).
| Returns | |
|---|---|
int |
|
getDataNetworkType
int getDataNetworkType ()
Returns a constant indicating the radio technology (network type)
currently in use on the device for data transmission.
If this object has been created with createForSubscriptionId(int), applies to the given
subId. Otherwise, applies to getDefaultDataSubscriptionId()
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
int |
the network type |
getDataState
int getDataState ()
Returns a constant indicating the current data connection state (cellular).
| Returns | |
|---|---|
int |
|
getDeviceId
String getDeviceId ()
This method was deprecated
in API level O.
Use (@link getImei} which returns IMEI for GSM or (@link getMeid} which returns
MEID for CDMA.
Returns the unique device ID, for example, the IMEI for GSM and the MEID or ESN for CDMA phones. Return null if device ID is not available.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getDeviceId
String getDeviceId (int slotIndex)
This method was deprecated
in API level O.
Use (@link getImei} which returns IMEI for GSM or (@link getMeid} which returns
MEID for CDMA.
Returns the unique device ID of a subscription, for example, the IMEI for GSM and the MEID for CDMA phones. Return null if device ID is not available.
Requires the READ_PHONE_STATE permission.
| Parameters | |
|---|---|
slotIndex |
int: of which deviceID is returned |
| Returns | |
|---|---|
String |
|
getDeviceSoftwareVersion
String getDeviceSoftwareVersion ()
Returns the software version number for the device, for example, the IMEI/SV for GSM phones. Return null if the software version is not available.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getForbiddenPlmns
String[] getForbiddenPlmns ()
Returns an array of Forbidden PLMNs from the USIM App Returns null if the query fails.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String[] |
an array of forbidden PLMNs or null if not available |
getGroupIdLevel1
String getGroupIdLevel1 ()
Returns the Group Identifier Level1 for a GSM phone. Return null if it is unavailable.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getIccAuthentication
String getIccAuthentication (int appType, int authType, String data)
Returns the response of authentication for the default subscription. Returns null if the authentication hasn't been successful
Requires that the calling app has carrier privileges or READ_PRIVILEGED_PHONE_STATE permission.
| Parameters | |
|---|---|
appType |
int: the icc application type, like APPTYPE_USIM |
authType |
int: the authentication type, AUTHTYPE_EAP_AKA or
AUTHTYPE_EAP_SIM |
data |
String: authentication challenge data, base64 encoded.
See 3GPP TS 31.102 7.1.2 for more details. |
| Returns | |
|---|---|
String |
the response of authentication, or null if not available |
See also:
getImei
String getImei (int slotIndex)
Returns the IMEI (International Mobile Equipment Identity). Return null if IMEI is not available.
Requires the READ_PHONE_STATE permission.
| Parameters | |
|---|---|
slotIndex |
int: of which IMEI is returned
|
| Returns | |
|---|---|
String |
|
getImei
String getImei ()
Returns the IMEI (International Mobile Equipment Identity). Return null if IMEI is not available.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getLine1Number
String getLine1Number ()
Returns the phone number string for line 1, for example, the MSISDN for a GSM phone. Return null if it is unavailable.
The default SMS app can also use this.
Requires the READ_PHONE_STATE, READ_SMS or READ_PHONE_NUMBERS permissions.
| Returns | |
|---|---|
String |
|
getMeid
String getMeid ()
Returns the MEID (Mobile Equipment Identifier). Return null if MEID is not available.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getMeid
String getMeid (int slotIndex)
Returns the MEID (Mobile Equipment Identifier). Return null if MEID is not available.
Requires the READ_PHONE_STATE permission.
| Parameters | |
|---|---|
slotIndex |
int: of which MEID is returned
|
| Returns | |
|---|---|
String |
|
getMmsUAProfUrl
String getMmsUAProfUrl ()
Returns the MMS user agent profile URL.
| Returns | |
|---|---|
String |
|
getMmsUserAgent
String getMmsUserAgent ()
Returns the MMS user agent.
| Returns | |
|---|---|
String |
|
getNeighboringCellInfo
List<NeighboringCellInfo> getNeighboringCellInfo ()
This method was deprecated
in API level 23.
Use getAllCellInfo() which returns a superset of the information
from NeighboringCellInfo.
Returns the neighboring cell information of the device.
Requires the ACCESS_COARSE_LOCATION permission.
| Returns | |
|---|---|
List<NeighboringCellInfo> |
List of NeighboringCellInfo or null if info unavailable. |
getNetworkCountryIso
String getNetworkCountryIso ()
Returns the ISO country code equivalent of the current registered operator's MCC (Mobile Country Code).
Availability: Only when user is registered to a network. Result may be
unreliable on CDMA networks (use getPhoneType() to determine if
on a CDMA network).
| Returns | |
|---|---|
String |
|
getNetworkOperator
String getNetworkOperator ()
Returns the numeric name (MCC+MNC) of current registered operator.
Availability: Only when user is registered to a network. Result may be
unreliable on CDMA networks (use getPhoneType() to determine if
on a CDMA network).
| Returns | |
|---|---|
String |
|
getNetworkOperatorName
String getNetworkOperatorName ()
Returns the alphabetic name of current registered operator.
Availability: Only when user is registered to a network. Result may be
unreliable on CDMA networks (use getPhoneType() to determine if
on a CDMA network).
| Returns | |
|---|---|
String |
|
getNetworkSpecifier
String getNetworkSpecifier ()
Returns the network specifier of the subscription ID pinned to the TelephonyManager. The
network specifier is used by setNetworkSpecifier(String) to create a NetworkRequest that connects through the subscription.
| Returns | |
|---|---|
String |
|
getNetworkType
int getNetworkType ()
| Returns | |
|---|---|
int |
the NETWORK_TYPE_xxxx for current data connection. |
getPhoneCount
int getPhoneCount ()
Returns the number of phones available. Returns 0 if none of voice, sms, data is not supported Returns 1 for Single standby mode (Single SIM functionality) Returns 2 for Dual standby mode.(Dual SIM functionality)
| Returns | |
|---|---|
int |
|
getPhoneType
int getPhoneType ()
Returns a constant indicating the device phone type. This indicates the type of radio used to transmit voice calls.
| Returns | |
|---|---|
int |
|
getServiceState
ServiceState getServiceState ()
Returns the current ServiceState information.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
ServiceState |
|
getSimCountryIso
String getSimCountryIso ()
Returns the ISO country code equivalent for the SIM provider's country code.
| Returns | |
|---|---|
String |
|
getSimOperator
String getSimOperator ()
Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits.
Availability: SIM state must be SIM_STATE_READY
| Returns | |
|---|---|
String |
|
See also:
getSimOperatorName
String getSimOperatorName ()
Returns the Service Provider Name (SPN).
Availability: SIM state must be SIM_STATE_READY
| Returns | |
|---|---|
String |
|
See also:
getSimSerialNumber
String getSimSerialNumber ()
Returns the serial number of the SIM, if applicable. Return null if it is unavailable.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getSimState
int getSimState ()
Returns a constant indicating the state of the default SIM card.
| Returns | |
|---|---|
int |
|
getSimState
int getSimState (int slotIndex)
Returns a constant indicating the state of the device SIM card in a slot.
| Returns | |
|---|---|
int |
|
getSubscriberId
String getSubscriberId ()
Returns the unique subscriber ID, for example, the IMSI for a GSM phone. Return null if it is unavailable.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getVisualVoicemailPackageName
String getVisualVoicemailPackageName ()
Returns the package responsible of processing visual voicemail for the subscription ID pinned
to the TelephonyManager. Returns null when there is no package responsible for
processing visual voicemail for the subscription.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
This value may be |
getVoiceMailAlphaTag
String getVoiceMailAlphaTag ()
Retrieves the alphabetic identifier associated with the voice mail number.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getVoiceMailNumber
String getVoiceMailNumber ()
Returns the voice mail number. Return null if it is unavailable.
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
String |
|
getVoiceNetworkType
int getVoiceNetworkType ()
Returns the NETWORK_TYPE_xxxx for voice
Requires the READ_PHONE_STATE permission.
| Returns | |
|---|---|
int |
|
getVoicemailRingtoneUri
Uri getVoicemailRingtoneUri (PhoneAccountHandle accountHandle)
Returns the URI for the per-account voicemail ringtone set in Phone settings.
| Parameters | |
|---|---|
accountHandle |
PhoneAccountHandle: The handle for the PhoneAccount for which to retrieve the
voicemail ringtone. |
| Returns | |
|---|---|
Uri |
The URI for the ringtone to play when receiving a voicemail from a specific PhoneAccount. |
hasCarrierPrivileges
boolean hasCarrierPrivileges ()
Has the calling application been granted carrier privileges by the carrier. If any of the packages in the calling UID has carrier privileges, the call will return true. This access is granted by the owner of the UICC card and does not depend on the registered carrier.
| Returns | |
|---|---|
boolean |
true if the app has carrier privileges. |
iccCloseLogicalChannel
boolean iccCloseLogicalChannel (int channel)
Closes a previously opened logical channel to the ICC card. Input parameters equivalent to TS 27.007 AT+CCHC command.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
channel |
int: is the channel id to be closed as retruned by a successful
iccOpenLogicalChannel. |
| Returns | |
|---|---|
boolean |
true if the channel was closed successfully. |
iccExchangeSimIO
byte[] iccExchangeSimIO (int fileID,
int command,
int p1,
int p2,
int p3,
String filePath)
Returns the response APDU for a command APDU sent through SIM_IO.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
p1 |
int: P1 value of the APDU command. |
p2 |
int: P2 value of the APDU command. |
p3 |
int: P3 value of the APDU command. |
| Returns | |
|---|---|
byte[] |
The APDU response. |
iccOpenLogicalChannel
IccOpenLogicalChannelResponse iccOpenLogicalChannel (String AID)
This method was deprecated
in API level O.
Replaced by iccOpenLogicalChannel(String, int)
Opens a logical channel to the ICC card. Input parameters equivalent to TS 27.007 AT+CCHO command.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
AID |
String: Application id. See ETSI 102.221 and 101.220. |
| Returns | |
|---|---|
IccOpenLogicalChannelResponse |
an IccOpenLogicalChannelResponse object. |
iccOpenLogicalChannel
IccOpenLogicalChannelResponse iccOpenLogicalChannel (String AID, int p2)
Opens a logical channel to the ICC card. Input parameters equivalent to TS 27.007 AT+CCHO command.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
AID |
String: Application id. See ETSI 102.221 and 101.220. |
p2 |
int: P2 parameter (described in ISO 7816-4). |
| Returns | |
|---|---|
IccOpenLogicalChannelResponse |
an IccOpenLogicalChannelResponse object. |
iccTransmitApduBasicChannel
String iccTransmitApduBasicChannel (int cla, int instruction, int p1, int p2, int p3, String data)
Transmit an APDU to the ICC card over the basic channel. Input parameters equivalent to TS 27.007 AT+CSIM command.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
cla |
int: Class of the APDU command. |
instruction |
int: Instruction of the APDU command. |
p1 |
int: P1 value of the APDU command. |
p2 |
int: P2 value of the APDU command. |
p3 |
int: P3 value of the APDU command. If p3 is negative a 4 byte APDU
is sent to the SIM. |
data |
String: Data to be sent with the APDU. |
| Returns | |
|---|---|
String |
The APDU response from the ICC card with the status appended at the end. |
iccTransmitApduLogicalChannel
String iccTransmitApduLogicalChannel (int channel, int cla, int instruction, int p1, int p2, int p3, String data)
Transmit an APDU to the ICC card over a logical channel. Input parameters equivalent to TS 27.007 AT+CGLA command.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
channel |
int: is the channel id to be closed as returned by a successful
iccOpenLogicalChannel. |
cla |
int: Class of the APDU command. |
instruction |
int: Instruction of the APDU command. |
p1 |
int: P1 value of the APDU command. |
p2 |
int: P2 value of the APDU command. |
p3 |
int: P3 value of the APDU command. If p3 is negative a 4 byte APDU
is sent to the SIM. |
data |
String: Data to be sent with the APDU. |
| Returns | |
|---|---|
String |
The APDU response from the ICC card with the status appended at the end. |
isConcurrentVoiceAndDataSupported
boolean isConcurrentVoiceAndDataSupported ()
Whether the device is currently on a technology (e.g. UMTS or LTE) which can support voice and data simultaneously. This can change based on location or network condition.
| Returns | |
|---|---|
boolean |
true if simultaneous voice and data supported, and false otherwise.
|
isDataEnabled
boolean isDataEnabled ()
Returns whether mobile data is enabled or not.
If this object has been created with createForSubscriptionId(int), applies to the given
subId. Otherwise, applies to getDefaultDataSubscriptionId()
Requires one of the following permissions:
ACCESS_NETWORK_STATE,
MODIFY_PHONE_STATE, or that the
calling app has carrier privileges.
Note that this does not take into account any data restrictions that may be present on the
calling app. Such restrictions may be inspected with
getRestrictBackgroundStatus().
| Returns | |
|---|---|
boolean |
true if mobile data is enabled. |
See also:
isHearingAidCompatibilitySupported
boolean isHearingAidCompatibilitySupported ()
Whether the phone supports hearing aid compatibility.
| Returns | |
|---|---|
boolean |
true if the device supports hearing aid compatibility, and false
otherwise.
|
isNetworkRoaming
boolean isNetworkRoaming ()
Returns true if the device is considered roaming on the current network, for GSM purposes.
Availability: Only when user registered to a network.
| Returns | |
|---|---|
boolean |
|
isSmsCapable
boolean isSmsCapable ()
| Returns | |
|---|---|
boolean |
true if the current device supports sms service.
If true, this means that the device supports both sending and receiving sms via the telephony network. Note: Voicemail waiting sms, cell broadcasting sms, and MMS are disabled when device doesn't support sms. |
isTtyModeSupported
boolean isTtyModeSupported ()
Whether the phone supports TTY mode.
| Returns | |
|---|---|
boolean |
true if the device supports TTY mode, and false otherwise.
|
isVoiceCapable
boolean isVoiceCapable ()
| Returns | |
|---|---|
boolean |
true if the current device is "voice capable".
"Voice capable" means that this device supports circuit-switched (i.e. voice) phone calls over the telephony network, and is allowed to display the in-call UI while a cellular voice call is active. This will be false on "data only" devices which can't make voice calls and don't support any in-call UI. Note: the meaning of this flag is subtly different from the PackageManager.FEATURE_TELEPHONY system feature, which is available on any device with a telephony radio, even if the device is data-only. |
isVoicemailVibrationEnabled
boolean isVoicemailVibrationEnabled (PhoneAccountHandle accountHandle)
Returns whether vibration is set for voicemail notification in Phone settings.
| Parameters | |
|---|---|
accountHandle |
PhoneAccountHandle: The handle for the PhoneAccount for which to retrieve the
voicemail vibration setting. |
| Returns | |
|---|---|
boolean |
true if the vibration is set for this PhoneAccount, false otherwise.
|
isWorldPhone
boolean isWorldPhone ()
Whether the device is a world phone.
| Returns | |
|---|---|
boolean |
true if the device is a world phone, and false otherwise.
|
listen
void listen (PhoneStateListener listener, int events)
Registers a listener object to receive notification of changes in specified telephony states.
To register a listener, pass a PhoneStateListener
and specify at least one telephony state of interest in
the events argument.
At registration, and when a specified telephony state
changes, the telephony manager invokes the appropriate
callback method on the listener object and passes the
current (updated) values.
To unregister a listener, pass the listener object and set the
events argument to
LISTEN_NONE (0).
| Parameters | |
|---|---|
listener |
PhoneStateListener: The PhoneStateListener object to register
(or unregister) |
events |
int: The telephony state(s) of interest to the listener,
as a bitwise-OR combination of PhoneStateListener
LISTEN_ flags.
|
sendDialerSpecialCode
void sendDialerSpecialCode (String inputCode)
Send the special dialer code. The IPC caller must be the current default dialer or has carrier privileges.
| Parameters | |
|---|---|
inputCode |
String: The special dialer code to send |
| Throws | |
|---|---|
SecurityException |
if the caller does not have carrier privileges or is not the current default dialer |
IllegalStateException |
if telephony service is unavailable. |
See also:
sendEnvelopeWithStatus
String sendEnvelopeWithStatus (String content)
Send ENVELOPE to the SIM and return the response.
Requires Permission:
MODIFY_PHONE_STATE
Or the calling app has carrier privileges. @see #hasCarrierPrivileges
| Parameters | |
|---|---|
content |
String: String containing SAT/USAT response in hexadecimal
format starting with command tag. See TS 102 223 for
details. |
| Returns | |
|---|---|
String |
The APDU response from the ICC card in hexadecimal format with the last 4 bytes being the status word. If the command fails, returns an empty string. |
sendUssdRequest
void sendUssdRequest (String ussdRequest, TelephonyManager.UssdResponseCallback callback, Handler handler)
Sends an Unstructured Supplementary Service Data (USSD) request to the mobile network and
informs the caller of the response via the supplied callback.
Carriers define USSD codes which can be sent by the user to request information such as the user's current data balance or minutes balance.
Requires permission:
CALL_PHONE
Requires the CALL_PHONE permission.
| Parameters | |
|---|---|
ussdRequest |
String: the USSD command to be executed. |
callback |
TelephonyManager.UssdResponseCallback: called by the framework to inform the caller of the result of executing the
USSD request (see TelephonyManager.UssdResponseCallback). |
handler |
Handler: the Handler to run the request on.
|
sendVisualVoicemailSms
void sendVisualVoicemailSms (String number, int port, String text, PendingIntent sentIntent)
Send a visual voicemail SMS. The caller must be the current default dialer.
A VisualVoicemailService uses this method to send a command via SMS to the carrier's
visual voicemail server. Some examples for carriers using the OMTP standard include
activating and deactivating visual voicemail, or requesting the current visual voicemail
provisioning status. See the OMTP Visual Voicemail specification for more information on the
format of these SMS messages.
Requires Permission:
SEND_SMS
| Parameters | |
|---|---|
number |
String: The destination number. |
port |
int: The destination port for data SMS, or 0 for text SMS. |
text |
String: The message content. For data sms, it will be encoded as a UTF-8 byte stream. |
sentIntent |
PendingIntent: The sent intent passed to the SmsManager |
| Throws | |
|---|---|
SecurityException |
if the caller is not the current default dialer |
setDataEnabled
void setDataEnabled (boolean enable)
Turns mobile data on or off.
If this object has been created with createForSubscriptionId(int), applies to the given
subId. Otherwise, applies to getDefaultDataSubscriptionId()
Requires Permission:
MODIFY_PHONE_STATE or that the
calling app has carrier privileges.
| Parameters | |
|---|---|
enable |
boolean: Whether to enable mobile data. |
See also:
setLine1NumberForDisplay
boolean setLine1NumberForDisplay (String alphaTag, String number)
Set the line 1 phone number string and its alphatag for the current ICCID for display purpose only, for example, displayed in Phone Status. It won't change the actual MSISDN/MDN. To unset alphatag or number, pass in a null value.
Requires that the calling app has carrier privileges.
| Parameters | |
|---|---|
alphaTag |
String: alpha-tagging of the dailing nubmer |
number |
String: The dialing number |
| Returns | |
|---|---|
boolean |
true if the operation was executed correctly. |
See also:
setOperatorBrandOverride
boolean setOperatorBrandOverride (String brand)
Override the branding for the current ICCID. Once set, whenever the SIM is present in the device, the service provider name (SPN) and the operator name will both be replaced by the brand value input. To unset the value, the same function should be called with a null brand value.
Requires that the calling app has carrier privileges.
| Parameters | |
|---|---|
brand |
String: The brand name to display/set. |
| Returns | |
|---|---|
boolean |
true if the operation was executed correctly. |
See also:
setPreferredNetworkTypeToGlobal
boolean setPreferredNetworkTypeToGlobal ()
Set the preferred network type to global mode which includes LTE, CDMA, EvDo and GSM/WCDMA.
Requires that the calling app has carrier privileges.
| Returns | |
|---|---|
boolean |
true on success; false on any failure. |
See also:
setVisualVoicemailSmsFilterSettings
void setVisualVoicemailSmsFilterSettings (VisualVoicemailSmsFilterSettings settings)
Set the visual voicemail SMS filter settings for the subscription ID pinned
to the TelephonyManager.
When the filter is enabled, onSmsReceived(VisualVoicemailTask, VisualVoicemailSms) will be
called when a SMS matching the settings is received. The caller should have
READ_PHONE_STATE and implement a
VisualVoicemailService.
Requires Permission:
READ_PHONE_STATE
| Parameters | |
|---|---|
settings |
VisualVoicemailSmsFilterSettings: The settings for the filter, or null to disable the filter.
|
setVoiceMailNumber
boolean setVoiceMailNumber (String alphaTag, String number)
Sets the voice mail number.
Requires that the calling app has carrier privileges.
| Parameters | |
|---|---|
alphaTag |
String: The alpha tag to display. |
number |
String: The voicemail number.
|
| Returns | |
|---|---|
boolean |
|
See also:
setVoicemailRingtoneUri
void setVoicemailRingtoneUri (PhoneAccountHandle phoneAccountHandle, Uri uri)
Sets the per-account voicemail ringtone.
Requires that the calling app is the default dialer, or has carrier privileges, or has
permission MODIFY_PHONE_STATE.
| Parameters | |
|---|---|
phoneAccountHandle |
PhoneAccountHandle: The handle for the PhoneAccount for which to set the
voicemail ringtone. |
uri |
Uri: The URI for the ringtone to play when receiving a voicemail from a specific
PhoneAccount. |
See also:
setVoicemailVibrationEnabled
void setVoicemailVibrationEnabled (PhoneAccountHandle phoneAccountHandle, boolean enabled)
Sets the per-account preference whether vibration is enabled for voicemail notifications.
Requires that the calling app is the default dialer, or has carrier privileges, or has
permission MODIFY_PHONE_STATE.
| Parameters | |
|---|---|
phoneAccountHandle |
PhoneAccountHandle: The handle for the PhoneAccount for which to set the
voicemail vibration setting. |
enabled |
boolean: Whether to enable or disable vibration for voicemail notifications from a
specific PhoneAccount. |
See also:
Classes
- CarrierConfigManager
- CellIdentityCdma
- CellIdentityGsm
- CellIdentityLte
- CellIdentityWcdma
- CellInfo
- CellInfoCdma
- CellInfoGsm
- CellInfoLte
- CellInfoWcdma
- CellLocation
- CellSignalStrength
- CellSignalStrengthCdma
- CellSignalStrengthGsm
- CellSignalStrengthLte
- CellSignalStrengthWcdma
- IccOpenLogicalChannelResponse
- NeighboringCellInfo
- PhoneNumberFormattingTextWatcher
- PhoneNumberUtils
- PhoneStateListener
- ServiceState
- SignalStrength
- SmsManager
- SmsMessage
- SmsMessage.SubmitPdu
- SubscriptionInfo
- SubscriptionManager
- SubscriptionManager.OnSubscriptionsChangedListener
- TelephonyManager
- TelephonyManager.UssdResponseCallback
- VisualVoicemailService
- VisualVoicemailService.VisualVoicemailTask
- VisualVoicemailSms
- VisualVoicemailSmsFilterSettings
- VisualVoicemailSmsFilterSettings.Builder
Enums