diff --git a/app/src/main/java/io/legado/app/utils/NetworkUtils.kt b/app/src/main/java/io/legado/app/utils/NetworkUtils.kt index cee94904d..477a2e11f 100644 --- a/app/src/main/java/io/legado/app/utils/NetworkUtils.kt +++ b/app/src/main/java/io/legado/app/utils/NetworkUtils.kt @@ -140,7 +140,7 @@ object NetworkUtils { } fun getBaseUrl(url: String?): String? { - if (url == null || !url.startsWith("http")) return null + url ?: return null val index = url.indexOf("/", 9) return if (index == -1) { url @@ -156,14 +156,20 @@ object NetworkUtils { */ fun getSubDomain(url: String): String { val baseUrl = getBaseUrl(url) ?: return url - return kotlin.runCatching { - val mURL = URL(baseUrl) - val host: String = mURL.host - //判断是否为ip - if (isIPAddress(host)) return baseUrl - //PublicSuffixDatabase处理域名 - PublicSuffixDatabase.get().getEffectiveTldPlusOne(host) ?: baseUrl - }.getOrDefault(url) + return if (url.startsWith("http://", true) + || url.startsWith("https://", true) + ) { + kotlin.runCatching { + val mURL = URL(baseUrl) + val host: String = mURL.host + //判断是否为ip + if (isIPAddress(host)) return baseUrl + //PublicSuffixDatabase处理域名 + PublicSuffixDatabase.get().getEffectiveTldPlusOne(host) ?: baseUrl + }.getOrDefault(baseUrl) + } else { + baseUrl + } } /**