通过VPN重定向所有Android通信

时间:2018-11-14 16:21:30

标签: android vpn

我的任务是编写一个可以通过VPN将所有流量重定向到Android的应用程序。据我了解,它可以通过设置包含在android中,但是我需要以编程方式进行。

我学习了VpnServis,据我所知,我可以创建一个可以使用自己创建的Vpn服务的应用程序,也可以使用由此创建的Vpn服务将vpn始终分配给其他应用程序。

但是我想知道是否可以对所有已安装的应用程序执行此操作,如果可能,如何执行此操作。而且还可以在所有已安装的应用程序上的设置中始终分配vpn。谢谢!

1 个答案:

答案 0 :(得分:0)

使用VpnService时,需要使用VpnService.Builder来创建它。调整VpnService.Builder参数时,您需要分配您感兴趣的流量。这可以通过addRoute()方法添加路由来完成。

如果您使用0.0.0.0/0作为路由,则将捕获来自所有应用程序的所有流量。

仅API级别24支持始终开启VPN,因此请确保是否要使用它。您需要另一种方法(例如作业)来以较低的API级别创建此功能。