KagayamaKaede / ShadowsocksRDroid

A ShadowsocksR client for Android4.0+.Compatible Shadowsocks protocol and support some ShadowsocksR function.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于vpnservice的bug

yantaodehaoma opened this issue · comments

你好,好久没见更新了哈。
不知道有没有人注意到,不关闭vpn的情况下重装app,数据是不通的,必须重启手机,貌似daemon进程未关闭,本地端口被占用。
不关闭vpn的情况下卸载掉app,vpn连接一直在,似乎daemon进程也一直在跑,网络不通,只能重启手机才能关闭。
这个不知道有什么好的解决方案????

最近在研究纯Java的SS实现,libev版本的我暂无能力维护,为了尽快实现SSR,我就从Java入手了。

用的是最新版本吗(V1.0.7 Beta)?用原版有没有这个问题?

启动VPN前,所有daemon进程我都会清理掉。重装App理论系统是会掐掉App已有的虚拟机进程(主进程,VPN进程)的。

重装App,启动vpn,业务不通,但是若更换local port重装,则没问题。

重装App理论系统是会掐掉App已有的虚拟机进程(主进程,VPN进程)的。

主进程,VPN进程确实都掐掉了,但是daemon进程应该没有,你启动vpn前清理deamon时,怎么获取卸载前的pid呢?

重装不会清除/data/data//下的文件(daemon进程的PID通过pid file存储在该文件夹下),不过如果你会的话,可以通过终端查看是不是真的没有kill掉(ps | grep com.proxy.shadowsocksr)。我这边没法重现问题。

刚刚试了一下。tun2socks会多起一个进程,ss-local好像起不来:
重装后打开vpn:
shell@hwC8817D:/ $ ps | grep com.proxy.shadowsocksr
u0_a261 13588 1 1484 332 ffffffff 00000000 S /data/data/com.proxy.shadowsocksr/ss-local
u0_a261 13800 1 1220 304 ffffffff 00000000 S /data/data/com.proxy.shadowsocksr/tun2socks
u0_a262 14592 258 565956 41236 ffffffff 00000000 S com.proxy.shadowsocksr
u0_a262 14630 258 526196 22840 ffffffff 00000000 S com.proxy.shadowsocksr:vpn
u0_a262 17449 1 1064 112 ffffffff 00000000 S /data/data/com.proxy.shadowsocksr/tun2socks
关闭vpn:
shell@hwC8817D:/ $ ps | grep com.proxy.shadowsocksr
u0_a261 13588 1 1484 504 ffffffff 00000000 S /data/data/com.proxy.shadowsocksr/ss-local
u0_a261 13800 1 1220 304 ffffffff 00000000 S /data/data/com.proxy.shadowsocksr/tun2socks
u0_a262 14592 258 566636 43900 ffffffff 00000000 S com.proxy.shadowsocksr
u0_a262 14630 258 529704 25716 ffffffff 00000000 S com.proxy.shadowsocksr:vpn

感谢反馈,我找时间修复

嗯,reinstall UID发生了改变,导致kill失败。

@yantaodehaoma, 我移除了所有shadowsocks的c实现,换用java实现了shadowsocks以及部分ssr插件。但是tun2socks和pdnsd仍然使用daemon. 有时间你可以测试下

不关闭vpn的情况下重装app,数据是不通的,必须重启手机,貌似daemon进程未关闭,本地端口被占用。
不关闭vpn的情况下卸载掉app,vpn连接一直在,似乎daemon进程也一直在跑,网络不通,只能重启手机才能关闭。

问题是否依然存在。(可能需要清空数据,否则可能会无限崩溃)