observer
說明:
開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點(diǎn)擊或者復(fù)制轉(zhuǎn)到。
本模塊首批接口從API version 6開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。
導(dǎo)入模塊
import observer from '@ohos.telephony.observer'
observer.on('networkStateChange')
on(type: 'networkStateChange', callback: Callback): void;
訂閱網(wǎng)絡(luò)狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.GET_NETWORK_INFO
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 網(wǎng)絡(luò)狀態(tài)變化事件 |
callback | Callback<[NetworkState]> | 是 | 回調(diào)函數(shù)。參考radio的[NetworkState] |
示例:
observer.on('networkStateChange', data = >{
console.log("on networkStateChange, data:" + JSON.stringify(data));
});
observer.on('networkStateChange')
on(type: 'networkStateChange', options: { slotId: number }, callback: Callback): void;
訂閱指定卡槽位的網(wǎng)絡(luò)狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.GET_NETWORK_INFO
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 網(wǎng)絡(luò)狀態(tài)變化事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback<[NetworkState]> | 是 | 回調(diào)函數(shù)。參考radio的[NetworkState] |
示例:
observer.on('networkStateChange', {slotId: 0}, data = >{
console.log("on networkStateChange, data:" + JSON.stringify(data));
});
observer.off('networkStateChange')
off(type: 'networkStateChange', callback?: Callback): void;
取消訂閱網(wǎng)絡(luò)狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.GET_NETWORK_INFO
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 網(wǎng)絡(luò)狀態(tài)變化事件 |
callback | Callback<[NetworkState]> | 否 | 回調(diào)函數(shù)。參考radio的[NetworkState] |
示例:
let callback = data = > {
console.log("on networkStateChange, data:" + JSON.stringify(data));
}
observer.on('networkStateChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('networkStateChange', callback);
observer.off('networkStateChange');
observer.on('signalInfoChange')
on(type: 'signalInfoChange', callback: Callback>): void;
訂閱信號(hào)狀態(tài)變化事件,使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 信號(hào)狀態(tài)變化事件 |
callback | Callback> | 是 | 回調(diào)函數(shù)。參考radio的[SignalInformation] |
示例:
observer.on('signalInfoChange', data = >{
console.log("on signalInfoChange, data:" + JSON.stringify(data));
});
observer.on('signalInfoChange')
on(type: 'signalInfoChange', options: { slotId: number }, callback: Callback>): void;
訂閱指定卡槽位的信號(hào)狀態(tài)變化事件,使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 信號(hào)狀態(tài)變化事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback> | 是 | 回調(diào)函數(shù)。參考radio的[SignalInformation] |
示例:
observer.on('signalInfoChange', {slotId: 0}, data = >{
console.log("on signalInfoChange, data:" + JSON.stringify(data));
});
observer.off('signalInfoChange')
off(type: 'signalInfoChange', callback?: Callback>): void;
取消訂閱信號(hào)狀態(tài)變化事件,使用callback方式作為異步方法。
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 信號(hào)狀態(tài)變化事件 |
callback | Callback> | 否 | 回調(diào)函數(shù)。參考radio的[SignalInformation] |
示例:
let callback = data = > {
console.log("on signalInfoChange, data:" + JSON.stringify(data));
}
observer.on('signalInfoChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('signalInfoChange', callback);
observer.off('signalInfoChange');
observer.on('callStateChange')
on(type: 'callStateChange', callback: Callback<{ state: CallState, number: string }>): void;
訂閱通話狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.READ_CALL_LOG
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 通話狀態(tài)變化事件 |
callback | Callback<{ state: [CallState], number: string }> | 是 | 回調(diào)函數(shù),參考call的[CallState] number:電話號(hào)碼 |
示例:
observer.on('callStateChange', 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;
訂閱通話狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.READ_CALL_LOG
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 通話狀態(tài)變化事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback<{ state: [CallState], number: string }> | 是 | 回調(diào)函數(shù),參考call的[CallState] number:電話號(hào)碼 |
示例:
observer.on('callStateChange', {slotId: 0}, value = >{
console.log("on callStateChange, state:" + value.state + ", number:" + value.number);
});
observer.off('callStateChange')
off(type: 'callStateChange', callback?: Callback<{ state: CallState, number: string }>): void;
取消訂閱通話狀態(tài)變化事件,使用callback方式作為異步方法。
需要權(quán)限 :ohos.permission.READ_CALL_LOG
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 通話狀態(tài)變化事件 |
callback | Callback<{ state: [CallState], number: string }> | 否 | 回調(diào)函數(shù),參考call的[CallState] number:電話號(hào)碼 |
示例:
let callback = value = > {
console.log("on callStateChange, state:" + value.state + ", number:" + value.number);
}
observer.on('callStateChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('callStateChange', callback);
observer.off('callStateChange');
observer.on('cellularDataConnectionStateChange')7+
on(type: 'cellularDataConnectionStateChange', callback: Callback<{ state: DataConnectState, network: RatType}>): void;
訂閱蜂窩數(shù)據(jù)鏈路連接狀態(tài),使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)鏈路連接狀態(tài)事件 |
callback | Callback<{ state: [DataConnectState], network: [RatType]}> | 是 | 回調(diào)函數(shù),參考data的[DataConnectState],radio的[RadioTechnology]。 |
示例:
observer.on('cellularDataConnectionStateChange', 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;
訂閱指定卡槽位的蜂窩數(shù)據(jù)鏈路連接狀態(tài),使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)鏈路連接狀態(tài)事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback<{ state: [DataConnectState], network: [RatType] }> | 是 | 回調(diào)函數(shù),參考data的[DataConnectState],radio的[RadioTechnology] |
示例:
observer.on('cellularDataConnectionStateChange', {slotId: 0}, 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;
移除訂閱蜂窩數(shù)據(jù)鏈路連接狀態(tài),使用callback方式作為異步方法。
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)鏈路連接狀態(tài)事件 |
callback | Callback<{ state: [DataConnectState], network: [RatType] }> | 否 | 回調(diào)函數(shù),參考data的[DataConnectState],radio的[RadioTechnology]。 |
示例:
let callback = value = > {
console.log("on cellularDataConnectionStateChange, state:" + value.state + ", network:" + value.network);
}
observer.on('cellularDataConnectionStateChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('cellularDataConnectionStateChange', callback);
observer.off('cellularDataConnectionStateChange');
observer.on('cellularDataFlowChange')7+
on(type: 'cellularDataFlowChange', callback: Callback): void;
訂閱蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài),使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài)狀態(tài)事件 |
callback | Callback<[DataFlowType]> | 是 | 回調(diào)函數(shù),參考data的[DataFlowType]。 |
示例:
observer.on('cellularDataFlowChange', data = >{
console.log("on networkStateChange, data:" + JSON.stringify(data));
});
observer.on('cellularDataFlowChange')7+
on(type: 'cellularDataFlowChange', options: { slotId: number }, callback: Callback): void;
訂閱指定卡槽位的蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài),使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài)事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback<[DataFlowType]> | 是 | 回調(diào)函數(shù),參考data的[DataFlowType]。 |
示例:
observer.on('cellularDataFlowChange', {slotId: 0}, data = >{
console.log("on cellularDataFlowChange, data:" + JSON.stringify(data));
});
observer.off('cellularDataFlowChange')7+
off(type: 'cellularDataFlowChange', callback?: Callback): void;
移除訂閱蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài),使用callback方式作為異步方法。
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 蜂窩數(shù)據(jù)業(yè)務(wù)的上下行數(shù)據(jù)流狀態(tài)事件 |
callback | Callback<[DataFlowType]> | 否 | 回調(diào)函數(shù),參考data的[DataFlowType]。 |
示例:
let callback = data = > {
console.log("on cellularDataFlowChange, data:" + JSON.stringify(data));
}
observer.on('cellularDataFlowChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('cellularDataFlowChange', callback);
observer.off('cellularDataFlowChange');
observer.on('simStateChange')7+
on(type: 'simStateChange', callback: Callback): void;
訂閱sim狀態(tài)更改事件,使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | sim狀態(tài)更改事件 |
callback | Callback<[SimStateData]> | 是 | 回調(diào)函數(shù)。 |
示例:
observer.on('simStateChange', data = >{
console.log("on simStateChange, data:" + JSON.stringify(data));
});
observer.on('simStateChange')7+
on(type: 'simStateChange', options: { slotId: number }, callback: Callback): void;
訂閱指定卡槽位的sim狀態(tài)更改事件,使用callback方式作為異步方法。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | sim狀態(tài)更改事件 |
slotId | number | 是 | 卡槽ID。 - 0:卡槽1 - 1:卡槽2 |
callback | Callback<[SimStateData]> | 是 | 回調(diào)函數(shù)。 |
示例:
observer.on('simStateChange', {slotId: 0}, data = >{
console.log("on simStateChange, data:" + JSON.stringify(data));
});
observer.off('simStateChange')7+
off(type: 'simStateChange', callback?: Callback): void;
移除訂閱sim狀態(tài)更改事件,使用callback方式作為異步方法。
說明:
可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
系統(tǒng)能力 :SystemCapability.Telephony.StateRegistry
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | sim狀態(tài)更改事件 |
callback | Callback<[SimStateData]> | 否 | 回調(diào)函數(shù)。 |
示例:
let callback = data = > {
console.log("on simStateChange, data:" + JSON.stringify(data));
}
observer.on('simStateChange', callback);
// 可以指定傳入on中的callback取消一個(gè)訂閱,也可以不指定callback清空所有訂閱。
observer.off('simStateChange', callback);
observer.off('simStateChange');
LockReason8+
SIM卡鎖類型。
系統(tǒng)能力 :以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Telephony.StateRegistry。
名稱 | 值 | 說明 |
---|---|---|
SIM_NONE | 0 | 無鎖。 |
SIM_PIN | 1 | PIN鎖。 |
SIM_PUK | 2 | PUK鎖。 |
SIM_PN_PIN | 3 | 網(wǎng)絡(luò)PIN鎖。 |
SIM_PN_PUK | 4 | 網(wǎng)絡(luò)PUK鎖。 |
SIM_PU_PIN | 5 | 子網(wǎng)PIN鎖。 |
SIM_PU_PUK | 6 | 子網(wǎng)PUK鎖。 |
SIM_PP_PIN | 7 | 服務(wù)提供商PIN鎖。 |
SIM_PP_PUK | 8 | 服務(wù)提供商PUK鎖。 |
SIM_PC_PIN | 9 | 組織PIN鎖。 |
SIM_PC_PUK | 10 | 組織PUK鎖。 |
SIM_SIM_PIN | 11 | SIM PIN鎖。 |
SIM_SIM_PUK | 12 | SIM PUK鎖。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
SimStateData7+
SIM卡類型和狀態(tài)。
系統(tǒng)能力 :以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Telephony.StateRegistry。
名稱 | 類型 | 說明 |
---|---|---|
type | [CardType] | SIM卡類型,參考sim的[CardType] |
state | [SimState] | SIM卡狀態(tài),參考sim的[SimState] |
reason8+ | [LockReason] | SIM卡鎖類型。 |
-
API
+關(guān)注
關(guān)注
2文章
1503瀏覽量
62133 -
電話
+關(guān)注
關(guān)注
0文章
135瀏覽量
25828 -
鴻蒙
+關(guān)注
關(guān)注
57文章
2365瀏覽量
42893
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論