@ohos.telephony.data (蜂窝数据)


@ohos.telephony.data (蜂窝数据)

蜂窝数据提供了移动数据管理能力,包括获取、设置默认移动数据的SIM卡,获取蜂窝数据业务的上下行和分组交换域(PS域)的连接状态,以及检查蜂窝数据业务和漫游是否启用等。

说明:

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

导入模块

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

data.getDefaultCellularDataSlotId

getDefaultCellularDataSlotId(callback: AsyncCallback<number>): void

获取默认移动数据的SIM卡,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<number> 回调函数。
0:卡槽1。
1:卡槽2。

示例:

data.getDefaultCellularDataSlotId((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.getDefaultCellularDataSlotId

getDefaultCellularDataSlotId(): Promise<number>

获取默认移动数据的SIM卡,使用Promise方式作为异步方法。

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<number> 以Promise形式返回获取默认移动数据的SIM卡。
0:卡槽1。
1:卡槽2。

示例:

let promise = data.getDefaultCellularDataSlotId();
promise.then((data) => {
    console.log(`getDefaultCellularDataSlotId success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`getDefaultCellularDataSlotId fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.getDefaultCellularDataSlotIdSync9+

getDefaultCellularDataSlotIdSync(): number

获取默认移动数据的SIM卡

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
number 获取默认移动数据的SIM卡。
0:卡槽1。
1:卡槽2。

示例:

console.log("Result: "+ data.getDefaultCellularDataSlotIdSync())
1

data.setDefaultCellularDataSlotId

setDefaultCellularDataSlotId(slotId: number, callback: AsyncCallback<void>): void

设置默认移动数据的SIM卡,使用callback方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number SIM卡槽ID。
- 0:卡槽1。
- 1:卡槽2。
- -1:清除默认配置。
callback AsyncCallback<void> 回调函数。

示例:

data.setDefaultCellularDataSlotId(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.setDefaultCellularDataSlotId

setDefaultCellularDataSlotId(slotId: number): Promise<void>

设置默认移动数据的SIM卡,使用Promise方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number SIM卡槽ID。
- 0:卡槽1。
- 1:卡槽2。
- -1:清除默认配置。

返回值:

类型 说明
Promise<void> 以Promise形式异步返回设置结果。

示例:

let promise = data.setDefaultCellularDataSlotId(0);
promise.then((data) => {
    console.log(`setDefaultCellularDataSlotId success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`setDefaultCellularDataSlotId fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.getCellularDataFlowType

getCellularDataFlowType(callback: AsyncCallback<DataFlowType>): void

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

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<DataFlowType> 回调函数。

示例:

data.getCellularDataFlowType((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.getCellularDataFlowType

getCellularDataFlowType(): Promise<DataFlowType>

获取蜂窝数据业务的上下行状态,使用Promise方式作为异步方法。

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<DataFlowType> 以Promise形式返回获取蜂窝数据业务的上下行状态。

示例:

let promise = data.getCellularDataFlowType();
promise.then((data) => {
    console.log(`test success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.getCellularDataState

getCellularDataState(callback: AsyncCallback<DataConnectState>): void

获取分组交换域(PS域)的连接状态,使用callback方式作为异步方法。

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<DataConnectState> 回调函数。

示例:

data.getCellularDataState((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.getCellularDataState

getCellularDataState(): Promise<DataConnectState>

获取分组交换域(PS域)的连接状态,使用Promise方式作为异步方法。

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<DataConnectState> 以Promise形式返回获取PS域的连接状态。

示例:

let promise = data.getCellularDataState();
promise.then((data) => {
    console.log(`test success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.isCellularDataEnabled

isCellularDataEnabled(callback: AsyncCallback<boolean>): void

检查蜂窝数据业务是否启用,使用callback方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<boolean> 回调函数。
true:蜂窝数据业务已启用。
false:蜂窝数据业务已禁用。

示例:

data.isCellularDataEnabled((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.isCellularDataEnabled

isCellularDataEnabled(): Promise<boolean>

检查蜂窝数据业务是否启用,使用Promise方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<boolean> 以Promise形式返回检查蜂窝数据业务是否启用。
true:蜂窝数据业务已启用。
false:蜂窝数据业务已禁用。

示例:

let promise = data.isCellularDataEnabled();
promise.then((data) => {
    console.log(`test success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.isCellularDataRoamingEnabled

isCellularDataRoamingEnabled(slotId: number, callback: AsyncCallback<boolean>): void

检查蜂窝数据业务是否启用漫游,使用callback方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。
callback AsyncCallback<boolean> 回调函数。
true:蜂窝数据业务已启用漫游。
false:蜂窝数据业务已禁用漫游。

示例:

data.isCellularDataRoamingEnabled(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.isCellularDataRoamingEnabled

isCellularDataRoamingEnabled(slotId: number): Promise<boolean>

检查蜂窝数据业务是否启用漫游,使用Promise方式作为异步方法。

需要权限:ohos.permission.GET_NETWORK_INFO

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回检查蜂窝数据业务是否启用漫游。
true:蜂窝数据业务已启用漫游。
false:蜂窝数据业务已禁用漫游。

示例:

let promise = data.isCellularDataRoamingEnabled(0);
promise.then((data) => {
    console.log(`test success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`test fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.enableCellularData

enableCellularData(callback: AsyncCallback<void>): void

启用蜂窝数据服务,使用callback方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 回调函数。

示例:

data.enableCellularData((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.enableCellularData

enableCellularData(): Promise<void>

启用蜂窝数据服务,使用Promise方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<void> 以Promise形式返回结果。

示例:

let promise = data.enableCellularData();
promise.then((data) => {
    console.log(`enableCellularData success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`enableCellularData fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.disableCellularData

disableCellularData(callback: AsyncCallback<void>): void

禁用蜂窝数据服务,使用callback方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 回调函数。

示例:

data.disableCellularData((err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.disableCellularData

disableCellularData(): Promise<void>

禁用蜂窝数据服务,使用Promise方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

返回值:

类型 说明
Promise<void> 以Promise形式返回禁用结果。

示例:

let promise = data.disableCellularData();
promise.then((data) => {
    console.log(`disableCellularData success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`disableCellularData fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.enableCellularDataRoaming

enableCellularDataRoaming(slotId: number, callback: AsyncCallback<void>): void

启用蜂窝数据漫游,使用callback方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。
callback AsyncCallback<void> 回调函数。

示例:

data.enableCellularDataRoaming(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.enableCellularDataRoaming

enableCellularDataRoaming(slotId: number): Promise<void>

启用蜂窝数据漫游,使用Promise方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。

返回值:

类型 说明
Promise<void> 以Promise形式返回启用结果

示例:

let promise = data.enableCellularDataRoaming(0);
promise.then((data) => {
    console.log(`enableCellularDataRoaming success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`enableCellularDataRoaming fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

data.disableCellularDataRoaming

disableCellularDataRoaming(slotId: number, callback: AsyncCallback<void>): void

禁用蜂窝数据漫游,使用callback方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。
callback AsyncCallback<void> 回调函数。

示例:

data.disableCellularDataRoaming(0, (err, data) => {
    console.log(`callback: err->${JSON.stringify(err)}, data->${JSON.stringify(data)}`);
});
1
2
3

data.disableCellularDataRoaming

disableCellularDataRoaming(slotId: number): Promise<void>

禁用蜂窝数据漫游,使用Promise方式作为异步方法。

此接口为系统接口。

需要权限:ohos.permission.SET_TELEPHONY_STATE

系统能力:SystemCapability.Telephony.CellularData

参数:

参数名 类型 必填 说明
slotId number 卡槽ID。
0:卡槽1。
1:卡槽2。

返回值:

类型 说明
Promise<void> 以Promise形式返回禁用结果

示例:

let promise = data.disableCellularDataRoaming(0);
promise.then((data) => {
    console.log(`disableCellularDataRoaming success, promise: data->${JSON.stringify(data)}`);
}).catch((err) => {
    console.error(`disableCellularDataRoaming fail, promise: err->${JSON.stringify(err)}`);
});
1
2
3
4
5
6

DataFlowType

描述蜂窝数据流类型。

系统能力:以下各项对应的系统能力均为SystemCapability.Telephony.CellularData。

名称 说明
DATA_FLOW_TYPE_NONE 0 表示没有上行或下行数据。
DATA_FLOW_TYPE_DOWN 1 表示只有下行数据。
DATA_FLOW_TYPE_UP 2 表示只有上行数据。
DATA_FLOW_TYPE_UP_DOWN 3 表示有上下行数据。
DATA_FLOW_TYPE_DORMANT 4 表示没有上下行数据,底层链路处于休眠状态。

DataConnectState

描述蜂窝数据链路连接状态。

系统能力:以下各项对应的系统能力均为SystemCapability.Telephony.CellularData。

名称 说明
DATA_STATE_UNKNOWN -1 表示蜂窝数据链路未知。
DATA_STATE_DISCONNECTED 0 表示蜂窝数据链路断开。
DATA_STATE_CONNECTING 1 表示正在连接蜂窝数据链路。
DATA_STATE_CONNECTED 2 表示蜂窝数据链路已连接。
DATA_STATE_SUSPENDED 3 表示蜂窝数据链路被挂起。