Most visited

Recently visited

Added in API level 1

TelephonyManager

public class TelephonyManager
extends Object

java.lang.Object
   ↳ android.telephony.TelephonyManager


提供有关设备上电话服务的信息。 应用程序可以使用此类中的方法来确定电话服务和状态,以及访问某些类型的订户信息。 应用程序还可以注册一个侦听器来接收电话状态更改的通知。

你不直接实例化这个类; 相反,您通过Context.getSystemService(Context.TELEPHONY_SERVICE)检索对实例的引用。 返回的TelephonyManager将为所有呼叫使用默认订阅。 要为特定订阅调用API,请使用createForSubscriptionId(int) 例如telephonyManager = defaultSubTelephonyManager.createForSubscriptionId(subId);

请注意,对某些电话信息的访问权限受到保护。 您的应用程序无法访问受保护的信息,除非它的清单文件中声明了相应的权限。 在适用权限的地方,它们会在您访问受保护信息的方法中注明。

Summary

Constants

String ACTION_CONFIGURE_VOICEMAIL

打开语音信箱设置活动以更改语音信箱配置。

String ACTION_PHONE_STATE_CHANGED

广播意图操作指示设备上的呼叫状态已更改。

String ACTION_RESPOND_VIA_MESSAGE

当用户在来电时选择通过消息进行回复时,电话应用发送此意图。

int APPTYPE_CSIM

UICC应用程序类型是CSIM

int APPTYPE_ISIM

UICC应用程序类型是ISIM

int APPTYPE_RUIM

UICC应用程序类型是RUIM

int APPTYPE_SIM

UICC应用程序类型是SIM

int APPTYPE_USIM

UICC应用程序类型是USIM

int AUTHTYPE_EAP_AKA

UICC挑战的认证类型是EAP AKA。

int AUTHTYPE_EAP_SIM

UICC挑战的认证类型是EAP SIM。

int CALL_STATE_IDLE

设备通话状态:无活动。

int CALL_STATE_OFFHOOK

设备通话状态:摘机。

int CALL_STATE_RINGING

设备呼叫状态:振铃。

int DATA_ACTIVITY_DORMANT

数据连接处于活动状态,但物理链路断开

int DATA_ACTIVITY_IN

数据连接活动:当前正在接收IP PPP流量。

int DATA_ACTIVITY_INOUT

数据连接活动:目前同时发送和接收IP PPP流量。

int DATA_ACTIVITY_NONE

数据连接活动:无流量。

int DATA_ACTIVITY_OUT

数据连接活动:当前正在发送IP PPP流量。

int DATA_CONNECTED

数据连接状态:已连接。

int DATA_CONNECTING

数据连接状态:当前正在建立数据连接。

int DATA_DISCONNECTED

数据连接状态:断开连接。

int DATA_SUSPENDED

数据连接状态:暂停。

String EXTRA_INCOMING_NUMBER

ACTION_PHONE_STATE_CHANGED广播一起使用的查找键,用于包含传入电话号码的字符串。

String EXTRA_STATE

ACTION_PHONE_STATE_CHANGED广播一起使用的查找键,用于包含新呼叫状态的字符串。

int NETWORK_TYPE_1xRTT

目前的网络是1xRTT

int NETWORK_TYPE_CDMA

目前的网络是CDMA:IS95A或IS95B

int NETWORK_TYPE_EDGE

目前的网络是EDGE

int NETWORK_TYPE_EHRPD

当前网络是eHRPD

int NETWORK_TYPE_EVDO_0

当前网络是EVDO修订版0

int NETWORK_TYPE_EVDO_A

当前网络是EVDO修订版A

int NETWORK_TYPE_EVDO_B

当前网络是EVDO修订版B

int NETWORK_TYPE_GPRS

目前的网络是GPRS

int NETWORK_TYPE_HSDPA

目前的网络是HSDPA

int NETWORK_TYPE_HSPA

目前的网络是HSPA

int NETWORK_TYPE_HSPAP

目前的网络是HSPA +

int NETWORK_TYPE_HSUPA

目前的网络是HSUPA

int NETWORK_TYPE_IDEN

当前网络是iDen

int NETWORK_TYPE_LTE

目前的网络是LTE

int NETWORK_TYPE_UMTS

目前的网络是UMTS

int NETWORK_TYPE_UNKNOWN

网络类型未知

int PHONE_TYPE_CDMA

电话收音机是CDMA。

int PHONE_TYPE_GSM

电话收音机是GSM。

int PHONE_TYPE_NONE

没有电话收音机。

int PHONE_TYPE_SIP

电话通过SIP。

int SIM_STATE_ABSENT

