1、需要root的实现方案:
其原理是在root后的机器使用root权限来配置iptable,利用linux这个自带的防火墙实行流量控制。
例如:
Droidwall:https://github.com/CfYz/droidwall
android_firewall:https://github.com/skullone/android_firewall

2、不需要root的实现方案;
android的vpnservice技术,实现了免root的防火墙,Android提供了VpnService类。这是一个Service的子类。一旦start了该service,它会创建一个类似于应用代理的服务。任何应用外出的包,都会先发给该服务,然后该服务再转发到网络上。于是这个VpnService就成为需要使用网络的应用和网络服务器之间的一个中间人。这就提供了一个机会来控制外出流量。

用途:网络管理、流量管理、网络安全,广告过滤、联网控制、WiFi安全通道等等
例如:
NetGuard:https://github.com/M66B/NetGuard

WIFI连接相关:

https://github.com/rorist/android-network-discovery

https://github.com/mkch/android-wifi-connecter

参考文章:
如何使用Android系统自带的VPN服务框架
Android VPN Service实现免root防火墙

欢迎关注微信公众号:DroidMind
精品内容独家发布平台


呈现与博客不一样的技术干货

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