快应用 网络状态
接口声明
{"name": "system.network"}
导入模块
import network from '@system.network'
或
const network = require('@system.network')
接口定义
network.getType(OBJECT)
获取网络类型
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
success | Function | 否 | 成功回调 |
fail | Function | 否 | 失败回调,可能是因为缺乏权限 |
complete | Function | 否 | 执行结束后的回调 |
success返回值:
参数名 | 类型 | 说明 |
---|---|---|
metered | Boolean | 是否按照流量计费 |
type | String | 网络类型,可能的值为2g,3g,4g,wifi,none |
示例:
network.getType({
success: function (data) {
console.log(`handling success: ${data.type}`)
}
})
network.subscribe(OBJECT)
监听网络连接状态。如果多次调用,仅最后一次调用生效
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
reserved 1050+ | Boolean | 否 | 是否持久化订阅,默认为 false。机制:设置为 true,页面跳转,不会自动取消订阅,需手动取消订阅 |
callback | Function | 否 | 每次网络发生变化,都会被回调 |
fail | Function | 否 | 失败回调,可能是因为缺乏权限 |
callback返回值:
参数名 | 类型 | 说明 |
---|---|---|
metered | Boolean | 是否按照流量计费 |
type | String | 网络类型,可能的值为2g,3g,4g,wifi,none, 5g, bluetooth, others |
示例:
network.subscribe({
callback: function (data) {
console.log('handling callback')
}
})
network.unsubscribe()
取消监听网络连接状态
参数:
无
示例:
network.unsubscribe()
network.getSimOperators(OBJECT)
获取Sim卡的运营商信息
权限要求
电话权限
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
success | Function | 否 | 成功回调 |
fail | Function | 否 | 失败回调 |
complete | Function | 否 | 执行结束后的回调 |
success 返回值:
参数名 | 类型 | 说明 |
---|---|---|
operators | Array | SIM卡列表信息 |
size | Number | Sim卡数量 |
fail 返回值:
错误码 | 说明 |
---|---|
201 | 用户拒绝,获取电话权限失败 |
1001 | 未插入sim卡 |
1002 | 获取运营商信息失败 |
SIM卡列表项参数:
参数名 | 类型 | 说明 |
---|---|---|
operator | String | 返回Sim卡的运营商信息 运营商信息说明:此处统一返回MCC+MNC,即移动国家代码 + 移动网络代码; 中国移动:46000,46002,46004,46007; 中国联通:46001,46006,46009; 中国电信:46003,46005,46011; 其余MCC+MNC请查看:https://www.mcc-mnc.com/ |
slotIndex | Number | 卡槽序号 |
isDefaultDataOperator | Boolean | 是否为默认数据卡 |
示例:
network.getSimOperator({
success:function (data) {
console.log(`size: ${data.size}`)
for (constiindata.operators) {
console.log(`operator: ${data.operators[i].operator},
slotIndex:${data.operators[i].slotIndex},
isDefaultDataOperator:${data.operators[i].isDefaultDataOperator},`
)
}
},
fail: function (erromsg, errocode) {
console.log('errocode:' + errocode + ', erromsg: ' + erromsg)
}
})
后台运行限制
无限制。后台运行详细用法参见 后台运行脚本。