SIM卡状态:设备中没有SIM卡可用

int SIM_STATE_NETWORK_LOCKED

SIM卡状态:锁定:需要网络PIN才能解锁

int SIM_STATE_PIN_REQUIRED

SIM卡状态:锁定:需要用户的SIM卡解锁

int SIM_STATE_PUK_REQUIRED

SIM卡状态:锁定:需要用户的SIM PUK解锁

int SIM_STATE_READY

SIM卡状态:就绪

int SIM_STATE_UNKNOWN

SIM卡状态:未知。

String VVM_TYPE_CVVM

具有不同移动起源(MO)格式的OMTP协议的味道

String VVM_TYPE_OMTP

OMTP协议。

Fields

public static final String EXTRA_STATE_IDLE

EXTRA_STATE对应的值 CALL_STATE_IDLE

public static final String EXTRA_STATE_OFFHOOK

用于 EXTRA_STATE值对应于 CALL_STATE_OFFHOOK

public static final String EXTRA_STATE_RINGING

EXTRA_STATE对应的 CALL_STATE_RINGING使用的值。

Public methods

boolean canChangeDtmfToneLength()

设备是否支持配置DTMF音长。

TelephonyManager createForSubscriptionId(int subId)

创建固定到给定订阅ID的新TelephonyManager对象。

List<CellInfo> getAllCellInfo()

返回设备上所有无线设备(包括主小区和相邻小区)的所有观察小区信息。

int getCallState()

返回表示所有电话呼叫当前状态的以下常量之一。

CellLocation getCellLocation()

返回设备的当前位置。

int getDataActivity()

返回一个常量,指示数据连接(蜂窝)上的活动类型。

int getDataNetworkType()

返回一个常数,指示设备上当前正在使用的数据传输的无线电技术(网络类型)。

int getDataState()

返回一个指示当前数据连接状态(蜂窝)的常量。

String getDeviceId()

返回唯一的设备ID,例如GSM的IMEI和CDMA手机的MEID或ESN。

String getDeviceId(int slotId)

返回订阅的唯一设备ID,例如,GSM的IMEI和CDMA电话的MEID。

String getDeviceSoftwareVersion()

返回设备的软件版本号,例如GSM手机的IMEI / SV。

String getGroupIdLevel1()

返回GSM电话的组标识符级别1。

String getIccAuthentication(int appType, int authType, String data)

返回默认订阅的身份验证响应。

String getLine1Number()

返回第1行的电话号码字符串,例如,GSM电话的MSISDN。

String getMmsUAProfUrl()

返回MMS用户代理配置文件URL。

String getMmsUserAgent()

返回MMS用户代理。

List<NeighboringCellInfo> getNeighboringCellInfo()

此方法在API级别23中被弃用。使用(@link getAllCellInfo},它从NeighboringCellInfo返回信息的超集。

String getNetworkCountryIso()

返回与当前注册运营商的MCC(移动国家代码)等效的ISO国家代码。

String getNetworkOperator()

返回当前注册操作员的数字名称(MCC + MNC)。

String getNetworkOperatorName()

返回当前注册操作员的字母名称。

int getNetworkType()
int getPhoneCount()

返回可用电话的数量。

int getPhoneType()

返回指示设备电话类型的常量。

String getSimCountryIso()

返回SIM提供商国家/地区代码的ISO国家代码。

String getSimOperator()

返回SIM提供商的MCC + MNC(移动国家代码+移动网络代码)。

String getSimOperatorName()

返回服务提供者名称(SPN)。

String getSimSerialNumber()

返回SIM卡的序列号(如果适用)。

int getSimState()

返回一个常数,指示默认SIM卡的状态。

String getSubscriberId()

返回唯一的订户ID,例如,GSM电话的IMSI。

String getVoiceMailAlphaTag()

检索与语音邮件编号关联的字母标识符。

String getVoiceMailNumber()

返回语音邮件号码。

int getVoiceNetworkType()

返回语音的NETWORK_TYPE_xxxx

需要许可: READ_PHONE_STATE

Uri getVoicemailRingtoneUri(PhoneAccountHandle accountHandle)

返回“电话设置”中设置的每个帐户的语音信箱铃声的URI。

boolean hasCarrierPrivileges()

呼叫申请已被承运人授予承运人特权。

boolean hasIccCard()
boolean iccCloseLogicalChannel(int channel)

关闭以前打开的ICC卡的逻辑通道。

byte[] iccExchangeSimIO(int fileID, int command, int p1, int p2, int p3, String filePath)

返回通过SIM_IO发送的命令APDU的响应APDU。

IccOpenLogicalChannelResponse iccOpenLogicalChannel(String AID)

