HarmonyOS 鸿蒙Next 请求使用VPN的系统弹窗有回调吗?

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 请求使用VPN的系统弹窗有回调吗? 启动VpnExtensionAbility会自动弹窗让用户确认“是否允许使用VPN?”

如果用户选择允许,自定义的VpnExtensionAbility被创建,

但是怎么才能知道用户点了取消?有没有相关的回调?


更多关于HarmonyOS 鸿蒙Next 请求使用VPN的系统弹窗有回调吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

17 回复

module.json5配置MyVpnExtAbility.tes,但是并没有‘vpn’的type类型。请教下需要怎么处理,要升级开发工具还是怎么弄

更多关于HarmonyOS 鸿蒙Next 请求使用VPN的系统弹窗有回调吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


直接修改sdk配置文件,加上vpn这个类型,

![图片]( "")

![图片]( "https://example.com/image.jpg")

找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17

我是去DevEcoStudio的安装目录文件夹里面修改module.json5这个文件新增了vpn类型,
但依然是无法拉起MyVpnExtAbility。是我改的地方不对吗,还是说还有其他地方也要改?

没有了,按说是可以拉起的,可以看下官方demo,

vpn开启成功有小钥匙vpn标识嘛

难道说鸿蒙还没对普通应用开放vpn权限嘛,但我看市场上已经有类型vpn应用可以的,

已经开放了,只是HarmonyOS NEXT连接VPN后不会出现小钥匙图标,

您好,我想问你是在真机上测的么,还是模拟机上测的

  1. 获取用户有没有拒绝授权,需要使用checkAccessToken进行获取,可以参考以下链接:

  2. vpnExtension.startVpnExtensionAbility(want)后边不能加then或者catch,可以使用

try {
    vpnExt.startVpnExtensionAbility(want);
} catch (e) {
    let err = e as BusinessError;
    console.log("error is :", JSON.stringify(err))
}
  1. VPNdemo链接:https://gitee.com/openharmony/applications_app_samples/blob/master/code/BasicFeature/Connectivity/VPN/entry/src/main/ets/pages/StartVpn.ets

补充:虽然startVpnExtensionAbility接口的返回值是Promise<void>

但是实际调用并不能获取到返回值(返回值类型为undefined

使用vpnExtension.startVpnExtensionAbility(want).then().catch() 产生报错

cke_865.png

cke_216.png

你看是不是导错了包,我没有这个问题,但是不知道哪个弹框的允许和取消怎么监听呢?

看我的答复2楼,弹窗的允许和取消由于是系统弹窗无法监听,可通过checkAccessToken获取用户是否允许作进一步逻辑处理,

老哥,话说官方的demo怎么调用这个方法只能拉起授权弹窗,拉不起来ablity啊,都不走他里面的oncreate方法,,

在HarmonyOS系统中,当应用请求使用VPN功能时,系统确实可能会弹出一个权限请求对话框以征得用户的同意。然而,关于这个弹窗是否有特定的回调接口供开发者使用,这通常取决于系统的API设计和权限管理机制。

在HarmonyOS的开发文档中,并未明确提及关于VPN权限请求弹窗的具体回调接口。开发者通常需要遵循系统的权限申请流程,并在权限申请结果回调中处理用户的响应。这通常包括在onRequestPermissionsResult方法(如果适用的话)中检查权限申请的结果。

但请注意,由于HarmonyOS是一个持续演进的操作系统,其API和功能可能会随着版本的更新而发生变化。因此,为了获取最准确的信息,建议直接参考最新的HarmonyOS开发文档或API参考手册。

如果开发者在尝试实现VPN功能时遇到具体问题,或者需要确认某个特定版本的HarmonyOS中是否存在相关的回调接口,建议查阅官方文档或联系鸿蒙开发者社区获取帮助。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部