harmony 鸿蒙@ohos.telephony.observer (observer)

2022-08-09 浏览 (916)

@ohos.telephony.observer (observer)

本模块提供订阅管理功能,可以订阅/取消订阅的事件包括:网络状态变化、信号状态变化、通话状态变化、蜂窝数据链路连接状态、蜂窝数据业务的上下行数据流状态、SIM状态变化。

说明:

本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import observer from '@ohos.telephony.observer';

observer.on('networkStateChange')

on(type: 'networkStateChange', callback: Callback<NetworkState>): void;

订阅网络状态变化事件,使用callback方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring网络状态变化事件,参数固定为'networkStateChange'。
callbackCallback<NetworkState>回调函数。参考radio的NetworkState

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
201Permission denied.
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

observer.on('networkStateChange', (data: observer.NetworkState) => {
    console.log("on networkStateChange, data:" + JSON.stringify(data));
});

observer.on('networkStateChange')

on(type: 'networkStateChange', options: { slotId: number }, callback: Callback<NetworkState>): void;

订阅指定卡槽位的网络状态变化事件,使用callback方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring网络状态变化事件,参数固定为'networkStateChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<NetworkState>回调函数。参考radio的NetworkState

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
201Permission denied.
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('networkStateChange', id, (data: observer.NetworkState) => {
    console.log("on networkStateChange, data:" + JSON.stringify(data));
});

observer.off('networkStateChange')

off(type: 'networkStateChange', callback?: Callback<NetworkState>): void;

取消订阅网络状态变化事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring网络状态变化事件,参数固定为'networkStateChange'。
callbackCallback<NetworkState>回调函数。参考radio的NetworkState

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