打开ICC卡的逻辑通道。

String iccTransmitApduBasicChannel(int cla, int instruction, int p1, int p2, int p3, String data)

通过基本通道将APDU传输至IC卡。

String iccTransmitApduLogicalChannel(int channel, int cla, int instruction, int p1, int p2, int p3, String data)

通过逻辑通道将APDU传输到IC卡。

boolean isHearingAidCompatibilitySupported()

手机是否支持助听器兼容性。

boolean isNetworkRoaming()

出于GSM的目的,如果设备被认为在当前网络上漫游,则返回true。

boolean isSmsCapable()
boolean isTtyModeSupported()

手机是否支持TTY模式。

boolean isVoiceCapable()
boolean isVoicemailVibrationEnabled(PhoneAccountHandle accountHandle)

返回电话设置中是否为振动设置了语音邮件通知。

boolean isWorldPhone()

设备是否是世界电话。

void listen(PhoneStateListener listener, int events)

注册侦听器对象以接收指定电话状态更改的通知。

String sendEnvelopeWithStatus(String content)

将信封发送至SIM卡并返回响应。

boolean setLine1NumberForDisplay(String alphaTag, String number)

将当前ICCID的第1行电话号码字符串及其alphatag设置为仅用于显示目的,例如,显示在电话状态中。

boolean setOperatorBrandOverride(String brand)

覆盖当前ICCID的品牌。

boolean setPreferredNetworkTypeToGlobal()

将首选网络类型设置为包括LTE,CDMA,EvDo和GSM / WCDMA在内的全局模式。

boolean setVoiceMailNumber(String alphaTag, String number)

设置语音邮件号码。

Inherited methods

From class java.lang.Object

Constants

ACTION_CONFIGURE_VOICEMAIL

Added in API level 23
String ACTION_CONFIGURE_VOICEMAIL

打开语音信箱设置活动以更改语音信箱配置。

常量值:“android.telephony.action.CONFIGURE_VOICEMAIL”

ACTION_PHONE_STATE_CHANGED

Added in API level 3
String ACTION_PHONE_STATE_CHANGED

广播意图操作指示设备上的呼叫状态已更改。

额外的EXTRA_STATE表示新的呼叫状态。 如果新的状态是RINGING,则第二个额外的EXTRA_INCOMING_NUMBER将来电号码作为字符串提供。

需要READ_PHONE_STATE权限。

这是1.0版中的sticky广播,但它不再粘滞。 而是使用getCallState()来同步查询当前的呼叫状态。

也可以看看:

常量值:“android.intent.action.PHONE_STATE”

ACTION_RESPOND_VIA_MESSAGE

Added in API level 18
String ACTION_RESPOND_VIA_MESSAGE

当用户在来电时选择通过消息进行回复时,电话应用发送此意图。 默认情况下,设备的默认SMS应用程序会使用此消息并向主叫方发送文本消息。 第三方应用程序也可以通过使用此Intent与Service并使用其自己的消息系统发送消息来提供此功能。

意图包含URI(购自getData() )描述接收者,即使用sms:smsto:mms: ,或mmsto: URI架构。 这些URI模式中的每一个都以相同的方式传送收件人信息:如果有多个收件人,URI的路径部分包含收件人的电话号码或逗号分隔的一组电话号码。 例如, smsto:2065551234

意图还可能包含消息文本( EXTRA_TEXT )和消息主题( EXTRA_SUBJECT )的 EXTRA_SUBJECT

注:意图过滤器,消耗这个意图必须在 Service ,需要许可 SEND_RESPOND_VIA_MESSAGE

例如,接收这个意图的服务可以在清单文件中用一个意向过滤器来声明,如下所示:

 <!-- 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>

输出:没有。

常量值:“android.intent.action.RESPOND_VIA_MESSAGE”

APPTYPE_CSIM

Added in API level 24
int APPTYPE_CSIM

UICC应用程序类型是CSIM

常量值:4(0x00000004)

APPTYPE_ISIM

Added in API level 24
int APPTYPE_ISIM

UICC应用程序类型是ISIM

常量值:5(0x00000005)

APPTYPE_RUIM

Added in API level 24
int APPTYPE_RUIM

UICC应用程序类型是RUIM

常量值:3(0x00000003)

APPTYPE_SIM

Added in API level 24
int APPTYPE_SIM

UICC应用程序类型是SIM

常数值:1(0x00000001)

APPTYPE_USIM

Added in API level 24
int APPTYPE_USIM

UICC应用程序类型是USIM

常量值:2(0x00000002)

AUTHTYPE_EAP_AKA

Added in API level 24
int AUTHTYPE_EAP_AKA

