通过WiFi-Hotspot连接时禁用共享互联网?

时间:2015-04-22 07:42:36

标签: android wifi android-wifi wifimanager tethering

我正在构建一个Android-app,其中两个用户通过WiFi-Hotspot连接。我以编程方式创建连接。假设用户A创建WiFi热点,用户B连接到此热点。现在我使用socket让他们互相聊天。但是,如果用户A的数据连接为ON,则用户B可以通过其他应用程序使用此数据,这可能导致A受损。因此,我想要一种方法来禁止用户B使用用户A的互联网,即通过热点连接它们但不共享互联网。

我已经查看了隐藏方法getTetherableIfaces并且在Connection Manager中没有使用它,但不知怎的,它不起作用。以下是我如何使用它们:

ConnectivityManager cman = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
Method[] methods = cman.getClass().getMethods();
for (Method method : methods) {
            if (method.getName().equals("getTetherableIfaces")) {
                try {
                    interfaces = (String[]) method.invoke(cman);
                }catch (Exception e) {
                    e.printStackTrace();
                }
            }

        }



for (Method method : methods) {
            if (method.getName().equals("untether")) {
                try {
                    for(int i=0;i<interfaces.length;i++)
                    {
                        method.invoke(cman,interfaces[i]);
                    }
                }catch (Exception e) {
                    e.printStackTrace();
                }
            }

        }

PS:我已经研究过Android防火墙应用,但有些使用root用户和其他使用VPN,这在我的情况下是不可能的。

0 个答案:

没有答案