android - 检查 VPN 状态已连接或未连接
问题描述
我正在制作一个想要检测 VPN 连接的应用程序。我的问题是我想检测 VPN 连接,如果 VPN 已连接,我不想让用户使用我的应用程序,如果 VPN 关闭,我想允许用户使用我的应用程序。
在问这个问题之前,我阅读了这个文件 VPNService VPNStatus
但我无法得到解决方案。如果有人知道解决方案,请与我分享。
提前致谢
解决方案
这对我有用:从 API 16 到 23 测试:
List<String> networkList = new ArrayList<>();
try {
for (NetworkInterface networkInterface : Collections.list(NetworkInterface.getNetworkInterfaces())) {
if (networkInterface.isUp())
networkList.add(networkInterface.getName());
}
} catch (Exception ex) {
Timber.d("isVpnUsing Network List didn't received");
}
return networkList.contains("tun0");
推荐阅读
- javascript - 如何在不声明的情况下使用新数组扩展数组
- linux - 用 pwd 和 awk 理解 shell 中的美元
- angular - Angular Subcribe - 类型 'Subscription' 缺少来自类型 'ToDo[]' 的以下属性:length、pop、push、concat 和另外 26 个
- html - 为移动设备调整页脚大小
- url-parameters - 如何在谷歌数据工作室中使用单个 url 参数进行多个查询?
- chronicle - 失败后如何恢复写入队列
- android - 如何从 Kotlin 的数据类中更改特定变量?
- javascript - 如何将脚本存储在字符串中?
- node.js - AWS Lambda 节点 - 中断后重新启动
- xaml - 检查最后一个列表项是否等于长度 Xamarin Forms 绑定