UICC挑战的认证类型是EAP AKA。 详情请参阅RFC 4187。

常量值:129(0x00000081)

AUTHTYPE_EAP_SIM

Added in API level 24
int AUTHTYPE_EAP_SIM

UICC挑战的认证类型是EAP SIM。 有关详细信息,请参阅RFC 4186。

常量值:128(0x00000080)

CALL_STATE_IDLE

Added in API level 1
int CALL_STATE_IDLE

设备通话状态:无活动。

常量值:0(0x00000000)

CALL_STATE_OFFHOOK

Added in API level 1
int CALL_STATE_OFFHOOK

设备通话状态:摘机。 至少存在一个呼叫正在拨号,处于活动状态或处于保持状态,并且没有呼叫正在振铃或等待。

常量值:2(0x00000002)

CALL_STATE_RINGING

Added in API level 1
int CALL_STATE_RINGING

设备呼叫状态:振铃。 一个新的电话到达,正在响起或等待。 在后一种情况下,另一个呼叫已经激活。

常数值:1(0x00000001)

DATA_ACTIVITY_DORMANT

Added in API level 4
int DATA_ACTIVITY_DORMANT

数据连接处于活动状态,但物理链路断开

常量值:4(0x00000004)

DATA_ACTIVITY_IN

Added in API level 1
int DATA_ACTIVITY_IN

数据连接活动:当前正在接收IP PPP流量。

常数值:1(0x00000001)

DATA_ACTIVITY_INOUT

Added in API level 1
int DATA_ACTIVITY_INOUT

数据连接活动:目前同时发送和接收IP PPP流量。

常量值:3(0x00000003)

DATA_ACTIVITY_NONE

Added in API level 1
int DATA_ACTIVITY_NONE

数据连接活动:无流量。

常量值:0(0x00000000)

DATA_ACTIVITY_OUT

Added in API level 1
int DATA_ACTIVITY_OUT

数据连接活动:当前正在发送IP PPP流量。

常量值:2(0x00000002)

DATA_CONNECTED

Added in API level 1
int DATA_CONNECTED

数据连接状态:已连接。 IP流量应该可用。

常量值:2(0x00000002)

DATA_CONNECTING

Added in API level 1
int DATA_CONNECTING

数据连接状态:当前正在建立数据连接。

常数值:1(0x00000001)

DATA_DISCONNECTED

Added in API level 1
int DATA_DISCONNECTED

数据连接状态:断开连接。 IP流量不可用。

常量值:0(0x00000000)

DATA_SUSPENDED

Added in API level 1
int DATA_SUSPENDED

数据连接状态:暂停。 连接已启动,但IP流量暂时不可用。 例如,在2G网络中,当语音呼叫到达时,数据活动可能会暂停。

常量值:3(0x00000003)

EXTRA_INCOMING_NUMBER

Added in API level 3
String EXTRA_INCOMING_NUMBER

ACTION_PHONE_STATE_CHANGED广播一起使用的查找密钥,用于包含传入电话号码的字符串。 只有当新的呼叫状态是RINGING时才有效。

检索 getStringExtra(String)

常量值:“incoming_number”

EXTRA_STATE

Added in API level 3
String EXTRA_STATE

ACTION_PHONE_STATE_CHANGED广播一起使用的查找键,用于包含新呼叫状态的字符串。

也可以看看:

常数值:“状态”

NETWORK_TYPE_1xRTT

Added in API level 4
int NETWORK_TYPE_1xRTT

目前的网络是1xRTT

常量值:7(0x00000007)

NETWORK_TYPE_CDMA

Added in API level 4
int NETWORK_TYPE_CDMA

目前的网络是CDMA:IS95A或IS95B

常量值:4(0x00000004)

NETWORK_TYPE_EDGE

Added in API level 1
int NETWORK_TYPE_EDGE

目前的网络是EDGE

常量值:2(0x00000002)

NETWORK_TYPE_EHRPD

Added in API level 11
int NETWORK_TYPE_EHRPD

当前网络是eHRPD

常量值:14(0x0000000e)

NETWORK_TYPE_EVDO_0

Added in API level 4
int NETWORK_TYPE_EVDO_0

当前网络是EVDO修订版0

常量值:5(0x00000005)

NETWORK_TYPE_EVDO_A

Added in API level 4
int NETWORK_TYPE_EVDO_A

当前网络是EVDO修订版A

常数值:6(0x00000006)

NETWORK_TYPE_EVDO_B

Added in API level 9
int NETWORK_TYPE_EVDO_B

当前网络是EVDO修订版B

常量值:12(0x0000000c)

NETWORK_TYPE_GPRS

Added in API level 1
int NETWORK_TYPE_GPRS

