From d447adc97fc24472e4d32213c7f1490b72698785 Mon Sep 17 00:00:00 2001 From: 2dust <31833384+2dust@users.noreply.github.com> Date: Sun, 11 May 2025 18:07:26 +0800 Subject: [PATCH] Fix https://github.com/2dust/v2rayN/discussions/7268 --- V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt | 2 +- V2rayNG/app/src/main/java/com/v2ray/ang/dto/IPAPIInfo.kt | 9 +++++---- .../main/java/com/v2ray/ang/handler/SpeedtestManager.kt | 7 +++++-- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt index 649b71c1..9e1b7918 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/AppConfig.kt @@ -103,7 +103,7 @@ object AppConfig { const val TG_CHANNEL_URL = "https://t.me/github_2dust" const val DELAY_TEST_URL = "https://www.gstatic.com/generate_204" const val DELAY_TEST_URL2 = "https://www.google.com/generate_204" - const val IP_API_Url = "https://api.ip.sb/geoip" + const val IP_API_URL = "https://speed.cloudflare.com/meta" /** DNS server addresses. */ const val DNS_PROXY = "1.1.1.1" diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/dto/IPAPIInfo.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/dto/IPAPIInfo.kt index 4d29ffc7..97814fbb 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/dto/IPAPIInfo.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/dto/IPAPIInfo.kt @@ -2,10 +2,11 @@ package com.v2ray.ang.dto data class IPAPIInfo( var ip: String? = null, - var city: String? = null, - var region: String? = null, - var region_code: String? = null, + var clientIp: String? = null, + var ip_addr: String? = null, + var query: String? = null, var country: String? = null, var country_name: String? = null, - var country_code: String? = null + var country_code: String? = null, + var countryCode: String? = null ) \ No newline at end of file diff --git a/V2rayNG/app/src/main/java/com/v2ray/ang/handler/SpeedtestManager.kt b/V2rayNG/app/src/main/java/com/v2ray/ang/handler/SpeedtestManager.kt index 99898a3a..e547c378 100644 --- a/V2rayNG/app/src/main/java/com/v2ray/ang/handler/SpeedtestManager.kt +++ b/V2rayNG/app/src/main/java/com/v2ray/ang/handler/SpeedtestManager.kt @@ -168,10 +168,13 @@ object SpeedtestManager { fun getRemoteIPInfo(): String? { val httpPort = SettingsManager.getHttpPort() - var content = HttpUtil.getUrlContent(AppConfig.IP_API_Url, 5000, httpPort) ?: return null + var content = HttpUtil.getUrlContent(AppConfig.IP_API_URL, 5000, httpPort) ?: return null var ipInfo = JsonUtil.fromJson(content, IPAPIInfo::class.java) ?: return null - return "(${ipInfo.country_code}) ${ipInfo.ip}" + var ip = ipInfo.ip ?: ipInfo.clientIp ?: ipInfo.ip_addr ?: ipInfo.query + var country = ipInfo.country_code ?: ipInfo.country ?: ipInfo.countryCode + + return "(${country ?: "unknown"}) $ip" } /**