HarmonyOS 如何快速判断当前网络的类型?

需要知道用户的卡在哪个卡槽,用户如果有两张卡,我如何知道哪个卡槽的卡是默认网络为蜂窝情况下正在使用的卡

另外,返回值是一个数组,一张卡还会有多个类型吗

阅读 602
1 个回答

1.可以使用 ‘@ohos.telephony.data’ 的能力获取当前使用的数据卡

let sloId = await data.getDefaultCellularDataSlotId()

2.信号的返回值是数组类型,但值只有一个(数组长度为1)

demo如下:

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

async obtnetinfo(){
  // 获取默认移动数据卡卡槽
  let sloId = await data.getDefaultCellularDataSlotId()
  // 获取网络强度信息
  let info = await radio.getSignalInformation(sloId);
  let type = info[0].signalType
}

参考文档

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-radio-V5\#networktype

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-telephony-data-V5\#datagetdefaultcellulardataslotid

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进