目前的网络是GPRS

常数值:1(0x00000001)

NETWORK_TYPE_HSDPA

Added in API level 5
int NETWORK_TYPE_HSDPA

目前的网络是HSDPA

常量值:8(0x00000008)

NETWORK_TYPE_HSPA

Added in API level 5
int NETWORK_TYPE_HSPA

目前的网络是HSPA

常量值:10(0x0000000a)

NETWORK_TYPE_HSPAP

Added in API level 13
int NETWORK_TYPE_HSPAP

目前的网络是HSPA +

常量值:15(0x0000000f)

NETWORK_TYPE_HSUPA

Added in API level 5
int NETWORK_TYPE_HSUPA

目前的网络是HSUPA

常量值:9(0x00000009)

NETWORK_TYPE_IDEN

Added in API level 8
int NETWORK_TYPE_IDEN

当前网络是iDen

常量值:11(0x0000000b)

NETWORK_TYPE_LTE

Added in API level 11
int NETWORK_TYPE_LTE

目前的网络是LTE

常量值:13(0x0000000d)

NETWORK_TYPE_UMTS

Added in API level 1
int NETWORK_TYPE_UMTS

目前的网络是UMTS

常量值:3(0x00000003)

NETWORK_TYPE_UNKNOWN

Added in API level 1
int NETWORK_TYPE_UNKNOWN

网络类型未知

常量值:0(0x00000000)

PHONE_TYPE_CDMA

Added in API level 4
int PHONE_TYPE_CDMA

电话收音机是CDMA。

常量值:2(0x00000002)

PHONE_TYPE_GSM

Added in API level 1
int PHONE_TYPE_GSM

电话收音机是GSM。

常数值:1(0x00000001)

PHONE_TYPE_NONE

Added in API level 1
int PHONE_TYPE_NONE

没有电话收音机。

常量值:0(0x00000000)

PHONE_TYPE_SIP

Added in API level 11
int PHONE_TYPE_SIP

电话通过SIP。

常量值:3(0x00000003)

SIM_STATE_ABSENT

Added in API level 1
int SIM_STATE_ABSENT

SIM卡状态:设备中没有SIM卡可用

常数值:1(0x00000001)

SIM_STATE_NETWORK_LOCKED

Added in API level 1
int SIM_STATE_NETWORK_LOCKED

SIM卡状态:锁定:需要网络PIN才能解锁

常量值:4(0x00000004)

SIM_STATE_PIN_REQUIRED

Added in API level 1
int SIM_STATE_PIN_REQUIRED

SIM卡状态:锁定:需要用户的SIM卡解锁

常量值:2(0x00000002)

SIM_STATE_PUK_REQUIRED

Added in API level 1
int SIM_STATE_PUK_REQUIRED

SIM卡状态:锁定:需要用户的SIM PUK解锁

常量值:3(0x00000003)

SIM_STATE_READY

Added in API level 1
int SIM_STATE_READY

SIM卡状态:就绪

常量值:5(0x00000005)

SIM_STATE_UNKNOWN

Added in API level 1
int SIM_STATE_UNKNOWN

SIM卡状态:未知。 表示SIM卡处于状态转换状态。 例如,当用户在PIN_REQUIRED状态下输入SIM引脚时,SIM状态查询在返回到SIM_STATE_READY之前返回此状态。 这些是IccCardConstants.State的序号值。

常量值:0(0x00000000)

VVM_TYPE_CVVM

Added in API level 23
String VVM_TYPE_CVVM

具有不同移动起源(MO)格式的OMTP协议的味道

常量值:“vvm_type_cvvm”

VVM_TYPE_OMTP

Added in API level 23
String VVM_TYPE_OMTP

OMTP协议。

常量值:“vvm_type_omtp”

Fields

EXTRA_STATE_IDLE

Added in API level 3
String EXTRA_STATE_IDLE

EXTRA_STATE对应于 CALL_STATE_IDLE

EXTRA_STATE_OFFHOOK

Added in API level 3
String EXTRA_STATE_OFFHOOK

EXTRA_STATE对应的值 CALL_STATE_OFFHOOK

EXTRA_STATE_RINGING

Added in API level 3
String EXTRA_STATE_RINGING

EXTRA_STATE对应的 CALL_STATE_RINGING使用的值。

Public methods

canChangeDtmfToneLength

Added in API level 23
boolean canChangeDtmfToneLength ()

设备是否支持配置DTMF音长。

Returns
boolean true if the DTMF tone length can be changed, and false otherwise.

createForSubscriptionId

Added in API level 24
TelephonyManager createForSubscriptionId (int subId)

创建固定到给定订阅ID的新TelephonyManager对象。

