【问题标题】:Check if a VPN connection is active in Android and show a message? [duplicate]检查 Android 中的 VPN 连接是否处于活动状态并显示消息? [复制]
【发布时间】:2019-01-29 13:58:53
【问题描述】:

我在我的无根 Android 4.4 设备上安装了第三方 VPN 应用,并且想编写一个后台服务来监控 VPN 连接并在 VPN 连接开启时提醒用户。

【问题讨论】:

    标签: android vpn android-vpn-service


    【解决方案1】:

    检查一下:

    public static boolean isVpnConnectionActive(){
        List<String> networks = new ArrayList<>();
    
        try {
            for (NetworkInterface networkInterface : Collections.list(NetworkInterface.getNetworkInterfaces())) {
                if (networkInterface.isUp()){
                    networks.add(networkInterface.getName());
                }
            }
        } catch (Exception ignored) {
        }
    
        return networks.contains("tun") || networks.contains("ppp") || networks.contains("pptp");
    }
    

    【讨论】:

    • 我如何确定“tun0”?可以是“tun1 or 2 or 3”吗?
    • @WasiSadman 不,它始终是tun0,但您可以使用tun 而不是tun0 来检查所有可能的情况。我会更新答案。
    • 我为我的应用找到了tun1
    猜你喜欢
    • 2015-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-08
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 2019-12-10
    相关资源
    最近更新 更多