diff --git a/src/main/res/values-zh/strings.xml b/src/main/res/values-zh/strings.xml index f1690588..89d01881 100755 --- a/src/main/res/values-zh/strings.xml +++ b/src/main/res/values-zh/strings.xml @@ -46,7 +46,7 @@ 后台服务已停止。 无法连接远程服务器 停止服务 - 正在关闭影梭 + 正在关闭... 后台服务启动失败:\"%s\"。 确定 端口号应大于1024 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 05536625..fb8bb57b 100755 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -57,7 +57,7 @@ Shadowsocks stopped. Failed to connect the remote server Stop the service - Shutting down Shadowsocks + Shutting down... Error: \"%s\". diff --git a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala index 016b0e70..a542ec30 100644 --- a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala +++ b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala @@ -340,7 +340,7 @@ class Shadowsocks Process.killProcess(pid_nat) Process.killProcess(pid_vpn) } catch { - case e: Throwable => Log.e(Shadowsocks.TAG, "unable to kill " + task, e) + case e: Throwable => Log.e(Shadowsocks.TAG, "unable to kill " + task) } cmd.append("rm -f %s%s-nat.pid".format(Path.BASE, task)) cmd.append("rm -f %s%s-nat.conf".format(Path.BASE, task)) @@ -1006,6 +1006,11 @@ class Shadowsocks .show() } setPreferenceEnabled(enabled = true) + case State.STOPPING => + if (progressDialog == null) { + progressDialog = ProgressDialog + .show(Shadowsocks.this, "", getString(R.string.stopping), true, true) + } } } } diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala index 86730640..2c39505f 100644 --- a/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala +++ b/src/main/scala/com/github/shadowsocks/ShadowsocksNatService.scala @@ -354,7 +354,7 @@ class ShadowsocksNatService extends Service with BaseService { cmd.append("kill -9 %d".format(pid)) Process.killProcess(pid) } catch { - case e: Throwable => Log.e(TAG, "unable to kill " + task, e) + case e: Throwable => Log.e(TAG, "unable to kill " + task) } cmd.append("rm -f %s%s-nat.pid".format(Path.BASE, task)) cmd.append("rm -f %s%s-nat.conf".format(Path.BASE, task)) diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala index 572dc701..0c512bde 100644 --- a/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala +++ b/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala @@ -368,7 +368,7 @@ class ShadowsocksVpnService extends VpnService with BaseService { val pid = scala.io.Source.fromFile(Path.BASE + task + "-vpn.pid").mkString.trim.toInt Process.killProcess(pid) } catch { - case e: Throwable => Log.e(TAG, "unable to kill " + task, e) + case e: Throwable => Log.e(TAG, "unable to kill " + task) } } } diff --git a/src/main/scala/com/github/shadowsocks/utils/Utils.scala b/src/main/scala/com/github/shadowsocks/utils/Utils.scala index f0f4b102..a9e78647 100644 --- a/src/main/scala/com/github/shadowsocks/utils/Utils.scala +++ b/src/main/scala/com/github/shadowsocks/utils/Utils.scala @@ -69,7 +69,7 @@ object Utils { val DEFAULT_ROOT: String = "/system/bin/su" val ALTERNATIVE_ROOT: String = "/system/xbin/su" val DEFAULT_IPTABLES: String = "/system/bin/iptables" - val ALTERNATIVE_IPTABLES: String = "/data/data/com.github.shadowsocks/iptables" + val ALTERNATIVE_IPTABLES: String = "iptables" val TIME_OUT: Int = -99 var initialized: Boolean = false var hasRedirectSupport: Int = -1