Parameters
subId int
Returns
TelephonyManager a TelephonyManager that uses the given subId for all calls.

getAllCellInfo

Added in API level 17
List<CellInfo> getAllCellInfo ()

返回设备上所有无线设备(包括主小区和相邻小区)的所有观察小区信息。 调用此方法不会触发调用onCellInfoChanged() ,或改变在该速度onCellInfoChanged()被调用。

该列表可以包括一个或多个CellInfoGsmCellInfoCdmaCellInfoLte ,和CellInfoWcdma目的,在任何组合。 在具有多个无线电的设备上,通常可以看到列表中的任何一个或多个的实例。 另外,可以认为零个,一个或多个返回的对象被注册; 也就是说,他们的CellInfo.isRegistered()方法可能会返回true。

此方法返回 FEATURE_TELEPHONY设备上已注册单元的有效数据。

此方法优于使用getCellLocation() 但是,对于较旧的设备, getAllCellInfo()可能会返回null。 在这些情况下,您应该改为拨打getCellLocation()

需要权限: ACCESS_COARSE_LOCATION

Returns
List<CellInfo> List of CellInfo; null if cell information is unavailable.

getCallState

Added in API level 1
int getCallState ()

返回表示所有电话呼叫当前状态的以下常量之一。 CALL_STATE_RINGING CALL_STATE_OFFHOOK CALL_STATE_IDLE

Returns
int

getCellLocation

Added in API level 1
CellLocation getCellLocation ()

返回设备的当前位置。

如果设备中只有一个无线电,且该无线电具有LTE连接,则此方法将返回空值。 实施不得尝试将LTE标识符添加到现有的cdma / gsm类中。

将来此调用将被弃用。

Returns
CellLocation Current location of the device or null if not available.

需要许可: ACCESS_COARSE_LOCATIONACCESS_FINE_LOCATION

getDataActivity

Added in API level 1
int getDataActivity ()

返回一个常量,指示数据连接(蜂窝)上的活动类型。

Returns
int

也可以看看:

getDataState

Added in API level 1
int getDataState ()

返回一个指示当前数据连接状态(蜂窝)的常量。

Returns
int

也可以看看:

getDeviceId

Added in API level 1
String getDeviceId ()

返回唯一的设备ID,例如GSM的IMEI和CDMA手机的MEID或ESN。 如果设备ID不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getDeviceId

Added in API level 23
String getDeviceId (int slotId)

返回订阅的唯一设备ID,例如,GSM的IMEI和CDMA电话的MEID。 如果设备ID不可用,则返回null。

需要许可: READ_PHONE_STATE

Parameters
slotId int: of which deviceID is returned
Returns
String

getDeviceSoftwareVersion

Added in API level 1
String getDeviceSoftwareVersion ()

返回设备的软件版本号,例如GSM手机的IMEI / SV。 如果软件版本不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getGroupIdLevel1

Added in API level 18
String getGroupIdLevel1 ()

返回GSM电话的组标识符级别1。 如果不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getIccAuthentication

Added in API level 24
String getIccAuthentication (int appType, 
                int authType, 
                String data)

返回默认订阅的身份验证响应。 如果身份验证未成功,则返回null

需要调用应用程序具有运营商权限或READ_PRIVILEGED_PHONE_STATE权限。

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

也可以看看:

getLine1Number

Added in API level 1
String getLine1Number ()

返回第1行的电话号码字符串,例如,GSM电话的MSISDN。 如果不可用,则返回null。

需要 READ_PHONE_STATEREAD_PHONE_STATEREAD_SMS

默认的短信应用也可以使用这个。

Returns
String

getMmsUAProfUrl

Added in API level 19
String getMmsUAProfUrl ()

返回MMS用户代理配置文件URL。

Returns
String

getMmsUserAgent

Added in API level 19
String getMmsUserAgent ()

返回MMS用户代理。

Returns
String

getNeighboringCellInfo

Added in API level 3
List<NeighboringCellInfo> getNeighboringCellInfo ()

此方法在API级别23中已弃用。
使用(@link getAllCellInfo},它从NeighboringCellInfo返回信息的超集。

返回设备的邻近单元信息。

Returns
List<NeighboringCellInfo> List of NeighboringCellInfo or null if info unavailable.

需要许可:(@link android.manifest.permission#ACCESS_COARSE_UPDATES}

getNetworkCountryIso

Added in API level 1
String getNetworkCountryIso ()

返回与当前注册运营商的MCC(移动国家代码)等效的ISO国家代码。

可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()来确定是否在CDMA网络上)。

Returns
String

getNetworkOperator

Added in API level 1
String getNetworkOperator ()

