gpt4 book ai didi

android - 如何使用 VPNService 阻止应用程序网络请求?

转载 作者:太空狗 更新时间:2023-10-29 14:42:45 25 4
gpt4 key购买 nike

希望你们一切都好。

我在我的应用程序中实现了 VPNService。我引用了https://github.com/hexene/LocalVPN用于创建 VPN 的 github 代码。

我想知道请求/响应,

如何知道哪个应用程序发送请求或哪个应用程序使用 VPNService 接收响应。

我想阻止 VPNService 中的某些应用程序请求。

提前致谢。

最佳答案

如果您只需要一个简单的 VpnService 来阻止应用程序流量,而不需要 LocalVPN 提供的处理数据包 tcp/udp header 的额外功能,您可以只使用 ToyVPN ( https://android.googlesource.com/platform/development/+/master/samples/ToyVpn ) 并使用 builder.addAllowedApplication 或构建器。 addDisallowedApplication。

ToyVpnConnection.java:

   for (String packageName : mPackages) {
try {
if (mAllow) {
builder.addAllowedApplication(packageName);
} else {
builder.addDisallowedApplication(packageName);
}
} catch (PackageManager.NameNotFoundException e){
Log.w(getTag(), "Package not available: " + packageName, e);
}
}

但是,如果您需要像使用 LocalVPN 一样对数据包进行低级别访问,那么我不确定该怎么做。如果您发现了,请发布有关完成此操作的任何提示,因为我目前正在尝试自己解决这个问题!

关于android - 如何使用 VPNService 阻止应用程序网络请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45192005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com