diff --git a/project/plugins.sbt b/project/plugins.sbt index 5ca86e4f..217b0486 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -1,5 +1,5 @@ resolvers += Resolver.url("scalasbt releases", new URL("http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-snapshots"))(Resolver.ivyStylePatterns) -addSbtPlugin("com.hanhuy.sbt" % "android-sdk-plugin" % "1.5.8") +addSbtPlugin("com.hanhuy.sbt" % "android-sdk-plugin" % "1.5.9") resolvers += "Sonatype snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/" addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.7.0-SNAPSHOT") diff --git a/src/main/res/values-zh/strings.xml b/src/main/res/values-zh/strings.xml index 75a7070a..4b85f2bb 100755 --- a/src/main/res/values-zh/strings.xml +++ b/src/main/res/values-zh/strings.xml @@ -40,6 +40,7 @@ 停止服务 正在关闭…… 后台服务启动失败:%s + VPN 服务启动失败。你可能需要重启设备。 关闭 代理服务器地址不能为空 连接 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index bc12046f..afeb12ab 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -66,6 +66,7 @@ Stop the service Shutting down… %s + Failed to start VPN service. You might need to reboot your device. Close diff --git a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala index 1257cbe0..46a15cf0 100644 --- a/src/main/scala/com/github/shadowsocks/Shadowsocks.scala +++ b/src/main/scala/com/github/shadowsocks/Shadowsocks.scala @@ -337,7 +337,7 @@ class Shadowsocks if (intent != null) { startActivityForResult(intent, Shadowsocks.REQUEST_CONNECT) } else { - onActivityResult(Shadowsocks.REQUEST_CONNECT, Activity.RESULT_OK, null) + handler.post(() => onActivityResult(Shadowsocks.REQUEST_CONNECT, Activity.RESULT_OK, null)) } } else { serviceStart() diff --git a/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala b/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala index 34b76279..7197e3c9 100644 --- a/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala +++ b/src/main/scala/com/github/shadowsocks/ShadowsocksVpnService.scala @@ -442,11 +442,14 @@ class ShadowsocksVpnService extends VpnService with BaseService { try { conn = builder.establish() + if (conn == null) changeState(State.STOPPED, getString(R.string.reboot_required)) } catch { case ex: IllegalStateException => changeState(State.STOPPED, ex.getMessage) conn = null - case ex: Exception => conn = null + case ex: Exception => + ex.printStackTrace() + conn = null } if (conn == null) {