返回当前注册操作员的数字名称(MCC + MNC)。

可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()来确定是否在CDMA网络上)。

Returns
String

getNetworkOperatorName

Added in API level 1
String getNetworkOperatorName ()

返回当前注册操作员的字母名称。

可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()来确定是否在CDMA网络上)。

Returns
String

getNetworkType

Added in API level 1
int getNetworkType ()

Returns
int the NETWORK_TYPE_xxxx for current data connection.

getPhoneCount

Added in API level 23
int getPhoneCount ()

返回可用电话的数量。 如果不支持语音,短信,数据,则返回0返回1用于单待机模式(单SIM功能)双待机模式返回2(双SIM功能)

Returns
int

getPhoneType

Added in API level 1
int getPhoneType ()

返回指示设备电话类型的常量。 这表示用于传输语音呼叫的无线电的类型。

Returns
int

也可以看看:

getSimCountryIso

Added in API level 1
String getSimCountryIso ()

返回SIM提供商国家/地区代码的ISO国家代码。

Returns
String

getSimOperator

Added in API level 1
String getSimOperator ()

返回SIM提供商的MCC + MNC(移动国家代码+移动网络代码)。 5或6位十进制数字。

可用性:SIM状态必须是 SIM_STATE_READY

Returns
String

也可以看看:

getSimOperatorName

Added in API level 1
String getSimOperatorName ()

返回服务提供者名称(SPN)。

可用性:SIM状态必须为 SIM_STATE_READY

Returns
String

也可以看看:

getSimSerialNumber

Added in API level 1
String getSimSerialNumber ()

返回SIM卡的序列号(如果适用)。 如果不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getSubscriberId

Added in API level 1
String getSubscriberId ()

返回唯一的订户ID,例如,GSM电话的IMSI。 如果不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getVoiceMailAlphaTag

Added in API level 1
String getVoiceMailAlphaTag ()

检索与语音邮件编号关联的字母标识符。

需要许可: READ_PHONE_STATE

Returns
String

getVoiceMailNumber

Added in API level 1
String getVoiceMailNumber ()

返回语音邮件号码。 如果不可用,则返回null。

需要许可: READ_PHONE_STATE

Returns
String

getVoiceNetworkType

Added in API level 24
int getVoiceNetworkType ()

返回语音的NETWORK_TYPE_xxxx

需要许可: READ_PHONE_STATE

Returns
int

getVoicemailRingtoneUri

Added in API level 24
Uri getVoicemailRingtoneUri (PhoneAccountHandle accountHandle)

返回“电话设置”中设置的每个帐户的语音信箱铃声的URI。

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

Added in API level 22
boolean hasCarrierPrivileges ()

呼叫申请已被承运人授予承运人特权。 如果主叫UID中的任何包具有运营商权限,则该呼叫将返回true。 该访问由UICC卡的所有者授予,不依赖于注册的运营商。

Returns
boolean true if the app has carrier privileges.

hasIccCard

Added in API level 5
boolean hasIccCard ()

Returns
boolean true if a ICC card is present

iccCloseLogicalChannel

Added in API level 21
boolean iccCloseLogicalChannel (int channel)

关闭以前打开的ICC卡的逻辑通道。 输入参数相当于TS 27.007 AT + CCHC命令。

需要权限: MODIFY_PHONE_STATE或者调用应用程序有运营商权限。 @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

Added in API level 21
byte[] iccExchangeSimIO (int fileID, 
                int command, 
                int p1, 
                int p2, 
                int p3, 
                String filePath)

返回通过SIM_IO发送的命令APDU的响应APDU。

需要许可: MODIFY_PHONE_STATE或者调用应用程序具有运营商权限。 @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

Added in API level 21
IccOpenLogicalChannelResponse iccOpenLogicalChannel (String AID)

打开ICC卡的逻辑通道。 输入参数相当于TS 27.007 AT + CCHO命令。

需要权限: MODIFY_PHONE_STATE或者调用应用程序具有运营商权限。 @see #hasCarrierPrivileges

Parameters
AID String: Application id. See ETSI 102.221 and 101.220.
Returns
IccOpenLogicalChannelResponse an IccOpenLogicalChannelResponse object.

iccTransmitApduBasicChannel

Added in API level 21
String iccTransmitApduBasicChannel (int cla, 
                int instruction, 
                int p1, 
                int p2, 
                int p3, 
                String data)

通过基本通道将APDU传输至IC卡。 输入参数相当于TS 27.007 AT + CSIM命令。

需要许可: MODIFY_PHONE_STATE或者调用应用程序具有运营商权限。 @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

