From 4ef3a20929be3139f9f3a9e603d4f72bf2f1966a Mon Sep 17 00:00:00 2001
From: Kr328 <39107975+Kr328@users.noreply.github.com>
Date: Fri, 28 Feb 2020 00:32:49 +0800
Subject: [PATCH] add vpn component detect
---
.../main/java/com/github/kr328/clash/MainActivity.kt | 11 +++++++++--
app/src/main/res/values-zh/strings.xml | 1 +
app/src/main/res/values/strings.xml | 1 +
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/com/github/kr328/clash/MainActivity.kt b/app/src/main/java/com/github/kr328/clash/MainActivity.kt
index fa916f9..9541ceb 100644
--- a/app/src/main/java/com/github/kr328/clash/MainActivity.kt
+++ b/app/src/main/java/com/github/kr328/clash/MainActivity.kt
@@ -35,8 +35,15 @@ class MainActivity : BaseActivity() {
stopClashService()
} else {
val vpnRequest = startClashService()
- if (vpnRequest != null)
- startActivityForResult(vpnRequest, REQUEST_CODE)
+ if (vpnRequest != null) {
+ val resolved = packageManager.resolveActivity(vpnRequest, 0)
+ if ( resolved != null ) {
+ startActivityForResult(vpnRequest, REQUEST_CODE)
+ }
+ else {
+ makeSnackbarException(getString(R.string.missing_vpn_component), null)
+ }
+ }
}
}
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml
index 5336ff9..0b8d6de 100644
--- a/app/src/main/res/values-zh/strings.xml
+++ b/app/src/main/res/values-zh/strings.xml
@@ -130,4 +130,5 @@
了解更多关于分包机制
重新从 Google Play 安装
从 Github Release 下载
+ 系统 VPN 组件缺失
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 0d35d0e..72d7f04 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -172,4 +172,5 @@
https://github.com/Kr328/ClashForAndroid/releases
%s - %s
+ Missing VPN Components