HarmonyOS connection.getAllNetsSync\(\)在明确已经声明权限的情况下提示权限拒绝?

在项目中需要使用connection.getAllNetsSync()判断当前可用网络,已经在Entry的module.json5中声明了权限ohos.permission.GET\_NETWORK\_INFO,但是仍然抛出异常201 - Permission denied

"name": "ohos.permission.GET_NETWORK_INFO",
"reason": "$string:reason",
"usedScene": {
  "abilities": [
  "EntryFormAbility"
  ],
  "when": "inuse"
}
/**
 * 判断当前是否存在可用网络
 * netId:
 *  101 - wifi
 *  102 - 蜂窝网
 * @returns
 */
public  isNetworkEnable(): boolean {
  try {
    let nets = connection.getAllNetsSync();
    return nets !== undefined && nets.length > 0;
  } catch (e) {
    Log.error('isNetworkEnable error ' + JSON.stringify(e))
    return false;
  }
}
阅读 454
1 个回答

可以正常获取的,请将修改"abilities": ["EntryFormAbility"],为"abilities": ["EntryAbility"],后重试。

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