Added in API level 21
String iccTransmitApduLogicalChannel (int channel, 
                int cla, 
                int instruction, 
                int p1, 
                int p2, 
                int p3, 
                String data)

通过逻辑通道将APDU传输到IC卡。 输入参数相当于TS 27.007 AT + CGLA命令。

需要许可: MODIFY_PHONE_STATE或者调用应用程序具有运营商权限。 @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.

isHearingAidCompatibilitySupported

Added in API level 23
boolean isHearingAidCompatibilitySupported ()

手机是否支持助听器兼容性。

Returns
boolean true if the device supports hearing aid compatibility, and false otherwise.

isNetworkRoaming

Added in API level 1
boolean isNetworkRoaming ()

出于GSM的目的,如果设备被认为在当前网络上漫游,则返回true。

可用性:仅当用户注册到网络时。

Returns
boolean

isSmsCapable

Added in API level 21
boolean isSmsCapable ()

Returns
boolean true if the current device supports sms service.

如果属实,这意味着该设备支持通过电话网络发送和接收短信。

注意:当设备不支持短信时,语音信箱等待短信,手机广播短信和彩信都将被禁用。

isTtyModeSupported

Added in API level 23
boolean isTtyModeSupported ()

手机是否支持TTY模式。

Returns
boolean true if the device supports TTY mode, and false otherwise.

isVoiceCapable

Added in API level 22
boolean isVoiceCapable ()

Returns
boolean true if the current device is "voice capable".

“支持语音”意味着此设备支持通过电话网络进行电路交换(即语音)电话呼叫,并且允许在蜂窝语音呼叫处于活动状态时显示通话中的用户界面。 对于无法拨打语音电话并且不支持任何通话用户界面的“仅限数据”设备,这将是错误的。

注意:此标志的含义与PackageManager.FEATURE_TELEPHONY系统功能略有不同,即使设备是纯数据,任何带有电话收音机的设备都可以使用该功能。

isVoicemailVibrationEnabled

Added in API level 24
boolean isVoicemailVibrationEnabled (PhoneAccountHandle accountHandle)

返回电话设置中是否为振动设置了语音邮件通知。

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

Added in API level 23
boolean isWorldPhone ()

设备是否是世界电话。

Returns
boolean true if the device is a world phone, and false otherwise.

listen

Added in API level 1
void listen (PhoneStateListener listener, 
                int events)

注册侦听器对象以接收指定电话状态更改的通知。

要注册侦听器,请传递PhoneStateListener并在events参数中指定至少一个感兴趣的电话状态。 在注册时,当指定的电话状态改变时,电话管理器在侦听器对象上调用适当的回调方法并传递当前(更新)的值。

要取消注册侦听器,请传递侦听器对象并将events参数设置为 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.

sendEnvelopeWithStatus

Added in API level 21
String sendEnvelopeWithStatus (String content)

将信封发送至SIM卡并返回响应。

需要许可: MODIFY_PHONE_STATE或者调用应用程序具有运营商权限。 @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.

setLine1NumberForDisplay

Added in API level 22
boolean setLine1NumberForDisplay (String alphaTag, 
                String number)

将当前ICCID的第1行电话号码字符串及其alphatag设置为仅用于显示目的,例如,显示在电话状态中。 它不会更改实际的MSISDN / MDN。 要取消设置alphatag或数字,请传入空值。

要求通话应用程序具有运营商权限。

Parameters
alphaTag String: alpha-tagging of the dailing nubmer
number String: The dialing number
Returns
boolean true if the operation was executed correctly.

也可以看看:

setOperatorBrandOverride

Added in API level 22
boolean setOperatorBrandOverride (String brand)

覆盖当前ICCID的品牌。 设置完成后,无论何时SIM卡出现在设备中,服务提供商名称(SPN)和运营商名称都将被品牌值输入取代。 要取消设置值,应使用空品牌值调用相同的函数。

要求通话应用程序具有运营商权限。

Parameters
brand String: The brand name to display/set.
Returns
boolean true if the operation was executed correctly.

也可以看看:

setPreferredNetworkTypeToGlobal

Added in API level 22
boolean setPreferredNetworkTypeToGlobal ()

将首选网络类型设置为包括LTE,CDMA,EvDo和GSM / WCDMA在内的全局模式。

要求通话应用程序具有运营商权限。

Returns
boolean true on success; false on any failure.

也可以看看:

setVoiceMailNumber

Added in API level 22
boolean setVoiceMailNumber (String alphaTag, 
                String number)

设置语音邮件号码。

要求通话应用程序具有运营商权限。

Parameters
alphaTag String: The alpha tag to display.
number String: The voicemail number.
Returns
boolean

也可以看看:

Hooray!