let callback: (data: observer.NetworkState) => void = (data: observer.NetworkState) => {
    console.log("on networkStateChange, data:" + JSON.stringify(data));
}
observer.on('networkStateChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('networkStateChange', callback);
observer.off('networkStateChange');

observer.on('signalInfoChange')

on(type: 'signalInfoChange', callback: Callback<Array<SignalInformation>>): void;

订阅信号状态变化事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring信号状态变化事件,参数固定为'signalInfoChange'。
callbackCallback<Array<SignalInformation>>回调函数。参考radio的SignalInformation

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

observer.on('signalInfoChange', (data: Array<radio.SignalInformation>) => {
    console.log("on signalInfoChange, data:" + JSON.stringify(data));
});

observer.on('signalInfoChange')

on(type: 'signalInfoChange', options: { slotId: number }, callback: Callback<Array<SignalInformation>>): void;

订阅指定卡槽位的信号状态变化事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring信号状态变化事件,参数固定为'signalInfoChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<Array<SignalInformation>>回调函数。参考radio的SignalInformation

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('signalInfoChange', id, (data: Array<radio.SignalInformation>) => {
    console.log("on signalInfoChange, data:" + JSON.stringify(data));
});

observer.off('signalInfoChange')

off(type: 'signalInfoChange', callback?: Callback<Array<SignalInformation>>): void;

取消订阅信号状态变化事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring信号状态变化事件,参数固定为'signalInfoChange'。
callbackCallback<Array<SignalInformation>>回调函数。参考radio的SignalInformation

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

let callback: (data: Array<radio.SignalInformation>) => void = (data: Array<radio.SignalInformation>) => {
    console.log("on signalInfoChange, data:" + JSON.stringify(data));
}
observer.on('signalInfoChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('signalInfoChange', callback);
observer.off('signalInfoChange');

observer.on('cellInfoChange')8+

on(type: 'cellInfoChange', callback: Callback<Array<CellInformation>>): void;

订阅小区信息变化事件,使用callback方式作为异步方法。

系统接口: 此接口为系统接口。

需要权限:ohos.permission.LOCATION 和 ohos.permission.APPROXIMATELY_LOCATION

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring小区信息变化事件,固定为'cellInfoChange'。
callbackCallback<Array<CellInformation>>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
201Permission denied.
202Non-system applications use system APIs.
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

observer.on('cellInfoChange', (data: Array<radio.CellInformation>) => {
    console.log("on cellInfoChange, data:" + JSON.stringify(data));
});

observer.on('cellInfoChange')8+

on(type: 'cellInfoChange', options: { slotId: number }, callback: Callback<Array<CellInformation>>): void;

订阅指定卡槽位的小区信息变化事件,使用callback方式作为异步方法。

系统接口: 此接口为系统接口。

需要权限:ohos.permission.LOCATION 和 ohos.permission.APPROXIMATELY_LOCATION

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring小区信息变化事件,固定为'cellInfoChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<Array<CellInformation>>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
201Permission denied.
202Non-system applications use system APIs.
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('cellInfoChange', id, (data: Array<radio.CellInformation>) => {
    console.log("on cellInfoChange, data:" + JSON.stringify(data));
});

observer.off('cellInfoChange')8+

off(type: 'cellInfoChange', callback?: Callback<Array<CellInformation>>): void;

取消订阅小区信息变化事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统接口: 此接口为系统接口。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring小区信息变化事件,固定为'cellInfoChange'。
callbackCallback<Array<CellInformation>>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
202Non-system applications use system APIs.
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import radio from '@ohos.telephony.radio';

let callback: (data: Array<radio.CellInformation>) => void = (data: Array<radio.CellInformation>) => {
    console.log("on cellInfoChange, data:" + JSON.stringify(data));
}
observer.on('cellInfoChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('cellInfoChange', callback);
observer.off('cellInfoChange');

observer.on('callStateChange')

on(type: 'callStateChange', callback: Callback<{ state: CallState, number: string }>): void;

订阅通话状态变化事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring通话状态变化事件,参数固定为'callStateChange'。
callbackCallback<{ state: CallState, number: string }>回调函数,参考call的CallState
number:电话号码

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import call from '@ohos.telephony.call';

class Value {
    state: call.CallState = call.CallState.CALL_STATE_UNKNOWN
    number: string = ""
}
observer.on('callStateChange', (value: Value) => {
    console.log("on callStateChange, state:" + value.state + ", number:" + value.number);
});

observer.on('callStateChange')

on(type: 'callStateChange', options: { slotId: number }, callback: Callback<{ state:CallState, number: string }>): void;

订阅通话状态变化事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring通话状态变化事件,参数固定为'callStateChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<{ state: CallState, number: string }>回调函数,参考call的CallState
number:电话号码

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import call from '@ohos.telephony.call';

class Value {
    state: call.CallState = call.CallState.CALL_STATE_UNKNOWN
    number: string = ""
}
class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('callStateChange', id, (value: Value) => {
    console.log("on callStateChange, state:" + value.state + ", number:" + value.number);
});

observer.off('callStateChange')

off(type: 'callStateChange', callback?: Callback<{ state: CallState, number: string }>): void;

取消订阅通话状态变化事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring通话状态变化事件,参数固定为'callStateChange'。
callbackCallback<{ state: CallState, number: string }>回调函数,参考call的CallState
number:电话号码

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import call from '@ohos.telephony.call';

class Value {
    state: call.CallState = call.CallState.CALL_STATE_UNKNOWN
    number: string = ""
}
let callback: (value: Value) => void = (value: Value) => {
    console.log("on callStateChange, state:" + value.state + ", number:" + value.number);
}
observer.on('callStateChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('callStateChange', callback);
observer.off('callStateChange');

observer.on('cellularDataConnectionStateChange')7+

on(type: 'cellularDataConnectionStateChange', callback: Callback<{ state: DataConnectState, network: RatType}>): void;

订阅蜂窝数据链路连接状态,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据链路连接状态事件,参数固定为'cellularDataConnectionStateChange'。
callbackCallback<{ state: DataConnectState, network: RatType }>回调函数,参考data的DataConnectState,radio的RadioTechnology

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';
import radio from '@ohos.telephony.radio';

class Value {
    state: data.DataConnectState = data.DataConnectState.DATA_STATE_UNKNOWN
    network: radio.RadioTechnology = radio.RadioTechnology.RADIO_TECHNOLOGY_UNKNOWN
}
observer.on('cellularDataConnectionStateChange', (value: Value) => {
    console.log("on cellularDataConnectionStateChange, state:" + value.state + ", network:" + value.network);
});

observer.on('cellularDataConnectionStateChange')7+

on(type: 'cellularDataConnectionStateChange', options: { slotId: number }, callback: Callback<{ state: DataConnectState, network: RatType }>): void;

订阅指定卡槽位的蜂窝数据链路连接状态,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据链路连接状态事件,参数固定为'cellularDataConnectionStateChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<{ state: DataConnectState, network: RatType }>回调函数,参考data的DataConnectState,radio的RadioTechnology

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';
import radio from '@ohos.telephony.radio';

class Value {
    state: data.DataConnectState = data.DataConnectState.DATA_STATE_UNKNOWN
    network: radio.RadioTechnology = radio.RadioTechnology.RADIO_TECHNOLOGY_UNKNOWN
}
class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('cellularDataConnectionStateChange', id, (value: Value) => {
    console.log("on cellularDataConnectionStateChange, state:" + value.state + ", network:" + value.network);
});

observer.off('cellularDataConnectionStateChange')7+

off(type: 'cellularDataConnectionStateChange', callback?: Callback<{ state: DataConnectState, network: RatType}>): void;

移除订阅蜂窝数据链路连接状态,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据链路连接状态事件,参数固定为'cellularDataConnectionStateChange'。
callbackCallback<{ state: DataConnectState, network: RatType }>回调函数,参考data的DataConnectState,radio的RadioTechnology

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';
import radio from '@ohos.telephony.radio';

class Value {
    state: data.DataConnectState = data.DataConnectState.DATA_STATE_UNKNOWN
    network: radio.RadioTechnology = radio.RadioTechnology.RADIO_TECHNOLOGY_UNKNOWN
}
let callback: (value: Value) => void = (value: Value) => {
    console.log("on cellularDataConnectionStateChange, state:" + value.state + ", network:" + value.network);
}
observer.on('cellularDataConnectionStateChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('cellularDataConnectionStateChange', callback);
observer.off('cellularDataConnectionStateChange');

observer.on('cellularDataFlowChange')7+

on(type: 'cellularDataFlowChange', callback: Callback<DataFlowType>): void;

订阅蜂窝数据业务的上下行数据流状态,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据业务的上下行数据流状态状态事件,参数固定为'cellularDataFlowChange'。
callbackCallback<DataFlowType>回调函数,参考data的DataFlowType

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';

observer.on('cellularDataFlowChange', (data: data.DataFlowType) => {
    console.log("on networkStateChange, data:" + JSON.stringify(data));
});

observer.on('cellularDataFlowChange')7+

on(type: 'cellularDataFlowChange', options: { slotId: number }, callback: Callback<DataFlowType>): void;

订阅指定卡槽位的蜂窝数据业务的上下行数据流状态,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据业务的上下行数据流状态状态事件,参数固定为'cellularDataFlowChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<DataFlowType>回调函数,参考data的DataFlowType

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';

class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('cellularDataFlowChange', id, (data: data.DataFlowType) => {
    console.log("on cellularDataFlowChange, data:" + JSON.stringify(data));
});

observer.off('cellularDataFlowChange')7+

off(type: 'cellularDataFlowChange', callback?: Callback<DataFlowType>): void;

移除订阅蜂窝数据业务的上下行数据流状态,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring蜂窝数据业务的上下行数据流状态状态事件,参数固定为'cellularDataFlowChange'。
callbackCallback<DataFlowType>回调函数,参考data的DataFlowType

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

import data from '@ohos.telephony.data';

let callback: (data: data.DataFlowType) => void = (data: data.DataFlowType) => {
    console.log("on cellularDataFlowChange, data:" + JSON.stringify(data));
}
observer.on('cellularDataFlowChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('cellularDataFlowChange', callback);
observer.off('cellularDataFlowChange');

observer.on('simStateChange')7+

on(type: 'simStateChange', callback: Callback<SimStateData>): void;

订阅sim状态更改事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestringsim状态更改事件,参数固定为'simStateChange'。
callbackCallback<SimStateData>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

observer.on('simStateChange', (data: observer.SimStateData) => {
    console.log("on simStateChange, data:" + JSON.stringify(data));
});

observer.on('simStateChange')7+

on(type: 'simStateChange', options: { slotId: number }, callback: Callback<SimStateData>): void;

订阅指定卡槽位的sim状态更改事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestringsim状态更改事件,参数固定为'simStateChange'。
slotIdnumber卡槽ID。
- 0:卡槽1
- 1:卡槽2
callbackCallback<SimStateData>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

class SlotId {
    slotId: number = 0
}
let id: SlotId = {slotId: 0}
observer.on('simStateChange', id, (data: observer.SimStateData) => {
    console.log("on simStateChange, data:" + JSON.stringify(data));
});

observer.off('simStateChange')7+

off(type: 'simStateChange', callback?: Callback<SimStateData>): void;

移除订阅sim状态更改事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestringsim状态更改事件,参数固定为'simStateChange'。
callbackCallback<SimStateData>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
401Parameter error.
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

let callback: (data: observer.SimStateData) => void = (data: observer.SimStateData) => {
    console.log("on simStateChange, data:" + JSON.stringify(data));
}
observer.on('simStateChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('simStateChange', callback);
observer.off('simStateChange');

observer.on('iccAccountInfoChange')10+

on(type: 'iccAccountInfoChange', callback: Callback<void>): void;

订阅卡帐户变化事件,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring卡帐户变化事件,参数固定为'iccAccountInfoChange'。
callbackCallback<void>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

observer.on('iccAccountInfoChange', () => {
    console.log("on iccAccountInfoChange success");
});

observer.off('iccAccountInfoChange')10+

off(type: 'iccAccountInfoChange', callback?: Callback<void>): void;

移除订阅卡帐户变化事件,使用callback方式作为异步方法。

说明:

可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。

系统能力:SystemCapability.Telephony.StateRegistry

参数:

参数名类型必填说明
typestring卡帐户变化事件,参数固定为'iccAccountInfoChange'。
callbackCallback<void>回调函数。

错误码:

以下错误码的详细介绍请参见ohos.telephony(电话子系统)错误码

错误码ID错误信息
8300001Invalid parameter value.
8300002Operation failed. Cannot connect to service.
8300003System internal error.
8300999Unknown error code.

示例:

let callback: () => void = () => {
    console.log("on iccAccountInfoChange success");
}
observer.on('iccAccountInfoChange', callback);
// 可以指定传入on中的callback取消一个订阅,也可以不指定callback清空所有订阅。
observer.off('iccAccountInfoChange', callback);
observer.off('iccAccountInfoChange');

LockReason8+

SIM卡锁类型。

系统能力:SystemCapability.Telephony.StateRegistry

名称说明
SIM_NONE0无锁。
SIM_PIN1PIN锁。
SIM_PUK2PUK锁。
SIM_PN_PIN3网络PIN锁。
SIM_PN_PUK4网络PUK锁。
SIM_PU_PIN5子网PIN锁。
SIM_PU_PUK6子网PUK锁。
SIM_PP_PIN7服务提供商PIN锁。
SIM_PP_PUK8服务提供商PUK锁。
SIM_PC_PIN9组织PIN锁。
SIM_PC_PUK10组织PUK锁。
SIM_SIM_PIN11SIM PIN锁。
SIM_SIM_PUK12SIM PUK锁。

SimStateData7+

SIM卡类型和状态。

系统能力:SystemCapability.Telephony.StateRegistry

名称类型必填说明
typeCardTypeSIM卡类型。
stateSimStateSIM卡状态。
reason8+LockReasonSIM卡锁类型。

你可能感兴趣的鸿蒙文章

harmony 鸿蒙接口

harmony 鸿蒙系统公共事件定义(待停用)

harmony 鸿蒙系统公共事件定义

harmony 鸿蒙开发说明

harmony 鸿蒙企业设备管理概述(仅对系统应用开放)

harmony 鸿蒙BundleStatusCallback

harmony 鸿蒙@ohos.bundle.innerBundleManager (innerBundleManager模块)

harmony 鸿蒙@ohos.distributedBundle (分布式包管理)

harmony 鸿蒙@ohos.bundle (Bundle模块)

harmony 鸿蒙@ohos.enterprise.EnterpriseAdminExtensionAbility (企业设备管理扩展能力)

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/a5294cf7662c41789c4cb69d7d1cde9e