From b02c03a0925b3117b00b4ae1d1304af423ee16a9 Mon Sep 17 00:00:00 2001 From: pppscn <35696959@qq.com> Date: Wed, 20 Mar 2024 10:00:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=9A=E6=94=BE=E5=AE=BD`U?= =?UTF-8?q?rl`=E5=92=8C`UrlScheme`=E7=9A=84=E6=AD=A3=E5=88=99=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E9=99=90=E5=88=B6=20#431?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../idormy/sms/forwarder/utils/CommonUtils.kt | 33 ++++++++----------- 1 file changed, 13 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt b/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt index 2ed01cc0..e1e48394 100644 --- a/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt +++ b/app/src/main/java/com/idormy/sms/forwarder/utils/CommonUtils.kt @@ -226,31 +226,19 @@ class CommonUtils private constructor() { } //是否合法的url - fun checkUrl(urls: String?): Boolean { - return checkUrl(urls, false) - } + fun checkUrl(url: String?, emptyResult: Boolean = false): Boolean { + if (url.isNullOrEmpty()) return emptyResult - //是否合法的url - fun checkUrl(urls: String?, emptyResult: Boolean): Boolean { - if (TextUtils.isEmpty(urls)) return emptyResult - val regex = """^(https?://)?(?:www\.)?(?:\[[a-fA-F0-9:]+\]|[a-zA-Z0-9-]+\.?)(?::\d{1,5})?(?:[-a-zA-Z0-9()@:%_\+.~#?&/=\[\]]*)?${'$'}""" - val pat = Pattern.compile(regex) - val mat = pat.matcher(urls?.trim() ?: "") - return mat.matches() + val regex = Regex("^https?://\\S+\$") + return regex.matches(url) } //是否合法的URL Scheme - fun checkUrlScheme(urls: String?): Boolean { - return checkUrlScheme(urls, false) - } + fun checkUrlScheme(url: String?, emptyResult: Boolean = false): Boolean { + if (url.isNullOrEmpty()) return emptyResult - //是否合法的URL Scheme - fun checkUrlScheme(urls: String?, emptyResult: Boolean): Boolean { - if (TextUtils.isEmpty(urls)) return emptyResult - val regex = "^[a-zA-Z\\d]+://[-a-zA-Z\\d+&@#/%?=~_|!:,.;\\[\\]]*[-a-zA-Z\\d+&@#/%=~_|\\[\\]]" - val pat = Pattern.compile(regex) - val mat = pat.matcher(urls?.trim() ?: "") - return mat.matches() + val regex = Regex("^[a-zA-Z\\d]+://\\S+\$") + return regex.matches(url) } //是否合法的IP地址 @@ -282,6 +270,11 @@ class CommonUtils private constructor() { return pattenPort.matcher(port).matches() } + fun checkEmail(email: String): Boolean { + val emailRegex = Regex("^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Z|a-z]{2,}\$") + return emailRegex.matches(email) + } + //是否启用通知监听服务 fun isNotificationListenerServiceEnabled(context: Context): Boolean { val packageNames = NotificationManagerCompat.getEnabledListenerPackages(context)