我已经使用 android 编写了一个 VPN VPNService
,它运行良好。当我运行它时,它会创建一个前台服务并通过我的 VPN 服务器发送所有流量。它还具有内部重新连接机制,如果它因任何原因断开连接而不停止服务本身,则可以重新连接 VPN 服务器。
我喜欢让这个 VPN 服务一直工作。但我的问题是,这个 VPN 服务在完全随机的一段时间后偶尔会停止(有时只需要 10 分钟,但有时它会在停止前工作 2-3 天)。
由于停止时间是完全随机的,而且我在代码中找不到任何会造成这种情况的地方(我已经调试了好几个星期),我想也许 android OS 本身会VPNService
因为某种原因停止我的工作。我想知道是否有办法检测系统是否从外部停止了我的服务。任何想法?