public class TelephonyManager
extends Object
java.lang.Object | |
↳ | android.telephony.TelephonyManager |
提供有关设备上电话服务的信息。 应用程序可以使用此类中的方法来确定电话服务和状态,以及访问某些类型的订户信息。 应用程序还可以注册一个侦听器来接收电话状态更改的通知。
你不直接实例化这个类; 相反,您通过Context.getSystemService(Context.TELEPHONY_SERVICE)
检索对实例的引用。 返回的TelephonyManager将为所有呼叫使用默认订阅。 要为特定订阅调用API,请使用createForSubscriptionId(int)
。 例如telephonyManager = defaultSubTelephonyManager.createForSubscriptionId(subId);
请注意,对某些电话信息的访问权限受到保护。 您的应用程序无法访问受保护的信息,除非它的清单文件中声明了相应的权限。 在适用权限的地方,它们会在您访问受保护信息的方法中注明。
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 与 |
String |
EXTRA_STATE 与 |
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 与 |
public static final String |
EXTRA_STATE_OFFHOOK 用于 |
public static final String |
EXTRA_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 需要许可: |
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
|
String ACTION_CONFIGURE_VOICEMAIL
打开语音信箱设置活动以更改语音信箱配置。
常量值:“android.telephony.action.CONFIGURE_VOICEMAIL”
String ACTION_PHONE_STATE_CHANGED
广播意图操作指示设备上的呼叫状态已更改。
额外的EXTRA_STATE
表示新的呼叫状态。 如果新的状态是RINGING,则第二个额外的EXTRA_INCOMING_NUMBER
将来电号码作为字符串提供。
需要READ_PHONE_STATE权限。
这是1.0版中的sticky
广播,但它不再粘滞。 而是使用getCallState()
来同步查询当前的呼叫状态。
常量值:“android.intent.action.PHONE_STATE”
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”
int AUTHTYPE_EAP_AKA
UICC挑战的认证类型是EAP AKA。 详情请参阅RFC 4187。
常量值:129(0x00000081)
int AUTHTYPE_EAP_SIM
UICC挑战的认证类型是EAP SIM。 有关详细信息,请参阅RFC 4186。
常量值:128(0x00000080)
int CALL_STATE_OFFHOOK
设备通话状态:摘机。 至少存在一个呼叫正在拨号,处于活动状态或处于保持状态,并且没有呼叫正在振铃或等待。
常量值:2(0x00000002)
int CALL_STATE_RINGING
设备呼叫状态:振铃。 一个新的电话到达,正在响起或等待。 在后一种情况下,另一个呼叫已经激活。
常数值:1(0x00000001)
int DATA_ACTIVITY_DORMANT
数据连接处于活动状态,但物理链路断开
常量值:4(0x00000004)
int DATA_ACTIVITY_INOUT
数据连接活动:目前同时发送和接收IP PPP流量。
常量值:3(0x00000003)
int DATA_ACTIVITY_OUT
数据连接活动:当前正在发送IP PPP流量。
常量值:2(0x00000002)
int DATA_DISCONNECTED
数据连接状态:断开连接。 IP流量不可用。
常量值:0(0x00000000)
int DATA_SUSPENDED
数据连接状态:暂停。 连接已启动,但IP流量暂时不可用。 例如,在2G网络中,当语音呼叫到达时,数据活动可能会暂停。
常量值:3(0x00000003)
String EXTRA_INCOMING_NUMBER
与ACTION_PHONE_STATE_CHANGED
广播一起使用的查找密钥,用于包含传入电话号码的字符串。 只有当新的呼叫状态是RINGING时才有效。
常量值:“incoming_number”
String EXTRA_STATE
与 ACTION_PHONE_STATE_CHANGED
广播一起使用的查找键,用于包含新呼叫状态的字符串。
也可以看看:
常数值:“状态”
int NETWORK_TYPE_CDMA
目前的网络是CDMA:IS95A或IS95B
常量值:4(0x00000004)
int SIM_STATE_NETWORK_LOCKED
SIM卡状态:锁定:需要网络PIN才能解锁
常量值:4(0x00000004)
int SIM_STATE_PIN_REQUIRED
SIM卡状态:锁定:需要用户的SIM卡解锁
常量值:2(0x00000002)
int SIM_STATE_PUK_REQUIRED
SIM卡状态:锁定:需要用户的SIM PUK解锁
常量值:3(0x00000003)
int SIM_STATE_UNKNOWN
SIM卡状态:未知。 表示SIM卡处于状态转换状态。 例如,当用户在PIN_REQUIRED状态下输入SIM引脚时,SIM状态查询在返回到SIM_STATE_READY之前返回此状态。 这些是IccCardConstants.State的序号值。
常量值:0(0x00000000)
String VVM_TYPE_CVVM
具有不同移动起源(MO)格式的OMTP协议的味道
常量值:“vvm_type_cvvm”
String EXTRA_STATE_OFFHOOK
与 EXTRA_STATE
对应的值 CALL_STATE_OFFHOOK
。
String EXTRA_STATE_RINGING
与 EXTRA_STATE
对应的 CALL_STATE_RINGING
使用的值。
boolean canChangeDtmfToneLength ()
设备是否支持配置DTMF音长。
Returns | |
---|---|
boolean |
true if the DTMF tone length can be changed, and false otherwise. |
TelephonyManager createForSubscriptionId (int subId)
创建固定到给定订阅ID的新TelephonyManager对象。
Parameters | |
---|---|
subId |
int
|
Returns | |
---|---|
TelephonyManager |
a TelephonyManager that uses the given subId for all calls. |
List<CellInfo> getAllCellInfo ()
返回设备上所有无线设备(包括主小区和相邻小区)的所有观察小区信息。 调用此方法不会触发调用onCellInfoChanged()
,或改变在该速度onCellInfoChanged()
被调用。
该列表可以包括一个或多个CellInfoGsm
, CellInfoCdma
, CellInfoLte
,和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. |
int getCallState ()
返回表示所有电话呼叫当前状态的以下常量之一。 CALL_STATE_RINGING
CALL_STATE_OFFHOOK
CALL_STATE_IDLE
Returns | |
---|---|
int |
CellLocation getCellLocation ()
返回设备的当前位置。
如果设备中只有一个无线电,且该无线电具有LTE连接,则此方法将返回空值。 实施不得尝试将LTE标识符添加到现有的cdma / gsm类中。
将来此调用将被弃用。
Returns | |
---|---|
CellLocation |
Current location of the device or null if not available. |
int getDataNetworkType ()
返回一个常数,指示设备上当前正在使用的数据传输的无线电技术(网络类型)。
Returns | |
---|---|
int |
the network type |
也可以看看:
NETWORK_TYPE_UNKNOWN
NETWORK_TYPE_GPRS
NETWORK_TYPE_EDGE
NETWORK_TYPE_UMTS
NETWORK_TYPE_HSDPA
NETWORK_TYPE_HSUPA
NETWORK_TYPE_HSPA
NETWORK_TYPE_CDMA
NETWORK_TYPE_EVDO_0
NETWORK_TYPE_EVDO_A
NETWORK_TYPE_EVDO_B
NETWORK_TYPE_1xRTT
NETWORK_TYPE_IDEN
NETWORK_TYPE_LTE
NETWORK_TYPE_EHRPD
Requires Permission: {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
String getDeviceId ()
返回唯一的设备ID,例如GSM的IMEI和CDMA手机的MEID或ESN。 如果设备ID不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
String getDeviceId (int slotId)
返回订阅的唯一设备ID,例如,GSM的IMEI和CDMA电话的MEID。 如果设备ID不可用,则返回null。
需要许可: READ_PHONE_STATE
Parameters | |
---|---|
slotId |
int : of which deviceID is returned |
Returns | |
---|---|
String |
String getDeviceSoftwareVersion ()
返回设备的软件版本号,例如GSM手机的IMEI / SV。 如果软件版本不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
String getGroupIdLevel1 ()
返回GSM电话的组标识符级别1。 如果不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
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 |
也可以看看:
String getLine1Number ()
返回第1行的电话号码字符串,例如,GSM电话的MSISDN。 如果不可用,则返回null。
需要 READ_PHONE_STATE
: READ_PHONE_STATE
或 READ_SMS
默认的短信应用也可以使用这个。
Returns | |
---|---|
String |
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} |
String getNetworkCountryIso ()
返回与当前注册运营商的MCC(移动国家代码)等效的ISO国家代码。
可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()
来确定是否在CDMA网络上)。
Returns | |
---|---|
String |
String getNetworkOperator ()
返回当前注册操作员的数字名称(MCC + MNC)。
可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()
来确定是否在CDMA网络上)。
Returns | |
---|---|
String |
String getNetworkOperatorName ()
返回当前注册操作员的字母名称。
可用性:仅当用户注册到网络时。 CDMA网络上的结果可能不可靠(使用getPhoneType()
来确定是否在CDMA网络上)。
Returns | |
---|---|
String |
int getNetworkType ()
Returns | |
---|---|
int |
the NETWORK_TYPE_xxxx for current data connection. |
int getPhoneCount ()
返回可用电话的数量。 如果不支持语音,短信,数据,则返回0返回1用于单待机模式(单SIM功能)双待机模式返回2(双SIM功能)
Returns | |
---|---|
int |
int getPhoneType ()
返回指示设备电话类型的常量。 这表示用于传输语音呼叫的无线电的类型。
Returns | |
---|---|
int |
String getSimCountryIso ()
返回SIM提供商国家/地区代码的ISO国家代码。
Returns | |
---|---|
String |
String getSimOperator ()
返回SIM提供商的MCC + MNC(移动国家代码+移动网络代码)。 5或6位十进制数字。
可用性:SIM状态必须是 SIM_STATE_READY
Returns | |
---|---|
String |
也可以看看:
String getSimOperatorName ()
返回服务提供者名称(SPN)。
可用性:SIM状态必须为 SIM_STATE_READY
Returns | |
---|---|
String |
也可以看看:
String getSimSerialNumber ()
返回SIM卡的序列号(如果适用)。 如果不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
String getSubscriberId ()
返回唯一的订户ID,例如,GSM电话的IMSI。 如果不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
String getVoiceMailAlphaTag ()
检索与语音邮件编号关联的字母标识符。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
String getVoiceMailNumber ()
返回语音邮件号码。 如果不可用,则返回null。
需要许可: READ_PHONE_STATE
Returns | |
---|---|
String |
int getVoiceNetworkType ()
返回语音的NETWORK_TYPE_xxxx
需要许可: READ_PHONE_STATE
Returns | |
---|---|
int |
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. |
boolean hasCarrierPrivileges ()
呼叫申请已被承运人授予承运人特权。 如果主叫UID中的任何包具有运营商权限,则该呼叫将返回true。 该访问由UICC卡的所有者授予,不依赖于注册的运营商。
Returns | |
---|---|
boolean |
true if the app has carrier privileges. |
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. |
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. |
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. |
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. |
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. |
boolean isHearingAidCompatibilitySupported ()
手机是否支持助听器兼容性。
Returns | |
---|---|
boolean |
true if the device supports hearing aid compatibility, and false otherwise. |
boolean isNetworkRoaming ()
出于GSM的目的,如果设备被认为在当前网络上漫游,则返回true。
可用性:仅当用户注册到网络时。
Returns | |
---|---|
boolean |
boolean isSmsCapable ()
Returns | |
---|---|
boolean |
true if the current device supports sms service. 如果属实,这意味着该设备支持通过电话网络发送和接收短信。 注意:当设备不支持短信时,语音信箱等待短信,手机广播短信和彩信都将被禁用。 |
boolean isTtyModeSupported ()
手机是否支持TTY模式。
Returns | |
---|---|
boolean |
true if the device supports TTY mode, and false otherwise. |
boolean isVoiceCapable ()
Returns | |
---|---|
boolean |
true if the current device is "voice capable". “支持语音”意味着此设备支持通过电话网络进行电路交换(即语音)电话呼叫,并且允许在蜂窝语音呼叫处于活动状态时显示通话中的用户界面。 对于无法拨打语音电话并且不支持任何通话用户界面的“仅限数据”设备,这将是错误的。 注意:此标志的含义与PackageManager.FEATURE_TELEPHONY系统功能略有不同,即使设备是纯数据,任何带有电话收音机的设备都可以使用该功能。 |
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. |
boolean isWorldPhone ()
设备是否是世界电话。
Returns | |
---|---|
boolean |
true if the device is a world phone, and false otherwise. |
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. |
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. |
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. |
也可以看看:
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. |
也可以看看:
boolean setPreferredNetworkTypeToGlobal ()
将首选网络类型设置为包括LTE,CDMA,EvDo和GSM / WCDMA在内的全局模式。
要求通话应用程序具有运营商权限。
Returns | |
---|---|
boolean |
true on success; false on any failure. |
也可以看看:
boolean setVoiceMailNumber (String alphaTag, String number)
设置语音邮件号码。
要求通话应用程序具有运营商权限。
Parameters | |
---|---|
alphaTag |
String : The alpha tag to display. |
number |
String : The voicemail number. |
Returns | |
---|---|
boolean |
也可以看看: