summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-04-08 16:02:20 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-04-08 16:02:20 +0000
commitaf862fb6ac5382f1f9ca8ffb0e2f3551adab8ea5 (patch)
tree35de3df3ad32d100bb8706172da45630d68d48e5
parent1a23a91e9cbb36d74b7e5bf876c07ffce230ee60 (diff)
parent72352b1f532e736e12a8ec43286e3e150bac37c7 (diff)
downloadwifi-aml_tz2_305400100.tar.gz
Change-Id: Iddc7839f8601954c4b253b989b441efcd1635f4d
-rw-r--r--OWNERS2
-rw-r--r--libs/WifiTrackerLib/Android.bp10
-rw-r--r--libs/WifiTrackerLib/TEST_MAPPING7
-rw-r--r--libs/WifiTrackerLib/lint-baseline.xml1148
-rw-r--r--libs/WifiTrackerLib/res/values-af/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-af/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-am/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-am/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ar/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ar/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-as/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-as/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-az/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-az/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-b+sr+Latn/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-b+sr+Latn/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-be/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-be/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-bg/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-bg/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-bn/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-bn/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-bs/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-bs/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ca/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ca/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-cs/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-cs/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-da/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-da/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-de/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-de/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-el/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-el/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-en-rAU/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-en-rAU/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-en-rCA/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-en-rCA/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-en-rGB/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-en-rGB/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-en-rIN/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-en-rIN/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-en-rXC/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-en-rXC/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-es-rUS/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-es-rUS/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-es/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-es/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-et/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-et/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-eu/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-eu/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-fa/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-fa/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-fi/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-fi/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-fr-rCA/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-fr-rCA/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-fr/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-fr/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-gl/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-gl/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-gu/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-gu/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-hi/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-hi/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-hr/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-hr/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-hu/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-hu/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-hy/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-hy/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-in/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-in/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-is/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-is/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-it/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-it/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-iw/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-iw/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ja/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ja/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ka/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ka/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-kk/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-kk/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-km/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-km/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-kn/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-kn/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ko/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ko/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ky/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ky/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-lo/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-lo/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-lt/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-lt/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-lv/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-lv/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-mk/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-mk/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ml/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ml/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-mn/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-mn/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-mr/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-mr/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ms/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ms/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-my/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-my/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-nb/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-nb/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ne/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ne/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-nl/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-nl/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-or/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-or/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-pa/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-pa/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-pl/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-pl/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-pt-rBR/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-pt-rBR/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-pt-rPT/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-pt-rPT/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-pt/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-pt/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ro/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ro/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ru/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ru/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-si/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-si/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sk/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sk/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sl/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sl/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sq/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sq/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sr/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sr/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sv/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sv/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-sw/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-sw/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ta/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ta/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-te/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-te/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-th/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-th/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-tl/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-tl/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-tr/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-tr/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-uk/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-uk/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-ur/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-ur/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-uz/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-uz/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-vi/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-vi/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rCN/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rCN/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rHK/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rHK/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rTW/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-zh-rTW/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values-zu/arrays.xml26
-rw-r--r--libs/WifiTrackerLib/res/values-zu/strings.xml81
-rw-r--r--libs/WifiTrackerLib/res/values/arrays.xml2
-rw-r--r--libs/WifiTrackerLib/res/values/strings.xml178
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java181
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java170
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkDetailsTracker.java58
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkRequestEntry.java22
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java246
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java78
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java343
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java93
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/ScanResultUpdater.java21
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java116
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java1133
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java808
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java430
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java604
-rw-r--r--libs/WifiTrackerLib/tests/Android.bp6
-rw-r--r--libs/WifiTrackerLib/tests/AndroidManifest.xml3
-rwxr-xr-xlibs/WifiTrackerLib/tests/simulate_wifi.py890
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/MergedCarrierEntryTest.java145
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NetworkDetailsTrackerTest.java11
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/PasspointWifiEntryTest.java266
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/SavedNetworkTrackerTest.java128
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardNetworkDetailsTrackerTest.java112
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardWifiEntryTest.java839
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java177
-rw-r--r--libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java628
-rw-r--r--libwifi_hal/Android.mk62
-rw-r--r--libwifi_hal/hal_tool.cpp6
-rw-r--r--libwifi_hal/wifi_hal_common.cpp19
-rw-r--r--libwifi_system/Android.bp4
-rw-r--r--libwifi_system_iface/Android.bp5
-rw-r--r--libwifi_system_iface/include/wifi_system/interface_tool.h14
-rw-r--r--libwifi_system_iface/interface_tool.cpp71
208 files changed, 6201 insertions, 11930 deletions
diff --git a/OWNERS b/OWNERS
index 583ac1f39..dd01ed3da 100644
--- a/OWNERS
+++ b/OWNERS
@@ -1 +1 @@
-include platform/packages/modules/Wifi:/WIFI_OWNERS
+include platform/packages/modules/Wifi:/OWNERS
diff --git a/libs/WifiTrackerLib/Android.bp b/libs/WifiTrackerLib/Android.bp
index 4442d013b..5355d0037 100644
--- a/libs/WifiTrackerLib/Android.bp
+++ b/libs/WifiTrackerLib/Android.bp
@@ -1,7 +1,3 @@
-package {
- default_applicable_licenses: ["Android-Apache-2.0"],
-}
-
android_library {
name: "WifiTrackerLib",
srcs: ["src/**/*.java"],
@@ -10,11 +6,5 @@ android_library {
"SettingsLibHelpUtils",
],
- // TODO(b/187099809): Re-enable lint check once the min_sdk_version is updated
- lint: {
- enabled: false,
- },
-
- // TODO(b/187099809): Update this once we remove SettingsLib's dependency on WifiTrackerLib
min_sdk_version: "21",
}
diff --git a/libs/WifiTrackerLib/TEST_MAPPING b/libs/WifiTrackerLib/TEST_MAPPING
deleted file mode 100644
index 35e3f95cd..000000000
--- a/libs/WifiTrackerLib/TEST_MAPPING
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "presubmit": [
- {
- "name": "WifiTrackerLibTests"
- }
- ]
-}
diff --git a/libs/WifiTrackerLib/lint-baseline.xml b/libs/WifiTrackerLib/lint-baseline.xml
deleted file mode 100644
index ecc4bc6c1..000000000
--- a/libs/WifiTrackerLib/lint-baseline.xml
+++ /dev/null
@@ -1,1148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<issues format="5" by="lint 4.1.0" client="cli" variant="all" version="4.1.0">
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.NetworkRequest.Builder#clearCapabilities`"
- errorLine1=" .clearCapabilities().addTransportType(TRANSPORT_WIFI).build();"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="148"
- column="14"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.NetworkCapabilities#getTransportInfo`"
- errorLine1=" final TransportInfo transportInfo = networkCapabilities.getTransportInfo();"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="220"
- column="65"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Cast from `TransportInfo` to `WifiInfo` requires API level 29 (current min is 21)"
- errorLine1=" return ((WifiInfo) transportInfo).isPrimary();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="224"
- column="17"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.ConnectivityManager#registerNetworkCallback`"
- errorLine1=" mConnectivityManager.registerNetworkCallback(mNetworkRequest, mNetworkCallback,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="291"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.ConnectivityManager#registerDefaultNetworkCallback`"
- errorLine1=" mConnectivityManager.registerDefaultNetworkCallback(mDefaultNetworkCallback,"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="293"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.ConnectivityManager#getActiveNetwork`"
- errorLine1=" .getNetworkCapabilities(mConnectivityManager.getActiveNetwork());"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java"
- line="296"
- column="62"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 31 (current min is 21): `android.net.wifi.WifiInfo#getSubscriptionId`"
- errorLine1=" return wifiInfo.isCarrierMerged() &amp;&amp; mSubscriptionId == wifiInfo.getSubscriptionId();"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java"
- line="132"
- column="74"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 28 (current min is 21): `android.content.Context#getMainExecutor`"
- errorLine1=" mWifiManager.startSubscriptionProvisioning(mOsuProvider, mContext.getMainExecutor(),"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java"
- line="141"
- column="75"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiManager#calculateSignalLevel`"
- errorLine1=" mLevel = mWifiManager.calculateSignalLevel(bestScanResult.level);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java"
- line="159"
- column="39"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiInfo#getPasspointProviderFriendlyName`"
- errorLine1=" wifiInfo.getPasspointProviderFriendlyName(), mOsuProvider.getFriendlyName());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java"
- line="179"
- column="26"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" String uniqueId = passpointConfig.getUniqueId();"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java"
- line="261"
- column="47"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" if (TextUtils.equals(config.getKey(), uniqueId)) {"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java"
- line="265"
- column="45"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" mWifiManager.getPasspointConfigurations()"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="76"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(passpointConfig.getUniqueId())))"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="79"
- column="81"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#isPasspoint`"
- errorLine1=" .filter(wifiConfig -> wifiConfig.isPasspoint()"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="89"
- column="62"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey())))"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="91"
- column="88"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" final String key = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="156"
- column="75"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(provisionedConfig.getUniqueId()))) {"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="192"
- column="75"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" mWifiManager.getPasspointConfigurations().stream()"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="240"
- column="22"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(config.getUniqueId()),"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java"
- line="242"
- column="64"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" mKey = uniqueIdToPasspointWifiEntryKey(passpointConfig.getUniqueId());"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="113"
- column="64"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mFqdn = passpointConfig.getHomeSp().getFqdn();"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="114"
- column="33"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFqdn`"
- errorLine1=" mFqdn = passpointConfig.getHomeSp().getFqdn();"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="114"
- column="45"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="115"
- column="41"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFriendlyName`"
- errorLine1=" mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="115"
- column="53"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getSubscriptionExpirationTimeMillis`"
- errorLine1=" passpointConfig.getSubscriptionExpirationTimeMillis();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="117"
- column="33"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#isPasspoint`"
- errorLine1=" if (!wifiConfig.isPasspoint()) {"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="134"
- column="25"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" mKey = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="140"
- column="59"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Field requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#providerFriendlyName`"
- errorLine1=" mFriendlyName = mWifiConfig.providerFriendlyName;"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="142"
- column="25"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiConfiguration#getRandomizedMacAddress`"
- errorLine1=" return mWifiConfig.getRandomizedMacAddress().toString();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="302"
- column="28"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#removePasspointConfiguration`"
- errorLine1=" mWifiManager.removePasspointConfiguration(mPasspointConfig.getHomeSp().getFqdn());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="385"
- column="22"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mWifiManager.removePasspointConfiguration(mPasspointConfig.getHomeSp().getFqdn());"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="385"
- column="68"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFqdn`"
- errorLine1=" mWifiManager.removePasspointConfiguration(mPasspointConfig.getHomeSp().getFqdn());"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="385"
- column="80"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mWifiManager.setPasspointMeteredOverride(mPasspointConfig.getHomeSp().getFqdn(),"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="425"
- column="67"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFqdn`"
- errorLine1=" mWifiManager.setPasspointMeteredOverride(mPasspointConfig.getHomeSp().getFqdn(),"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="425"
- column="79"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mPasspointConfig.getHomeSp().getFqdn(),"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="452"
- column="34"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFqdn`"
- errorLine1=" mPasspointConfig.getHomeSp().getFqdn(),"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="452"
- column="46"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mWifiManager.allowAutojoinPasspoint(mPasspointConfig.getHomeSp().getFqdn(), enabled);"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="476"
- column="66"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFqdn`"
- errorLine1=" mWifiManager.allowAutojoinPasspoint(mPasspointConfig.getHomeSp().getFqdn(), enabled);"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="476"
- column="78"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getHomeSp`"
- errorLine1=" mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();"
- errorLine2=" ~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="502"
- column="45"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.hotspot2.pps.HomeSp#getFriendlyName`"
- errorLine1=" mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="502"
- column="57"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getSubscriptionExpirationTimeMillis`"
- errorLine1=" passpointConfig.getSubscriptionExpirationTimeMillis();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="504"
- column="37"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiManager#calculateSignalLevel`"
- errorLine1=" ? mWifiManager.calculateSignalLevel(bestScanResult.level)"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="543"
- column="40"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiInfo#getPasspointFqdn`"
- errorLine1=" return TextUtils.equals(wifiInfo.getPasspointFqdn(), mFqdn);"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java"
- line="581"
- column="42"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" updatePasspointWifiEntryConfigs(mWifiManager.getPasspointConfigurations());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="128"
- column="54"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" updatePasspointWifiEntryConfigs(mWifiManager.getPasspointConfigurations());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="157"
- column="54"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SaeSupported`"
- errorLine1=" mWifiManager.isWpa3SaeSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="207"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SuiteBSupported`"
- errorLine1=" mWifiManager.isWpa3SuiteBSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="208"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isEnhancedOpenSupported`"
- errorLine1=" mWifiManager.isEnhancedOpenSupported());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="209"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `java.lang.Iterable#forEach`"
- errorLine1=" mStandardWifiEntryCache.entrySet().forEach(entry -> {"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="212"
- column="44"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" final String key = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="228"
- column="75"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" (config) -> uniqueIdToPasspointWifiEntryKey(config.getUniqueId()),"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java"
- line="308"
- column="76"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#isPasspoint`"
- errorLine1=" if (config.isPasspoint()) {"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java"
- line="176"
- column="20"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiConfiguration#getRandomizedMacAddress`"
- errorLine1=" return mWifiConfig.getRandomizedMacAddress().toString();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="337"
- column="28"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiEnterpriseConfig#isAuthenticationSimBased`"
- errorLine1=" if (!mWifiConfig.enterpriseConfig.isAuthenticationSimBased()) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="379"
- column="47"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 22 (current min is 21): `android.telephony.SubscriptionManager`"
- errorLine1=" List&lt;SubscriptionInfo> activeSubscriptionInfos = ((SubscriptionManager) mContext"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="382"
- column="64"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 22 (current min is 21): `android.telephony.SubscriptionManager#getActiveSubscriptionInfoList`"
- errorLine1=" .getActiveSubscriptionInfoList();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="384"
- column="22"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.telephony.SubscriptionInfo#getCarrierId`"
- errorLine1=" if (subscriptionInfo.getCarrierId() == mWifiConfig.carrierId) {"
- errorLine2=" ~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="393"
- column="38"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isEasyConnectSupported`"
- errorLine1=" if (!mWifiManager.isEasyConnectSupported()) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="531"
- column="27"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiManager#calculateSignalLevel`"
- errorLine1=" ? mWifiManager.calculateSignalLevel(bestScanResult.level)"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="737"
- column="36"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `java.lang.Iterable#forEach`"
- errorLine1=" scanResults.forEach(scanResult ->"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java"
- line="920"
- column="21"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.content.Context#getSystemService`"
- errorLine1=" sNetworkScoreManager = context.getSystemService(NetworkScoreManager.class);"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="92"
- column="44"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 22 (current min is 21): `android.telephony.SubscriptionManager`"
- errorLine1=" (SubscriptionManager) context.getSystemService("
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="628"
- column="18"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 22 (current min is 21): `android.telephony.SubscriptionManager#getActiveSubscriptionInfoList`"
- errorLine1=" List&lt;SubscriptionInfo> subInfoList = subscriptionManager.getActiveSubscriptionInfoList();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="631"
- column="66"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.telephony.SubscriptionInfo#getCarrierId`"
- errorLine1=" .anyMatch(info -> info.getCarrierId() == carrierId);"
- errorLine2=" ~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="636"
- column="40"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `android.telephony.TelephonyManager#createForSubscriptionId`"
- errorLine1=" TelephonyManager specifiedTm = telephonyManager.createForSubscriptionId(subId);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="649"
- column="57"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 28 (current min is 21): `android.telephony.TelephonyManager#getSimCarrierIdName`"
- errorLine1=" CharSequence name = specifiedTm.getSimCarrierIdName();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="653"
- column="41"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiEnterpriseConfig#isAuthenticationSimBased`"
- errorLine1=" &amp;&amp; config.enterpriseConfig.isAuthenticationSimBased();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="662"
- column="44"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 22 (current min is 21): `android.telephony.SubscriptionManager`"
- errorLine1=" (SubscriptionManager) context.getSystemService("
- errorLine2=" ~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="673"
- column="18"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 22 (current min is 21): `android.telephony.SubscriptionManager#getActiveSubscriptionInfoList`"
- errorLine1=" List&lt;SubscriptionInfo> subInfoList = subscriptionManager.getActiveSubscriptionInfoList();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="678"
- column="66"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `android.telephony.SubscriptionManager#getDefaultDataSubscriptionId`"
- errorLine1=" int dataSubId = SubscriptionManager.getDefaultDataSubscriptionId();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="684"
- column="45"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.telephony.SubscriptionInfo#getCarrierId`"
- errorLine1=" if (subInfo.getCarrierId() == config.carrierId) {"
- errorLine2=" ~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="686"
- column="25"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 22 (current min is 21): `android.telephony.SubscriptionInfo#getSubscriptionId`"
- errorLine1=" matchSubId = subInfo.getSubscriptionId();"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="687"
- column="38"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 23 (current min is 21): `android.telephony.CarrierConfigManager`"
- errorLine1=" (CarrierConfigManager) context.getSystemService(Context.CARRIER_CONFIG_SERVICE);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="702"
- column="18"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.telephony.CarrierConfigManager#getConfigForSubId`"
- errorLine1=" PersistableBundle bundle = carrierConfigManager.getConfigForSubId(subId);"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="706"
- column="57"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `android.telephony.SubscriptionManager#getDefaultSubscriptionId`"
- errorLine1=" subId = SubscriptionManager.getDefaultSubscriptionId();"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java"
- line="722"
- column="41"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiManager#calculateSignalLevel`"
- errorLine1=" mLevel = mWifiManager.calculateSignalLevel(wifiInfoRssi);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java"
- line="760"
- column="39"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiInfo#getWifiStandard`"
- errorLine1=" mConnectedInfo.wifiStandard = wifiInfo.getWifiStandard();"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java"
- line="779"
- column="56"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.RouteInfo#hasGateway`"
- errorLine1=" instanceof Inet4Address &amp;&amp; routeInfo.hasGateway()) {"
- errorLine2=" ~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java"
- line="835"
- column="58"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiInfo#getWifiStandard`"
- errorLine1=" sj.add(&quot;standard = &quot; + mWifiInfo.getWifiStandard());"
- errorLine2=" ~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java"
- line="879"
- column="46"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" updatePasspointConfigurations(mWifiManager.getPasspointConfigurations());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="212"
- column="52"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 31 (current min is 21): `android.telephony.TelephonyManager#registerTelephonyCallback`"
- errorLine1=" mTelephonyManager.registerTelephonyCallback("
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="222"
- column="27"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.telephony.SubscriptionManager#getActiveDataSubscriptionId`"
- errorLine1=" updateMergedCarrierEntry(SubscriptionManager.getActiveDataSubscriptionId());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="224"
- column="54"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 31 (current min is 21): `android.telephony.TelephonyManager#unregisterTelephonyCallback`"
- errorLine1=" mTelephonyManager.unregisterTelephonyCallback(mActiveDataSubIdListener);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="238"
- column="31"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 26 (current min is 21): `android.net.wifi.WifiManager#getPasspointConfigurations`"
- errorLine1=" updatePasspointConfigurations(mWifiManager.getPasspointConfigurations());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="270"
- column="52"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SaeSupported`"
- errorLine1=" mWifiManager.isWpa3SaeSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="470"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SuiteBSupported`"
- errorLine1=" mWifiManager.isWpa3SuiteBSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="471"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isEnhancedOpenSupported`"
- errorLine1=" mWifiManager.isEnhancedOpenSupported());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="472"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SaeSupported`"
- errorLine1=" mWifiManager.isWpa3SaeSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="511"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isWpa3SuiteBSupported`"
- errorLine1=" mWifiManager.isWpa3SuiteBSupported(),"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="512"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 29 (current min is 21): `android.net.wifi.WifiManager#isEnhancedOpenSupported`"
- errorLine1=" mWifiManager.isEnhancedOpenSupported());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="513"
- column="30"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" final String key = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="562"
- column="75"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `java.lang.Iterable#forEach`"
- errorLine1=" mOsuWifiEntryCache.values().forEach(osuEntry -> {"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="615"
- column="37"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(provisionedConfig.getUniqueId()));"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="624"
- column="71"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#isPasspoint`"
- errorLine1=" if (config.isPasspoint()) {"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="704"
- column="24"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): `java.lang.Iterable#forEach`"
- errorLine1=" mStandardWifiEntryCache.entrySet().forEach((entry) -> {"
- errorLine2=" ~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="722"
- column="44"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 23 (current min is 21): `android.net.wifi.WifiConfiguration#isPasspoint`"
- errorLine1=" if (config != null &amp;&amp; config.isPasspoint()) {"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="726"
- column="42"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.hotspot2.PasspointConfiguration#getUniqueId`"
- errorLine1=" config.getUniqueId()), Function.identity())));"
- errorLine2=" ~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="768"
- column="32"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level R (current min is 21): `android.net.wifi.WifiConfiguration#getKey`"
- errorLine1=" uniqueIdToPasspointWifiEntryKey(cachedWifiConfig.getKey()));"
- errorLine2=" ~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="888"
- column="66"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 31 (current min is 21): `android.telephony.TelephonyCallback`"
- errorLine1=" /* package */ class ActiveDataSubIdListener extends TelephonyCallback implements"
- errorLine2=" ~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="969"
- column="65"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Class requires API level 31 (current min is 21): `android.telephony.TelephonyCallback.ActiveDataSubscriptionIdListener`"
- errorLine1=" TelephonyCallback.ActiveDataSubscriptionIdListener {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="970"
- column="13"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 31 (current min is 21): `new android.telephony.TelephonyCallback`"
- errorLine1=" super();"
- errorLine2=" ~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="972"
- column="13"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 24 (current min is 21): android.telephony.SubscriptionManager#getDefaultDataSubscriptionId [NewApi]"
- errorLine1=" handleDefaultSubscriptionChanged(SubscriptionManager.getDefaultDataSubscriptionId());"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java"
- line="212"
- column="62"/>
- </issue>
-
- <issue
- id="NewApi"
- message="Call requires API level 31 (current min is 21): android.net.wifi.WifiManager#isCarrierNetworkOffloadEnabled [NewApi]"
- errorLine1=" return mWifiManager.isCarrierNetworkOffloadEnabled(mSubscriptionId, true);"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="frameworks/opt/net/wifi/libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java"
- line="142"
- column="29"/>
- </issue>
-
-</issues>
diff --git a/libs/WifiTrackerLib/res/values-af/arrays.xml b/libs/WifiTrackerLib/res/values-af/arrays.xml
index d7f1d511d..877ecb065 100644
--- a/libs/WifiTrackerLib/res/values-af/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-af/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Soek tans …"</item>
- <item msgid="9055468790485684083">"Koppel tans …"</item>
- <item msgid="6099499723199990208">"Staaf tans …"</item>
- <item msgid="6794055951297347103">"Verkry tans IP-adres …"</item>
- <item msgid="5450920562291300229">"Gekoppel"</item>
- <item msgid="6332116533879646145">"Opgeskort"</item>
- <item msgid="294459081501073818">"Ontkoppel tans …"</item>
- <item msgid="1577368920272598676">"Ontkoppel"</item>
- <item msgid="7655843177582495451">"Onsuksesvol"</item>
- <item msgid="8953752690917593623">"Geblokkeer"</item>
- <item msgid="4400457817750243671">"Vermy swak verbinding tydelik"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Soek tans …"</item>
+ <item msgid="6222852518007967736">"Koppel tans …"</item>
+ <item msgid="1176401854208153464">"Staaf tans …"</item>
+ <item msgid="1377026397901197257">"Verkry tans IP-adres …"</item>
+ <item msgid="7627139816052121509">"Gekoppel"</item>
+ <item msgid="1598801023719359130">"Opgeskort"</item>
+ <item msgid="9160765456671002324">"Ontkoppel tans …"</item>
+ <item msgid="8013176736494493734">"Ontkoppel"</item>
+ <item msgid="4077393480368783785">"Onsuksesvol"</item>
+ <item msgid="605372180740008604">"Geblokkeer"</item>
+ <item msgid="5102306451432929048">"Vermy tydelik swak verbinding"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-af/strings.xml b/libs/WifiTrackerLib/res/values-af/strings.xml
index a31e8ccb1..20d9abe87 100644
--- a/libs/WifiTrackerLib/res/values-af/strings.xml
+++ b/libs/WifiTrackerLib/res/values-af/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Outomatiese koppeling is af"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Gestoor deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Sal nie outomaties koppel nie"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Geen internettoegang nie"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Stawingsprobleem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Gaan wagwoord na en probeer weer"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-opstelling het misluk"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Gedeaktiveer"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Toegangspunt is tydelik vol"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tydelike swak netwerktoestande"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Swak sein. Probeer nader aan die roeteerder beweeg."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Netwerk is oor kapasiteit. Probeer later weer."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Kan nie koppel nie. Probeer later weer."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Kan nie koppel nie. Probeer later weer."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Ontkoppel"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gestoor"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Beperk"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Onbeperk"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Gekoppel deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Beskikbaar deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Outomaties gekoppel deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Outomaties deur netwerkgraderingverskaffer gekoppel"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Beperkte verbinding"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Kan nie toegang tot private DNS-bediener kry nie"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Gekoppel aan toestel. Kan nie internet verskaf nie."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Lae gehalte"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Geen"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Verval"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tik om aan te meld"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tik om intekening te hernu en te koppel"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Maak tans <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> oop"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Kon nie koppel nie"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Voltooi tans aanmelding …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Kon nie aanmelding voltooi nie. Tik om weer te probeer."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Aanmelding is voltooi. Koppel tans …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Hierdie netwerk ontvang \'n SIM-ID wat gebruik kan word om toestelligging na te spoor. "<annotation id="url">"Kom meer te wete"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Baie stadig"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Stadig"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Vinnig"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Baie vinnig"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-fi sal vir nou nie outomaties koppel nie"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Outomatiese koppeling is af"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Gestoor deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Sal nie outomaties koppel nie"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Geen internettoegang nie"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Stawingsprobleem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Gaan wagwoord na en probeer weer"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-opstelling het misluk"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Gedeaktiveer"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Toegangspunt is tydelik vol"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Ontkoppel"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Gestoor"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Beperk"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Onbeperk"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Gekoppel via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Beskikbaar deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Outomaties gekoppel deur <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Outomaties deur netwerkgraderingverskaffer gekoppel"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Beperkte verbinding"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Daar kan nie by private DNS-bediener ingegaan word nie"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Geen internet nie"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Geen"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Verval"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tik om aan te meld"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tik om intekening te hernu en te koppel"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Maak tans <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> oop"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Kon nie koppel nie"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Voltooi tans aanmelding …"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Kon nie aanmelding voltooi nie. Tik om weer te probeer."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Aanmelding is voltooi. Koppel tans …"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Hierdie netwerk ontvang \'n SIM-ID wat gebruik kan word om toestelligging na te spoor. "<annotation id="url">"Kom meer te wete"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Baie stadig"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Stadig"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Middelmatig"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Vinnig"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Baie vinnig"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-am/arrays.xml b/libs/WifiTrackerLib/res/values-am/arrays.xml
index b4ec90d54..95ac6d810 100644
--- a/libs/WifiTrackerLib/res/values-am/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-am/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"በመቃኘት ላይ…"</item>
- <item msgid="9055468790485684083">"በመገናኘት ላይ…"</item>
- <item msgid="6099499723199990208">"በማረጋገጥ ላይ…"</item>
- <item msgid="6794055951297347103">"የአይፒ አድራሻን በማግኘት ላይ…"</item>
- <item msgid="5450920562291300229">"ተገናኝቷል"</item>
- <item msgid="6332116533879646145">"ታግዷል"</item>
- <item msgid="294459081501073818">"ግንኝነት በማቋረጥ ላይ…"</item>
- <item msgid="1577368920272598676">"ተቋርጧል"</item>
- <item msgid="7655843177582495451">"አልተሳካም"</item>
- <item msgid="8953752690917593623">"ታግዷል"</item>
- <item msgid="4400457817750243671">"ለጊዜው ከደካማ ግንኙነት በመታቀብ ላይ"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"በመቃኘት ላይ…"</item>
+ <item msgid="6222852518007967736">"በመገናኘት ላይ…"</item>
+ <item msgid="1176401854208153464">"በማረጋገጥ ላይ…"</item>
+ <item msgid="1377026397901197257">"የአይፒ አድራሻን በማግኘት ላይ…"</item>
+ <item msgid="7627139816052121509">"ተገናኝቷል"</item>
+ <item msgid="1598801023719359130">"ታግዷል"</item>
+ <item msgid="9160765456671002324">"ግንኝነት በማቋረጥ ላይ…"</item>
+ <item msgid="8013176736494493734">"ተቋርጧል"</item>
+ <item msgid="4077393480368783785">"አልተሳካም"</item>
+ <item msgid="605372180740008604">"ታግዷል"</item>
+ <item msgid="5102306451432929048">"ለጊዜው ከደካማ ግንኙነት በመታቀብ ላይ"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-am/strings.xml b/libs/WifiTrackerLib/res/values-am/strings.xml
index 4eef0a767..02737f38d 100644
--- a/libs/WifiTrackerLib/res/values-am/strings.xml
+++ b/libs/WifiTrackerLib/res/values-am/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ራስ-ተገናኝ ጠፍቷል"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"የተቀመጠው በ<xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"በራስ-ሰር አይገናኝም"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ምንም የበይነመረብ መዳረሻ የለም"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"የማረጋገጥ ችግር"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"የይለፍ ቃልን ይፈትሹ እና እንደገና ይሞክሩ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"የአይፒ ውቅረት መሰናከል"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ተሰናክሏል"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"የመዳረሻ ነጥብ ለጊዜው ሞልቷል"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ጊዜያዊ ደካማ የአውታረ መረብ ሁኔታዎች"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"ደካማ ሲግናል። ወደ ራውተር ለመቅረብ ይሞክሩ።"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"አውታረመረብ ከአቅም በላይ ነው። ቆይተው እንደገና ይሞክሩ።"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"መገናኘት አልተቻለም። ቆይተው እንደገና ይሞክሩ።"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"መገናኘት አልተቻለም። ቆይተው እንደገና ይሞክሩ።"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ተቋርጧል"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ተቀምጧል"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"የሚለካ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ያልተለካ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"በ <xliff:g id="NAME">%1$s</xliff:g> በኩል ተገናኝተዋል"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"በ<xliff:g id="NAME">%1$s</xliff:g> በኩል የሚገኝ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"በ<xliff:g id="NAME">%1$s</xliff:g> በኩል በራስ-ሰር ተገናኝቷል"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"በአውታረ መረብ ደረጃ ሰጪ አቅራቢ በኩል በራስ-ሰር ተገናኝቷል"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"የተገደበ ግንኙነት"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"የግል ዲኤንኤስ አገልጋይ ሊደረስበት አይችልም"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ከመሣሪያው ጋር ተገናኝቷል። በይነመረብ ማቅረብ አልተቻለም።"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"አነስተኛ ጥራት"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ምንም"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ጊዜው አልፏል"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ለመመዝገብ መታ ያድርጉ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"የደንበኝነት ምዝገባን ዳግም ለማደስ እና ለማገናኘት መታ ይድርጉ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>ን በመክፈት ላይ"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"መገናኘት አልተቻለም"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"መመዝገብን በማጠናቀቅ ላይ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ምዝገባን ማጠናቀቅ አልተቻለም። እንደገና ለመሞከር መታ ያድርጉ።"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ምዝገባ ተጠናቋል። በማገናኘት ላይ…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ይህ አውታረ መረብ የመሣሪያ አካባቢን ለመከታተል ሥራ ላይ ሊውል የሚችል የሲም መታወቂያ ተቀብሏል። "<annotation id="url">"የበለጠ ለመረዳት"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"በጣም ቀርፋፋ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ቀርፋፋ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"እሺ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"መካከለኛ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ፈጣን"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"በጣም ፈጣን"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wifi ለአሁን በራስ-ሰር አይገናኝም"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ራስ-ተገናኝ ጠፍቷል"</string>
+ <string name="saved_network" msgid="6241977554502802914">"የተቀመጠው በ<xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"በራስ-ሰር አይገናኝም"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ምንም የበይነመረብ መዳረሻ የለም"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"የማረጋገጥ ችግር"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"የይለፍ ቃልን ይፈትሹ እና እንደገና ይሞክሩ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"የአይፒ ውቅረት መሰናከል"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ተሰናክሏል"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"የመዳረሻ ነጥብ ለጊዜው ሞልቷል"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ተቋርጧል"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ተቀምጧል"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"የሚለካ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ያልተለካ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"በ <xliff:g id="NAME">%1$s</xliff:g> በኩል ተገናኝተዋል"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"በ<xliff:g id="NAME">%1$s</xliff:g> በኩል የሚገኝ"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"በ<xliff:g id="NAME">%1$s</xliff:g> በኩል በራስ-ሰር ተገናኝቷል"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"በአውታረ መረብ ደረጃ ሰጪ አቅራቢ በኩል በራስ-ሰር ተገናኝቷል"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"የተገደበ ግንኙነት"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"የግል ዲኤንኤስ አገልጋይ ሊደረስበት አይችልም"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ምንም በይነመረብ የለም"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"የለም"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ጊዜው አልፏል"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ለመመዝገብ መታ ያድርጉ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"የደንበኝነት ምዝገባን ዳግም ለማደስ እና ለማገናኘት መታ ይድርጉ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>ን በመክፈት ላይ"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"መገናኘት አልተቻለም"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"መመዝገብን በማጠናቀቅ ላይ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ምዝገባን ማጠናቀቅ አልተቻለም። እንደገና ለመሞከር መታ ያድርጉ።"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ምዝገባ ተጠናቋል። በማገናኘት ላይ…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ይህ አውታረ መረብ የመሣሪያ አካባቢን ለመከታተል ሥራ ላይ ሊውል የሚችል የሲም መታወቂያ ይቀበላል። "<annotation id="url">"የበለጠ ለመረዳት"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"በጣም ቀርፋፋ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"አዘግይ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"እሺ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"መካከለኛ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ፈጣን"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"እጅግ በጣም ፈጣን"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ar/arrays.xml b/libs/WifiTrackerLib/res/values-ar/arrays.xml
index 2dd2962b0..e93d0b151 100644
--- a/libs/WifiTrackerLib/res/values-ar/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ar/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"جارٍ البحث عن الشبكات…"</item>
- <item msgid="9055468790485684083">"جارٍ الاتصال بالإنترنت…"</item>
- <item msgid="6099499723199990208">"جارٍ مصادقة الشبكة…"</item>
- <item msgid="6794055951297347103">"‏جارٍ الحصول على عنوان IP…"</item>
- <item msgid="5450920562291300229">"متصلة"</item>
- <item msgid="6332116533879646145">"معلّقة"</item>
- <item msgid="294459081501073818">"جارٍ قطع الاتصال بالشبكة…"</item>
- <item msgid="1577368920272598676">"غير متصلة"</item>
- <item msgid="7655843177582495451">"تعذّر الاتصال بالشبكة."</item>
- <item msgid="8953752690917593623">"محظورة"</item>
- <item msgid="4400457817750243671">"يتم مؤقتًا تجنب الاتصال الضعيف بالإنترنت"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"جارٍ البحث عن الشبكات…"</item>
+ <item msgid="6222852518007967736">"جارٍ الاتصال…"</item>
+ <item msgid="1176401854208153464">"جارٍ المصادقة…"</item>
+ <item msgid="1377026397901197257">"‏جارٍ الحصول على عنوان IP…"</item>
+ <item msgid="7627139816052121509">"متصلة"</item>
+ <item msgid="1598801023719359130">"معلّقة"</item>
+ <item msgid="9160765456671002324">"جارٍ قطع الاتصال…"</item>
+ <item msgid="8013176736494493734">"غير متصلة"</item>
+ <item msgid="4077393480368783785">"تعذّر الاتصال بالشبكة"</item>
+ <item msgid="605372180740008604">"محظورة"</item>
+ <item msgid="5102306451432929048">"يتم مؤقتًا تجنب الاتصال الضعيف"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ar/strings.xml b/libs/WifiTrackerLib/res/values-ar/strings.xml
index cf3ec7065..2728b6455 100644
--- a/libs/WifiTrackerLib/res/values-ar/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ar/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"الاتصال التلقائي غير مُفعَّل."</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"تم الحفظ من قِبل <xliff:g id="NAME">%1$s</xliff:g>."</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"لن يتم الاتصال بالإنترنت تلقائيًا."</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"لا يتوفّر اتصال بالإنترنت"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"حدثت مشكلة في المصادقة."</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"يُرجى التحقق من كلمة المرور وإعادة المحاولة."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"‏تعذّر إعداد عنوان IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"غير مُفعَّلة"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"نقطة الوصول ممتلئة مؤقتًا."</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"الاتصال بشبكات الإنترنت سيئ حاليًا"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"الإشارة ضعيفة. حاوِل الاقتراب من جهاز التوجيه."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"تجاوزت الشبكة الحد الأقصى للسعة. يُرجى إعادة المحاولة لاحقًا."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"يتعذّر الاتصال بالشبكة. يُرجى إعادة المحاولة لاحقًا."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"يتعذّر الاتصال بالشبكة. يُرجى إعادة المحاولة لاحقًا."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"غير متصلة"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"شبكة محفوظة"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"تفرض تكلفة استخدام"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"لا تفرض تكلفة استخدام"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"تم الاتصال من خلال <xliff:g id="NAME">%1$s</xliff:g>."</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"متاحة من خلال <xliff:g id="NAME">%1$s</xliff:g>."</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"تم الاتصال تلقائيًا بشبكة <xliff:g id="NAME">%1$s</xliff:g>."</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"تم الاتصال تلقائيًا من خلال مقدّم خدمة تقييم الشبكة."</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"الاتصال بالإنترنت محدود"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"لا يمكن الوصول إلى خادم أسماء نظام نطاقات خاص"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"الشبكة متصلة بالجهاز. يتعذّر توفير اتصال بالإنترنت."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"جودة منخفضة"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"بدون أمان"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"منتهية الصلاحية"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"انقر للاشتراك."</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"انقر لتجديد الاشتراك والاتصال بالشبكة."</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"جارٍ فتح <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"تعذّر الاتصال بالإنترنت."</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"جارٍ إكمال الاشتراك…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"تعذّر إكمال الاشتراك. انقر لإعادة المحاولة."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"اكتمل الاشتراك. جارٍ الاتصال بالإنترنت…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"‏تتلقّى هذه الشبكة رقم تعريف لشريحة SIM يمكن استخدامه لتتبُّع الموقع الجغرافي للجهاز. "<annotation id="url">"مزيد من المعلومات"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"بطيئة جدًا"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"بطيئة"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"جيدة"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"متوسطة"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"سريعة"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"سريعة جدًا"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"‏لن يتم الاتصال بشبكة Wi-Fi تلقائيًا في الوقت الحالي."</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"الاتصال التلقائي غير مفعّل"</string>
+ <string name="saved_network" msgid="6241977554502802914">"تم الحفظ بواسطة <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"لن يتم الاتصال بالإنترنت تلقائيًا."</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"لا يتوفّر اتصال بالإنترنت"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"مشكلة في المصادقة"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"يُرجى التحقق من كلمة المرور وإعادة المحاولة"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"‏تعذّر إعداد عنوان IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"غير مفعّلة"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"نقطة الوصول ممتلئة مؤقتًا"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"غير متصلة"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"تم الحفظ"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"تفرض تكلفة استخدام"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"بدون قياس"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"تم الاتصال عبر <xliff:g id="NAME">%1$s</xliff:g>."</string>
+ <string name="available_via_app" msgid="9110324040292242769">"متاحة من خلال <xliff:g id="NAME">%1$s</xliff:g>."</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"تم تلقائيًا توصيل الجهاز بشبكة <xliff:g id="NAME">%1$s</xliff:g>."</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"تم الاتصال تلقائيًا عبر مقدم خدمة تقييم الشبكة"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"اتصال محدود"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"لا يمكن الوصول إلى خادم أسماء نظام نطاقات خاص"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"لا يتوفر اتصال إنترنت."</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"بلا أمان"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"منتهية الصلاحية"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"انقر للاشتراك."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"انقر لتجديد الاشتراك والاتصال بالشبكة."</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"جارٍ فتح <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"تعذّر الاتصال بالإنترنت."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"جارٍ إكمال الاشتراك…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"تعذّر إكمال الاشتراك. انقر لإعادة المحاولة."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"اكتمل الاشتراك. جارٍ الاتصال…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"‏تتلقّى هذه الشبكة رقم تعريف لشريحة SIM يمكن استخدامه لتتبُّع الموقع الجغرافي للجهاز. "<annotation id="url">"مزيد من المعلومات"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"بطيئة جدًا"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"بطيئة"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"حسنًا"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"متوسطة"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"سريعة"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"سريعة جدًا"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-as/arrays.xml b/libs/WifiTrackerLib/res/values-as/arrays.xml
index 125bc7679..b9b370618 100644
--- a/libs/WifiTrackerLib/res/values-as/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-as/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"স্কেন কৰি থকা হৈছে…"</item>
- <item msgid="9055468790485684083">"সংযোগ কৰি থকা হৈছে…"</item>
- <item msgid="6099499723199990208">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণ কৰি থকা হৈছে…"</item>
- <item msgid="6794055951297347103">"আইপি ঠিকনা সংগ্ৰহ কৰি থকা হৈছে…"</item>
- <item msgid="5450920562291300229">"সংযোজিত"</item>
- <item msgid="6332116533879646145">"নিলম্বন কৰা হৈছে"</item>
- <item msgid="294459081501073818">"সংযোগ বিচ্ছিন্ন কৰি থকা হৈছে…"</item>
- <item msgid="1577368920272598676">"সংযোগ বিচ্ছিন্ন হৈছে"</item>
- <item msgid="7655843177582495451">"বিফল হৈছে"</item>
- <item msgid="8953752690917593623">"অৱৰোধ কৰা আছে"</item>
- <item msgid="4400457817750243671">"সাময়িকভাৱে দুৰ্বল সংযোগ দেখুওৱা হোৱা নাই"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"স্কেন কৰি থকা হৈছে…"</item>
+ <item msgid="6222852518007967736">"সংযোগ কৰি থকা হৈছে…"</item>
+ <item msgid="1176401854208153464">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণ কৰি থকা হৈছে…"</item>
+ <item msgid="1377026397901197257">"আইপি ঠিকনা সংগ্ৰহ কৰি থকা হৈছে…"</item>
+ <item msgid="7627139816052121509">"সংযুক্ত"</item>
+ <item msgid="1598801023719359130">"নিলম্বিত"</item>
+ <item msgid="9160765456671002324">"সংযোগ বিচ্ছিন্ন কৰি থকা হৈছে…"</item>
+ <item msgid="8013176736494493734">"সংযোগ বিচ্ছিন্ন"</item>
+ <item msgid="4077393480368783785">"বিফল"</item>
+ <item msgid="605372180740008604">"অৱৰোধিত"</item>
+ <item msgid="5102306451432929048">"কিছুসময়ৰ বাবে দুৰ্বল সংযোগ দেখুওৱা হোৱা নাই"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-as/strings.xml b/libs/WifiTrackerLib/res/values-as/strings.xml
index 6a5802a75..b11e59497 100644
--- a/libs/WifiTrackerLib/res/values-as/strings.xml
+++ b/libs/WifiTrackerLib/res/values-as/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"স্বয়ংক্ৰিয় সংযোগৰ সুবিধাটো অফ আছে"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g>এ ছেভ কৰিছে"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"স্বয়ংক্ৰিয়ভাৱে সংযোগ নহ’ব"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ইণ্টাৰনেটৰ এক্সেছ নাই"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণত সমস্যা হৈছে"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"পাছৱৰ্ড পৰীক্ষা কৰক আৰু পুনৰ চেষ্টা কৰক"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"আইপি কনফিগাৰেশ্বন বিফল হৈছে"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"অক্ষম কৰা আছে"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"এক্সেছ পইণ্ট সাময়িকভাৱে পূৰ্ণ হৈছে"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"অস্থায়ীভাৱে নেটৱৰ্ক বেয়া হোৱাৰ অৱস্থা"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"দুৰ্বল সংকেত। ৰাউটাৰৰ ওচৰলৈ গৈ চাওক।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"নেটৱৰ্কে অধিকতম ক্ষমতা অতিক্ৰম কৰিছে। পাছত পুনৰ চেষ্টা কৰক।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"সংযোগ কৰিব নোৱাৰি। পাছত পুনৰ চেষ্টা কৰক।"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"সংযোগ কৰিব পৰা নাই। পাছত পুনৰ চেষ্টা কৰক।"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"সংযোগ বিচ্ছিন্ন হৈছে"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ছেভ কৰা আছে"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"নিৰিখ-নিৰ্দিষ্ট"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"নিৰিখ নিৰ্দিষ্ট নকৰা"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে সংযুক্ত হৈছে"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে উপলব্ধ হৈছে"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে স্বয়ংক্ৰিয়ভাৱে সংযুক্ত হৈছে"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"নেটৱৰ্ক ৰেটিং প্ৰদানকাৰীৰ জৰিয়তে স্বয়ংক্ৰিয়ভাৱে সংযুক্ত হৈছে"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ইণ্টাৰনেট সংযোগ সীমিত"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ব্যক্তিগত DNS ছাৰ্ভাৰ এক্সেছ কৰিব নোৱাৰি"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ডিভাইচৰ সৈতে সংযোগ কৰা হৈছে। ইণ্টাৰনেট সংযোগ প্ৰদান কৰিব নোৱাৰি।"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"নিম্ন মানৰ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"একো নাই"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ম্যাদ উকলিছে"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ছাইন আপ কৰিবলৈ টিপক"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ছাবস্ক্ৰিপশ্বন নৱীকৰণ আৰু সংযোগ কৰিবলৈ টিপক"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> খুলি থকা হৈছে"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"সংযোগ কৰিব পৰা নগ’ল"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ছাইন আপ সম্পূৰ্ণ কৰি থকা হৈছে…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ছাইন আপ সম্পূৰ্ণ কৰিব পৰা নগ’ল। পুনৰ চেষ্টা কৰিবলৈ টিপক।"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ছাইন আপ সম্পূৰ্ণ হৈছে। সংযোগ কৰি থকা হৈছে…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"এই নেটৱৰ্কটোৱে এটা ছিম আইডি পায়, যিটো ডিভাইচৰ অৱস্থান ট্ৰেক কৰিবলৈ ব্যৱহাৰ কৰিব পাৰি। "<annotation id="url">"অধিক জানক"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"অতি লেহেমীয়া"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"লেহেমীয়া"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ঠিক আছে"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"মধ্যমীয়া"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"দ্ৰুত"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"অতি দ্ৰুত"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"সদ্যহতে ৱাই-ফাই স্বয়ংক্ৰিয়ভাৱে সংযুক্ত নহ’ব"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"স্বয়ংক্ৰিয় সংযোগৰ সুবিধাটো অফ আছে"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g>এ ছেভ কৰিছে"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"স্বয়ংক্ৰিয়ভাৱে সংযোগ নহ’ব"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ইণ্টাৰনেটৰ এক্সেছ নাই"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"বিশ্বাসযোগ্যতা প্ৰমাণীকৰণত সমস্যা হৈছে"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"পাছৱৰ্ড পৰীক্ষা কৰি আকৌ চেষ্টা কৰক"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"আইপি কনফিগাৰেশ্বন বিফল হৈছে"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"নিষ্ক্ৰিয় হৈ আছে"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"একচেছ পইণ্ট কিছু সময়ৰ বাবে পূৰ্ণ হৈ আছে"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"সংযোগ বিচ্ছিন্ন"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ছেভ কৰি থোৱা নেটৱৰ্কসমূহ"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"নিৰিখ-নিৰ্দিষ্ট"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"নিৰিখ অনিৰ্দিষ্ট"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে সংযুক্ত"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে উপলব্ধ"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g>ৰ জৰিয়তে স্বয়ংক্ৰিয়ভাৱে সংযুক্ত"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"নেটৱৰ্ক ৰেটিং প্ৰদানকাৰীৰ জৰিয়তে স্বয়ং সংয়োগ কৰা হ’ল"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ইণ্টাৰনেট সংযোগ সীমিত"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ব্যক্তিগত DNS ছাৰ্ভাৰ এক্সেছ কৰিব নোৱাৰি"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ইণ্টাৰনেট সংযোগ নাই"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"নাই"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ম্যাদ উকলিছে"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ছাইন আপ কৰিবলৈ টিপক"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ছাবস্ক্ৰিপশ্বন নৱীকৰণ আৰু সংযোগ কৰিবলৈ টিপক"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> খুলি থকা হৈছে"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"সংযোগ কৰিব পৰা নগ’ল"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ছাইন আপ সম্পূৰ্ণ কৰি থকা হৈছে…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ছাইন আপ সম্পূৰ্ণ কৰিব পৰা নগ’ল। পুনৰ চেষ্টা কৰিবলৈ টিপক।"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ছাইন আপ সম্পূৰ্ণ হৈছে। সংযোগ কৰি থকা হৈছে…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"এই নেটৱৰ্কটোৱে এটা ছিম আইডি পায়, যিটো ডিভাইচৰ অৱস্থান ট্ৰেক কৰিবলৈ ব্যৱহাৰ কৰিব পাৰি। "<annotation id="url">"অধিক জানক"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"অতি লেহেম"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"লেহেমীয়া"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ঠিক"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"মধ্যমীয়া"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"দ্ৰুত"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"অতি দ্ৰুত"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-az/arrays.xml b/libs/WifiTrackerLib/res/values-az/arrays.xml
index 31b228d1b..582d1de99 100644
--- a/libs/WifiTrackerLib/res/values-az/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-az/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Skan edilir…"</item>
- <item msgid="9055468790485684083">"Qoşulur…"</item>
- <item msgid="6099499723199990208">"Doğrulanır…"</item>
- <item msgid="6794055951297347103">"IP ünvanı əldə edilir…"</item>
- <item msgid="5450920562291300229">"Qoşulub"</item>
- <item msgid="6332116533879646145">"Dayandırılıb"</item>
- <item msgid="294459081501073818">"Bağlantı kəsilir…"</item>
- <item msgid="1577368920272598676">"Bağlantı kəsildi"</item>
- <item msgid="7655843177582495451">"Uğursuz"</item>
- <item msgid="8953752690917593623">"Bloklanıb"</item>
- <item msgid="4400457817750243671">"Zəif bağlantı müvəqqəti olaraq aradan qaldırılır"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Skan edilir…"</item>
+ <item msgid="6222852518007967736">"Qoşulur…"</item>
+ <item msgid="1176401854208153464">"Doğrulanır…"</item>
+ <item msgid="1377026397901197257">"IP ünvanı əldə edilir…"</item>
+ <item msgid="7627139816052121509">"Qoşuldu"</item>
+ <item msgid="1598801023719359130">"Dayandırılıb"</item>
+ <item msgid="9160765456671002324">"Bağlantı kəsilir…"</item>
+ <item msgid="8013176736494493734">"Bağlantı kəsildi"</item>
+ <item msgid="4077393480368783785">"Uğursuz"</item>
+ <item msgid="605372180740008604">"Bloklanıb"</item>
+ <item msgid="5102306451432929048">"Zəif bağlantı müvəqqəti olaraq aradan qaldırılır"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-az/strings.xml b/libs/WifiTrackerLib/res/values-az/strings.xml
index c3c076ad8..13890076f 100644
--- a/libs/WifiTrackerLib/res/values-az/strings.xml
+++ b/libs/WifiTrackerLib/res/values-az/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Avtomatik qoşulma deaktivdir"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Yadda saxlayan: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Avtomatik qoşulmayacaq"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"İnternetə giriş yoxdur"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Doğrulama problemi"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Parolu yoxlayın və yenidən cəhd edin"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"İP konfiqurasiyası uğursuz oldu"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Deaktiv"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Giriş nöqtəsi müvəqqəti olaraq doludur"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Şəbəkə bağlantısı müvəqqəti zəifdir"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Zəif siqnal. Ruterə yaxınlaşdırın."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Şəbəkə limiti aşılıb. Sonra cəhd edin."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Qoşulmaq mümkün deyil. Sonra cəhd edin."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Qoşulmaq mümkün deyil. Sonra cəhd edin."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Bağlantı kəsildi"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Yadda saxlandı"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Tarif sayğacılı"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Limitsiz"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə qoşulub"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə əlçatandır"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə avtomatik qoşulub"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Avtomatik olaraq şəbəkə reytinq provayderi vasitəsilə qoşulub"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Məhdud bağlantı"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Özəl DNS serverinə giriş mümkün deyil"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Cihaza qoşulub. İnternet təmin etmək olmur."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Aşağı keyfiyyət"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Heç"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Bitib"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Qeydiyyatdan keçmək üçün toxunun"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Abunəliyi yeniləmək və qoşulmaq üçün toxunun"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> açılır"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Qoşulmaq mümkün olmadı"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Qeydiyyat tamamlanır…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Qeydiyyat tamamlanmadı. Yenidən cəhd etmək üçün toxunun."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Qeydiyyat tamamlandı. Qoşulur…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Bu şəbəkə cihaz məkanını izləmək üçün istifadə edilə biləcək SIM ID qəbul edir. "<annotation id="url">"Ətraflı məlumat"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Çox Zəif"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Zəif"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Orta"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Sürətli"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Çox Sürətli"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi hələlik avtomatik qoşulmayacaq"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Avtomatik qoşulma sönülüdür"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Yadda saxlayan: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Avtomatik qoşulmayacaq"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"İnternetə giriş yoxdur"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Doğrulama problemi"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Parolu yoxlayın və yenidən cəhd edin"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP Konfiqurasiya Uğursuzluğu"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Deaktiv"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Giriş nöqtəsi müvəqqəti olaraq doludur"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Bağlantı kəsildi"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Yadda saxlanılan"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Tarif sayğacılı"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Limitsiz"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ilə qoşulub"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə əlçatandır"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə avtomatik qoşulub"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Avtomatik olaraq şəbəkə reytinq provayderi ilə qoşuludur"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Məhdud bağlantı"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Özəl DNS serverinə giriş mümkün deyil"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"İnternet yoxdur"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Heç biri"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Vaxtı keçib"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Qeydiyyatdan keçmək üçün toxunun"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Abunəliyi yeniləmək və qoşulmaq üçün toxunun"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> açılır"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Qoşulmaq mümkün olmadı"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Qeydiyyat tamamlanır…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Qeydiyyat tamamlanmadı. Yenidən cəhd etmək üçün toxunun."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Qeydiyyat tamamlandı. Qoşulur…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Bu şəbəkə cihaz məkanını izləmək üçün istifadə edilə biləcək SIM ID qəbul edir. "<annotation id="url">"Ətraflı məlumat"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Çox Yavaş"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Yavaş"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Orta"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Sürətli"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Çox Sürətli"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-b+sr+Latn/arrays.xml b/libs/WifiTrackerLib/res/values-b+sr+Latn/arrays.xml
index 3975474ce..2e5f1bce3 100644
--- a/libs/WifiTrackerLib/res/values-b+sr+Latn/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-b+sr+Latn/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Traži se…"</item>
- <item msgid="9055468790485684083">"Povezuje se…"</item>
- <item msgid="6099499723199990208">"Potvrđuje se identitet…"</item>
- <item msgid="6794055951297347103">"Preuzima se IP adresa…"</item>
- <item msgid="5450920562291300229">"Povezano je"</item>
- <item msgid="6332116533879646145">"Suspendovano"</item>
- <item msgid="294459081501073818">"Prekida se veza…"</item>
- <item msgid="1577368920272598676">"Veza je prekinuta"</item>
- <item msgid="7655843177582495451">"Nije uspelo"</item>
- <item msgid="8953752690917593623">"Blokirano"</item>
- <item msgid="4400457817750243671">"Privremeno izbegavanje loše veze"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Traži se…"</item>
+ <item msgid="6222852518007967736">"Povezuje se…"</item>
+ <item msgid="1176401854208153464">"Potvrđuje se identitet…"</item>
+ <item msgid="1377026397901197257">"Preuzima se IP adresa…"</item>
+ <item msgid="7627139816052121509">"Povezano"</item>
+ <item msgid="1598801023719359130">"Suspendovano"</item>
+ <item msgid="9160765456671002324">"Prekida se veza…"</item>
+ <item msgid="8013176736494493734">"Veza je prekinuta"</item>
+ <item msgid="4077393480368783785">"Nije uspelo"</item>
+ <item msgid="605372180740008604">"Blokirano"</item>
+ <item msgid="5102306451432929048">"Privremeno izbegavanje loše veze"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-b+sr+Latn/strings.xml b/libs/WifiTrackerLib/res/values-b+sr+Latn/strings.xml
index 5921dd6b5..8b11c1b04 100644
--- a/libs/WifiTrackerLib/res/values-b+sr+Latn/strings.xml
+++ b/libs/WifiTrackerLib/res/values-b+sr+Latn/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatsko povezivanje je isključeno"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Sačuvao/la: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Automatsko povezivanje nije uspelo"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nema pristupa internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem sa potvrdom identiteta"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Proverite lozinku i probajte ponovo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP konfiguracija je otkazala"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Onemogućeno"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pristupna tačka je privremeno zauzeta"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Privremeno slaba mreža"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Slab signal. Probajte da se približite ruteru."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Kapacitet mreže je premašen. Probajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Povezivanje nije uspelo. Probajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Povezivanje nije uspelo. Probajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Veza je prekinuta"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Sačuvano"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Sa ograničenjem"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Bez ograničenja"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Povezano pomoću aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dostupno preko aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatski povezano pomoću aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatski povezano preko dobavljača ocene mreže"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ograničena veza"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Pristup privatnom DNS serveru nije uspeo"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Uređaj je povezan. Pružanje interneta nije uspelo."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Loš kvalitet"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ništa"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Istekla"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Dodirnite da biste se registrovali"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Dodirnite da biste obnovili pretplatu i povezali se"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Otvara se <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Povezivanje nije uspelo"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Registracija se dovršava…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Dovršavanje registracije nije uspelo. Dodirnite da biste probali ponovo."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registracija je dovršena. Povezuje se…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ova mreža dobija ID SIM kartice koji može da se koristi za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Veoma sporo"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Sporo"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"U redu"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Srednje"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Brzo"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Veoma brzo"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"WiFi trenutno ne može da se automatski poveže"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatsko povezivanje je isključeno"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Sačuvao/la je <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Automatsko povezivanje nije uspelo"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nema pristupa internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem sa potvrdom identiteta"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Proverite lozinku i probajte ponovo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP konfiguracija je otkazala"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Onemogućeno"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pristupna tačka je privremeno zauzeta"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Veza je prekinuta"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Sačuvano"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Sa ograničenjem"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Bez ograničenja"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Povezano preko: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dostupno preko aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatski povezano preko: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatski povezano preko dobavljača ocene mreže"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ograničena veza"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Pristup privatnom DNS serveru nije uspeo"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nema interneta"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ništa"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Isteklo"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Dodirnite da biste se registrovali"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Dodirnite da biste obnovili pretplatu i povezali"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Otvara se <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Povezivanje nije uspelo"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Registracija se dovršava…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Dovršavanje registracije nije uspelo. Dodirnite da biste probali ponovo."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registracija je dovršena. Povezuje se…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ova mreža dobija ID SIM kartice koji može da se koristi za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Veoma spora"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Spora"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Potvrdi"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Srednja"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Brza"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Veoma brza"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-be/arrays.xml b/libs/WifiTrackerLib/res/values-be/arrays.xml
index e6b2c39d1..6b53b51cd 100644
--- a/libs/WifiTrackerLib/res/values-be/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-be/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Ідзе пошук…"</item>
- <item msgid="9055468790485684083">"Ідзе падключэнне…"</item>
- <item msgid="6099499723199990208">"Ідзе аўтэнтыфікацыя…"</item>
- <item msgid="6794055951297347103">"Атрымліваецца IP-адрас…"</item>
- <item msgid="5450920562291300229">"Падключана"</item>
- <item msgid="6332116533879646145">"Прыпынена"</item>
- <item msgid="294459081501073818">"Ідзе адключэнне…"</item>
- <item msgid="1577368920272598676">"Адключана"</item>
- <item msgid="7655843177582495451">"Збой"</item>
- <item msgid="8953752690917593623">"Заблакіравана"</item>
- <item msgid="4400457817750243671">"Сувязь часова палепшана"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Ідзе пошук…"</item>
+ <item msgid="6222852518007967736">"Ідзе падключэнне…"</item>
+ <item msgid="1176401854208153464">"Ідзе аўтэнтыфікацыя…"</item>
+ <item msgid="1377026397901197257">"Атрымліваецца IP-адрас…"</item>
+ <item msgid="7627139816052121509">"Падключана"</item>
+ <item msgid="1598801023719359130">"Прыпынена"</item>
+ <item msgid="9160765456671002324">"Ідзе адключэнне…"</item>
+ <item msgid="8013176736494493734">"Адключана"</item>
+ <item msgid="4077393480368783785">"Не ўдалося"</item>
+ <item msgid="605372180740008604">"Заблакіравана"</item>
+ <item msgid="5102306451432929048">"Сувязь часова палепшана"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-be/strings.xml b/libs/WifiTrackerLib/res/values-be/strings.xml
index 8b9e73fd3..1b5ff5124 100644
--- a/libs/WifiTrackerLib/res/values-be/strings.xml
+++ b/libs/WifiTrackerLib/res/values-be/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Аўтападключэнне выключана"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Захавана праграмай \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Не будзе аўтаматычна падключацца"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Няма доступу да інтэрнэту"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Памылка аўтэнтыфікацыі"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Праверце пароль і паўтарыце спробу"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Збой канфігурацыі IP-адраса"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Выключана"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Пункт доступу часова заняты"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Часова неспрыяльныя ўмовы падключэння да сеткі"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Слабы сігнал. Перамясціцеся бліжэй да маршрутызатара."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Сетка перагружана. Паўтарыце спробу пазней."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Не ўдалося падключыцца. Паўтарыце спробу пазней."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Не ўдалося падключыцца. Паўтарыце спробу пазней."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Адключана"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Захавана"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"З падлікам трафіка"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Без уліку трафіка"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Падключана праз праграму \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Даступна праз праграму \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Аўтаматычна падключана праз праграму \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Аўтаматычна падключана праз пастаўшчыка паслугі ацэнкі сеткі"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Абмежаваныя магчымасці падключэння"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Не ўдалося атрымаць доступ да прыватнага DNS-сервера"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Падключана да прылады. Не ўдалося падключыцца да інтэрнэту."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Нізкая якасць"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Няма"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Тэрмін скончыўся"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Націсніце, каб зарэгістравацца"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Націсніце, каб падоўжыць падпіску і падключыцца"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Адкрываецца <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Не ўдалося падключыцца"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Рэгістрацыя завяршаецца…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Не ўдалося выканаць рэгістрацыю. Дакраніцеся, каб паўтарыць спробу."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Рэгістрацыя завершана. Ідзе падключэнне…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Гэта сетка атрымлівае ідэнтыфікатар SIM-карты, які можа выкарыстоўвацца для адсочвання месцазнаходжання прылады. "<annotation id="url">"Даведацца больш"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Вельмі павольная"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Павольная"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ОК"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Сярэдняя"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Хуткая"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Вельмі хуткая"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Аўтаматычнае падключэнне да Wi-Fi адсутнічае"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Аўтападключэнне выключана"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Захавана праз: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Не будзе аўтаматычна падключацца"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Няма доступу да інтэрнэту"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Памылка аўтэнтыфікацыі"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Праверце пароль і паўтарыце спробу"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Збой канфігурацыі IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Адключана"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Пункт доступу часова заняты"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Адключана"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Захавана"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Сетка з падлікам трафіка"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Сетка без уліку трафіка"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Падключана праз праграму \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Даступна праз: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Аўтаматычна падключана праз: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Аўтаматычна падключана праз пастаўшчыка паслугі ацэнкі сеткі"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Абмежаваныя магчымасці падключэння"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Не ўдалося атрымаць доступ да прыватнага DNS-сервера"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Няма падключэння да інтэрнэту"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Няма"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Тэрмін скончыўся"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Націсніце, каб зарэгістравацца"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Націсніце, каб падоўжыць падпіску і падключыцца"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Адкрываецца <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Не ўдалося падключыцца"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Рэгістрацыя завяршаецца…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Не ўдалося выканаць рэгістрацыю. Дакраніцеся, каб паўтарыць спробу."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Рэгістрацыя завершана. Ідзе падключэнне…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Гэта сетка атрымлівае ідэнтыфікатар SIM-карты, які можа выкарыстоўвацца для адсочвання месцазнаходжання прылады. "<annotation id="url">"Даведацца больш"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Вельмі павольная"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Павольная"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ОК"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Сярэдняя"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Хуткая"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Вельмі хуткая"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bg/arrays.xml b/libs/WifiTrackerLib/res/values-bg/arrays.xml
index 232717ce3..72a1f2096 100644
--- a/libs/WifiTrackerLib/res/values-bg/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-bg/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Сканира се…"</item>
- <item msgid="9055468790485684083">"Установява се връзка…"</item>
- <item msgid="6099499723199990208">"Удостоверява се…"</item>
- <item msgid="6794055951297347103">"IP адресът се извлича…"</item>
- <item msgid="5450920562291300229">"Установена е връзка"</item>
- <item msgid="6332116533879646145">"Спряно"</item>
- <item msgid="294459081501073818">"Връзката се прекратява…"</item>
- <item msgid="1577368920272598676">"Няма връзка"</item>
- <item msgid="7655843177582495451">"Неуспешно"</item>
- <item msgid="8953752690917593623">"Блокирано"</item>
- <item msgid="4400457817750243671">"Временно се избягва лоша връзка"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Сканира се…"</item>
+ <item msgid="6222852518007967736">"Свързва се…"</item>
+ <item msgid="1176401854208153464">"Удостоверява се…"</item>
+ <item msgid="1377026397901197257">"IP адресът се извлича…"</item>
+ <item msgid="7627139816052121509">"Установена е връзка"</item>
+ <item msgid="1598801023719359130">"Спряно"</item>
+ <item msgid="9160765456671002324">"Връзката се прекратява…"</item>
+ <item msgid="8013176736494493734">"Няма връзка"</item>
+ <item msgid="4077393480368783785">"Неуспешно"</item>
+ <item msgid="605372180740008604">"Блокирано"</item>
+ <item msgid="5102306451432929048">"Временно се избягва лоша връзка"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bg/strings.xml b/libs/WifiTrackerLib/res/values-bg/strings.xml
index 4385f9739..4318bbbd5 100644
--- a/libs/WifiTrackerLib/res/values-bg/strings.xml
+++ b/libs/WifiTrackerLib/res/values-bg/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автом. свързване е изкл."</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Запазено от <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Няма да се свърже автоматично"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Няма достъп до интернет"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Проблем при удостоверяването"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Проверете паролата и опитайте отново"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Неуспешно конфигуриране на IP адреса"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Деактивирано"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Точката за достъп временно е пълна"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Временно лоши мрежови условия"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Сигналът е слаб. Приближете се до рутера."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Капацитетът на мрежата е надхвърлен. Опитайте отново по-късно."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Не може да се установи връзка. Опитайте отново по-късно."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Не може да се установи връзка. Опитайте отново по-късно."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Няма връзка"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Запазено"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"С отчитане"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Без отчитане"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Установена е връзка през <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Достъпно през <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Автоматично бе установена връзка през <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Автоматично е установена връзка чрез доставчик на услуги за оценяване на мрежите"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ограничена връзка"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Не може да се осъществи достъп до частния DNS сървър"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Установена е връзка с устройство. Няма интернет."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Ниско качество"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Няма"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Изтекло"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Докоснете, за да се регистрирате"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Докоснете, за да подновите абонамента и да установите връзка"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> се отваря"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Не се установи връзка"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Регистрацията се завършва…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Регистрацията не можа да бъде завършена. Докоснете, за да опитате отново."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Регистрацията е завършена. Установява се връзка…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Тази мрежа получава идентификатор за SIM карта, който може да се използва за проследяване на местоположението на устройството. "<annotation id="url">"Научете повече"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Много бавна"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Бавна"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Добра"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Средна"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Бърза"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Много бърза"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Засега Wi-Fi няма да се свързва автоматично"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Изкл. авт. свързване"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Запазено от <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Няма да се свърже автоматично"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Няма достъп до интернет"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Проблем при удостоверяването"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Проверете паролата и опитайте отново"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Неуспешно конфигуриране на IP адреса"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Деактивирани"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Точката за достъп временно е пълна"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Няма връзка"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Запазено"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"С отчитане"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Без отчитане"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Установена е връзка през <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Достъпно чрез <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Автоматично бе установена връзка през <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Автоматично е установена връзка чрез доставчик на услуги за оценяване на мрежите"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ограничена връзка"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Не може да се осъществи достъп до частния DNS сървър"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Няма интернет"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Няма"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Изтекло"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Докоснете, за да се регистрирате"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Докоснете, за да подновите абонамента и да установите връзка"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> се отваря"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Не можа да се установи връзка"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Регистрацията се завършва…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Регистрацията не можа да бъде завършена. Докоснете, за да опитате отново."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Регистрацията е завършена. Установява се връзка…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Тази мрежа получава идентификатор за SIM карта, който може да се използва за проследяване на местоположението на устройството. "<annotation id="url">"Научете повече"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Много бавна"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Бавна"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ОK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Средна"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Бърза"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Много бърза"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bn/arrays.xml b/libs/WifiTrackerLib/res/values-bn/arrays.xml
index 934fbda96..f98faf640 100644
--- a/libs/WifiTrackerLib/res/values-bn/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-bn/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"স্ক্যান করা হচ্ছে…"</item>
- <item msgid="9055468790485684083">"কানেক্ট করা হচ্ছে…"</item>
- <item msgid="6099499723199990208">"যাচাই করা হচ্ছে…"</item>
- <item msgid="6794055951297347103">"আইপি অ্যাড্রেস সংগ্রহ করা হচ্ছে…"</item>
- <item msgid="5450920562291300229">"কানেক্ট করা আছে"</item>
- <item msgid="6332116533879646145">"সাসপেন্ড করা আছে"</item>
- <item msgid="294459081501073818">"ডিসকানেক্ট করা হচ্ছে…"</item>
- <item msgid="1577368920272598676">"ডিসকানেক্ট করা হয়েছে"</item>
- <item msgid="7655843177582495451">"হয়নি"</item>
- <item msgid="8953752690917593623">"ব্লক করা হয়েছে"</item>
- <item msgid="4400457817750243671">"সাময়িকভাবে খারাপ কানেকশনে কানেক্ট করা হচ্ছে না"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"স্ক্যান করা হচ্ছে…"</item>
+ <item msgid="6222852518007967736">"কানেক্ট করা হচ্ছে…"</item>
+ <item msgid="1176401854208153464">"যাচাইকরণ করা হচ্ছে…"</item>
+ <item msgid="1377026397901197257">"আইপি অ্যাড্রেস সংগ্রহ করা হচ্ছে…"</item>
+ <item msgid="7627139816052121509">"কানেক্ট করা হয়েছে"</item>
+ <item msgid="1598801023719359130">"সাসপেন্ড করা আছে"</item>
+ <item msgid="9160765456671002324">"ডিসকানেক্ট করা হচ্ছে…"</item>
+ <item msgid="8013176736494493734">"ডিসকানেক্ট হয়ে গেছে"</item>
+ <item msgid="4077393480368783785">"হয়নি"</item>
+ <item msgid="605372180740008604">"ব্লক করা হয়েছে"</item>
+ <item msgid="5102306451432929048">"সাময়িকভাবে খারাপ কানেকশন এড়ানো হচ্ছে"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bn/strings.xml b/libs/WifiTrackerLib/res/values-bn/strings.xml
index b5135f3c8..efd8ce578 100644
--- a/libs/WifiTrackerLib/res/values-bn/strings.xml
+++ b/libs/WifiTrackerLib/res/values-bn/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"অটোমেটিক কানেক্ট করার ফিচার বন্ধ আছে"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> সেভ করেছেন"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"অটোমেটিক কানেক্ট করবে না"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ইন্টারনেট কানেকশন নেই"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"যাচাইকরণে কোনও সমস্যা হয়েছে"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"পাসওয়ার্ড দেখে নিয়ে আবার চেষ্টা করুন"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"আইপি কনফিগার করা যায়নি"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"বন্ধ আছে"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"এই মুহূর্তে অ্যাক্সেস পয়েন্টের কোনও কানেকশন ফাঁকা নেই"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"সাময়িকভাবে ভাল নেটওয়ার্ক কানেকশন নেই"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"দুর্বল সিগনাল। রাউটারের কাছে যান।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"নেটওয়ার্কে লোডের সীমা পেরিয়ে গেছে। পরে আবার চেষ্টা করুন।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"কানেক্ট করা যাচ্ছে না। পরে আবার চেষ্টা করুন।"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"কানেক্ট করা যাচ্ছে না। পরে আবার চেষ্টা করুন।"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ডিসকানেক্ট করা হয়েছে"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"সেভ করা হয়েছে"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"মিটার্ড"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"মিটার্ড নয়"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে কানেক্ট করা আছে"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে উপলভ্য"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে অটোমেটিক কানেক্ট করা আছে"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"নেটওয়ার্কের রেটিং প্রদানকারীর মাধ্যমে নিজে থেকে কানেক্ট হয়েছে"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"সীমিত কানেকশন"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ব্যক্তিগত ডিএনএস সার্ভার অ্যাক্সেস করা যাবে না"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ডিভাইসের সাথে কানেক্ট করা। ইন্টারনেট পরিষেবা প্রদান করা যাচ্ছে না।"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"খারাপ কোয়ালিটি"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"নেই"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"মেয়াদ শেষ হয়ে গেছে"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"সাইন-আপ করতে ট্যাপ করুন"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"সাবস্ক্রিপশন রিনিউ করে কানেক্ট করতে ট্যাপ করুন"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> খোলা হচ্ছে"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"কানেক্ট করা যায়নি"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"সাইন-আপ করা হচ্ছে…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"সাইন-আপ করা যায়নি। আবার চেষ্টা করতে ট্যাপ করুন।"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"সাইন-আপ করা হয়ে গেছে। কানেক্ট করা হচ্ছে…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"এই নেটওয়ার্কের কাছে একটি সিম আইডি থাকে যা ব্যবহার করে এই নেটওয়ার্কের সাথে যুক্ত থাকা ডিভাইসের লোকেশন ট্র্যাক করা যেত পারে। "<annotation id="url">"আরও জানুন"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"খুব ধীরে"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ধীরে"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"বুঝেছি"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"মাঝারি"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"দ্রুত"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"খুব দ্রুত"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"এখন ওয়াই-ফাই নিজে থেকে কানেক্ট হবে না"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"অটোমেটিক কানেক্ট করার ফিচার বন্ধ আছে"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> দ্বারা সেভ করা"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"অটোমেটিক কানেক্ট করবে না"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ইন্টারনেট অ্যাক্সেসের সুবিধা নেই"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"যাচাইকরণের সমস্যা"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"পাসওয়ার্ড দেখে আবার চেষ্টা করুন"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP কনফিগারেশনে ব্যর্থতা"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"অক্ষম হয়েছে"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"এই মুহূর্তে অ্যাক্সেস পয়েন্টের কোনও কানেকশন ফাঁকা নেই"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"কানেকশন নেই"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"সংরক্ষিত"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"মিটার্ড"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"পরিমাপ করা নয়"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে কানেক্ট করা আছে"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে উপলভ্য"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g>-এর মাধ্যমে অটোমেটিক কানেক্ট করা আছে"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"নেটওয়ার্কের রেটিং প্রদানকারীর মাধ্যমে অটোমেটিক কানেক্ট"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"সীমিত কানেকশন"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ব্যক্তিগত ডিএনএস সার্ভার অ্যাক্সেস করা যাবে না"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ইন্টারনেট কানেকশন নেই"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"কোনও কিছুই নয়"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"মেয়াদ শেষ হয়ে গেছে"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"সাইন-আপ করতে ট্যাপ করুন"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"সাবস্ক্রিপশন রিনিউ করে কানেক্ট করতে ট্যাপ করুন"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> খোলা হচ্ছে"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"কানেক্ট করা যায়নি"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"সাইন-আপ করা হচ্ছে…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"সাইন-আপ করা যায়নি। আবার চেষ্টা করতে ট্যাপ করুন।"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"সাইন-আপ করা হয়ে গেছে। কানেক্ট করা হচ্ছে…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"এই নেটওয়ার্কের কাছে একটি সিম আইডি থাকে যা ব্যবহার করে ডিভাইসের লোকেশন ট্র্যাক করা যাবে। "<annotation id="url">"আরও জানুন"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"খুব ধীরে"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ধীরে"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ঠিক আছে"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"মাঝারি"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"দ্রুত"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"খুব দ্রুত"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bs/arrays.xml b/libs/WifiTrackerLib/res/values-bs/arrays.xml
index d24412623..9428a3763 100644
--- a/libs/WifiTrackerLib/res/values-bs/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-bs/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Skeniranje…"</item>
- <item msgid="9055468790485684083">"Povezivanje…"</item>
- <item msgid="6099499723199990208">"Autentifikacija…"</item>
- <item msgid="6794055951297347103">"Dobivanje IP adrese…"</item>
- <item msgid="5450920562291300229">"Povezano"</item>
- <item msgid="6332116533879646145">"Obustavljeno"</item>
- <item msgid="294459081501073818">"Prekidanje veze…"</item>
- <item msgid="1577368920272598676">"Veza je prekinuta"</item>
- <item msgid="7655843177582495451">"Neuspješno"</item>
- <item msgid="8953752690917593623">"Blokirano"</item>
- <item msgid="4400457817750243671">"Privremeno izbjegavanje veze lošeg kvaliteta"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Skeniranje…"</item>
+ <item msgid="6222852518007967736">"Povezivanje…"</item>
+ <item msgid="1176401854208153464">"Autentifikacija…"</item>
+ <item msgid="1377026397901197257">"Dobivanje IP adrese…"</item>
+ <item msgid="7627139816052121509">"Povezano"</item>
+ <item msgid="1598801023719359130">"Obustavljeno"</item>
+ <item msgid="9160765456671002324">"Prekidanje veze…"</item>
+ <item msgid="8013176736494493734">"Veza je prekinuta"</item>
+ <item msgid="4077393480368783785">"Neuspješno"</item>
+ <item msgid="605372180740008604">"Blokirano"</item>
+ <item msgid="5102306451432929048">"Privremeno izbjegavanje veza lošeg kvaliteta"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-bs/strings.xml b/libs/WifiTrackerLib/res/values-bs/strings.xml
index 045a8ab72..814da6d14 100644
--- a/libs/WifiTrackerLib/res/values-bs/strings.xml
+++ b/libs/WifiTrackerLib/res/values-bs/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatsko povezivanje je isključeno"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Sačuvano putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Automatsko povezivanje nije moguće"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nema pristupa internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem prilikom autentifikacije"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Provjerite lozinku i pokušajte ponovo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Konfiguriranje IP adrese nije uspjelo"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Onemogućeno"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pristupna tačka je privremeno puna"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Privremeno stanje slabe mreže"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Slab signal. Približite se ruteru."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Mreža je premašila kapacitet. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nije se moguće povezati. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nije se moguće povezati. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Veza je prekinuta"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Sačuvano"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"S naplatom"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Bez naplate"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Povezano putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dostupno putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatski povezano putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatski povezano putem ocjenjivača mreže"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ograničena veza"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Nije moguće pristupiti privatnom DNS serveru"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Povezano s uređajem. Nije moguće pružiti internetsku vezu."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Nizak kvalitet"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ništa"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Isteklo"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Dodirnite za registraciju"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Dodirnite da obnovite pretplatu i povežete se"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Otvaranje <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Povezivanje nije uspjelo"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Završavanje registracije…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Dovršavanje registracije nije uspjelo. Dodirnite da pokušate ponovo."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registracija je završena. Povezivanje…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ova mreža prima ID SIM-a koji se može koristiti za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Veoma sporo"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Sporo"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Uredu"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Srednje"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Brzo"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Veoma brzo"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"WiFi mreža se trenutno ne može automatski povezati"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatsko povezivanje je isključeno"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Sačuvano: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Automatsko povezivanje nije moguće"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nema pristupa internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem pri autentifikaciji"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Provjerite lozinku i pokušajte ponovo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Konfiguracija IP adrese nije uspjela"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Onemogućeno"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pristupna tačka je privremeno puna"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Nije povezano"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Sačuvano"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"S naplatom"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Mreža bez naplate"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Povezano preko <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dostupno putem mreže <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatski povezano putem mreže <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatski povezano putem ocjenjivača mreže"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ograničena veza"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Nije moguće pristupiti privatnom DNS serveru"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nema internetske veze"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ništa"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Isteklo"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Dodirnite za registraciju"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Dodirnite da obnovite pretplatu i povežete se"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Otvaranje <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Povezivanje nije uspjelo"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Završavanje registracije…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registraciju nije moguće izvršiti. Dodirnite da pokušate ponovo."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registracija je završena. Povezivanje…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ova mreža prima ID SIM-a koji se može koristiti za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Veoma sporo"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Sporo"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Uredu"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Srednja brzina"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Brzo"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Veoma brzo"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ca/arrays.xml b/libs/WifiTrackerLib/res/values-ca/arrays.xml
index 3d226f588..d9b5412a4 100644
--- a/libs/WifiTrackerLib/res/values-ca/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ca/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"S\'està cercant…"</item>
- <item msgid="9055468790485684083">"S\'està connectant…"</item>
- <item msgid="6099499723199990208">"S\'està autenticant…"</item>
- <item msgid="6794055951297347103">"S\'està obtenint l\'adreça IP…"</item>
- <item msgid="5450920562291300229">"Connectada"</item>
- <item msgid="6332116533879646145">"Suspesa"</item>
- <item msgid="294459081501073818">"S\'està desconnectant…"</item>
- <item msgid="1577368920272598676">"Desconnectada"</item>
- <item msgid="7655843177582495451">"Incorrecta"</item>
- <item msgid="8953752690917593623">"Bloquejada"</item>
- <item msgid="4400457817750243671">"S\'està evitant temporalment una connexió feble"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"S\'està cercant…"</item>
+ <item msgid="6222852518007967736">"S\'està connectant…"</item>
+ <item msgid="1176401854208153464">"S\'està autenticant…"</item>
+ <item msgid="1377026397901197257">"S\'està obtenint l\'adreça IP…"</item>
+ <item msgid="7627139816052121509">"Connectada"</item>
+ <item msgid="1598801023719359130">"Suspesa"</item>
+ <item msgid="9160765456671002324">"S\'està desconnectant…"</item>
+ <item msgid="8013176736494493734">"Desconnectada"</item>
+ <item msgid="4077393480368783785">"Incorrecta"</item>
+ <item msgid="605372180740008604">"Bloquejada"</item>
+ <item msgid="5102306451432929048">"S\'està evitant temporalment una connexió feble"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ca/strings.xml b/libs/WifiTrackerLib/res/values-ca/strings.xml
index bcdf93178..ea0e9d31b 100644
--- a/libs/WifiTrackerLib/res/values-ca/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ca/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Connexió automàtica desactivada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Desada per <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"No es connectarà automàticament"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"No hi ha accés a Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema d\'autenticació"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Comprova la contrasenya i torna-ho a provar"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Error de configuració d\'IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desactivada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"El punt d\'accés està temporalment ple"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Condicions de xarxa temporalment deficients"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Senyal feble. Prova d\'apropar-te a l\'encaminador."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"La xarxa està sobrecarregada. Torna-ho a provar més tard."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"No es pot establir la connexió. Torna-ho a provar més tard."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"No es pot establir la connexió. Torna-ho a provar més tard."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconnectada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Desada"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"D\'ús mesurat"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"D\'ús no mesurat"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connectada a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponible a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Connectada automàticament a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Connectada automàticament a través d\'un proveïdor de valoració de xarxes"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Connexió limitada"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"No es pot accedir al servidor DNS privat"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connectat al dispositiu. Sense accés a Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Qualitat baixa"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Cap"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Caducada"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toca per registrar-te"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toca per renovar la subscripció i connectar-te"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"S\'està obrint <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"No s\'ha pogut connectar"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"S\'està completant el registre…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"No s\'ha pogut completar el registre. Toca per tornar-ho a provar."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"S\'ha completat el registre. S\'està connectant…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Aquesta xarxa rep un identificador de SIM que es pot utilitzar per fer el seguiment de la ubicació del dispositiu. "<annotation id="url">"Més informació"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Molt lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Acceptable"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Mitjana"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Ràpida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Molt ràpida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Per ara la Wi‑Fi no es connectarà automàticament"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Connexió automàtica desactivada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Desada per <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"No es connectarà automàticament"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No hi ha accés a Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema d\'autenticació"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Comprova la contrasenya i torna-ho a provar"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Error de configuració d\'IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desactivat"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"El punt d\'accés està temporalment ple"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desconnectada"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Desat"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"D\'ús mesurat"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"D\'ús no mesurat"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connectat mitjançant <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponible mitjançant <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Connectada automàticament a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Connectada automàticament a través d\'un proveïdor de valoració de xarxes"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Connexió limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"No es pot accedir al servidor DNS privat"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sense connexió a Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Cap"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Caducada"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toca per registrar-te"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toca per renovar la subscripció i connectar-te"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"S\'està obrint <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"No s\'ha pogut connectar"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"S\'està completant el registre…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"No s\'ha pogut completar el registre. Toca per tornar-ho a provar."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"S\'ha completat el registre. S\'està connectant…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Aquesta xarxa rep un identificador de SIM que es pot utilitzar per fer el seguiment de la ubicació del dispositiu. "<annotation id="url">"Més informació"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Molt lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Correcta"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Mitjana"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Ràpida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Molt ràpida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-cs/arrays.xml b/libs/WifiTrackerLib/res/values-cs/arrays.xml
index 99b6e8299..b28d2d1f0 100644
--- a/libs/WifiTrackerLib/res/values-cs/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-cs/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Vyhledávání…"</item>
- <item msgid="9055468790485684083">"Připojování…"</item>
- <item msgid="6099499723199990208">"Ověřování…"</item>
- <item msgid="6794055951297347103">"Načítání IP adresy…"</item>
- <item msgid="5450920562291300229">"Připojeno"</item>
- <item msgid="6332116533879646145">"Pozastaven"</item>
- <item msgid="294459081501073818">"Odpojování…"</item>
- <item msgid="1577368920272598676">"Odpojeno"</item>
- <item msgid="7655843177582495451">"Neúspěšné"</item>
- <item msgid="8953752690917593623">"Blokováno"</item>
- <item msgid="4400457817750243671">"Dočasné předcházení slabému připojení"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Vyhledávání…"</item>
+ <item msgid="6222852518007967736">"Připojování…"</item>
+ <item msgid="1176401854208153464">"Ověřování…"</item>
+ <item msgid="1377026397901197257">"Načítání IP adresy…"</item>
+ <item msgid="7627139816052121509">"Připojeno"</item>
+ <item msgid="1598801023719359130">"Pozastaveno"</item>
+ <item msgid="9160765456671002324">"Odpojování…"</item>
+ <item msgid="8013176736494493734">"Odpojeno"</item>
+ <item msgid="4077393480368783785">"Neúspěšné"</item>
+ <item msgid="605372180740008604">"Blokováno"</item>
+ <item msgid="5102306451432929048">"Dočasné předcházení slabému připojení"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-cs/strings.xml b/libs/WifiTrackerLib/res/values-cs/strings.xml
index 027d9730d..fe08f9665 100644
--- a/libs/WifiTrackerLib/res/values-cs/strings.xml
+++ b/libs/WifiTrackerLib/res/values-cs/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatické připojení je vypnuté"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Uloženo uživatelem <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nelze se automaticky připojit"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nejste připojeni k internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problém s ověřením"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Zkontrolujte heslo a zkuste to znovu"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Selhání konfigurace protokolu IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Vypnuto"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Přístupový bod je dočasně zaplněn"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Dočasně slabé připojení k síti"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Slabý signál. Zkuste se přesunout blíž k routeru."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Síť je přetížená. Zkuste to později."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nejde se připojit. Zkuste to později."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nejde se připojit. Zkuste to později."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Odpojeno"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Uloženo"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Měřená"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Neměřená"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Připojeno přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dostupné přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automaticky připojeno přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automaticky připojeno přes poskytovatele hodnocení sítí"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Omezené připojení"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Nelze získat přístup k soukromému serveru DNS"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Připojeno k zařízení. Internet není k dispozici."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Nízká kvalita"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"–"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Vypršelo"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Klepnutím se zaregistrujete"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Klepnutím obnovíte předplatné a připojíte se"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Spouštění aplikace <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nelze se připojit"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Dokončování registrace…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registraci se nepodařilo dokončit. Klepnutím opakujte akci."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registrace byla dokončena. Připojování…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Tato síť dostane identifikátor SIM karty, pomocí kterého lze sledovat polohu zařízení. "<annotation id="url">"Další informace"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Velmi pomalá"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Pomalá"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Střední"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rychlá"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Velmi rychlá"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi se prozatím nebude připojovat automaticky"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatické připojení je vypnuté"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Uloženo uživatelem <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nelze se automaticky připojit"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nejste připojeni k internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problém s ověřením"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Zkontrolujte heslo a zkuste to znovu"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Selhání konfigurace protokolu IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Vypnuto"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Přístupový bod je dočasně zaplněn"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Odpojeno"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Uloženo"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Měřená"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Neměřená"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Připojeno přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dostupné přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automaticky připojeno přes <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automaticky připojeno přes poskytovatele hodnocení sítí"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Omezené připojení"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Nelze získat přístup k soukromému serveru DNS"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nejste připojeni k internetu"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Žádné"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Platnost vypršela"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Klepnutím se zaregistrujete"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Klepnutím obnovíte předplatné a připojíte se"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Spouštění aplikace <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nelze se připojit"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Dokončování registrace…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registraci se nepodařilo dokončit. Klepnutím opakujte akci."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registrace byla dokončena. Připojování…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Tato síť dostane identifikátor SIM karty, pomocí kterého lze sledovat polohu zařízení. "<annotation id="url">"Další informace"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Velmi pomalá"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Pomalá"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Střední"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rychlá"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Velmi rychlá"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-da/arrays.xml b/libs/WifiTrackerLib/res/values-da/arrays.xml
index f447f76b7..118369b39 100644
--- a/libs/WifiTrackerLib/res/values-da/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-da/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Søger…"</item>
- <item msgid="9055468790485684083">"Opretter forbindelse…"</item>
- <item msgid="6099499723199990208">"Godkender…"</item>
- <item msgid="6794055951297347103">"Henter IP-adresse…"</item>
- <item msgid="5450920562291300229">"Forbundet"</item>
- <item msgid="6332116533879646145">"Suspenderet"</item>
- <item msgid="294459081501073818">"Afbryder…"</item>
- <item msgid="1577368920272598676">"Afbrudt"</item>
- <item msgid="7655843177582495451">"Mislykkedes"</item>
- <item msgid="8953752690917593623">"Blokeret"</item>
- <item msgid="4400457817750243671">"Undgår midlertidigt dårlig forbindelse"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scanner…"</item>
+ <item msgid="6222852518007967736">"Opretter forbindelse…"</item>
+ <item msgid="1176401854208153464">"Godkender…"</item>
+ <item msgid="1377026397901197257">"Henter IP-adresse…"</item>
+ <item msgid="7627139816052121509">"Forbundet"</item>
+ <item msgid="1598801023719359130">"Suspenderet"</item>
+ <item msgid="9160765456671002324">"Afbryder…"</item>
+ <item msgid="8013176736494493734">"Afbrudt"</item>
+ <item msgid="4077393480368783785">"Mislykkedes"</item>
+ <item msgid="605372180740008604">"Blokeret"</item>
+ <item msgid="5102306451432929048">"Undgår midlertidigt dårlig forbindelse"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-da/strings.xml b/libs/WifiTrackerLib/res/values-da/strings.xml
index fd089a113..f74d53398 100644
--- a/libs/WifiTrackerLib/res/values-da/strings.xml
+++ b/libs/WifiTrackerLib/res/values-da/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatisk forbindelse er deaktiveret"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Gemt af <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Der oprettes ikke automatisk forbindelse"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ingen internetadgang"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem med godkendelse"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Tjek adgangskoden, og prøv igen"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-konfigurationsfejl"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Deaktiveret"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Adgangspunktet er midlertidigt fuldt"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Midlertidig dårlig netværksforbindelse"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Svagt signal. Prøv at rykke tættere på routeren."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Netværkets kapacitet er overskredet. Prøv igen senere."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Der kan ikke oprettes forbindelse. Prøv igen senere."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Der kan ikke oprettes forbindelse. Prøv igen senere."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Afbrudt"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gemt"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Forbrugsafregnet"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Ikke forbrugsafregnet"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Forbundet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tilgængeligt via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatisk forbundet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatisk forbundet via udbyder af netværksvurdering"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Begrænset forbindelse"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Der er ikke adgang til den private DNS-server"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Forbundet til enheden. Der er ikke noget internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Dårlig kvalitet"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ingen"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Udløbet"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tryk for at registrere"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tryk for at forny abonnementet, og opret forbindelse"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Åbner <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Der kunne ikke oprettes forbindelse"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Fuldfører registrering…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registreringen kunne ikke fuldføres. Tryk for at prøve igen."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registreringen er fuldført. Opretter forbindelse…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Dette netværk kræver et SIM-id, der kan bruges til at spore enhedens lokation. "<annotation id="url">"Få flere oplysninger"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Meget langsom"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Langsom"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Middel"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Hurtig"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Meget hurtig"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Der oprettes ikke automatisk forbindelse til Wi-Fi-netværket i øjeblikket"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatisk forbindelse til Wi-Fi er deaktiveret"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Gemt af <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Der oprettes ikke automatisk forbindelse"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ingen internetadgang"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem med godkendelse"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Tjek adgangskoden, og prøv igen"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-konfigurationsfejl"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Deaktiveret"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Adgangspunktet er midlertidigt fuldt"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Afbrudt"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Gemt"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Forbrugsafregnet"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Ikke forbrugsafregnet"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Forbundet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Tilgængeligt via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Der er oprettet automatisk forbindelse via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatisk forbundet via udbyder af netværksvurdering"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Begrænset forbindelse"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Der er ikke adgang til den private DNS-server"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Intet internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ingen"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Udløbet"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tryk for at registrere"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tryk for at forny abonnementet, og opret forbindelse"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Åbner <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Der kunne ikke oprettes forbindelse"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Fuldfører registrering…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registreringen kunne ikke fuldføres. Tryk for at prøve igen."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registreringen er fuldført. Opretter forbindelse…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Dette netværk kræver et SIM-id, der kan bruges til at spore enhedens placering. "<annotation id="url">"Få flere oplysninger"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Meget langsom"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Langsom"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Middel"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Hurtig"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Meget hurtig"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-de/arrays.xml b/libs/WifiTrackerLib/res/values-de/arrays.xml
index 581e4b350..618348c3b 100644
--- a/libs/WifiTrackerLib/res/values-de/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-de/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Wird gescannt…"</item>
- <item msgid="9055468790485684083">"Verbindung wird hergestellt…"</item>
- <item msgid="6099499723199990208">"Wird authentifiziert…"</item>
- <item msgid="6794055951297347103">"IP-Adresse wird abgerufen…"</item>
- <item msgid="5450920562291300229">"Verbunden"</item>
- <item msgid="6332116533879646145">"Gesperrt"</item>
- <item msgid="294459081501073818">"Verbindung wird getrennt…"</item>
- <item msgid="1577368920272598676">"Nicht verbunden"</item>
- <item msgid="7655843177582495451">"Fehlgeschlagen"</item>
- <item msgid="8953752690917593623">"Blockiert"</item>
- <item msgid="4400457817750243671">"Schlechte Internetverbindung wird vorübergehend vermieden"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scan läuft…"</item>
+ <item msgid="6222852518007967736">"Verbindung wird hergestellt…"</item>
+ <item msgid="1176401854208153464">"Wird authentifiziert…"</item>
+ <item msgid="1377026397901197257">"IP-Adresse wird abgerufen…"</item>
+ <item msgid="7627139816052121509">"Verbunden"</item>
+ <item msgid="1598801023719359130">"Gesperrt"</item>
+ <item msgid="9160765456671002324">"Verbindung wird getrennt…"</item>
+ <item msgid="8013176736494493734">"Nicht verbunden"</item>
+ <item msgid="4077393480368783785">"Fehlgeschlagen"</item>
+ <item msgid="605372180740008604">"Blockiert"</item>
+ <item msgid="5102306451432929048">"Schlechte Internetverbindung wird vorübergehend vermieden"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-de/strings.xml b/libs/WifiTrackerLib/res/values-de/strings.xml
index 021452961..494c28383 100644
--- a/libs/WifiTrackerLib/res/values-de/strings.xml
+++ b/libs/WifiTrackerLib/res/values-de/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatische Verbindung ist deaktiviert"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Gespeichert durch <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Kein automatischer Verbindungsaufbau"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Kein Internetzugriff"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Authentifizierungsproblem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Prüfe das Passwort und versuch es noch einmal"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-Konfigurationsfehler"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Deaktiviert"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Zugangspunkt vorübergehend voll belegt"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Vorübergehend schlechte Netzwerkverbindung"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Schwaches Signal. Geh näher an den Router heran."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Das Netzwerk ist ausgelastet. Versuch es später noch einmal."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Verbindung nicht möglich. Versuch es später noch einmal."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Verbindung nicht möglich. Versuch es später noch einmal."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Nicht verbunden"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gespeichert"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Kostenpflichtig"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Ohne Datenlimit"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Verbunden über <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Über <xliff:g id="NAME">%1$s</xliff:g> verfügbar"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatisch verbunden über <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatisch über Anbieter von Netzwerkbewertungen verbunden"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Eingeschränkte Verbindung"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Auf den privaten DNS-Server kann nicht zugegriffen werden"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Mit Gerät verbunden. Internetverbindung nicht möglich."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Niedrige Qualität"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"–"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Abgelaufen"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Zum Anmelden tippen"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tippen, um das Abo zu verlängern und eine Verbindung herzustellen"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> wird geöffnet"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Verbindung nicht möglich"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Anmeldung wird abgeschlossen…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registrierung konnte nicht abgeschlossen werden. Tippe, um es noch einmal zu versuchen."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registrierung abgeschlossen. Verbindung wird hergestellt…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Dieses Netzwerk empfängt eine SIM-ID, mit der der Gerätestandort erfasst werden kann. "<annotation id="url">"Weitere Informationen"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Sehr langsam"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Langsam"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Mittel"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Schnell"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Sehr schnell"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Zurzeit wird keine automatische Verbindung mit dem WLAN hergestellt"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatische Verbindung ist deaktiviert"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Gespeichert durch <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Kein automatischer Verbindungsaufbau"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Kein Internetzugriff"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Authentifizierungsproblem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Prüfe das Passwort und versuch es noch einmal"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-Konfigurationsfehler"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Deaktiviert"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Zugangspunkt vorübergehend voll belegt"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Nicht verbunden"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Gespeichert"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Kostenpflichtig"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Ohne Datenlimit"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Verbunden über <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Über <xliff:g id="NAME">%1$s</xliff:g> verfügbar"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatisch verbunden über <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatisch über Anbieter von Netzwerkbewertungen verbunden"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Eingeschränkte Verbindung"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Auf den privaten DNS-Server kann nicht zugegriffen werden"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Kein Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Keine"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Abgelaufen"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Zum Registrieren tippen"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tippen, um das Abo zu verlängern und eine Verbindung herzustellen"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> wird geöffnet"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Verbindung nicht möglich"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Registrierung wird abgeschlossen…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registrierung konnte nicht abgeschlossen werden. Tippe, um es noch einmal zu versuchen."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registrierung abgeschlossen. Verbindung wird hergestellt…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Dieses Netzwerk empfängt eine SIM-ID, mit der der Gerätestandort erfasst werden kann. "<annotation id="url">"Weitere Informationen."</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Sehr langsam"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Langsam"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Ok"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Mittel"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Schnell"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Sehr schnell"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-el/arrays.xml b/libs/WifiTrackerLib/res/values-el/arrays.xml
index dcc374807..b5cf1f540 100644
--- a/libs/WifiTrackerLib/res/values-el/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-el/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Σάρωση…"</item>
- <item msgid="9055468790485684083">"Σύνδεση…"</item>
- <item msgid="6099499723199990208">"Έλεγχος ταυτότητας…"</item>
- <item msgid="6794055951297347103">"Λήψη διεύθυνσης IP…"</item>
- <item msgid="5450920562291300229">"Συνδέθηκε"</item>
- <item msgid="6332116533879646145">"Σε αναστολή"</item>
- <item msgid="294459081501073818">"Αποσύνδεση…"</item>
- <item msgid="1577368920272598676">"Αποσυνδέθηκε"</item>
- <item msgid="7655843177582495451">"Ανεπιτυχής"</item>
- <item msgid="8953752690917593623">"Αποκλείστηκε"</item>
- <item msgid="4400457817750243671">"Προσωρινή αποφυγή αδύναμης σύνδεσης"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Σάρωση…"</item>
+ <item msgid="6222852518007967736">"Σύνδεση…"</item>
+ <item msgid="1176401854208153464">"Έλεγχος ταυτότητας…"</item>
+ <item msgid="1377026397901197257">"Λήψη διεύθυνσης IP…"</item>
+ <item msgid="7627139816052121509">"Συνδέθηκε"</item>
+ <item msgid="1598801023719359130">"Σε αναστολή"</item>
+ <item msgid="9160765456671002324">"Αποσύνδεση…"</item>
+ <item msgid="8013176736494493734">"Αποσυνδέθηκε"</item>
+ <item msgid="4077393480368783785">"Ανεπιτυχής"</item>
+ <item msgid="605372180740008604">"Αποκλείστηκε"</item>
+ <item msgid="5102306451432929048">"Προσωρινή αποφυγή αδύναμης σύνδεσης"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-el/strings.xml b/libs/WifiTrackerLib/res/values-el/strings.xml
index a217defba..6311bfb9c 100644
--- a/libs/WifiTrackerLib/res/values-el/strings.xml
+++ b/libs/WifiTrackerLib/res/values-el/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Η αυτ. σύνδεση είναι ανενεργή"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Αποθηκεύτηκε από <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Δεν συνδέεται αυτόματα"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Δεν υπάρχει πρόσβαση στο διαδίκτυο"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Πρόβλημα ελέγχου ταυτότητας"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Ελέγξτε τον κωδικό πρόσβασης και δοκιμάστε ξανά"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Αποτυχία διαμόρφωσης διεύθυνσης IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Απενεργοποιημένη"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Το σημείο πρόσβασης είναι προσωρινά πλήρες"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Προσωρινά κακές συνθήκες δικτύου"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Το σήμα είναι ασθενές. Δοκιμάστε να μετακινηθείτε πιο κοντά στον δρομολογητή."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Υπέρβαση χωρητικότητας δικτύου. Δοκιμάστε ξανά αργότερα."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Δεν είναι δυνατή η σύνδεση. Δοκιμάστε ξανά αργότερα."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Η σύνδεση δεν είναι δυνατή. Δοκιμάστε ξανά αργότερα."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Αποσυνδέθηκε"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Αποθηκεύτηκε"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Με ογκοχρέωση"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Χωρίς περιορισμούς"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Συνδέθηκε μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Διαθέσιμο μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Συνδέθηκε αυτόματα μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Συνδέθηκε αυτόματα μέσω παρόχου αξιολόγησης δικτύου"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Περιορισμένη σύνδεση"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Δεν είναι δυνατή η πρόσβαση στον ιδιωτικό διακομιστή DNS."</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Συνδέθηκε στη συσκευή. Δεν είναι δυνατή η παροχή διαδικτύου."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Χαμηλή ποιότητα"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Καμία"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Έληξε"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Πατήστε για εγγραφή"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Πατήστε, για να ανανεώσετε τη συνδρομή σας και να συνδεθείτε."</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Άνοιγμα <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Αδυναμία σύνδεσης"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Ολοκλήρωση εγγραφής…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Δεν ήταν δυνατή η ολοκλήρωση της εγγραφής. Πατήστε, για να δοκιμάσετε ξανά."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Η εγγραφή ολοκληρώθηκε. Σύνδεση…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Αυτό το δίκτυο λαμβάνει ένα αναγνωριστικό SIM το οποίο μπορεί να χρησιμοποιηθεί για τον εντοπισμό της τοποθεσίας της συσκευής. "<annotation id="url">"Μάθετε περισσότερα"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Πολύ αργή"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Αργή"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ΟΚ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Μέτρια"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Γρήγορη"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Πολύ γρήγορη"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Δεν θα γίνεται προς το παρόν αυτόματη σύνδεση Wi-Fi"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Η αυτόματη σύνδεση είναι απενεργοποιημένη"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Αποθηκεύτηκε από <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Δεν συνδέεται αυτόματα"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Δεν υπάρχει πρόσβαση στο διαδίκτυο."</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Πρόβλημα ελέγχου ταυτότητας"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Ελέγξτε τον κωδικό πρόσβασης και δοκιμάστε ξανά"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Αποτυχία διαμόρφωσης διεύθυνσης IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Απενεργοποιημένο"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Το σημείο πρόσβασης είναι προσωρινά πλήρες"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Αποσυνδεδεμένο"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Αποθηκευμένο"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Μέτρηση με βάση τη χρήση"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Χωρίς μέτρηση με βάση τη χρήση"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Συνδέθηκε μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Διαθέσιμο μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Συνδέθηκε αυτόματα μέσω <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Συνδέθηκε αυτόματα μέσω παρόχου αξιολόγησης δικτύου"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Περιορισμένη σύνδεση"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Δεν είναι δυνατή η πρόσβαση στον ιδιωτικό διακομιστή DNS."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Χωρίς σύνδεση στο διαδίκτυο"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Καμία"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Έληξε"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Πατήστε για εγγραφή"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Πατήστε για να ανανεώσετε τη συνδρομή σας και να συνδεθείτε."</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Άνοιγμα <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Αδυναμία σύνδεσης"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Ολοκλήρωση εγγραφής…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Δεν ήταν δυνατή η ολοκλήρωση της εγγραφής. Πατήστε για να δοκιμάσετε ξανά."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Η εγγραφή ολοκληρώθηκε. Σύνδεση…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Αυτό το δίκτυο λαμβάνει ένα αναγνωριστικό SIM το οποίο μπορεί να χρησιμοποιηθεί για τον εντοπισμό της τοποθεσίας της συσκευής. "<annotation id="url">"Μάθετε περισσότερα"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Πολύ αργή"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Αργή"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ΟΚ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Μέτρια"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Γρήγορη"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Πολύ γρήγορη"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rAU/arrays.xml b/libs/WifiTrackerLib/res/values-en-rAU/arrays.xml
index 4d41e3fb0..904043f33 100644
--- a/libs/WifiTrackerLib/res/values-en-rAU/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-en-rAU/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Scanning…"</item>
- <item msgid="9055468790485684083">"Connecting…"</item>
- <item msgid="6099499723199990208">"Authenticating…"</item>
- <item msgid="6794055951297347103">"Obtaining IP address…"</item>
- <item msgid="5450920562291300229">"Connected"</item>
- <item msgid="6332116533879646145">"Suspended"</item>
- <item msgid="294459081501073818">"Disconnecting…"</item>
- <item msgid="1577368920272598676">"Disconnected"</item>
- <item msgid="7655843177582495451">"Unsuccessful"</item>
- <item msgid="8953752690917593623">"Blocked"</item>
- <item msgid="4400457817750243671">"Temporarily avoiding poor connection"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scanning…"</item>
+ <item msgid="6222852518007967736">"Connecting…"</item>
+ <item msgid="1176401854208153464">"Authenticating…"</item>
+ <item msgid="1377026397901197257">"Obtaining IP address…"</item>
+ <item msgid="7627139816052121509">"Connected"</item>
+ <item msgid="1598801023719359130">"Suspended"</item>
+ <item msgid="9160765456671002324">"Disconnecting…"</item>
+ <item msgid="8013176736494493734">"Disconnected"</item>
+ <item msgid="4077393480368783785">"Unsuccessful"</item>
+ <item msgid="605372180740008604">"Blocked"</item>
+ <item msgid="5102306451432929048">"Temporarily avoiding poor connection"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rAU/strings.xml b/libs/WifiTrackerLib/res/values-en-rAU/strings.xml
index 8489c2139..981162b6a 100644
--- a/libs/WifiTrackerLib/res/values-en-rAU/strings.xml
+++ b/libs/WifiTrackerLib/res/values-en-rAU/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Auto-connect is off"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Won’t automatically connect"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"No Internet access"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Authentication problem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Check password and try again"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP configuration failure"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Disabled"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Access point temporarily full"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Temporary poor network conditions"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Weak signal. Try moving closer to the router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Network is over capacity. Try again later."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Disconnected"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saved"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Metered"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Unmetered"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatically connected via network rating provider"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Limited connection"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Private DNS server cannot be accessed"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connected to device. Can\'t provide Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Low quality"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"None"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expired"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tap to sign up"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tap to renew subscription and connect"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Couldn’t connect"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completing sign-up…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Couldn’t complete sign-up. Tap to try again."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Sign-up complete. Connecting…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Very slow"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Slow"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Fast"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Very fast"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi won’t auto-connect for now"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Auto-connect is off"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Won’t automatically connect"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No Internet access"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Authentication problem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Check password and try again"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP configuration failure"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Disabled"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Access point temporarily full"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Disconnected"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saved"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Metered"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Unmetered"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatically connected via network rating provider"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Limited connection"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Private DNS server cannot be accessed"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"No Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"None"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expired"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tap to sign up"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tap to renew subscription and connect"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Couldn’t connect"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completing sign-up…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Couldn’t complete sign-up. Tap to try again."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Sign-up complete. Connecting…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Very slow"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Slow"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medium"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Fast"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Very fast"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rCA/arrays.xml b/libs/WifiTrackerLib/res/values-en-rCA/arrays.xml
index 4d41e3fb0..904043f33 100644
--- a/libs/WifiTrackerLib/res/values-en-rCA/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-en-rCA/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Scanning…"</item>
- <item msgid="9055468790485684083">"Connecting…"</item>
- <item msgid="6099499723199990208">"Authenticating…"</item>
- <item msgid="6794055951297347103">"Obtaining IP address…"</item>
- <item msgid="5450920562291300229">"Connected"</item>
- <item msgid="6332116533879646145">"Suspended"</item>
- <item msgid="294459081501073818">"Disconnecting…"</item>
- <item msgid="1577368920272598676">"Disconnected"</item>
- <item msgid="7655843177582495451">"Unsuccessful"</item>
- <item msgid="8953752690917593623">"Blocked"</item>
- <item msgid="4400457817750243671">"Temporarily avoiding poor connection"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scanning…"</item>
+ <item msgid="6222852518007967736">"Connecting…"</item>
+ <item msgid="1176401854208153464">"Authenticating…"</item>
+ <item msgid="1377026397901197257">"Obtaining IP address…"</item>
+ <item msgid="7627139816052121509">"Connected"</item>
+ <item msgid="1598801023719359130">"Suspended"</item>
+ <item msgid="9160765456671002324">"Disconnecting…"</item>
+ <item msgid="8013176736494493734">"Disconnected"</item>
+ <item msgid="4077393480368783785">"Unsuccessful"</item>
+ <item msgid="605372180740008604">"Blocked"</item>
+ <item msgid="5102306451432929048">"Temporarily avoiding poor connection"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rCA/strings.xml b/libs/WifiTrackerLib/res/values-en-rCA/strings.xml
index 8489c2139..981162b6a 100644
--- a/libs/WifiTrackerLib/res/values-en-rCA/strings.xml
+++ b/libs/WifiTrackerLib/res/values-en-rCA/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Auto-connect is off"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Won’t automatically connect"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"No Internet access"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Authentication problem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Check password and try again"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP configuration failure"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Disabled"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Access point temporarily full"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Temporary poor network conditions"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Weak signal. Try moving closer to the router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Network is over capacity. Try again later."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Disconnected"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saved"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Metered"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Unmetered"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatically connected via network rating provider"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Limited connection"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Private DNS server cannot be accessed"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connected to device. Can\'t provide Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Low quality"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"None"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expired"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tap to sign up"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tap to renew subscription and connect"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Couldn’t connect"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completing sign-up…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Couldn’t complete sign-up. Tap to try again."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Sign-up complete. Connecting…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Very slow"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Slow"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Fast"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Very fast"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi won’t auto-connect for now"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Auto-connect is off"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Won’t automatically connect"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No Internet access"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Authentication problem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Check password and try again"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP configuration failure"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Disabled"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Access point temporarily full"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Disconnected"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saved"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Metered"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Unmetered"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatically connected via network rating provider"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Limited connection"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Private DNS server cannot be accessed"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"No Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"None"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expired"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tap to sign up"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tap to renew subscription and connect"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Couldn’t connect"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completing sign-up…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Couldn’t complete sign-up. Tap to try again."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Sign-up complete. Connecting…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Very slow"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Slow"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medium"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Fast"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Very fast"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rGB/arrays.xml b/libs/WifiTrackerLib/res/values-en-rGB/arrays.xml
index 4d41e3fb0..904043f33 100644
--- a/libs/WifiTrackerLib/res/values-en-rGB/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-en-rGB/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Scanning…"</item>
- <item msgid="9055468790485684083">"Connecting…"</item>
- <item msgid="6099499723199990208">"Authenticating…"</item>
- <item msgid="6794055951297347103">"Obtaining IP address…"</item>
- <item msgid="5450920562291300229">"Connected"</item>
- <item msgid="6332116533879646145">"Suspended"</item>
- <item msgid="294459081501073818">"Disconnecting…"</item>
- <item msgid="1577368920272598676">"Disconnected"</item>
- <item msgid="7655843177582495451">"Unsuccessful"</item>
- <item msgid="8953752690917593623">"Blocked"</item>
- <item msgid="4400457817750243671">"Temporarily avoiding poor connection"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scanning…"</item>
+ <item msgid="6222852518007967736">"Connecting…"</item>
+ <item msgid="1176401854208153464">"Authenticating…"</item>
+ <item msgid="1377026397901197257">"Obtaining IP address…"</item>
+ <item msgid="7627139816052121509">"Connected"</item>
+ <item msgid="1598801023719359130">"Suspended"</item>
+ <item msgid="9160765456671002324">"Disconnecting…"</item>
+ <item msgid="8013176736494493734">"Disconnected"</item>
+ <item msgid="4077393480368783785">"Unsuccessful"</item>
+ <item msgid="605372180740008604">"Blocked"</item>
+ <item msgid="5102306451432929048">"Temporarily avoiding poor connection"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rGB/strings.xml b/libs/WifiTrackerLib/res/values-en-rGB/strings.xml
index 8489c2139..981162b6a 100644
--- a/libs/WifiTrackerLib/res/values-en-rGB/strings.xml
+++ b/libs/WifiTrackerLib/res/values-en-rGB/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Auto-connect is off"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Won’t automatically connect"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"No Internet access"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Authentication problem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Check password and try again"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP configuration failure"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Disabled"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Access point temporarily full"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Temporary poor network conditions"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Weak signal. Try moving closer to the router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Network is over capacity. Try again later."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Disconnected"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saved"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Metered"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Unmetered"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatically connected via network rating provider"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Limited connection"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Private DNS server cannot be accessed"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connected to device. Can\'t provide Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Low quality"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"None"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expired"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tap to sign up"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tap to renew subscription and connect"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Couldn’t connect"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completing sign-up…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Couldn’t complete sign-up. Tap to try again."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Sign-up complete. Connecting…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Very slow"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Slow"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Fast"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Very fast"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi won’t auto-connect for now"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Auto-connect is off"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Won’t automatically connect"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No Internet access"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Authentication problem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Check password and try again"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP configuration failure"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Disabled"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Access point temporarily full"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Disconnected"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saved"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Metered"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Unmetered"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatically connected via network rating provider"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Limited connection"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Private DNS server cannot be accessed"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"No Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"None"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expired"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tap to sign up"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tap to renew subscription and connect"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Couldn’t connect"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completing sign-up…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Couldn’t complete sign-up. Tap to try again."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Sign-up complete. Connecting…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Very slow"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Slow"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medium"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Fast"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Very fast"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rIN/arrays.xml b/libs/WifiTrackerLib/res/values-en-rIN/arrays.xml
index 4d41e3fb0..904043f33 100644
--- a/libs/WifiTrackerLib/res/values-en-rIN/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-en-rIN/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Scanning…"</item>
- <item msgid="9055468790485684083">"Connecting…"</item>
- <item msgid="6099499723199990208">"Authenticating…"</item>
- <item msgid="6794055951297347103">"Obtaining IP address…"</item>
- <item msgid="5450920562291300229">"Connected"</item>
- <item msgid="6332116533879646145">"Suspended"</item>
- <item msgid="294459081501073818">"Disconnecting…"</item>
- <item msgid="1577368920272598676">"Disconnected"</item>
- <item msgid="7655843177582495451">"Unsuccessful"</item>
- <item msgid="8953752690917593623">"Blocked"</item>
- <item msgid="4400457817750243671">"Temporarily avoiding poor connection"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scanning…"</item>
+ <item msgid="6222852518007967736">"Connecting…"</item>
+ <item msgid="1176401854208153464">"Authenticating…"</item>
+ <item msgid="1377026397901197257">"Obtaining IP address…"</item>
+ <item msgid="7627139816052121509">"Connected"</item>
+ <item msgid="1598801023719359130">"Suspended"</item>
+ <item msgid="9160765456671002324">"Disconnecting…"</item>
+ <item msgid="8013176736494493734">"Disconnected"</item>
+ <item msgid="4077393480368783785">"Unsuccessful"</item>
+ <item msgid="605372180740008604">"Blocked"</item>
+ <item msgid="5102306451432929048">"Temporarily avoiding poor connection"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rIN/strings.xml b/libs/WifiTrackerLib/res/values-en-rIN/strings.xml
index 8489c2139..981162b6a 100644
--- a/libs/WifiTrackerLib/res/values-en-rIN/strings.xml
+++ b/libs/WifiTrackerLib/res/values-en-rIN/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Auto-connect is off"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Won’t automatically connect"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"No Internet access"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Authentication problem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Check password and try again"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP configuration failure"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Disabled"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Access point temporarily full"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Temporary poor network conditions"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Weak signal. Try moving closer to the router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Network is over capacity. Try again later."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Can\'t connect. Try again later."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Disconnected"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saved"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Metered"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Unmetered"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatically connected via network rating provider"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Limited connection"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Private DNS server cannot be accessed"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connected to device. Can\'t provide Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Low quality"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"None"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expired"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tap to sign up"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tap to renew subscription and connect"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Couldn’t connect"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completing sign-up…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Couldn’t complete sign-up. Tap to try again."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Sign-up complete. Connecting…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Very slow"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Slow"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Fast"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Very fast"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi won’t auto-connect for now"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Auto-connect is off"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saved by <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Won’t automatically connect"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No Internet access"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Authentication problem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Check password and try again"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP configuration failure"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Disabled"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Access point temporarily full"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Disconnected"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saved"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Metered"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Unmetered"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Available via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatically connected via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatically connected via network rating provider"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Limited connection"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Private DNS server cannot be accessed"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"No Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"None"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expired"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tap to sign up"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tap to renew subscription and connect"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Opening <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Couldn’t connect"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completing sign-up…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Couldn’t complete sign-up. Tap to try again."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Sign-up complete. Connecting…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"This network receives a SIM ID that can be used to track device location. "<annotation id="url">"Learn more"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Very slow"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Slow"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medium"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Fast"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Very fast"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rXC/arrays.xml b/libs/WifiTrackerLib/res/values-en-rXC/arrays.xml
index 454651d60..27b958048 100644
--- a/libs/WifiTrackerLib/res/values-en-rXC/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-en-rXC/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‎‎‎‎‏‎‎‎‎‎‏‎‏‎‏‎‏‎‎‎‎‎‏‏‎‏‏‎‏‎‏‎‎‏‏‎‎‎‏‏‏‏‎‎‎‏‏‏‎‎‏‏‏‏‏‏‏‏‏‎Scanning…‎‏‎‎‏‎"</item>
- <item msgid="9055468790485684083">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‎‏‏‎‏‏‏‏‏‎‎‏‏‏‎‎‎‏‏‎‎‎‏‎‎‏‏‏‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‏‏‎‎‏‏‎Connecting…‎‏‎‎‏‎"</item>
- <item msgid="6099499723199990208">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‎‎‏‎‏‎‎‏‎‏‏‏‎‎‎‏‏‎‏‎‏‎‏‏‏‎‏‎‎‎‎‏‎‎‏‏‏‎‏‏‎‏‏‏‎‎‏‎‎‏‏‏‎‎‎‎‎‎‎Authenticating…‎‏‎‎‏‎"</item>
- <item msgid="6794055951297347103">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‏‎‎‏‎‎‏‎‎‏‎‏‎‏‎‏‎‏‏‏‏‎‎‏‎‎‎‎‏‎‏‎‎‏‎‎‏‏‎‏‎‎‏‏‏‏‏‏‏‎‎‎‎‏‏‏‏‏‎Obtaining IP address…‎‏‎‎‏‎"</item>
- <item msgid="5450920562291300229">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‏‏‏‎‏‎‎‏‎‏‏‎‎‎‏‏‏‏‎‏‎‏‏‏‏‏‎‎‎‎‎‏‏‎‎‎‏‏‏‏‏‎‏‏‎‏‎‏‏‏‏‎‎‎‎‏‎‏‎Connected‎‏‎‎‏‎"</item>
- <item msgid="6332116533879646145">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‏‏‏‎‎‎‎‎‎‎‏‏‎‎‏‎‎‏‏‏‎‎‎‎‎‏‎‎‎‏‏‎‎‏‎‎‎‏‏‎‎‎‏‎‎‏‏‏‏‏‎‎‎‎‎‏‎Suspended‎‏‎‎‏‎"</item>
- <item msgid="294459081501073818">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‏‏‎‎‎‎‎‏‎‏‏‎‎‎‏‎‎‎‎‎‏‏‏‏‏‎‎‏‎‏‏‏‏‎‎‏‏‏‎‎‎‎‏‎‎‏‏‎‎‎‎‏‏‎‎‏‏‎‏‎‎Disconnecting…‎‏‎‎‏‎"</item>
- <item msgid="1577368920272598676">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‏‎‏‏‏‏‎‎‎‏‏‏‏‏‏‎‎‎‎‏‎‏‎‏‏‎‎‏‏‏‏‏‏‎‎‏‎‎‏‎‏‏‎‏‏‏‏‎‏‏‎‏‎‎‏‎‏‎‎‎Disconnected‎‏‎‎‏‎"</item>
- <item msgid="7655843177582495451">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‏‎‎‎‏‏‏‏‏‏‎‎‎‎‎‏‎‎‏‏‎‎‏‏‏‎‏‎‏‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‎‎‎‏‏‎‏‏‎‏‏‎‏‏‎Unsuccessful‎‏‎‎‏‎"</item>
- <item msgid="8953752690917593623">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‎‎‎‏‎‎‎‎‏‎‎‎‎‏‏‏‏‎‏‎‏‎‎‎‏‎‎‎‏‎‎‏‎‎‏‏‎‏‎‏‏‏‎‏‎‏‎‎‏‎‎‎‎‏‎‏‏‏‎Blocked‎‏‎‎‏‎"</item>
- <item msgid="4400457817750243671">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‎‏‎‎‎‏‎‎‎‏‏‎‎‏‎‎‎‏‎‎‎‏‎‎‏‎‎‎‎‏‎‏‎‎‎‎‎‏‏‎‎‎‎‎‎‎‏‎‎‏‎‏‎‏‎‏‏‏‎Temporarily avoiding poor connection‎‏‎‎‏‎"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‏‎‎‏‎‎‎‏‎‎‏‎‎‏‏‎‎‏‎‎‏‎‏‎‎‏‏‏‎‏‎‏‎‏‏‎‎‎‎‎‎‏‎‎‎‎‏‎‏‎‎‏‎‏‏‏‎‏‎‎Scanning…‎‏‎‎‏‎"</item>
+ <item msgid="6222852518007967736">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‎‎‏‎‏‏‏‎‎‎‎‎‎‎‎‏‏‎‏‏‎‎‏‎‏‎‎‏‎‎‎‎‏‏‎‎‎‎‎‏‎‏‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‎Connecting…‎‏‎‎‏‎"</item>
+ <item msgid="1176401854208153464">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‎‎‎‏‎‏‎‎‏‏‎‏‏‎‏‎‏‏‎‏‎‎‎‎‎‎‏‏‏‎‏‎‎‏‎‎‏‏‎‎‎‎‎‎‎‏‎‏‏‏‎‏‏‏‏‎‎‎‎Authenticating…‎‏‎‎‏‎"</item>
+ <item msgid="1377026397901197257">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‏‎‎‎‏‏‏‎‎‎‎‏‎‏‏‏‎‎‎‏‏‎‏‏‎‏‎‎‎‏‏‎‏‎‎‏‏‏‏‎‎‏‎‎‎‏‏‏‏‏‏‎‎‏‎‎‏‎Obtaining IP address…‎‏‎‎‏‎"</item>
+ <item msgid="7627139816052121509">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‎‏‏‏‎‏‏‎‎‏‎‎‎‎‏‎‏‏‎‏‎‎‎‎‎‎‏‎‎‏‏‏‎‎‎‎‎‎‎‏‏‎‎‏‎‏‏‏‏‏‏‎‏‎‎‏‎‏‎Connected‎‏‎‎‏‎"</item>
+ <item msgid="1598801023719359130">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‏‏‎‎‎‏‏‎‎‎‎‎‎‎‏‎‏‎‏‎‎‎‎‏‏‏‏‎‏‏‎‏‏‎‏‎‏‎‏‎‎‏‎‏‏‎‎‎‎‏‎‏‎‎‏‏‎‏‎‎Suspended‎‏‎‎‏‎"</item>
+ <item msgid="9160765456671002324">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‎‎‎‎‏‏‎‎‏‎‎‏‏‏‎‏‎‎‏‎‏‏‎‏‎‎‎‏‏‏‎‎‎‏‎‏‏‎‏‎‎‏‏‏‎‏‏‎‏‎‏‎‎‎Disconnecting…‎‏‎‎‏‎"</item>
+ <item msgid="8013176736494493734">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‏‎‎‏‏‎‏‎‎‏‎‎‎‎‏‎‏‏‏‎‎‏‎‎‏‎‏‎‎‎‏‎‏‎‎‏‎‏‏‎‏‏‎‏‎‎‎‎‎‎‎‏‎‎‏‏‎‎Disconnected‎‏‎‎‏‎"</item>
+ <item msgid="4077393480368783785">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‎‎‏‎‎‏‎‏‎‏‏‏‎‎‏‏‏‏‏‏‎‎‎‏‎‎‎‏‏‏‎‏‏‎‏‏‏‎‎‎‎‎‎‎‎‎‎‎‎‏‏‎‏‎‏‎‎‏‎Unsuccessful‎‏‎‎‏‎"</item>
+ <item msgid="605372180740008604">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‎‎‎‎‏‏‎‎‏‏‎‏‎‏‏‎‏‏‎‏‏‎‎‏‎‏‎‎‏‏‏‏‏‎‏‏‏‏‎‏‎‎‏‎‏‏‎‏‎‏‎‏‎‎‏‏‏‎‎‎Blocked‎‏‎‎‏‎"</item>
+ <item msgid="5102306451432929048">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‏‎‏‏‎‎‏‏‏‏‎‎‎‎‏‎‎‎‏‎‏‎‏‏‏‏‎‎‏‏‎‏‎‎‏‏‎‏‎‏‏‏‏‏‏‏‎‏‏‏‎‎‎‏‏‎‎‎‎Temporarily avoiding poor connection‎‏‎‎‏‎"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-en-rXC/strings.xml b/libs/WifiTrackerLib/res/values-en-rXC/strings.xml
index efafd2099..85f3bec71 100644
--- a/libs/WifiTrackerLib/res/values-en-rXC/strings.xml
+++ b/libs/WifiTrackerLib/res/values-en-rXC/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" ‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‏‏‏‎‎‏‎‎‏‎‏‎‎‏‎‎‎‏‎‏‏‎‏‏‎‎‎‏‏‎‏‎‎‎‎‏‏‎‏‏‏‏‏‏‎‎‎‏‏‏‏‎‏‎‏‏‏‎ / ‎‏‎‎‏‎ "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‎‎‏‎‏‏‎‏‏‏‎‎‏‏‏‎‏‎‏‏‏‏‏‎‎‏‏‎‎‏‎‏‎‏‏‎‎‎‏‏‏‏‏‎‏‎‎‎‏‏‎‎‏‏‎‏‎‏‏‎Auto-connect is off‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‏‎‎‏‎‎‏‎‏‏‎‏‎‎‏‏‏‏‏‎‎‎‎‏‎‎‎‎‎‏‎‎‏‏‏‏‎‎‏‏‎‏‏‎‎‏‎‏‏‎‏‎‎‏‏‎‎‎‎Saved by ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‏‏‏‎‏‏‎‎‎‏‎‏‎‎‎‎‎‏‎‏‏‎‎‎‎‏‎‎‎‏‎‏‏‏‎‎‏‏‎‎‏‎‎‏‏‏‎‎‏‏‎‎‏‏‏‎‎‎Won’t automatically connect‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‎‏‎‏‎‏‏‏‏‎‎‏‏‏‎‏‏‏‎‎‏‏‏‏‏‎‎‎‎‎‎‏‎‎‎‎‏‎‏‏‏‎‎‎‎‏‏‎‎‏‎‏‎‏‎‏‎‏‎No internet access‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‏‏‏‎‎‎‏‏‏‎‎‎‎‏‏‎‏‎‎‎‎‎‎‏‎‎‎‎‎‎‎‏‎‏‏‏‏‏‏‎‏‏‎‎‎‎‏‏‏‏‎‏‎‎‏‏‏‎‎Authentication problem‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‎‎‏‎‎‏‏‎‏‏‏‏‎‏‏‎‏‏‎‎‎‎‎‎‎‏‎‏‎‎‎‏‏‏‎‎‎‎‏‏‏‎‏‏‏‎‏‎‎‏‎‏‎‏‎‏‏‎Check password and try again‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‎‏‎‎‏‎‎‎‏‏‏‏‎‏‏‎‏‏‎‏‎‏‏‏‏‎‏‏‎‏‎‎‏‎‎‏‎‏‏‎‎‎‎‏‎‏‏‎‏‎‏‎‏‏‏‎‎IP configuration failure‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‏‎‏‏‎‎‎‎‏‎‏‎‏‏‏‏‏‎‏‏‏‎‎‎‏‎‎‎‏‏‎‎‏‎‎‏‎‏‏‎‏‎‎‎‎‏‏‎‎‏‏‎‎‎‏‏‎‎Disabled‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‏‎‎‏‏‏‎‏‏‏‎‏‏‎‏‏‎‏‎‎‏‏‏‎‏‎‏‏‎‏‏‎‏‎‏‏‏‏‎‏‏‏‏‎‎‎‎‎‎‎‏‎‏‏‎‎‏‎‎‎Access point temporarily full‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‎‏‏‏‏‎‏‏‏‏‎‎‎‎‏‎‏‏‏‏‎‏‎‏‏‎‏‎‏‎‎‏‏‎‏‎‎‎‎‏‏‏‎‎‏‏‏‎‏‏‎‏‎‏‎‏‏‎‎‎Temporary poor network conditions‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‏‎‎‏‏‏‏‎‏‎‏‏‎‏‏‎‏‎‏‎‎‎‏‎‏‎‎‏‎‏‎‎‎‏‏‎‎‏‏‏‎‎‎‎‎‏‎‏‏‏‏‏‎‎‏‏‎‏‎Weak signal. Try moving closer to the router.‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‎‏‎‏‎‏‎‎‏‎‏‏‏‎‎‏‏‏‏‎‏‎‏‏‏‎‎‎‏‏‏‎‏‏‏‎‏‎‎‎‎‏‎‎‎‏‏‏‏‏‏‎‏‏‎‏‏‏‎Network is over capacity. Try again later.‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‎‏‎‏‎‏‏‏‎‎‏‏‏‎‏‏‎‎‎‎‏‏‏‏‎‏‎‏‎‏‎‏‏‎‎‏‏‏‏‏‎‎‏‏‎‏‏‎‏‎‎‎‏‏‏‎‏‏‎Can\'t connect. Try again later.‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‎‎‏‎‏‎‎‏‏‎‏‎‏‎‏‎‏‎‎‏‏‏‏‏‏‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‏‏‎‎‏‏‎‎‎‏‏‏‎‎‎Can\'t connect. Try again later.‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‏‎‎‎‎‏‎‏‎‎‎‏‏‏‏‎‏‏‎‏‎‎‎‏‎‎‏‏‎‏‏‏‎‏‎‏‏‏‏‏‏‎‎‏‏‏‎‎‏‏‏‏‎‏‎‏‏‏‎Disconnected‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‎‏‏‎‎‏‎‎‎‎‏‎‎‏‏‏‎‏‏‎‏‎‏‏‎‎‏‎‎‎‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‎‏‎‎‎‎‎‎‎‎‏‎Saved‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‎‏‎‎‏‏‎‎‎‎‏‏‎‏‎‎‎‏‏‎‎‏‎‏‎‏‏‎‏‎‎‏‏‏‏‎‏‎‏‏‏‎‏‏‏‏‏‎‎‏‏‏‏‏‎‎‎‎‏‎Metered‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‏‎‏‎‎‏‏‎‎‏‎‏‏‏‎‎‏‎‏‏‏‎‏‏‎‏‏‎‏‎‏‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‎‏‏‎‎‎‏‎‎‎‎‏‎‏‎Unmetered‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‎‎‏‎‎‏‎‏‎‎‎‎‏‎‎‏‏‏‎‏‏‏‎‏‏‎‎‎‎‏‏‏‏‏‎‎‏‎‎‎‏‎‎‎‎‏‏‏‎‎‎‏‏‎‏‎‎‎‎Connected via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‏‏‎‏‏‎‎‎‎‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‎‏‏‏‏‎‏‎‎‎‎‏‏‎‏‎‏‎‏‏‎‏‏‏‎‏‏‏‏‎‏‏‏‎‏‎Available via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‏‏‎‎‎‎‏‎‏‏‎‏‏‏‏‎‏‎‏‎‏‏‏‏‏‎‏‏‏‎‏‏‎‎‎‏‎‎‎‏‎‏‎‎‎‎‎‎‎‏‎‎‎‏‏‏‎‎Automatically connected via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‏‏‏‎‏‏‎‎‎‏‏‏‏‏‎‎‎‎‎‎‏‏‏‎‏‏‎‏‏‎‏‏‎‏‎‏‎‏‏‎‏‏‎‏‎‏‏‏‎‎‎‎‎‎‏‏‎‎‎Automatically connected via network rating provider‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‏‎‏‏‎‎‎‎‏‏‎‏‎‏‏‎‎‏‎‏‏‎‏‏‏‏‎‏‏‏‏‎‎‏‏‏‏‏‏‎‎‎‏‏‎‏‏‎‎‎‏‏‏‏‏‏‎‎‎Limited connection‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‎‏‏‏‏‏‏‎‎‏‏‏‏‎‎‏‎‏‎‎‏‎‎‏‎‏‏‎‎‎‏‎‎‏‎‎‎‎‎‏‎‏‎‎‎‎‏‏‏‎‎‏‏‏‏‎‎‏‏‎Private DNS server cannot be accessed‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‏‎‎‏‏‎‎‏‎‎‎‏‎‏‎‎‏‎‏‎‎‏‏‎‎‏‎‏‎‏‎‎‎‏‎‏‏‏‏‏‎‎‏‏‏‎‏‎‎‎‏‎‏‎‎‏‎‎‏‎Connected to device. Can\'t provide internet.‎‏‎‎‏‎"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‏‎‎‎‏‎‎‏‏‎‎‎‏‏‏‎‏‎‏‏‏‎‎‏‏‏‏‎‎‎‎‎‎‏‏‏‏‎‏‎‏‏‎‎‎‎‏‏‎‎‏‏‎‎‏‏‎‏‎Low quality‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‎‏‎‏‎‎‎‏‏‎‏‏‎‎‏‏‏‏‏‎‎‏‏‎‎‏‎‎‏‏‎‎‎‏‏‎‏‎‎‎‏‏‏‏‎‏‏‎‏‎‎‎‏‏‎‎‎‎‎None‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‏‏‏‎‏‎‏‎‏‏‎‎‏‏‎‎‎‎‎‎‎‏‏‎‎‎‏‏‏‎‎‎‏‎‎‎‎‏‎‎‏‏‏‎‏‎‎‏‎‏‎‏‏‎‎‏‎‏‏‎‎Expired‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‏‏‎‎‎‎‏‎‏‎‎‏‏‏‏‏‏‎‎‎‏‎‏‎‏‎‎‎‎‏‎‎‏‎‏‎‎‎‎‎‏‎‎‎‏‎‏‏‏‏‎‎‏‏‏‏‎‏‎‎Tap to sign up‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‎‏‏‏‏‏‏‎‎‎‎‎‏‎‎‏‏‏‎‏‎‏‎‎‏‏‎‏‎‎‎‎‏‎‏‏‏‎‏‏‏‏‏‏‎‎‏‏‏‎‎‎‏‎‏‎‏‎‏‎Tap to renew subscription and connect‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‏‎‏‏‏‎‏‏‏‎‎‎‏‎‎‏‏‎‎‏‎‏‏‏‎‎‏‎‏‎‎‎‎‎‏‏‎‎‏‏‎‏‎‎‎‎‏‎‎‏‏‏‏‎‏‏‏‎‎Opening ‎‏‎‎‏‏‎<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‏‎‏‏‎‏‏‏‏‎‎‏‏‏‎‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‏‎‎‏‏‎‎‎‎‎‎‎‎‏‎‎Couldn’t connect‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‎‎‏‎‎‎‎‎‎‎‎‎‎‏‎‎‎‎‏‏‏‎‏‏‎‏‎‏‎‎‎‏‎‎‏‏‎‏‏‎‏‏‏‎‏‏‎‎‏‎‏‎‎‏‎‎‎‎‎Completing sign-up…‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‏‏‏‎‎‎‎‎‎‏‏‎‏‏‏‎‏‎‎‎‏‏‏‎‎‎‎‏‏‏‏‎‏‎‏‏‎‏‏‎‎‎‏‏‏‎‎‎‏‎‏‎‎‏‏‏‎‏‎‎Couldn’t complete sign-up. Tap to try again.‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‏‏‎‎‎‎‎‏‏‏‎‎‎‎‎‎‎‏‏‎‏‏‎‏‏‎‏‎‏‏‏‏‏‎‏‏‎‏‏‏‎‏‎‎‎‎‏‎‎‎‏‏‎‎‏‎‎‎Sign-up complete. Connecting…‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‏‏‏‏‎‎‏‏‎‏‏‎‎‏‎‎‏‎‏‎‏‏‏‎‏‏‏‎‏‏‏‎‏‎‏‎‎‎‎‎‏‏‏‏‏‎‏‎‎‏‏‏‏‎‏‎‎This network receives a SIM ID that can be used to track device location. ‎‏‎‎‏‏‎"<annotation id="url">"‎‏‎‎‏‏‏‎Learn more‎‏‎‎‏‏‎"</annotation>"‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‏‏‎‏‎‏‏‏‎‏‎‏‎‏‏‏‎‎‎‏‏‏‎‎‎‎‎‏‏‎‎‏‏‎‎‏‎‏‎‎‎‏‏‎‏‏‏‏‎‎‎‏‎‎‏‎‎‎Very Slow‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‏‎‏‏‎‏‏‎‎‎‏‏‏‏‏‎‏‎‎‎‎‎‎‎‏‏‏‏‎‎‎‏‏‏‏‎‎‏‎‎‏‎‎‎‎‎‎‎‎‏‎‎‎‎‎‎‎‎‎‎Slow‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‎‎‎‏‏‎‎‎‎‏‎‏‎‎‏‎‏‎‏‏‏‏‎‎‎‏‎‏‎‏‏‎‎‎‎‎‎‎‏‎‎‏‎‏‎‎‏‏‎‎‏‎‏‎‎‏‎‎‎OK‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‏‏‏‏‎‎‏‏‎‏‏‏‎‎‎‎‏‏‎‎‏‎‎‎‎‏‎‏‏‎‎‏‏‎‏‎‎‏‏‎‎‏‎‎‎‎‏‎‎‏‎‎‏‏‏‎‏‏‏‎‎Medium‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‏‏‏‏‏‏‏‏‏‏‎‏‏‏‎‏‎‏‎‏‏‎‏‎‎‏‏‏‏‏‎‏‏‏‏‎‏‎‏‏‎‏‎‏‎‏‏‏‎‎‎‏‏‎‏‎‏‎‎Fast‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‎‎‏‏‏‎‎‎‏‎‏‎‎‎‏‎‏‏‏‏‎‏‎‎‎‏‎‎‏‎‎‎‏‎‏‎‏‏‏‎‏‎‏‎‏‏‎‏‎‏‎‎‎‏‎‎‏‎‏‎Very Fast‎‏‎‎‏‎"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‎‎‎‏‎‏‎‎‏‎‏‎‎‏‎‏‎‏‏‎‎‎‎‎‎‏‎‎‏‏‏‏‎‎‎‏‎‎‏‏‎‎‏‎‏‎‎‏‏‏‏‎‎‏‏‎‏‏‎Wi-Fi won’t auto-connect for now‎‏‎‎‏‎"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" ‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‎‏‎‏‏‎‎‎‏‏‏‎‎‎‎‎‎‎‏‏‎‎‎‎‎‏‎‏‏‏‏‏‎‎‎‏‏‏‎‎‏‏‏‏‏‏‎‏‏‎‏‎‎‏‏‎ / ‎‏‎‎‏‎ "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‎‏‏‏‎‏‏‏‏‎‏‏‎‏‏‏‏‎‏‎‏‏‏‎‎‎‏‏‏‎‎‎‏‎‏‏‏‎‏‎‏‎‏‏‎‎‎‏‎‏‎‏‎‏‏‎‏‏‏‏‎‎Auto-connect is off‎‏‎‎‏‎"</string>
+ <string name="saved_network" msgid="6241977554502802914">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‎‏‏‎‏‎‎‏‏‏‏‏‏‏‏‏‎‏‎‏‏‎‎‎‎‎‏‏‏‎‏‏‎‎‎‎‎‎‎‏‏‎‎‏‏‏‎‏‏‏‎‏‏‏‏‎‎‎‏‎‎Saved by ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‏‏‏‎‎‎‎‏‏‏‎‏‎‎‎‏‎‎‏‎‏‎‏‎‏‎‏‏‏‏‎‎‏‏‏‏‎‏‎‏‏‏‎‎‎‏‏‎‎‏‏‏‏‏‎‎‎Won’t automatically connect‎‏‎‎‏‎"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‏‏‎‏‏‏‏‎‏‎‎‏‎‏‏‎‏‎‎‎‏‏‏‎‎‏‎‎‏‎‏‏‏‏‎‏‎‎‎‏‎‏‎‏‎‏‎‏‎‏‎‎‏‎‏‎‏‏‏‏‎No internet access‎‏‎‎‏‎"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‎‏‏‏‎‏‎‏‏‏‎‏‏‏‎‏‎‏‎‎‎‎‎‏‎‏‏‏‏‎‎‎‏‏‎‏‏‏‏‏‎‎‎‏‏‎‎‎‏‎‏‎‎‎‎‎‏‏‎Authentication problem‎‏‎‎‏‎"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‎‎‏‎‏‎‏‏‏‎‏‎‏‎‎‎‏‏‏‏‎‏‏‏‏‏‎‎‎‏‏‏‎‏‏‏‎‎‏‏‏‏‎‏‎‎‎‏‏‏‎‏‏‎‎‎‏‏‎Check password and try again‎‏‎‎‏‎"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‎‏‎‎‏‏‎‎‏‎‎‏‎‏‏‏‏‎‎‏‎‎‎‎‎‏‎‏‎‎‏‏‏‎‏‎‎‏‏‎‎‎‏‎‏‎‎‏‏‎‎‎‏‏‏‏‎IP configuration failure‎‏‎‎‏‎"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‎‎‏‎‎‎‏‎‎‏‎‎‏‎‎‏‎‎‎‎‏‎‏‎‏‎‏‏‏‎‏‎‎‏‎‎‏‏‎‎‏‎‏‎‎‎‎‏‎‏‏‏‏‎‎Disabled‎‏‎‎‏‎"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‎‏‎‏‏‏‎‏‏‏‎‎‎‎‏‎‏‏‎‎‎‎‎‏‏‏‏‎‎‎‎‎‏‏‏‎‎‏‎‏‏‏‎‎‎‎‎‏‎‏‏‎‎‎‎‎‏‏‏‎Access point temporarily full‎‏‎‎‏‎"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‎‏‏‏‎‏‎‎‎‏‏‎‏‏‎‎‎‏‏‎‎‏‎‏‎‏‏‏‏‏‏‏‎‎‏‏‎‏‏‏‏‎‏‎‎‏‏‎‎‎‏‏‏‎‏‎‏‏‎‎Disconnected‎‏‎‎‏‎"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‎‏‏‏‎‎‏‎‎‏‏‎‎‏‏‎‏‎‏‏‏‏‎‎‏‎‎‎‏‏‏‎‏‎‏‏‏‎‏‎‎‎‎‎‎‏‏‎‏‎‏‏‏‎‏‏‎‏‎‎‎Saved‎‏‎‎‏‎"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‎‏‎‏‏‏‎‏‎‎‏‎‎‎‎‎‎‎‏‎‎‏‎‎‎‎‎‎‎‏‎‏‏‏‏‏‎‏‎‏‎‏‎‎‎‎‏‏‎‏‎‏‎‎‎‏‏‏‎‎Metered‎‏‎‎‏‎"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‏‏‏‎‏‏‏‎‏‏‏‎‎‏‏‏‎‏‏‎‎‏‏‏‏‎‏‎‎‎‏‎‎‎‏‏‏‎‎‏‎‎‎‎‎‏‎‎‎‎‏‏‎‎‎‏‏‏‏‎‎Unmetered‎‏‎‎‏‎"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‏‎‎‏‎‎‏‏‏‎‏‎‏‏‏‏‏‎‏‎‏‎‏‎‎‎‎‎‏‏‎‎‎‎‎‎‏‏‏‏‏‏‎‏‏‎‎‏‎‏‎‏‎‏‎‏‏‏‏‏‎Connected via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‏‏‏‎‎‏‏‎‏‏‏‎‎‏‎‏‏‏‏‏‎‏‏‏‎‎‏‎‎‎‏‏‎‎‏‎‎‏‎‏‎‎‏‎‎‎‎‏‎‏‎‏‎‏‎‏‎‎‎‏‎Available via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‎‏‎‏‏‏‎‏‎‎‏‎‎‏‏‏‎‏‏‏‎‎‎‏‎‎‎‎‎‏‏‏‏‏‎‏‏‎‏‎‏‎‎‏‎‏‏‏‏‎‎‎‏‏‎‎‏‎‎‎Automatically connected via ‎‏‎‎‏‏‎<xliff:g id="NAME">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‏‏‎‎‏‏‏‏‎‏‏‏‏‎‏‎‎‎‎‎‎‏‏‎‎‎‏‏‏‏‏‎‎‎‏‏‎‏‏‎‎‎‎‏‎‎‎‏‏‏‎‏‏‏‏‎‎Automatically connected via network rating provider‎‏‎‎‏‎"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‎‏‎‏‎‎‏‏‎‏‏‏‎‏‎‏‏‏‏‏‎‎‎‏‏‎‎‏‏‎‏‎‏‎‏‏‎‏‎‎‏‏‎‎‏‎‎‏‏‎‎‎‏‎‎‏‏‏‏‎Limited connection‎‏‎‎‏‎"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‏‏‏‎‏‎‏‏‎‎‏‏‎‏‏‎‏‎‎‏‎‎‏‏‎‎‏‏‏‎‎‏‎‏‎‏‏‎‏‎‎‎‎‎‎‎‎‎‏‎‎‏‎‏‎‏‏‎‎‎‎Private DNS server cannot be accessed‎‏‎‎‏‎"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‏‏‏‎‎‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎‏‎‎‎‏‏‎‎‎‏‎‏‏‎‏‎‏‎‏‏‎‎‏‎‎‎‎‏‎‏‏‏‎‏‏‎No internet‎‏‎‎‏‎"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‏‏‏‎‎‏‎‏‏‎‏‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‎‏‎‏‎‏‏‏‏‏‏‏‏‏‏‎‏‎‏‏‎‎‎‎‏‏‎‏‎‎‏‏‎‏‎None‎‏‎‎‏‎"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‏‎‎‏‏‎‎‏‏‎‏‎‎‎‎‏‏‏‎‏‏‏‎‎‎‎‏‏‏‏‎‎‎‏‏‎‏‏‎‎‏‏‎‏‏‎‏‎‏‏‏‎‏‎‏‏‏‎Expired‎‏‎‎‏‎"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‎‏‏‎‏‏‏‏‎‎‏‏‏‏‏‏‏‏‏‎‎‏‎‎‏‎‎‏‎‎‏‎‎‏‎‏‏‎‎‏‎‎‏‏‎‏‏‎‏‎‎‏‎‏‏‏‎Tap to sign up‎‏‎‎‏‎"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‎‏‏‏‎‏‎‎‏‏‎‏‏‏‏‎‏‏‏‏‎‎‎‏‏‏‎‎‏‏‏‎‏‎‏‏‎‏‎‎‏‎‎‏‎‎‏‎‎‎‏‎‏‏‏‎‏‎‏‎‎‏‎Tap to renew subscription and connect‎‏‎‎‏‎"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‏‏‎‎‎‏‎‏‏‏‎‎‏‎‎‏‎‏‎‎‎‏‏‎‏‎‎‎‎‏‎‏‎‎‎‏‎‏‏‏‎‏‏‎‎‎‏‏‏‎‎‎‏‏‎‎‎‏‏‎Opening ‎‏‎‎‏‏‎<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‏‏‎‎‎‎‎‎‎‏‎‏‎‎‎‎‎‎‏‏‎‏‎‏‎‏‏‎‏‎‏‎‏‎‏‎‏‎‏‎‎‏‏‏‎‎‏‏‏‏‎‎‎‎‏‎‎‎‏‎Couldn’t connect‎‏‎‎‏‎"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‏‏‏‏‎‎‎‎‏‎‏‎‏‎‏‎‎‎‏‎‎‎‎‏‎‎‎‏‎‎‏‏‏‎‏‎‎‎‎‎‎‎‏‏‎‎‏‏‎‎‏‎‏‏‎‏‏‏‎Completing sign-up…‎‏‎‎‏‎"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‏‎‏‏‏‎‏‎‎‎‏‎‏‎‏‏‎‎‏‏‎‏‏‎‎‎‏‎‎‏‎‏‎‎‏‎‎‎‎‏‎‏‏‏‏‏‎‎‏‏‏‏‏‎‎‎‏‏‏‎Couldn’t complete sign-up. Tap to try again.‎‏‎‎‏‎"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‏‎‏‎‏‏‎‎‎‎‎‏‎‏‎‏‏‎‏‏‏‏‏‏‏‏‏‎‎‎‏‎‏‎‏‎‏‎‎‏‏‏‎‏‏‎‏‏‏‏‎‎‎‎‏‎Sign-up complete. Connecting…‎‏‎‎‏‎"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‎‎‏‎‎‎‏‎‎‏‏‎‏‎‏‏‎‏‎‎‏‏‏‏‎‏‎‎‏‏‎‏‎‎‏‎‏‎‏‎‏‎‎‏‏‏‎‎‎‎‎‎‎‏‏‏‎‏‎‎‎‏‎This network receives a SIM ID that can be used to track device location. ‎‏‎‎‏‏‎"<annotation id="url">"‎‏‎‎‏‏‏‎Learn more‎‏‎‎‏‏‎"</annotation>"‎‏‎‎‏‏‏‎‎‏‎‎‏‎"</string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‎‎‎‏‎‏‎‏‎‏‎‎‎‎‏‎‎‎‏‎‏‎‏‏‎‏‏‏‎‏‎‎‏‎‏‏‏‏‎‎‏‏‎‎‎‏‏‏‎‏‎‏‏‎‎‎‏‎‏‏‎Very Slow‎‏‎‎‏‎"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‏‎‎‏‎‏‏‎‏‏‏‏‎‏‏‎‎‎‏‎‎‏‏‏‏‎‎‏‎‏‎‏‏‏‏‏‏‎‏‏‏‏‏‎‏‏‏‎‏‎‏‎‏‏‎‏‏‏‏‎Slow‎‏‎‎‏‎"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‏‎‎‏‏‏‏‏‎‏‏‎‏‏‎‏‏‏‏‏‏‏‏‎‏‏‎‎‏‎‎‏‏‏‎‎‎‎‎‏‏‏‎‏‏‏‎‏‏‏‏‎‏‏‏‎‏‎‎‎‎‎OK‎‏‎‎‏‎"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‎‏‎‏‏‎‎‎‎‎‏‎‎‏‎‎‏‎‏‏‏‎‏‏‏‎‏‎‎‏‏‎‎‏‏‎‏‎‎‏‎‏‎‏‏‎‏‎‎‎‏‎‏‎‏‎‎‏‏‏‎‎‏‎Medium‎‏‎‎‏‎"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‏‏‏‏‏‎‎‏‏‏‏‎‎‏‏‎‎‎‏‎‎‎‎‎‏‎‏‏‎‎‎‎‏‏‎‏‏‏‎‏‎‏‏‎‏‏‏‏‏‏‎‏‏‏‎‏‏‏‎‎‎‎‎‏‎‎Fast‎‏‎‎‏‎"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"‎‏‎‎‎‎‎‏‎‏‏‏‎‎‎‎‎‎‏‎‎‏‎‎‎‎‏‏‏‏‏‎‏‏‎‏‏‎‎‎‏‎‎‏‎‏‎‏‏‏‎‎‎‏‏‎‏‎‏‏‏‏‎‏‏‏‏‏‎‏‏‎‎‎‏‏‏‎‏‏‏‏‏‏‏‏‏‎‎‎‎‏‎‏‎Very Fast‎‏‎‎‏‎"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-es-rUS/arrays.xml b/libs/WifiTrackerLib/res/values-es-rUS/arrays.xml
index 3ef2e9d68..27d916cbb 100644
--- a/libs/WifiTrackerLib/res/values-es-rUS/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-es-rUS/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Buscando…"</item>
- <item msgid="9055468790485684083">"Conectando…"</item>
- <item msgid="6099499723199990208">"Autenticando…"</item>
- <item msgid="6794055951297347103">"Obteniendo dirección IP…"</item>
- <item msgid="5450920562291300229">"Conectada"</item>
- <item msgid="6332116533879646145">"Suspendida"</item>
- <item msgid="294459081501073818">"Desconectando…"</item>
- <item msgid="1577368920272598676">"Desconectada"</item>
- <item msgid="7655843177582495451">"Error"</item>
- <item msgid="8953752690917593623">"Bloqueada"</item>
- <item msgid="4400457817750243671">"Inhabilitando temporalmente la conexión inestable"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Buscando…"</item>
+ <item msgid="6222852518007967736">"Conectando…"</item>
+ <item msgid="1176401854208153464">"Autenticando…"</item>
+ <item msgid="1377026397901197257">"Obteniendo dirección IP…"</item>
+ <item msgid="7627139816052121509">"Conectado"</item>
+ <item msgid="1598801023719359130">"Suspendido"</item>
+ <item msgid="9160765456671002324">"Desconectando…"</item>
+ <item msgid="8013176736494493734">"Desconectado"</item>
+ <item msgid="4077393480368783785">"Incorrecto"</item>
+ <item msgid="605372180740008604">"Bloqueado"</item>
+ <item msgid="5102306451432929048">"Inhabilitando temporalmente la conexión inestable"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-es-rUS/strings.xml b/libs/WifiTrackerLib/res/values-es-rUS/strings.xml
index 8f1be0391..68b00765c 100644
--- a/libs/WifiTrackerLib/res/values-es-rUS/strings.xml
+++ b/libs/WifiTrackerLib/res/values-es-rUS/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Conexión automática desactivada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"No se establecerá conexión automáticamente"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sin acceso a Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticación"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Revisa la contraseña y vuelve a intentarlo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Error de configuración de IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Inhabilitada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"El punto de acceso está temporalmente lleno"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Malas condiciones de red temporalmente"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"La señal es débil. Intenta acercarte al router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"La red está saturada. Vuelve a intentarlo más tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"No se pudo establecer conexión. Vuelve a intentarlo más tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"No se pudo establecer la conexión. Vuelve a intentarlo más tarde."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconectada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Guardada"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"De uso medido"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"No medida"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conexión a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponible a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Se estableció conexión automáticamente a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Se estableció conexión automáticamente a través de un proveedor de calificación de redes"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Conexión limitada"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"No se puede acceder al servidor DNS privado"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Se estableció conexión con el dispositivo. No se puede acceder a Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Baja calidad"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ninguna"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Venció"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Presiona para registrarte"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Presiona para renovar la suscripción y conectarte"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Abriendo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"No se pudo establecer conexión"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completando registro…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"No se pudo completar el registro. Presiona para volver a intentarlo."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Se completó el registro. Conectando…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Esta red recibe un ID de SIM que puede usarse para realizar el seguimiento de la ubicación del dispositivo. "<annotation id="url">"Más información"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Muy lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Aceptable"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Normal"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Muy rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Por ahora, el Wi-Fi no se conectará automáticamente"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Conexión automática desactivada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"No se conectará automáticamente"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No hay acceso a Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema de autenticación"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Revisa la contraseña y vuelve a intentarlo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Error de configuración de IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Inhabilitada"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"El punto de acceso está completo temporalmente"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desconectado"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Guardado"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"De uso medido"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Sin tarifa plana"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Conexión a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponible a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Se conectó automáticamente a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectado automáticamente mediante proveedor de calificación de red"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Conexión limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"No se puede acceder al servidor DNS privado"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sin Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ninguna"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Vencida"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Presiona para registrarte"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Presiona para renovar la suscripción y conectarte"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Abriendo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"No se pudo establecer conexión"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completando registro…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"No se pudo completar el registro. Presiona para volver a intentarlo."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Se completó el registro. Conectando…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Esta red recibe un ID de SIM que se puede usar para realizar el seguimiento de la ubicación del dispositivo. "<annotation id="url">"Más información"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Muy lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Aceptar"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Media"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Muy rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-es/arrays.xml b/libs/WifiTrackerLib/res/values-es/arrays.xml
index a12c048b5..c9352b9b3 100644
--- a/libs/WifiTrackerLib/res/values-es/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-es/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Buscando…"</item>
- <item msgid="9055468790485684083">"Conectando…"</item>
- <item msgid="6099499723199990208">"Autenticando…"</item>
- <item msgid="6794055951297347103">"Obteniendo dirección IP…"</item>
- <item msgid="5450920562291300229">"Conectado"</item>
- <item msgid="6332116533879646145">"Suspendida"</item>
- <item msgid="294459081501073818">"Desconectando…"</item>
- <item msgid="1577368920272598676">"Desconectado"</item>
- <item msgid="7655843177582495451">"Error"</item>
- <item msgid="8953752690917593623">"Bloqueada"</item>
- <item msgid="4400457817750243671">"Evitando conexión deficiente temporalmente"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Buscando…"</item>
+ <item msgid="6222852518007967736">"Conectando…"</item>
+ <item msgid="1176401854208153464">"Autenticando…"</item>
+ <item msgid="1377026397901197257">"Obteniendo dirección IP…"</item>
+ <item msgid="7627139816052121509">"Conectado"</item>
+ <item msgid="1598801023719359130">"Suspendida"</item>
+ <item msgid="9160765456671002324">"Desconectando…"</item>
+ <item msgid="8013176736494493734">"Desconectada"</item>
+ <item msgid="4077393480368783785">"Incorrecta"</item>
+ <item msgid="605372180740008604">"Bloqueada"</item>
+ <item msgid="5102306451432929048">"Inhabilitando conexión inestable temporalmente"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-es/strings.xml b/libs/WifiTrackerLib/res/values-es/strings.xml
index 7fda511f4..f460596bb 100644
--- a/libs/WifiTrackerLib/res/values-es/strings.xml
+++ b/libs/WifiTrackerLib/res/values-es/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Conexión automática desactivada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"No se conectará automáticamente"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sin acceso a Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticación"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Comprueba la contraseña e inténtalo de nuevo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Error de configuración de IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Inhabilitada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Punto de acceso temporalmente lleno"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Condiciones de red temporalmente inestables"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Señal débil. Prueba a acercarte al router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"La red está saturada. Inténtalo de nuevo más tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"No se ha podido conectar. Inténtalo de nuevo más tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"No se ha podido conectar. Inténtalo de nuevo en otro momento."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconectado"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Red guardada"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"De uso medido"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"No medida"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conectado mediante <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponible con <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Conectado automáticamente mediante <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Conectado automáticamente mediante un proveedor de valoración de redes"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Conexión limitada"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"No se ha podido acceder al servidor DNS privado"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Conectado al dispositivo. Sin acceso a Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Calidad baja"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ninguna"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Caducada"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toca para registrarte"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toca para renovar la suscripción y conectarte"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Abriendo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"No se ha podido conectar"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completando registro…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"No se ha podido completar el registro. Toca para intentarlo de nuevo."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registro completado. Conectando…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Esta red recibe un ID de SIM con el que se puede rastrear la ubicación del dispositivo. "<annotation id="url">"Más información"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Muy lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Aceptable"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Media"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Muy rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Por ahora no se conectará automáticamente a redes Wi-Fi"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Conexión automática desactivada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"No se conectará automáticamente"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"No hay acceso a Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema de autenticación"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Comprueba la contraseña y vuelve a intentarlo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Error de configuración de IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Inhabilitado"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Punto de acceso temporalmente lleno"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desconectado"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Guardado"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Medida"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"No medida"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Conectado a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponible a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Conectada automáticamente mediante <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectado automáticamente a través de un proveedor de valoración de redes"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Conexión limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"No se ha podido acceder al servidor DNS privado"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sin Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ninguna"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Caducada"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toca para registrarte"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toca para renovar la suscripción y conectarte"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Abriendo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"No se ha podido conectar"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completando registro…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"No se ha podido completar el registro. Toca para volver a intentarlo."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Se ha completado el registro. Conectando…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Esta red recibe un ID de SIM con el que se puede rastrear la ubicación del dispositivo. "<annotation id="url">"Más información"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Muy lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Aceptable"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Media"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Muy rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-et/arrays.xml b/libs/WifiTrackerLib/res/values-et/arrays.xml
index 08cacc878..32d06020a 100644
--- a/libs/WifiTrackerLib/res/values-et/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-et/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Otsimine …"</item>
- <item msgid="9055468790485684083">"Ühendamine …"</item>
- <item msgid="6099499723199990208">"Autentimine …"</item>
- <item msgid="6794055951297347103">"IP-aadressi hankimine …"</item>
- <item msgid="5450920562291300229">"Ühendatud"</item>
- <item msgid="6332116533879646145">"Peatatud"</item>
- <item msgid="294459081501073818">"Ühenduse katkestamine …"</item>
- <item msgid="1577368920272598676">"Pole ühendatud"</item>
- <item msgid="7655843177582495451">"Ebaõnnestus"</item>
- <item msgid="8953752690917593623">"Blokeeritud"</item>
- <item msgid="4400457817750243671">"Kehva ühenduse ajutine vältimine"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Skannimine …"</item>
+ <item msgid="6222852518007967736">"Ühendamine …"</item>
+ <item msgid="1176401854208153464">"Autentimine …"</item>
+ <item msgid="1377026397901197257">"IP-aadressi hankimine …"</item>
+ <item msgid="7627139816052121509">"Ühendatud"</item>
+ <item msgid="1598801023719359130">"Peatatud"</item>
+ <item msgid="9160765456671002324">"Ühenduse katkestamine …"</item>
+ <item msgid="8013176736494493734">"Pole ühendatud"</item>
+ <item msgid="4077393480368783785">"Ebaõnnestus"</item>
+ <item msgid="605372180740008604">"Blokeeritud"</item>
+ <item msgid="5102306451432929048">"Kehva ühenduse ajutine vältimine"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-et/strings.xml b/libs/WifiTrackerLib/res/values-et/strings.xml
index 72cde53a1..bd4a0b78f 100644
--- a/libs/WifiTrackerLib/res/values-et/strings.xml
+++ b/libs/WifiTrackerLib/res/values-et/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automaatne ühendamine on väljas"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Salvestas: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Ei ühendata automaatselt"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Internetiühendus puudub"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentimise probleem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Kontrollige parooli ja proovige uuesti"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP seadistamise tõrge"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Keelatud"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pääsupunkt on ajutiselt täis"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Võrguühenduse tingimused on ajutiselt kehvad"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Nõrk signaal. Minge ruuterile lähemale."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Võrk on ülekoormatud. Proovige hiljem uuesti."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ei saa ühendada. Proovige hiljem uuesti."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ei saa ühendada. Proovige hiljem uuesti."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Pole ühendatud"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Salvestatud"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Mahupõhine"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Mittemahupõhine"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Ühendatud rakenduse <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Saadaval rakenduse <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automaatselt ühendatud teenusepakkuja <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Ühendus loodi automaatselt võrgukvaliteedi hinnangute pakkuja kaudu"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Piiratud ühendus"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Privaatsele DNS-serverile ei pääse juurde"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Seadmega ühendatud. Internetiühendust ei saa luua."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Kehva kvaliteediga"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Pole"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Aegunud"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Puudutage registreerimiseks"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Puudutage tellimuse uuendamiseks ja ühenduse loomiseks"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Teenuse <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> avamine"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ühendust ei saanud luua"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Registreerimise lõpuleviimine …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registreerimist ei saanud lõpule viia. Puudutage, et uuesti proovida."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registreerimine on lõpule viidud. Ühendamine …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"See võrk saab SIM-i ID, mida saab kasutada seadme asukoha jälgimiseks. "<annotation id="url">"Lisateave"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Väga aeglane"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Aeglane"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Keskmine"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Kiire"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Väga kiire"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"WiFi-ühendust ei looda praegu automaatselt"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automaatne ühendamine on väljas"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Salvestas: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Ei ühendata automaatselt"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Juurdepääs internetile puudub"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentimise probleem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Kontrollige parooli ja proovige uuesti"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP seadistamise tõrge"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Keelatud"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pääsupunkt on ajutiselt täis"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Pole ühendatud"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Salvestatud"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Mahupõhine"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Mittemahupõhine"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Ühendatud võrgu <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Saadaval teenuse <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automaatselt ühendatud teenusepakkuja <xliff:g id="NAME">%1$s</xliff:g> kaudu"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Ühendus loodi automaatselt võrgukvaliteedi hinnangute pakkuja kaudu"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Piiratud ühendus"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Privaatsele DNS-serverile ei pääse juurde"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Interneti pole"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Puudub"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Aegunud"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Puudutage registreerimiseks"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Puudutage tellimuse uuendamiseks ja ühenduse loomiseks"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Teenuse <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> avamine"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ühendust ei saanud luua"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Registreerimise lõpuleviimine …"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registreerimist ei saanud lõpule viia. Puudutage, et uuesti proovida."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registreerimine on lõpule viidud. Ühendamine …"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"See võrk saab SIM-i ID, mida saab kasutada seadme asukoha jälgimiseks. "<annotation id="url">"Lisateave"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Väga aeglane"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Aeglane"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Hea"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Keskmine"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Kiire"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Väga kiire"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-eu/arrays.xml b/libs/WifiTrackerLib/res/values-eu/arrays.xml
index 710e0266e..06890d5ed 100644
--- a/libs/WifiTrackerLib/res/values-eu/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-eu/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Bilatzen…"</item>
- <item msgid="9055468790485684083">"Konektatzen…"</item>
- <item msgid="6099499723199990208">"Autentifikatzen…"</item>
- <item msgid="6794055951297347103">"IP helbidea lortzen…"</item>
- <item msgid="5450920562291300229">"Konektatuta"</item>
- <item msgid="6332116533879646145">"Etenda"</item>
- <item msgid="294459081501073818">"Deskonektatzen…"</item>
- <item msgid="1577368920272598676">"Deskonektatuta"</item>
- <item msgid="7655843177582495451">"Huts egin du"</item>
- <item msgid="8953752690917593623">"Blokeatuta"</item>
- <item msgid="4400457817750243671">"Konexio ahula aldi baterako saihesten"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Bilatzen…"</item>
+ <item msgid="6222852518007967736">"Konektatzen…"</item>
+ <item msgid="1176401854208153464">"Autentifikatzen…"</item>
+ <item msgid="1377026397901197257">"IP helbidea lortzen…"</item>
+ <item msgid="7627139816052121509">"Konektatuta"</item>
+ <item msgid="1598801023719359130">"Etenda"</item>
+ <item msgid="9160765456671002324">"Deskonektatzen…"</item>
+ <item msgid="8013176736494493734">"Deskonektatuta"</item>
+ <item msgid="4077393480368783785">"Huts egin du"</item>
+ <item msgid="605372180740008604">"Blokeatuta"</item>
+ <item msgid="5102306451432929048">"Konexio ahula aldi baterako saihesten"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-eu/strings.xml b/libs/WifiTrackerLib/res/values-eu/strings.xml
index 8e92cca65..7a27cdee2 100644
--- a/libs/WifiTrackerLib/res/values-eu/strings.xml
+++ b/libs/WifiTrackerLib/res/values-eu/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Konexio automatikoa desaktibatuta"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> aplikazioak gorde du"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Ez da konektatuko automatikoki"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ez dago Interneteko konexiorik"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentifikazio-arazoa"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Egiaztatu pasahitza eta saiatu berriro"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Ezin izan da konfiguratu IP helbidea"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desgaituta"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Sarbide-puntua beteta dago aldi baterako"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Sarearen baldintzak txarrak izango dira aldi baterako"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Seinale ahula. Gerturatu bideratzailera."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Sarearen ahalmena gainditu da. Saiatu berriro geroago."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ezin da konektatu. Saiatu berriro geroago."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ezin da konektatu. Saiatu berriro geroago."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Deskonektatuta"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gordeta"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Sare neurtua"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Neurtu gabeko sarea"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> bidez konektatuta"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> bidez erabilgarri"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatikoki konektatu da <xliff:g id="NAME">%1$s</xliff:g> bidez"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Sare-balorazioen hornitzaile baten bidez automatikoki konektatuta"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Konexio mugatua"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Ezin da atzitu DNS zerbitzari pribatua"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Gailura konektatuta. Ezin da Interenetarako sarbiderik eman."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Kalitate txikia"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Bat ere ez"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Iraungita"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Sakatu erregistratzeko"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Sakatu harpidetza berritzeko eta konektatzeko"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> irekitzen"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ezin izan da konektatu"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Izena ematen…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Ezin izan da erregistratu. Berriro saiatzeko, ukitu hau."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Erregistratu da. Konektatzen…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Gailuaren kokapenaren jarraipena egiteko balio duen SIM ID bat jasotzen du sare honek. "<annotation id="url">"Lortu informazio gehiago"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Oso motela"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Motela"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Ados"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Normala"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Bizkorra"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Oso bizkorra"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Oraingoz ez da automatikoki konektatuko wifira"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Konexio automatikoa desaktibatuta"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> aplikazioak gorde du"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Ez da konektatuko automatikoki"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ez dago Interneteko konexiorik"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentifikazio-arazoa"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Egiaztatu pasahitza zuzena dela eta saiatu berriro"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Ezin izan da konfiguratu IP helbidea"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desgaituta"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Sarbide-puntua beteta dago aldi baterako"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Deskonektatuta"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Gordeta"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Sare neurtua"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Neurtu gabeko sarea"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> bidez konektatuta"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> bidez erabilgarri"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatikoki konektatu da <xliff:g id="NAME">%1$s</xliff:g> bidez"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatikoki konektatuta sare-balorazioen hornitzailearen bidez"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Konexio mugatua"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Ezin da atzitu DNS zerbitzari pribatua"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Ez dago Interneteko konexiorik"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Bat ere ez"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Iraungita"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Sakatu izena emateko"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Sakatu harpidetza berritzeko eta konektatu ahal izateko"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> irekitzen"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ezin izan da konektatu"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Izena ematen…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Ezin izan da eman izena. Berriro saiatzeko, ukitu hau."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Eman da izena. Konektatzen…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Gailuaren kokapenaren jarraipena egiteko balio duen SIM ID esklusibo bat jasotzen du sare honek. "<annotation id="url">"Lortu informazio gehiago"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Oso motela"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Motela"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Ados"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Tartekoa"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Bizkorra"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Oso bizkorra"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fa/arrays.xml b/libs/WifiTrackerLib/res/values-fa/arrays.xml
index 9d19120df..51ef4b84b 100644
--- a/libs/WifiTrackerLib/res/values-fa/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-fa/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"درحال اسکن کردن…"</item>
- <item msgid="9055468790485684083">"درحال اتصال…"</item>
- <item msgid="6099499723199990208">"درحال راستی‌آزمایی…"</item>
- <item msgid="6794055951297347103">"‏درحال دریافت نشانی IP…"</item>
- <item msgid="5450920562291300229">"متصل"</item>
- <item msgid="6332116533879646145">"معلق"</item>
- <item msgid="294459081501073818">"درحال قطع اتصال…"</item>
- <item msgid="1577368920272598676">"اتصال قطع شد"</item>
- <item msgid="7655843177582495451">"ناموفق"</item>
- <item msgid="8953752690917593623">"مسدود"</item>
- <item msgid="4400457817750243671">"اجتناب موقت از اتصال ضعیف"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"درحال اسکن کردن…"</item>
+ <item msgid="6222852518007967736">"درحال اتصال…"</item>
+ <item msgid="1176401854208153464">"درحال اصالت‌سنجی…"</item>
+ <item msgid="1377026397901197257">"‏درحال دریافت نشانی IP…"</item>
+ <item msgid="7627139816052121509">"متصل"</item>
+ <item msgid="1598801023719359130">"معلق"</item>
+ <item msgid="9160765456671002324">"درحال قطع اتصال…"</item>
+ <item msgid="8013176736494493734">"قطع اتصال"</item>
+ <item msgid="4077393480368783785">"ناموفق"</item>
+ <item msgid="605372180740008604">"مسدود"</item>
+ <item msgid="5102306451432929048">"جلوگیری موقت از اتصال ضعیف"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fa/strings.xml b/libs/WifiTrackerLib/res/values-fa/strings.xml
index b534519e8..2777d51fa 100644
--- a/libs/WifiTrackerLib/res/values-fa/strings.xml
+++ b/libs/WifiTrackerLib/res/values-fa/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"اتصال خودکار خاموش است"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"ذخیره شده توسط <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"به‌طور خودکار متصل نخواهد شد"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"دسترسی به اینترنت وجود ندارد"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"مشکل راستی‌آزمایی"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"گذرواژه را بررسی و دوباره امتحان کنید"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"‏IP پیکربندی نشد"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"غیرفعال"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ظرفیت نقطه دسترسی موقتاً تکمیل شده است"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"وضعیت‌های موقتی شبکه ضعیف"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"سیگنال ضعیف است. به رهیاب نزدیک‌تر شوید."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"تعداد ایستگاه‌ها بیش‌از ظرفیت شبکه است. بعداً دوباره امتحان کنید."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"اتصال برقرار نشد. بعداً دوباره امتحان کنید."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"اتصال برقرار نشد. بعداً دوباره امتحان کنید."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"اتصال قطع شد"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ذخیره‌شده"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"محدود"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"محدودشده"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"ازطریق <xliff:g id="NAME">%1$s</xliff:g> متصل شد"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"دردسترس ازطریق <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"به‌طور خودکار ازطریق <xliff:g id="NAME">%1$s</xliff:g> متصل شد"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"به‌طور خودکار ازطریق ارائه‌دهنده رده‌بندی شبکه متصل شد"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"اتصال محدود"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"دسترسی به سرور ساناد خصوصی ممکن نیست"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"به دستگاه متصل است. نمی‌تواند اینترنت ارائه دهد."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"کیفیت پایین"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"هیچ‌کدام"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"منقضی‌شده"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"برای ثبت‌نام ضربه بزنید"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"برای تمدید اشتراک و متصل شدن، ضربه بزنید"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"درحال باز کردن <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"متصل نشد"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"درحال تکمیل ثبت‌نام…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ثبت‌نام تکمیل نشد. برای امتحان مجدد ضربه بزنید."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ثبت‌نام تکمیل شد. درحال اتصال…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"این شبکه شناسه سیم‌کارتی دریافت می‌کند که می‌توان از آن برای ردیابی مکان دستگاه استفاده کرد. "<annotation id="url">"بیشتر بدانید"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"بسیار آهسته"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"آهسته"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"تأیید"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"متوسط"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"سریع"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"بسیار سریع"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"‏فعلاً Wi-Fi به‌طور خودکار متصل نمی‌شود"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"اتصال خودکار خاموش است"</string>
+ <string name="saved_network" msgid="6241977554502802914">"ذخیره‌شده توسط <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"اتصال به‌طور خودکار انجام نمی‌شود"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"دسترسی به اینترنت ندارد"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"مشکل اصالت‌سنجی"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"گذرواژه را بررسی و دوباره امتحان کنید"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"‏پیکربندی IP انجام نشد"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"غیرفعال شد"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ظرفیت نقطه دسترسی موقتاً تکمیل شده است"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"اتصال قطع شد"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ذخیره‌شده"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"محدودشده"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"محدودنشده"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"متصل شده ازطریق <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"در دسترس ازطریق <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"به‌طور خودکار ازطریق <xliff:g id="NAME">%1$s</xliff:g> متصل شد"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"اتصال خودکار ازطریق ارائه‌دهنده رده‌بندی شبکه"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"اتصال محدود"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"‏سرور DNS خصوصی قابل دسترسی نیست"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"عدم اتصال به اینترنت"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"خالی"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"منقضی‌شده"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"برای ثبت‌نام ضربه بزنید"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"برای تمدید اشتراک و متصل شدن، ضربه بزنید"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"درحال بازکردن <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"متصل نشد"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"درحال تکمیل ثبت‌نام…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ثبت‌نام تکمیل نشد. برای امتحان مجدد ضربه بزنید."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ثبت‌نام کامل شد. درحال اتصال…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"این شبکه شناسه سیم‌کارتی را دریافت می‌کند که می‌توان از آن برای ردیابی مکان دستگاه استفاده کرد. "<annotation id="url">"بیشتر بدانید"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"بسیار آهسته"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"آهسته"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"تأیید"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"متوسط"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"سریع"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"خیلی سریع"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fi/arrays.xml b/libs/WifiTrackerLib/res/values-fi/arrays.xml
index a054d9c05..51cc12e0a 100644
--- a/libs/WifiTrackerLib/res/values-fi/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-fi/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Etsitään…"</item>
- <item msgid="9055468790485684083">"Yhdistetään…"</item>
- <item msgid="6099499723199990208">"Todennetaan…"</item>
- <item msgid="6794055951297347103">"Haetaan IP-osoitetta…"</item>
- <item msgid="5450920562291300229">"Yhdistetty"</item>
- <item msgid="6332116533879646145">"Jäädytetty"</item>
- <item msgid="294459081501073818">"Katkaistaan yhteyttä…"</item>
- <item msgid="1577368920272598676">"Yhteys katkaistu"</item>
- <item msgid="7655843177582495451">"Epäonnistui"</item>
- <item msgid="8953752690917593623">"Estetty"</item>
- <item msgid="4400457817750243671">"Vältetään huonoa yhteyttä tilapäisesti"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Etsitään…"</item>
+ <item msgid="6222852518007967736">"Yhdistetään…"</item>
+ <item msgid="1176401854208153464">"Varmennetaan…"</item>
+ <item msgid="1377026397901197257">"Haetaan IP-osoitetta…"</item>
+ <item msgid="7627139816052121509">"Yhdistetty"</item>
+ <item msgid="1598801023719359130">"Jäädytetty"</item>
+ <item msgid="9160765456671002324">"Katkaistaan…"</item>
+ <item msgid="8013176736494493734">"Yhteys katkaistu"</item>
+ <item msgid="4077393480368783785">"Epäonnistui"</item>
+ <item msgid="605372180740008604">"Estetty"</item>
+ <item msgid="5102306451432929048">"Vältetään huonoa yhteyttä tilapäisesti"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fi/strings.xml b/libs/WifiTrackerLib/res/values-fi/strings.xml
index a972b2cc1..859a1c480 100644
--- a/libs/WifiTrackerLib/res/values-fi/strings.xml
+++ b/libs/WifiTrackerLib/res/values-fi/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automaattinen yhdistäminen pois päältä"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Tämän tallensi <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Yhteyttä ei muodosteta automaattisesti"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ei internetyhteyttä"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Todennusvirhe"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Tarkista salasana ja yritä uudelleen"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-määritysvirhe"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Ei käytössä"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Yhteyspiste tilapäisesti täynnä"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tilapäisesti heikko verkkoyhteys"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Heikko signaali. Kokeile siirtyä lähemmäs reititintä."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Verkon kapasiteetti on ylittynyt. Yritä myöhemmin uudelleen."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ei yhteyttä. Yritä myöhemmin uudelleen."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ei yhteyttä. Yritä myöhemmin uudelleen."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Yhteys katkaistu"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Tallennettu"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Maksullinen"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Maksuton"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Yhdistetty tämän kautta: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Saatavilla tämän kautta: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Yhdistetty automaattisesti tämän kautta: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Yhdistetty automaattisesti verkon arviointipalvelun kautta"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Rajallinen yhteys"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Ei pääsyä yksityiselle DNS-palvelimelle"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Yhdistetty laitteeseen. Ei voi muodostaa internetyhteyttä."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Heikko laatu"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"–"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Vanhentunut"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Rekisteröidy napauttamalla"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Napauta, jos haluat uusia tilauksen ja muodostaa yhteyden"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Avataan <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ei yhteyttä"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Viimeistellään rekisteröitymistä…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Rekisteröityminen ei onnistunut. Yritä uudelleen napauttamalla."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Rekisteröityminen valmis. Yhdistetään…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Tälle verkolle lähetetään SIM-tunnus, jolla voidaan seurata laitteen sijaintia. "<annotation id="url">"Lue lisää"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Hyvin hidas"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Hidas"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Keskinopea"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Nopea"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Hyvin nopea"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi ei toistaiseksi yhdistä automaattisesti"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automaattinen yhdistäminen pois päältä"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Tallentaja: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Yhteyttä ei muodosteta automaattisesti"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ei internetyhteyttä"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Todennusvirhe"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Tarkista salasana ja yritä uudelleen."</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-kokoonpanovirhe"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Pois päältä"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Yhteyspiste tilapäisesti täynnä"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Yhteys katkaistu"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Tallennettu"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Maksullinen"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Maksuton"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Yhdistetty (<xliff:g id="NAME">%1$s</xliff:g>)"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Saatavilla tämän kautta: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automaattisesti yhdistetty tämän kautta: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Yhdistetty automaattisesti verkon arviointipalvelun kautta"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Rajallinen yhteys"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Ei pääsyä yksityiselle DNS-palvelimelle"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Ei internetyhteyttä"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ei mitään"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Vanhentunut"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Rekisteröidy napauttamalla"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Kosketa, jos haluat uusia tilauksen ja muodostaa yhteyden"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Avataan <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ei yhteyttä"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Viimeistellään rekisteröitymistä…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Rekisteröityminen ei onnistunut. Yritä uudelleen napauttamalla."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Rekisteröityminen valmis. Yhdistetään…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Tälle verkolle luodaan SIM-tunnus, jolla voidaan seurata laitteen sijaintia. "<annotation id="url">"Lue lisää"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Hyvin hidas"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Hidas"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Kohtuullinen"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Nopea"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Hyvin nopea"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fr-rCA/arrays.xml b/libs/WifiTrackerLib/res/values-fr-rCA/arrays.xml
index 63491cba2..3d6f322f7 100644
--- a/libs/WifiTrackerLib/res/values-fr-rCA/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-fr-rCA/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Recherche en cours…"</item>
- <item msgid="9055468790485684083">"Connexion en cours…"</item>
- <item msgid="6099499723199990208">"Authentification en cours…"</item>
- <item msgid="6794055951297347103">"Récupération de l\'adresse IP en cours…"</item>
- <item msgid="5450920562291300229">"Connecté"</item>
- <item msgid="6332116533879646145">"Suspendu"</item>
- <item msgid="294459081501073818">"Déconnexion en cours…"</item>
- <item msgid="1577368920272598676">"Déconnecté"</item>
- <item msgid="7655843177582495451">"Échec"</item>
- <item msgid="8953752690917593623">"Bloqué"</item>
- <item msgid="4400457817750243671">"Rejet temporaire des mauvaises connexions"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Recherche en cours…"</item>
+ <item msgid="6222852518007967736">"Connexion en cours…"</item>
+ <item msgid="1176401854208153464">"Authentification en cours…"</item>
+ <item msgid="1377026397901197257">"Récupération de l\'adresse IP en cours…"</item>
+ <item msgid="7627139816052121509">"Connecté"</item>
+ <item msgid="1598801023719359130">"Suspendu"</item>
+ <item msgid="9160765456671002324">"Déconnexion en cours…"</item>
+ <item msgid="8013176736494493734">"Déconnecté"</item>
+ <item msgid="4077393480368783785">"Échec"</item>
+ <item msgid="605372180740008604">"Bloqué"</item>
+ <item msgid="5102306451432929048">"Rejet temporaire des mauvaises connexions"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fr-rCA/strings.xml b/libs/WifiTrackerLib/res/values-fr-rCA/strings.xml
index 5d0c2e593..59a3ca128 100644
--- a/libs/WifiTrackerLib/res/values-fr-rCA/strings.xml
+++ b/libs/WifiTrackerLib/res/values-fr-rCA/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"La connexion automatique est désactivée"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Enregistrés par <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Reconnexion automatique impossible"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Aucun accès à Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problème d\'authentification"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Vérifiez le mot de passe et réessayez"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Échec de configuration de l\'adresse IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Désactivé"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Le point d\'accès est temporairement plein"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Mauvaises conditions de réseau temporaires"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Le signal est faible. Essayez de vous rapprocher du routeur."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Le réseau a atteint sa capacité maximale. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Connexion impossible. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Connexion impossible. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Déconnecté"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Enregistré"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Mesuré"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Non mesuré"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connecté sur le réseau <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Accessible dans <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Connecté automatiquement par le réseau <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Connecté automatiquement par l\'utilitaire d\'évaluation des réseaux"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Connexion limitée"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Impossible d\'accéder au serveur DNS privé"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connecté à l\'appareil. Aucune connexion Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Faible qualité"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Aucune"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expiré"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toucher pour vous inscrire"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Touchez pour renouveler l\'abonnement et vous connecter"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Ouverture de <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> en cours…"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Impossible de se connecter"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Terminaison de l\'inscription en cours…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Impossible de terminer l\'inscription. Touchez pour réessayer."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Inscription terminée. Connexion en cours…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ce réseau reçoit un identifiant SIM qui peut être utilisé pour faire le suivi de la position de l\'appareil. "<annotation id="url">"En savoir plus"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Très lente"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lente"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Moyenne"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Élevée"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Très rapide"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"La connexion automatique au Wi-Fi n\'est pas possible pour le moment"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"La connexion automatique est désactivée"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Enregistrés par <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Reconnexion automatique impossible"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Aucun accès à Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problème d\'authentification"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Vérifiez le mot de passe et réessayez"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Échec de configuration de l\'adresse IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Désactivés"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Le point d\'accès est temporairement plein"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Déconnecté"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Enregistré"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Facturé à l\'usage"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Non mesuré"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connecté sur le réseau <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Accessible dans <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Connecté automatiquement par le réseau <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Connecté automatiquement par le fournisseur d\'avis sur le réseau"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Connexion limitée"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Impossible d\'accéder au serveur DNS privé"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Aucune connexion Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Aucune"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expiré"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toucher pour vous inscrire"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Touchez pour renouveler l\'abonnement et vous connecter"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Ouverture de <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> en cours…"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Impossible de se connecter"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Finalisation de l\'inscription en cours…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Impossible de terminer l\'inscription. Touchez pour réessayer."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Inscription terminée. Connexion en cours…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ce réseau reçoit un identifiant SIM qui peut être utilisé pour faire le suivi de la position de l\'appareil. "<annotation id="url">"En savoir plus"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Très lente"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lente"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Moyenne"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Élevée"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Très rapide"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fr/arrays.xml b/libs/WifiTrackerLib/res/values-fr/arrays.xml
index 90a922dbc..05892c3ca 100644
--- a/libs/WifiTrackerLib/res/values-fr/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-fr/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Recherche…"</item>
- <item msgid="9055468790485684083">"Connexion…"</item>
- <item msgid="6099499723199990208">"Authentification…"</item>
- <item msgid="6794055951297347103">"Récupération de l\'adresse IP…"</item>
- <item msgid="5450920562291300229">"Connecté"</item>
- <item msgid="6332116533879646145">"Suspendu"</item>
- <item msgid="294459081501073818">"Déconnexion…"</item>
- <item msgid="1577368920272598676">"Déconnecté"</item>
- <item msgid="7655843177582495451">"Échec"</item>
- <item msgid="8953752690917593623">"Bloqué"</item>
- <item msgid="4400457817750243671">"Mauvaise connexion évitée momentanément"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Recherche…"</item>
+ <item msgid="6222852518007967736">"Connexion…"</item>
+ <item msgid="1176401854208153464">"Authentification…"</item>
+ <item msgid="1377026397901197257">"Récupération de l\'adresse IP…"</item>
+ <item msgid="7627139816052121509">"Connecté"</item>
+ <item msgid="1598801023719359130">"Suspendu"</item>
+ <item msgid="9160765456671002324">"Déconnexion…"</item>
+ <item msgid="8013176736494493734">"Déconnecté"</item>
+ <item msgid="4077393480368783785">"Échec"</item>
+ <item msgid="605372180740008604">"Bloqué"</item>
+ <item msgid="5102306451432929048">"Mauvaise connexion évitée momentanément"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-fr/strings.xml b/libs/WifiTrackerLib/res/values-fr/strings.xml
index eab74316b..ef192a955 100644
--- a/libs/WifiTrackerLib/res/values-fr/strings.xml
+++ b/libs/WifiTrackerLib/res/values-fr/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Connexion automatique désactivée"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Enregistré par <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Connexion automatique impossible"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Aucun accès à Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problème d\'authentification"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Vérifiez le mot de passe et réessayez"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Échec de la configuration de l\'adresse IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Désactivés"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Point d\'accès temporairement plein"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Mauvaises conditions réseau temporaires"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Signal faible. Rapprochez-vous du routeur."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Le réseau est en surcapacité. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Connexion impossible. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Connexion impossible. Réessayez plus tard."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Déconnecté"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Enregistré"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Facturé à l\'usage"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Sans compteur"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connecté via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponible via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Connecté automatiquement via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Connecté automatiquement via un fournisseur d\'évaluation de l\'état du réseau"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Connexion limitée"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Impossible d\'accéder au serveur DNS privé"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connecté à l\'appareil. Connexion Internet impossible."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Faible qualité"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Aucun"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expiré"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Appuyez ici pour vous connecter"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Appuyez pour renouveler l\'abonnement et vous connecter"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Ouverture de <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Impossible de se connecter"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Finalisation de l\'inscription…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Impossible de finaliser l\'inscription. Appuyez ici pour réessayer."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Inscription terminée. Connexion…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ce réseau reçoit un ID de SIM qui peut être utilisé pour suivre la position de l\'appareil. "<annotation id="url">"En savoir plus"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Très lente"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lente"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Correcte"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Moyenne"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rapide"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Très rapide"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Connexion automatique au Wi-Fi désactivée pour le moment"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Connexion automatique désactivée"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Enregistré lors de : <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Connexion automatique impossible"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Aucun accès à Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problème d\'authentification"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Vérifiez le mot de passe et réessayez"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Échec de la configuration de l\'adresse IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Désactivé"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Point d\'accès temporairement plein"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Déconnecté"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Enregistré"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Facturé à l\'usage"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Non facturé à l\'usage"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connecté via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponible via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Connecté automatiquement via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Connecté automatiquement via un fournisseur d\'évaluation de l\'état du réseau"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Connexion limitée"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Impossible d\'accéder au serveur DNS privé"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Aucun accès à Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Aucune"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Arrivé à expiration"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Appuyez ici pour vous connecter"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Appuyez pour renouveler l\'abonnement et vous connecter"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Ouverture de <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Impossible de se connecter"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Finalisation de l\'inscription…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Impossible de finaliser l\'inscription. Appuyez ici pour réessayer."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Inscription terminée. Connexion…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ce réseau reçoit un ID de carte SIM qui peut être utilisé pour suivre la position de l\'appareil. "<annotation id="url">"En savoir plus"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Très lente"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lente"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Correcte"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Moyenne"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Élevée"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Très rapide"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-gl/arrays.xml b/libs/WifiTrackerLib/res/values-gl/arrays.xml
index 83fc931f5..41aa8a36a 100644
--- a/libs/WifiTrackerLib/res/values-gl/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-gl/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Buscando…"</item>
- <item msgid="9055468790485684083">"Conectando…"</item>
- <item msgid="6099499723199990208">"Autenticando…"</item>
- <item msgid="6794055951297347103">"Obtendo enderezo IP…"</item>
- <item msgid="5450920562291300229">"Conectada"</item>
- <item msgid="6332116533879646145">"Suspendida"</item>
- <item msgid="294459081501073818">"Desconectando…"</item>
- <item msgid="1577368920272598676">"Desconectada"</item>
- <item msgid="7655843177582495451">"Produciuse un erro"</item>
- <item msgid="8953752690917593623">"Bloqueada"</item>
- <item msgid="4400457817750243671">"Evitando conexión deficiente temporalmente"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Buscando…"</item>
+ <item msgid="6222852518007967736">"Conectando…"</item>
+ <item msgid="1176401854208153464">"Autenticando…"</item>
+ <item msgid="1377026397901197257">"Obtendo enderezo IP…"</item>
+ <item msgid="7627139816052121509">"Conectada"</item>
+ <item msgid="1598801023719359130">"Suspendida"</item>
+ <item msgid="9160765456671002324">"Desconectando…"</item>
+ <item msgid="8013176736494493734">"Desconectada"</item>
+ <item msgid="4077393480368783785">"Produciuse un erro"</item>
+ <item msgid="605372180740008604">"Bloqueada"</item>
+ <item msgid="5102306451432929048">"Evitando conexión deficiente temporalmente"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-gl/strings.xml b/libs/WifiTrackerLib/res/values-gl/strings.xml
index 4782ce1e3..5a5ada905 100644
--- a/libs/WifiTrackerLib/res/values-gl/strings.xml
+++ b/libs/WifiTrackerLib/res/values-gl/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"A conexión automática está desactivada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Redes gardadas por <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"A rede non se conectará automaticamente"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sen acceso a Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticación"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Comproba o contrasinal e téntao de novo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Produciuse un erro ao configurar o enderezo IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desactivada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"O punto de acceso está temporalmente cheo"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Condicións de rede temporalmente deficientes"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Sinal feble. Proba a achegarte ao router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"A rede está saturada. Téntao de novo máis tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Non se puido establecer conexión. Téntao de novo máis tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Non se puido establecer conexión. Téntao de novo máis tarde."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconectada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Gardada"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Rede sen tarifa plana"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Rede con tarifa plana"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conectada a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dispoñible a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Conectada automaticamente a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Conectada automaticamente a través dun provedor de valoración de redes"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Pouca conexión"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Non se puido acceder ao servidor DNS privado"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Estableceuse conexión co dispositivo. Internet non está dispoñible."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Pouca calidade"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ningunha"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Caducou"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toca para rexistrarte"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toca para renovar a subscrición e conectarte"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Non se puido establecer conexión"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completando rexistro…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Non se puido completar o rexistro. Toca para tentalo de novo."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Completouse o rexistro. Conectando…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Esta rede recibe un código SIM que se pode utilizar para realizar un seguimento da localización do dispositivo. "<annotation id="url">"Máis información"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Moi lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Correcta"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Media"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Moi rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"De momento, a wifi non se conectará automaticamente"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"A conexión automática está desactivada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Gardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"A rede non se conectará automaticamente"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Sen acceso a Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Produciuse un problema de autenticación"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Comproba o contrasinal e téntao de novo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Produciuse un erro ao configurar o enderezo IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desactivadas"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"O punto de acceso está temporalmente cheo"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Rede desconectada"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Gardada"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Rede sen tarifa plana"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Rede con tarifa plana"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Wifi conectada a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dispoñible a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Wifi conectada automaticamente a través de: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectada automaticamente a través dun provedor de valoración de redes"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Pouca conexión"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Non se puido acceder ao servidor DNS privado"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Non hai conexión a Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ningunha"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Caducou"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toca para rexistrarte"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toca para renovar a subscrición e conectarte"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Non se puido conectar"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completando rexistro…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Non se puido completar o rexistro. Toca para tentalo de novo."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Completouse o rexistro. Conectando…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Esta rede recibe un código SIM que se pode utilizar para realizar un seguimento da localización do dispositivo. "<annotation id="url">"Máis información"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Moi lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Correcta"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Media"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Moi rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-gu/arrays.xml b/libs/WifiTrackerLib/res/values-gu/arrays.xml
index 2e360eae3..1824bffa7 100644
--- a/libs/WifiTrackerLib/res/values-gu/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-gu/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"સ્કૅન કરી રહ્યા છીએ…"</item>
- <item msgid="9055468790485684083">"કનેક્ટ કરી રહ્યા છીએ…"</item>
- <item msgid="6099499723199990208">"પ્રમાણિત કરી રહ્યા છીએ…"</item>
- <item msgid="6794055951297347103">"IP ઍડ્રેસ મેળવી રહ્યા છીએ…"</item>
- <item msgid="5450920562291300229">"કનેક્ટ કર્યું છે"</item>
- <item msgid="6332116533879646145">"સસ્પેન્ડ કર્યું છે"</item>
- <item msgid="294459081501073818">"ડિસ્કનેક્ટ કરી રહ્યા છીએ…"</item>
- <item msgid="1577368920272598676">"ડિસ્કનેક્ટ કર્યું છે"</item>
- <item msgid="7655843177582495451">"અસફળ"</item>
- <item msgid="8953752690917593623">"બ્લૉક કર્યું છે"</item>
- <item msgid="4400457817750243671">"નબળા કનેક્શનને હંગામી રૂપે ટાળી રહ્યા છીએ"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"સ્કૅન કરી રહ્યાં છીએ…"</item>
+ <item msgid="6222852518007967736">"કનેક્ટ કરી રહ્યાં છીએ…"</item>
+ <item msgid="1176401854208153464">"પ્રમાણિત કરી રહ્યાં છીએ…"</item>
+ <item msgid="1377026397901197257">"IP ઍડ્રેસ મેળવી રહ્યાં છીએ…"</item>
+ <item msgid="7627139816052121509">"કનેક્ટ કર્યું છે"</item>
+ <item msgid="1598801023719359130">"સસ્પેન્ડ કર્યું છે"</item>
+ <item msgid="9160765456671002324">"ડિસ્કનેક્ટ થઈ રહ્યું છે…"</item>
+ <item msgid="8013176736494493734">"ડિસ્કનેક્ટ કર્યું છે"</item>
+ <item msgid="4077393480368783785">"અસફળ"</item>
+ <item msgid="605372180740008604">"બ્લૉક કરેલ"</item>
+ <item msgid="5102306451432929048">"નબળા કનેક્શનને અસ્થાયી રૂપે ટાળી રહ્યું છે"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-gu/strings.xml b/libs/WifiTrackerLib/res/values-gu/strings.xml
index 47984acbc..151547ca0 100644
--- a/libs/WifiTrackerLib/res/values-gu/strings.xml
+++ b/libs/WifiTrackerLib/res/values-gu/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ઑટો-કનેક્ટ બંધ છે"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા સચવાયેલ"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ઑટોમૅટિક રીતે કનેક્ટ થશે નહીં"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"કોઈ ઇન્ટરનેટ ઍક્સેસ નથી"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"પ્રમાણીકરણમાં સમસ્યા"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"પાસવર્ડ ચેક કરો અને ફરી પ્રયાસ કરો"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP ગોઠવણીમાં નિષ્ફળતા"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"બંધ છે"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ઍક્સેસ પૉઇન્ટમાં હંગામી રૂપે જગ્યા નથી"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"હંગામી રીતે નેટવર્કની નબળી સ્થિતિ"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"નબળું સિગ્નલ. રાઉટરની નજીક જઈને પ્રયાસ કરી જુઓ."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"નેટવર્ક પર ક્ષમતા કરતાં વધારે લોડ છે. થોડા સમય પછી ફરી પ્રયાસ કરો."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"કનેક્ટ કરી શકાતું નથી. થોડા સમય પછી ફરી પ્રયાસ કરો."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"કનેક્ટ કરી શકાતું નથી. થોડા સમય પછી ફરી પ્રયાસ કરો."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ડિસ્કનેક્ટ કર્યું છે"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"સાચવેલા"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"મીટર કરેલું"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"મીટર ન કરેલું"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા કનેક્ટ થયેલ"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> મારફતે ઉપલબ્ધ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> મારફતે ઑટોમૅટિક રીતે કનેક્ટ કર્યું છે"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"નેટવર્ક રેટિંગ પ્રદાતા મારફતે ઑટોમૅટિક રીતે કનેક્ટ થયું"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"મર્યાદિત કનેક્શન"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ખાનગી DNS સર્વર ઍક્સેસ કરી શકાતા નથી"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ડિવાઇસ સાથે કનેક્ટેડ છે. ઇન્ટરનેટ સેવા પ્રદાન કરી શકાતી નથી."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ઓછી ક્વૉલિટી"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"કોઈ નહીં"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"સમય સમાપ્ત થયો"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"સાઇન અપ કરવા માટે ટૅપ કરો"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"સબ્સ્ક્રિપ્શનને રિન્યૂ કરવા માટે ટૅપ કરો અને કનેક્ટ કરો"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ખોલી રહ્યા છીએ"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"કનેક્ટ કરી શક્યા નથી"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"સાઇન અપ પૂર્ણ કરી રહ્યા છીએ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"સાઇન અપ પૂર્ણ કરી શકાયું નથી. ફરી પ્રયાસ કરવા માટે ટૅપ કરો."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"સાઇન અપ પૂર્ણ. કનેક્ટ કરી રહ્યા છીએ…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"આ નેટવર્કને સિમ ID મળે છે જેનો ઉપયોગ ડિવાઇસનું સ્થાન ટ્રૅક કરવા માટે થઈ શકે છે. "<annotation id="url">"વધુ જાણો"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ખૂબ જ ધીમી"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ધીમી"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ઓકે"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"મધ્યમ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ઝડપી"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ખૂબ ઝડપી"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"હમણાં વાઇ-ફાઇ ઑટોમૅટિક રીતે કનેક્ટ નહીં થાય"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ઑટો-કનેક્ટ બંધ છે"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા સચવાયું"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ઑટોમૅટિક રીતે કનેક્ટ થશે નહીં"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"કોઈ ઇન્ટરનેટ ઍક્સેસ નથી"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"પ્રમાણીકરણમાં સમસ્યા"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"પાસવર્ડ તપાસો અને ફરી પ્રયાસ કરો"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP ગોઠવણીમાં નિષ્ફળતા"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"અક્ષમ કર્યો"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ઍક્સેસ પૉઇન્ટ અસ્થાયીરૂપે ભરાયેલ છે"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ડિસ્કનેક્ટ કર્યું"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"સાચવેલા"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"મીટર કરેલું"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"મીટર ન કરેલ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> દ્વારા કનેક્ટ થયેલ"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> મારફતે ઉપલબ્ધ"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> મારફતે ઑટોમૅટિક રીતે કનેક્ટ કર્યું છે"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"નેટવર્ક રેટિંગ પ્રદાતા દ્વારા ઑટોમૅટિક રીતે કનેક્ટ થયું"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"મર્યાદિત કનેક્શન"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ખાનગી DNS સર્વર ઍક્સેસ કરી શકાતા નથી"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"કોઈ ઇન્ટરનેટ નથી"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"કોઈ નહીં"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"સમય સમાપ્ત થયો"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"સાઇન અપ કરવા માટે ટૅપ કરો"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"સબ્સ્ક્રિપ્શનને રિન્યૂ કરવા માટે ટૅપ કરો અને કનેક્ટ કરો"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ખોલી રહ્યાં છીએ"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"કનેક્ટ કરી શક્યા નથી"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"સાઇન અપ પૂર્ણ કરી રહ્યા છીએ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"સાઇન અપ પૂર્ણ કરી શકાયું નથી. ફરી પ્રયાસ કરવા માટે ટૅપ કરો."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"સાઇન અપ પૂર્ણ. કનેક્ટ કરી રહ્યાં છીએ…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"આ નેટવર્કને સિમ ID મળે છે જેનો ઉપયોગ ડિવાઇસનું સ્થાન ટ્રૅક કરવા માટે થઈ શકે છે. "<annotation id="url">"વધુ જાણો"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ખૂબ જ ધીમી"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ધીમી"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ઓકે"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"મધ્યમ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ઝડપી"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ખૂબ ઝડપી"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hi/arrays.xml b/libs/WifiTrackerLib/res/values-hi/arrays.xml
index 85d4bfb6f..4302269a8 100644
--- a/libs/WifiTrackerLib/res/values-hi/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-hi/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"स्कैन किया जा रहा है…"</item>
- <item msgid="9055468790485684083">"कनेक्ट हो रहा है…"</item>
- <item msgid="6099499723199990208">"पुष्टि की जा रही है…"</item>
- <item msgid="6794055951297347103">"आईपी पते की जानकारी ली जा रही है…"</item>
- <item msgid="5450920562291300229">"कनेक्ट हो गया"</item>
- <item msgid="6332116533879646145">"कुछ समय के लिए वाई-फ़ाई बंद किया गया"</item>
- <item msgid="294459081501073818">"डिसकनेक्ट किया जा रहा है…"</item>
- <item msgid="1577368920272598676">"डिसकनेक्ट किया गया"</item>
- <item msgid="7655843177582495451">"वाई-फ़ाई से कनेक्ट नहीं हो सका"</item>
- <item msgid="8953752690917593623">"ब्लॉक किया गया"</item>
- <item msgid="4400457817750243671">"खराब कनेक्शन की वजह से, कुछ समय के लिए वाई-फ़ाई बंद किया जा रहा है"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"स्कैन किया जा रहा है…"</item>
+ <item msgid="6222852518007967736">"कनेक्ट हो रहा है…"</item>
+ <item msgid="1176401854208153464">"पुष्टि की जा रही है…"</item>
+ <item msgid="1377026397901197257">"आईपी पते की जानकारी ली जा रही है…"</item>
+ <item msgid="7627139816052121509">"कनेक्ट है"</item>
+ <item msgid="1598801023719359130">"निलंबित"</item>
+ <item msgid="9160765456671002324">"डिसकनेक्ट किया जा रहा है…"</item>
+ <item msgid="8013176736494493734">"डिसकनेक्ट किया गया"</item>
+ <item msgid="4077393480368783785">"वाई-फ़ाई से कनेक्ट नहीं हो सका"</item>
+ <item msgid="605372180740008604">"ब्लॉक किया गया"</item>
+ <item msgid="5102306451432929048">"कुछ समय के लिए, खराब कनेक्शन से कनेक्ट नहीं किया जा रहा है"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hi/strings.xml b/libs/WifiTrackerLib/res/values-hi/strings.xml
index 6aa300ded..f53dbad45 100644
--- a/libs/WifiTrackerLib/res/values-hi/strings.xml
+++ b/libs/WifiTrackerLib/res/values-hi/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"वाई-फ़ाई से अपने-आप कनेक्ट होने की सुविधा बंद है"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> से सेव किया गया"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"अपने-आप कनेक्ट नहीं होगा"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"इंटरनेट नहीं है"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"पुष्टि नहीं हो सकी"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"पासवर्ड जांचें और फिर से कोशिश करें"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"आईपी पता कॉन्फ़िगर नहीं हो सका"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"बंद है"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ऐक्सेस पॉइंट को फ़िलहाल इस्तेमाल नहीं किया जा सकता"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"फ़िलहाल, इंटरनेट कनेक्शन ठीक नहीं है"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"कमज़ोर सिग्नल. राऊटर के पास जाकर देखें."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"नेटवर्क पर उसकी क्षमता से ज़्यादा लोड है. कुछ देर बाद कोशिश करें."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"कनेक्ट नहीं किया जा सका. कुछ देर बाद कोशिश करें."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"कनेक्ट नहीं किया जा सका. कुछ देर बाद कोशिश करें."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"डिसकनेक्ट किया गया"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"नेटवर्क सेव किया गया"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"डेटा इस्तेमाल करने की सीमा तय की गई है"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"डेटा इस्तेमाल करने की सीमा तय नहीं की गई है"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> के ज़रिए कनेक्ट किया गया"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"यह नेटवर्क, <xliff:g id="NAME">%1$s</xliff:g> के ज़रिए उपलब्ध है"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"वाई-फ़ाई, <xliff:g id="NAME">%1$s</xliff:g> के ज़रिए अपने-आप कनेक्ट हो गया"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"वाई-फ़ाई, नेटवर्क रेटिंग देने वाली कंपनी के ज़रिए अपने-आप कनेक्ट हो गया"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"सीमित कनेक्शन"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"निजी डीएनएस सर्वर को ऐक्सेस नहीं किया जा सकता"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"डिवाइस से कनेक्ट है. इंटरनेट सेवा उपलब्ध नहीं है."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"खराब कनेक्शन"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"कोई नहीं"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"समयसीमा खत्म हो गई"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"साइन अप करने के लिए टैप करें"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"सदस्यता रिन्यू करने के लिए टैप करें और कनेक्ट करें"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> खोला जा रहा है"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"कनेक्ट नहीं किया जा सका"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"साइन अप किया जा रहा है…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"साइन अप नहीं किया जा सका. फिर से कोशिश करने के लिए टैप करें."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"साइन अप की प्रक्रिया पूरी हो गई. कनेक्ट हो रहा है…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"इस नेटवर्क को एक सिम आईडी दिया जाता है जिसका इस्तेमाल डिवाइस की जगह की जानकारी का पता लगाने के लिए किया जा सकता है. "<annotation id="url">"ज़्यादा जानें"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"बहुत धीमी"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"धीमी"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ठीक-ठाक"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"औसत"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"तेज़"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"बहुत तेज़"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"फ़िलहाल, वाई-फ़ाई अपने-आप कनेक्ट नहीं होगा"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"अपने-आप कनेक्ट होने की सुविधा बंद है"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> के द्वारा सहेजा गया"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"अपने-आप कनेक्ट नहीं होगा"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"इंटरनेट नहीं है"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"पुष्टि नहीं हो सकी"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"पासवर्ड जाँचें और दोबारा कोशिश करें"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP कॉन्‍फ़िगरेशन की विफलता"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"अक्षम"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ऐक्सेस पॉइंट फ़िलहाल भरा हुआ है"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"डिसकनेक्ट किया गया"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"सेव किया गया"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"डेटा इस्तेमाल करने की सीमा तय की गई है"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"डेटा इस्तेमाल करने की सीमा तय नहीं की गई है"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> के ज़रिए कनेक्ट किया गया"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"यह <xliff:g id="NAME">%1$s</xliff:g> के ज़रिए उपलब्ध है"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> के ज़रिए अपने-आप कनेक्ट किया गया"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"नेटवर्क रेटिंग कंपनी के ज़रिए अपने आप कनेक्ट है"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"सीमित कनेक्शन"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"निजी डीएनएस सर्वर को ऐक्सेस नहीं किया जा सकता"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"इंटरनेट कनेक्शन नहीं है"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"कोई नहीं"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"समयसीमा खत्म हो गई"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"साइन अप करने के लिए टैप करें"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"सदस्यता रिन्यू करने के लिए टैप करें और कनेक्ट करें"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> खोला जा रहा है"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"कनेक्ट नहीं किया जा सका"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"साइन अप किया जा रहा है…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"साइन अप नहीं हो सका. फिर से कोशिश करने के लिए टैप करें."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"साइन अप की प्रक्रिया पूरी हो गई. कनेक्ट हो रहा है…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"इस नेटवर्क को एक सिम आईडी दिया जाता है जिसका इस्तेमाल डिवाइस की जगह की जानकारी का पता लगाने के लिए किया जा सकता है. "<annotation id="url">"ज़्यादा जानें"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"अत्‍यधिक धीमी"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"धीमी"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ठीक है"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"मध्यम"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"तेज़"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"बहुत ज़्यादा तेज़"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hr/arrays.xml b/libs/WifiTrackerLib/res/values-hr/arrays.xml
index ccf67fc11..8ffa760c4 100644
--- a/libs/WifiTrackerLib/res/values-hr/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-hr/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Traženje…"</item>
- <item msgid="9055468790485684083">"Povezivanje…"</item>
- <item msgid="6099499723199990208">"Autentifikacija…"</item>
- <item msgid="6794055951297347103">"Dohvaćanje IP adrese…"</item>
- <item msgid="5450920562291300229">"Povezano"</item>
- <item msgid="6332116533879646145">"Obustavljeno"</item>
- <item msgid="294459081501073818">"Isključivanje…"</item>
- <item msgid="1577368920272598676">"Nije povezano"</item>
- <item msgid="7655843177582495451">"Neuspješno"</item>
- <item msgid="8953752690917593623">"Blokirano"</item>
- <item msgid="4400457817750243671">"Privremeno izbjegavanje loše veze"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Traženje…"</item>
+ <item msgid="6222852518007967736">"Povezivanje…"</item>
+ <item msgid="1176401854208153464">"Autentifikacija…"</item>
+ <item msgid="1377026397901197257">"Dohvaćanje IP adrese…"</item>
+ <item msgid="7627139816052121509">"Povezano"</item>
+ <item msgid="1598801023719359130">"Obustavljeno"</item>
+ <item msgid="9160765456671002324">"Prekidanje veze…"</item>
+ <item msgid="8013176736494493734">"Nije povezano"</item>
+ <item msgid="4077393480368783785">"Neuspješno"</item>
+ <item msgid="605372180740008604">"Blokirano"</item>
+ <item msgid="5102306451432929048">"Privremeno izbjegavanje loše veze"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hr/strings.xml b/libs/WifiTrackerLib/res/values-hr/strings.xml
index 28c0d6f49..907d80eb5 100644
--- a/libs/WifiTrackerLib/res/values-hr/strings.xml
+++ b/libs/WifiTrackerLib/res/values-hr/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatsko povezivanje je isključeno"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Spremila aplikacija <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Neće se povezati automatski"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nema pristupa internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem u autentifikaciji"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Provjerite zaporku i pokušajte ponovo"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Konfiguracija IP-ja nije uspjela"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Onemogućeno"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pristupna je točka privremeno puna"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Privremeno loši uvjeti mreže"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Signal je slab. Pokušajte se približiti usmjerivaču."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Premašen je kapacitet mreže. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Povezivanje nije uspjelo. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Povezivanje nije uspjelo. Pokušajte ponovo kasnije."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Nije povezano"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Spremljeno"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"S ograničenim prometom"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Bez ograničenja prometa"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Povezano putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dostupno putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatski povezano putem aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatski povezano putem ocjenjivača mreže"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ograničena veza"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Nije moguće pristupiti privatnom DNS poslužitelju"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Uspostavljena je veza s uređajem. Povezivanje s internetom nije moguće."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Niska kvaliteta"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ništa"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Isteklo"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Dodirnite da biste se registrirali"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Dodirnite da biste obnovili pretplatu i povezali se"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Otvaranje usluge <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Povezivanje nije uspjelo"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Dovršavanje registracije…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registracija nije dovršena. Dodirnite za ponovni pokušaj."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registracija je dovršena. Povezivanje…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ova mreža prima ID SIM-a koji se može koristiti za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Vrlo sporo"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Sporo"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"U redu"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Srednje"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Brzo"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Vrlo brzo"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi se zasad neće automatski povezivati"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatsko povezivanje je isključeno"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Spremila aplik. <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Neće se povezati automatski"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nema pristupa internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem u autentifikaciji"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Provjerite zaporku i pokušajte ponovo"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Konfiguracija IP-ja nije uspjela"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Onemogućeno"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pristupna je točka privremeno puna"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Nije povezano"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Spremljeno"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"S ograničenim prometom"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Bez ograničenja prometa"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Povezan putem mreže <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dostupno putem mreže <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatski povezano putem mreže <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatski povezan putem ocjenjivača mreže"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ograničena veza"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Nije moguće pristupiti privatnom DNS poslužitelju"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nema interneta"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nema"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Isteklo"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Dodirnite da biste se registrirali"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Dodirnite da biste obnovili pretplatu i povezali se"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Otvaranje usluge <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Povezivanje nije uspjelo"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Dovršavanje registracije…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registracija nije dovršena. Dodirnite za ponovni pokušaj."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registracija je dovršena. Povezivanje…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ova mreža prima jedinstveni ID SIM-a koji se može koristiti za praćenje lokacije uređaja. "<annotation id="url">"Saznajte više"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Vrlo sporo"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Sporo"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"U redu"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Srednje"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Brzo"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Vrlo brzo"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hu/arrays.xml b/libs/WifiTrackerLib/res/values-hu/arrays.xml
index 5cd6d329f..62c2b4e7e 100644
--- a/libs/WifiTrackerLib/res/values-hu/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-hu/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Keresés…"</item>
- <item msgid="9055468790485684083">"Csatlakozás…"</item>
- <item msgid="6099499723199990208">"Hitelesítés…"</item>
- <item msgid="6794055951297347103">"IP-cím lekérése…"</item>
- <item msgid="5450920562291300229">"Csatlakoztatva"</item>
- <item msgid="6332116533879646145">"Felfüggesztve"</item>
- <item msgid="294459081501073818">"Kapcsolat bontása…"</item>
- <item msgid="1577368920272598676">"Szétkapcsolva"</item>
- <item msgid="7655843177582495451">"Sikertelen"</item>
- <item msgid="8953752690917593623">"Letiltva"</item>
- <item msgid="4400457817750243671">"A rossz minőségű kapcsolatok átmeneti elkerülése"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Keresés…"</item>
+ <item msgid="6222852518007967736">"Csatlakozás…"</item>
+ <item msgid="1176401854208153464">"Hitelesítés…"</item>
+ <item msgid="1377026397901197257">"IP-cím lekérése…"</item>
+ <item msgid="7627139816052121509">"Csatlakozva"</item>
+ <item msgid="1598801023719359130">"Felfüggesztve"</item>
+ <item msgid="9160765456671002324">"Leválasztás…"</item>
+ <item msgid="8013176736494493734">"Leválasztva"</item>
+ <item msgid="4077393480368783785">"Sikertelen"</item>
+ <item msgid="605372180740008604">"Letiltva"</item>
+ <item msgid="5102306451432929048">"A rossz minőségű kapcsolatok átmeneti elkerülése"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hu/strings.xml b/libs/WifiTrackerLib/res/values-hu/strings.xml
index cc6e0fe3d..19a9b66fc 100644
--- a/libs/WifiTrackerLib/res/values-hu/strings.xml
+++ b/libs/WifiTrackerLib/res/values-hu/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatikus csatlakozás kikapcsolva"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Mentette: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nem csatlakozik automatikusan"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nincs internet-hozzáférés"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Hitelesítési probléma"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Ellenőrizze a jelszót, majd próbálja újra"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-konfigurációs hiba"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Letiltva"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"A hozzáférési pont átmenetileg megtelt"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"A hálózati kapcsolat átmenetileg gyenge"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Gyenge jel. Próbáljon közelebb helyezkedni a routerhez."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"A hálózat túllépte a rendelkezésre álló kapacitást. Próbálja meg később."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nem lehet csatlakozni. Próbálja meg később."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nem lehet csatlakozni. Próbálja újra később."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Szétkapcsolva"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Mentve"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Forgalomkorlátos"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Nem forgalomkorlátos"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Kapcsolódva a következőn keresztül: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Rendelkezésre áll a(z) <xliff:g id="NAME">%1$s</xliff:g> alkalmazáson keresztül"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatikusan csatlakozva a következőn keresztül: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatikusan csatlakozva a hálózatértékelés szolgáltatóján keresztül"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Korlátozott kapcsolat"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"A privát DNS-kiszolgálóhoz nem lehet hozzáférni"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Csatlakoztatva az eszközhöz. Nincs internethozzáférés."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Gyenge minőségű"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nincs"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Lejárt"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Koppintson a regisztrációhoz"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Koppintson az előfizetés megújításához és a csatlakozáshoz"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> megnyitása"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nem sikerült csatlakozni"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Regisztráció befejezése…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Nem sikerült a regisztráció befejezése. Koppintással újrapróbálkozhat."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"A regisztráció befejeződött. Csatlakozás…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ez a hálózat SIM-azonosítót kap, amely felhasználható az eszköz helyadatainak követésére. "<annotation id="url">"További információ"</annotation>"."</string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Nagyon lassú"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lassú"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Közepes"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Gyors"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Nagyon gyors"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"A Wi-Fi-re történő csatlakozás jelenleg nem automatikus"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatikus csatlakozás kikapcsolva"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Mentette: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nem csatlakozik automatikusan"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nincs internet-hozzáférés"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Hitelesítési probléma"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Ellenőrizze a jelszót, majd próbálkozzon újra"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-konfigurációs hiba"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Letiltva"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"A hozzáférési pont átmenetileg megtelt"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Leválasztva"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Mentve"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Forgalomkorlátos"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Nem forgalomkorlátos"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Kapcsolódva a következőn keresztül: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Rendelkezésre áll a(z) <xliff:g id="NAME">%1$s</xliff:g> alkalmazáson keresztül"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatikusan csatlakozva a következőn keresztül: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatikusan csatlakozott a hálózatértékelés szolgáltatóján keresztül"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Korlátozott kapcsolat"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"A privát DNS-kiszolgálóhoz nem lehet hozzáférni"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nincs internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nincs"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Lejárt"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Koppintson a regisztrációhoz"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Koppintson az előfizetés megújításához és a csatlakozáshoz"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> megnyitása"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nem sikerült csatlakozni"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Regisztráció befejezése…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Nem sikerült a regisztráció befejezése. Koppintással újrapróbálkozhat."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"A regisztráció befejeződött. Csatlakozás…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ez a hálózat SIM-azonosítót kap, amely felhasználható az eszköz helyadatainak követésére. "<annotation id="url">"További információ"</annotation>"."</string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Nagyon lassú"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lassú"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Rendben"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Közepes"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Gyors"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Nagyon gyors"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hy/arrays.xml b/libs/WifiTrackerLib/res/values-hy/arrays.xml
index 6a89431c6..82ed80b53 100644
--- a/libs/WifiTrackerLib/res/values-hy/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-hy/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Որոնում…"</item>
- <item msgid="9055468790485684083">"Միացում…"</item>
- <item msgid="6099499723199990208">"Նույնականացում…"</item>
- <item msgid="6794055951297347103">"IP հասցեի ստացում…"</item>
- <item msgid="5450920562291300229">"Միացած է"</item>
- <item msgid="6332116533879646145">"Կասեցված է"</item>
- <item msgid="294459081501073818">"Անջատվում է…"</item>
- <item msgid="1577368920272598676">"Կապը չեղարկված է"</item>
- <item msgid="7655843177582495451">"Չհաջողվեց միանալ"</item>
- <item msgid="8953752690917593623">"Արգելափակված է"</item>
- <item msgid="4400457817750243671">"Անջատվել է վատ կապի պատճառով"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Որոնում…"</item>
+ <item msgid="6222852518007967736">"Միացում…"</item>
+ <item msgid="1176401854208153464">"Նույնականացում…"</item>
+ <item msgid="1377026397901197257">"IP հասցեի ստացում…"</item>
+ <item msgid="7627139816052121509">"Միացած է"</item>
+ <item msgid="1598801023719359130">"Կասեցված է"</item>
+ <item msgid="9160765456671002324">"Անջատվում է…"</item>
+ <item msgid="8013176736494493734">"Կապ չկա"</item>
+ <item msgid="4077393480368783785">"Սխալ առաջացավ"</item>
+ <item msgid="605372180740008604">"Արգելափակված է"</item>
+ <item msgid="5102306451432929048">"Անջատվել է վատ կապի պատճառով"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-hy/strings.xml b/libs/WifiTrackerLib/res/values-hy/strings.xml
index 593d4b77b..a6e351c11 100644
--- a/libs/WifiTrackerLib/res/values-hy/strings.xml
+++ b/libs/WifiTrackerLib/res/values-hy/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Ավտոմատ միացումն անջատված է"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Ով է պահել՝ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Չի միանա ավտոմատ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ինտերնետ կապ չկա"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Նույնականացման խնդիր"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Ստուգեք գաղտնաբառը և նորից փորձեք"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Չհաջողվեց կարգավորել IP-ն"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Անջատված է"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Մուտքի կետին չափազանց շատ սարքեր են միացված"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Կապը ժամանակավորապես թույլ է"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Ազդանշանը թույլ է։ Մոտեցեք երթուղիչին։"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Ցանցը գերծանրաբեռնված է։ Փորձեք ավելի ուշ։"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Կապ չկա։ Փորձեք ավելի ուշ։"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Կապ չկա։ Փորձեք ավելի ուշ։"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Կապը չեղարկված է"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Պահված է"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Վճարովի թրաֆիկ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Անսահմանափակ թրաֆիկ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Միացվել է <xliff:g id="NAME">%1$s</xliff:g> հավելվածի միջոցով"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Հասանելի է <xliff:g id="NAME">%1$s</xliff:g> հավելվածի միջոցով"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Ավտոմատ միացվել է <xliff:g id="NAME">%1$s</xliff:g> հավելվածի միջոցով"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Ավտոմատ միացել է ցանցերի վարկանիշի մատակարարի միջոցով"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Սահմանափակ կապ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Մասնավոր DNS սերվերն անհասանելի է"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Միացված է սարքին։ Հնարավոր չէ տրամադրել ինտերնետ կապ։"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Ցածր որակ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Չկա"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Սպառվել է"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Հպեք՝ գրանցվելու համար"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Հպեք՝ բաժանորդագրությունը նորացնելու և միանալու համար"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>, բացվում է"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Չհաջողվեց միանալ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Գրանցումն ավարտվում է…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Չհաջողվեց ավարտել գրանցումը։ Հպեք՝ նորից փորձելու համար։"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Գրանցումն ավարտված է։ Միացում…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Այս ցանցը ստանում է SIM քարտի ID, որի օգնությամբ հնարավոր է հետագծել սարքի տեղադրությունը։ "<annotation id="url">"Իմանալ ավելին"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Շատ դանդաղ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Դանդաղ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Լավ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Միջին"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Արագ"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Շատ արագ"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi-ն ավտոմատ չի միանա"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Ավտոմատ միացումն անջատված է"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Ով է պահել՝ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Չի միանա ավտոմատ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ինտերնետ կապ չկա"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Նույնականացման խնդիր"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Ստուգեք գաղտնաբառը և նորից փորձեք"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Չհաջողվեց կարգավորել IP-ն"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Անջատված"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Հասանելիության կետը ժամանակավորապես լիքն է"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Կապ չկա"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Պահված է"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Վճարովի թրաֆիկ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Անսահմանափակ թրաֆիկ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Միացված է <xliff:g id="NAME">%1$s</xliff:g>-ի միջոցով"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Հասանելի է հետևյալ հավելվածի միջոցով՝ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Ավտոմատ միացված է <xliff:g id="NAME">%1$s</xliff:g>-ի միջոցով"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Ավտոմատ միացել է ցանցերի վարկանիշի մատակարարի միջոցով"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Սահմանափակ կապ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Մասնավոր DNS սերվերն անհասանելի է"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Կապ չկա"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ոչ մեկը"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Սպառվել է"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Հպեք՝ գրանցվելու համար"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Հպեք՝ բաժանորդագրությունը նորացնելու և միանալու համար"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>, բացվում է"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Չհաջողվեց միանալ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Գրանցումն ավարտվում է…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Չհաջողվեց ավարտել գրանցումը։ Հպեք՝ նորից փորձելու համար։"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Գրանցումն ավարտված է։ Միացում…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Այս ցանցը ստանում է եզակի ID, որի օգնությամբ հնարավոր է հետագծել սարքի տեղադրությունը։ "<annotation id="url">"Իմանալ ավելին"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Շատ դանդաղ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Դանդաղ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Լավ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Միջին"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Արագ"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Շատ արագ"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-in/arrays.xml b/libs/WifiTrackerLib/res/values-in/arrays.xml
index c851e6e0d..05bc9c2db 100644
--- a/libs/WifiTrackerLib/res/values-in/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-in/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Memindai …"</item>
- <item msgid="9055468790485684083">"Menghubungkan …"</item>
- <item msgid="6099499723199990208">"Mengautentikasi …"</item>
- <item msgid="6794055951297347103">"Mendapatkan alamat IP …"</item>
- <item msgid="5450920562291300229">"Terhubung"</item>
- <item msgid="6332116533879646145">"Ditangguhkan"</item>
- <item msgid="294459081501073818">"Memutus koneksi …"</item>
- <item msgid="1577368920272598676">"Koneksi terputus"</item>
- <item msgid="7655843177582495451">"Gagal"</item>
- <item msgid="8953752690917593623">"Diblokir"</item>
- <item msgid="4400457817750243671">"Menghindari koneksi buruk untuk sementara"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Memindai…"</item>
+ <item msgid="6222852518007967736">"Menyambungkan…"</item>
+ <item msgid="1176401854208153464">"Mengautentikasi…"</item>
+ <item msgid="1377026397901197257">"Mendapatkan alamat IP…"</item>
+ <item msgid="7627139816052121509">"Terhubung"</item>
+ <item msgid="1598801023719359130">"Ditangguhkan"</item>
+ <item msgid="9160765456671002324">"Memutus sambungan..."</item>
+ <item msgid="8013176736494493734">"Terputus"</item>
+ <item msgid="4077393480368783785">"Gagal"</item>
+ <item msgid="605372180740008604">"Diblokir"</item>
+ <item msgid="5102306451432929048">"Menghindari sambungan buruk untuk sementara"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-in/strings.xml b/libs/WifiTrackerLib/res/values-in/strings.xml
index 5dc847db8..bc839a49b 100644
--- a/libs/WifiTrackerLib/res/values-in/strings.xml
+++ b/libs/WifiTrackerLib/res/values-in/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Hubung-otomatis nonaktif"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Disimpan oleh <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Tidak akan terhubung otomatis"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Tidak ada akses internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Masalah autentikasi"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Periksa sandi dan coba lagi"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Kegagalan konfigurasi IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Nonaktif"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Titik akses penuh untuk sementara"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Kondisi jaringan buruk untuk sementara"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Sinyal lemah. Coba mendekat ke router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Jaringan melebihi kapasitas. Coba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Tidak dapat terhubung. Coba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Tidak dapat terhubung. Coba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Koneksi terputus"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Tersimpan"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Berbayar"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Tidak berbayar"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Terhubung melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tersedia melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Terhubung otomatis melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Terhubung otomatis melalui penyedia rating jaringan"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Koneksi terbatas"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Server DNS pribadi tidak dapat diakses"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Terhubung ke perangkat. Tidak dapat menyediakan koneksi internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Kualitas rendah"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Tidak ada"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Sudah tidak berlaku"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Ketuk untuk mendaftar"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Ketuk untuk memperpanjang langganan dan menghubungkan"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Membuka <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Tidak dapat terhubung"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Menyelesaikan pendaftaran …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Tidak dapat menyelesaikan pendaftaran. Ketuk untuk mencoba lagi."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Pendaftaran selesai. Menghubungkan …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Jaringan ini menerima ID SIM yang dapat digunakan untuk melacak lokasi perangkat. "<annotation id="url">"Pelajari lebih lanjut"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Sangat Lambat"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lambat"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Oke"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Sedang"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Cepat"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Sangat Cepat"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi tidak akan terhubung otomatis untuk saat ini"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Sambung-otomatis nonaktif"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Disimpan oleh <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Tidak akan terhubung otomatis"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Tidak ada akses internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Masalah autentikasi"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Periksa sandi dan coba lagi"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Kegagalan konfigurasi IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Nonaktif"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Titik akses penuh untuk sementara"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Terputus"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Disimpan"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Berbayar"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Tidak berbayar"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Terhubung melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Tersedia melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Terhubung otomatis melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Otomatis terhubung melalui penyedia rating jaringan"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Koneksi terbatas"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Server DNS pribadi tidak dapat diakses"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Tidak ada internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Tidak ada"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Sudah tidak berlaku"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Ketuk untuk mendaftar"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Ketuk untuk memperpanjang langganan dan menyambungkan"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Membuka <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Tidak dapat terhubung"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Menyelesaikan pendaftaran…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Tidak dapat menyelesaikan pendaftaran. Ketuk untuk mencoba lagi."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Pendaftaran selesai. Menyambungkan…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Jaringan ini menerima ID SIM yang dapat digunakan untuk melacak lokasi perangkat. "<annotation id="url">"Pelajari lebih lanjut"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Sangat Lambat"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lambat"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Oke"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Sedang"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Cepat"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Sangat Cepat"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-is/arrays.xml b/libs/WifiTrackerLib/res/values-is/arrays.xml
index d62b1d7c9..66864889f 100644
--- a/libs/WifiTrackerLib/res/values-is/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-is/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Leitar…"</item>
- <item msgid="9055468790485684083">"Tengist…"</item>
- <item msgid="6099499723199990208">"Auðkennir…"</item>
- <item msgid="6794055951297347103">"Sækir IP-tölu…"</item>
- <item msgid="5450920562291300229">"Tengt"</item>
- <item msgid="6332116533879646145">"Í bið"</item>
- <item msgid="294459081501073818">"Aftengist…"</item>
- <item msgid="1577368920272598676">"Aftengt"</item>
- <item msgid="7655843177582495451">"Mistókst"</item>
- <item msgid="8953752690917593623">"Lokað"</item>
- <item msgid="4400457817750243671">"Forðast lélega tengingu tímabundið"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Leitar…"</item>
+ <item msgid="6222852518007967736">"Tengist…"</item>
+ <item msgid="1176401854208153464">"Auðkennir…"</item>
+ <item msgid="1377026397901197257">"Sækir IP-tölu…"</item>
+ <item msgid="7627139816052121509">"Tengt"</item>
+ <item msgid="1598801023719359130">"Í bið"</item>
+ <item msgid="9160765456671002324">"Aftengist…"</item>
+ <item msgid="8013176736494493734">"Aftengt"</item>
+ <item msgid="4077393480368783785">"Mistókst"</item>
+ <item msgid="605372180740008604">"Lokað á"</item>
+ <item msgid="5102306451432929048">"Forðast lélega tengingu tímabundið"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-is/strings.xml b/libs/WifiTrackerLib/res/values-is/strings.xml
index 083899045..6589073c8 100644
--- a/libs/WifiTrackerLib/res/values-is/strings.xml
+++ b/libs/WifiTrackerLib/res/values-is/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Slökkt er á sjálfvirkri tengingu"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> vistaði"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Mun ekki tengjast sjálfkrafa"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Enginn netaðgangur"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Vandamál við auðkenningu"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Athugaðu aðgangsorðið og reyndu aftur"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-stillingarvilla"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Slökkt"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Aðgangsstaður tímabundið fullur"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Léleg nettenging tímabundið"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Léleg tenging. Prófaðu að færa þig nær beininum."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Hámarki netkerfis er náð. Reyndu aftur síðar."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ekki er hægt að tengjast. Reyndu aftur síðar."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ekki er hægt að tengjast. Reyndu aftur síðar."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Aftengt"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Vistað"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Mæld notkun"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Notkun ekki mæld"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Tenging í gegnum <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Í boði með <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Tengt sjálfkrafa með <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Sjálfkrafa tengt um netgæðaveitu"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Takmörkuð tenging"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Ekki næst í DNS-einkaþjón"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Tengt við tæki. Nettenging næst ekki."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Lítil gæði"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ekkert"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Útrunnið"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Ýttu til að skrá þig"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Ýttu til að endurnýja áskrift og tengjast"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Opnar <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ekki tókst að tengjast"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Gengur frá skráningu…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Ekki tókst að ljúka við skráningu. Ýttu til að reyna aftur."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Skráningu lokið. Tengist…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Þetta net fær SIM-auðkenni sem hægt er að nota til að rekja staðsetningu tækis. "<annotation id="url">"Frekari upplýsingar"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Mjög hægt"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Hægt"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Í lagi"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Miðlungs"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Hratt"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Mjög hratt"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi tengist ekki sjálfkrafa eins og er"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Slökkt er á sjálfvirkri tengingu"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> vistaði"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Mun ekki tengjast sjálfkrafa"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Enginn netaðgangur"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Vandamál við auðkenningu"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Athugaðu aðgangsorðið og reyndu aftur"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-stillingarvilla"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Óvirkt"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Aðgangsstaður tímabundið fullur"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Aftengt"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Vistað"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Mæld notkun"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Notkun ekki mæld"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Tenging í gegnum <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Í boði með <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Tengt sjálfkrafa með <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Sjálfkrafa tengt um netgæðaveitu"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Takmörkuð tenging"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Ekki næst í DNS-einkaþjón"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Engin nettenging"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ekkert"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Útrunnin"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Ýttu til að skrá þig"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Ýttu til að endurnýja áskrift og tengjast"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Opnar <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ekki tókst að tengjast"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Gengur frá skráningu…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Ekki tókst að ljúka við skráningu. Ýttu til að reyna aftur."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Skráningu lokið. Tengist…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Þetta net fær SIM-auðkenni sem hægt er að nota til að rekja staðsetningu tækisins. "<annotation id="url">"Frekari upplýsingar"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Mjög hægt"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Hægt"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Í lagi"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Miðlungshratt"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Hratt"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Mjög hratt"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-it/arrays.xml b/libs/WifiTrackerLib/res/values-it/arrays.xml
index 7b81856db..04c4fe8eb 100644
--- a/libs/WifiTrackerLib/res/values-it/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-it/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Ricerca…"</item>
- <item msgid="9055468790485684083">"Connessione…"</item>
- <item msgid="6099499723199990208">"Autenticazione…"</item>
- <item msgid="6794055951297347103">"Acquisizione indirizzo IP…"</item>
- <item msgid="5450920562291300229">"Rete connessa"</item>
- <item msgid="6332116533879646145">"Connessione sospesa"</item>
- <item msgid="294459081501073818">"Disconnessione…"</item>
- <item msgid="1577368920272598676">"Rete disconnessa"</item>
- <item msgid="7655843177582495451">"Operazione non riuscita"</item>
- <item msgid="8953752690917593623">"Rete bloccata"</item>
- <item msgid="4400457817750243671">"Al momento vengono evitate connessioni deboli"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Ricerca…"</item>
+ <item msgid="6222852518007967736">"Connessione…"</item>
+ <item msgid="1176401854208153464">"Autenticazione…"</item>
+ <item msgid="1377026397901197257">"Acquisizione indirizzo IP…"</item>
+ <item msgid="7627139816052121509">"Connesso"</item>
+ <item msgid="1598801023719359130">"Sospeso"</item>
+ <item msgid="9160765456671002324">"Disconnessione…"</item>
+ <item msgid="8013176736494493734">"Disconnesso"</item>
+ <item msgid="4077393480368783785">"Operazione non riuscita"</item>
+ <item msgid="605372180740008604">"Bloccato"</item>
+ <item msgid="5102306451432929048">"Al momento vengono evitate connessioni deboli"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-it/strings.xml b/libs/WifiTrackerLib/res/values-it/strings.xml
index 798f16a42..2fdebd3a5 100644
--- a/libs/WifiTrackerLib/res/values-it/strings.xml
+++ b/libs/WifiTrackerLib/res/values-it/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Connessione automatica disattivata"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Salvata da <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Non verrà eseguita la connessione automatica"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nessun accesso a Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema di autenticazione"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Controlla la password e riprova"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Errore configurazione IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Rete non attiva"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Punto di accesso momentaneamente al completo"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Condizioni della rete momentaneamente non ottimali"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Segnale debole. Prova ad avvicinarti al router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"È stata superata la capacità della rete. Riprova più tardi."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Impossibile connettersi. Riprova più tardi."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Impossibile connettersi. Riprova più tardi."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Rete disconnessa"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Salvata"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"A consumo"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Non a consumo"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Connessione stabilita tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponibile tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Connessione automatica stabilita tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Connessione automatica stabilita tramite fornitore di servizi di valutazione rete"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Connessione limitata"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Non è possibile accedere al server DNS privato"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Connessione al dispositivo effettuata. Impossibile accedere a Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Bassa qualità"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nessuna"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Scaduta"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tocca per registrarti"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tocca per rinnovare l\'abbonamento e connetterti"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Apertura di <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Impossibile collegarsi"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Completamento della registrazione…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Impossibile completare la registrazione. Tocca per riprovare."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registrazione completata. Connessione…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Questa rete riceve un ID SIM che può essere usato per monitorare la posizione del dispositivo. "<annotation id="url">"Ulteriori informazioni"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Molto lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Discreta"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Media"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Veloce"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Molto veloce"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Per il momento la connessione automatica della rete Wi-Fi non funziona"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Connessione automatica disattivata"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Salvata da <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Non verrà eseguita la connessione automatica"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nessun accesso a Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema di autenticazione"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Controlla la password e riprova"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Errore configurazione IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Disattivata"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Punto di accesso momentaneamente al completo"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Nessuna connessione"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Salvata"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"A consumo"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Non a consumo"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Connesso tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponibile tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Connessa automaticamente tramite <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Collegato automaticamente tramite fornitore di servizi di valutazione rete"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Connessione limitata"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Non è possibile accedere al server DNS privato"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Internet assente"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nessuna"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Scaduta"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tocca per registrarti"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tocca per rinnovare l\'abbonamento e connetterti"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Apertura di <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Impossibile connettersi"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Completamento della registrazione…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Impossibile completare la registrazione. Tocca per riprovare."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registrazione completata. Connessione…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Questa rete riceve un ID SIM che può essere usato per monitorare la posizione del dispositivo. "<annotation id="url">"Ulteriori informazioni"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Molto lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Media"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Veloce"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Molto veloce"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-iw/arrays.xml b/libs/WifiTrackerLib/res/values-iw/arrays.xml
index 031be236f..b88dd420a 100644
--- a/libs/WifiTrackerLib/res/values-iw/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-iw/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"מתבצעת סריקה…"</item>
- <item msgid="9055468790485684083">"מתבצעת התחברות…"</item>
- <item msgid="6099499723199990208">"בתהליך אימות…"</item>
- <item msgid="6794055951297347103">"‏בתהליך של השגת כתובת IP…"</item>
- <item msgid="5450920562291300229">"מחובר"</item>
- <item msgid="6332116533879646145">"בהשעיה"</item>
- <item msgid="294459081501073818">"מתבצע ניתוק…"</item>
- <item msgid="1577368920272598676">"מנותק"</item>
- <item msgid="7655843177582495451">"נכשל"</item>
- <item msgid="8953752690917593623">"חסום"</item>
- <item msgid="4400457817750243671">"מניעה זמנית של חיבור באיכות ירודה"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"מתבצעת סריקה…"</item>
+ <item msgid="6222852518007967736">"מתחבר…"</item>
+ <item msgid="1176401854208153464">"מתבצע אימות…"</item>
+ <item msgid="1377026397901197257">"‏בתהליך של השגת כתובת IP…"</item>
+ <item msgid="7627139816052121509">"מחובר"</item>
+ <item msgid="1598801023719359130">"מושעה"</item>
+ <item msgid="9160765456671002324">"מתנתק…"</item>
+ <item msgid="8013176736494493734">"מנותק"</item>
+ <item msgid="4077393480368783785">"נכשל"</item>
+ <item msgid="605372180740008604">"חסומה"</item>
+ <item msgid="5102306451432929048">"מניעה זמנית של חיבור באיכות ירודה"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-iw/strings.xml b/libs/WifiTrackerLib/res/values-iw/strings.xml
index c82365afe..7169e3329 100644
--- a/libs/WifiTrackerLib/res/values-iw/strings.xml
+++ b/libs/WifiTrackerLib/res/values-iw/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"החיבור האוטומטי כבוי"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"נשמרה על-ידי <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"לא יתבצע חיבור באופן אוטומטי"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"אין גישה לאינטרנט"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"בעיית אימות"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"יש לבדוק את הסיסמה ולנסות שוב"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"‏כשל בהגדרת IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"מושבתת"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"נקודת הגישה מלאה באופן זמני"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"החיבור לאינטרנט חלש באופן זמני"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"אות חלש. כדאי לנסות להתקרב לנתב."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"הרשת בקיבולת יתר. יש לנסות שוב מאוחר יותר."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"לא ניתן להתחבר. יש לנסות שוב מאוחר יותר."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"לא ניתן להתחבר. יש לנסות שוב מאוחר יותר."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"מנותקת"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"נשמרה"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"חיוב לפי שימוש בנתונים"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"שימוש חופשי"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"מחובר דרך <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"זמינה דרך <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"מחובר אוטומטית דרך <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"מחובר אוטומטית דרך ספק של דירוג רשת"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"חיבור מוגבל"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"‏לא ניתן לגשת לשרת DNS הפרטי"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"יש חיבור למכשיר. לא ניתן לספק חיבור לאינטרנט."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"איכות נמוכה"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ללא"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"התוקף פג"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"יש להקיש כדי להירשם"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"יש להקיש כדי לחדש את המינוי ולהתחבר"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"מתבצעת פתיחה של <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"לא ניתן להתחבר"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"מתבצעת השלמה של ההרשמה…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"לא ניתן היה להשלים את ההרשמה. יש להקיש כדי לנסות שוב."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"תהליך ההרשמה הסתיים. בתהליך התחברות…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"‏הרשת הזו מקבלת מזהה SIM שיכול לשמש למעקב אחר מיקום של מכשיר. "<annotation id="url">"למידע נוסף"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"איטית מאוד"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"איטית"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"בסדר"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"בינונית"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"מהירה"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"מהירה מאוד"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"‏ה-Wi-Fi לא יתחבר באופן אוטומטי בינתיים"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"החיבור האוטומטי כבוי"</string>
+ <string name="saved_network" msgid="6241977554502802914">"נשמרה על ידי <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"לא יתבצע חיבור באופן אוטומטי"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"אין גישה לאינטרנט"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"בעיית אימות"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"יש לבדוק את הסיסמה ולנסות שוב"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"‏כשל בתצורת IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"מושבתות"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"נקודת הגישה מלאה באופן זמני"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"מנותקת"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"נשמרה"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"חיוב לפי שימוש בנתונים"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"לא נמדדת"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"מחובר באמצעות <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"זמינה דרך <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"מחוברת אוטומטית באמצעות <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"מחובר אוטומטית דרך ספק של דירוג רשת"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"חיבור מוגבל"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"‏לא ניתן לגשת לשרת DNS הפרטי"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"אין אינטרנט"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ללא"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"התוקף פג"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"יש להקיש כדי להירשם"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"יש להקיש כדי לחדש את המינוי ולהתחבר"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"מתבצעת פתיחה של <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"לא ניתן להתחבר"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"מתבצעת השלמה של ההרשמה…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"לא ניתן היה להשלים את ההרשמה. יש להקיש כדי לנסות שוב."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"תהליך ההרשמה הסתיים. בתהליך התחברות…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"‏הרשת הזו מקבלת מזהה SIM שיכול לשמש למעקב אחר מיקום המכשיר. "<annotation id="url">"מידע נוסף"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"איטית מאוד"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"איטית"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"אישור"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"בינונית"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"מהירה"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"מהירה מאוד"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ja/arrays.xml b/libs/WifiTrackerLib/res/values-ja/arrays.xml
index 7d9ba4366..ad5795741 100644
--- a/libs/WifiTrackerLib/res/values-ja/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ja/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"スキャン中…"</item>
- <item msgid="9055468790485684083">"接続中…"</item>
- <item msgid="6099499723199990208">"認証中…"</item>
- <item msgid="6794055951297347103">"IP アドレスを取得中…"</item>
- <item msgid="5450920562291300229">"接続済み"</item>
- <item msgid="6332116533879646145">"停止中"</item>
- <item msgid="294459081501073818">"切断中…"</item>
- <item msgid="1577368920272598676">"未接続"</item>
- <item msgid="7655843177582495451">"エラー"</item>
- <item msgid="8953752690917593623">"ブロック済み"</item>
- <item msgid="4400457817750243671">"接続不良により一時的に無効"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"スキャン中…"</item>
+ <item msgid="6222852518007967736">"接続中…"</item>
+ <item msgid="1176401854208153464">"認証中…"</item>
+ <item msgid="1377026397901197257">"IP アドレスを取得中…"</item>
+ <item msgid="7627139816052121509">"接続完了"</item>
+ <item msgid="1598801023719359130">"停止中"</item>
+ <item msgid="9160765456671002324">"切断中…"</item>
+ <item msgid="8013176736494493734">"未接続"</item>
+ <item msgid="4077393480368783785">"エラー"</item>
+ <item msgid="605372180740008604">"ブロック中"</item>
+ <item msgid="5102306451432929048">"接続不良により一時的に無効"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ja/strings.xml b/libs/WifiTrackerLib/res/values-ja/strings.xml
index b348fd34c..a044a6e46 100644
--- a/libs/WifiTrackerLib/res/values-ja/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ja/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"自動接続が OFF です"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g>により保存"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"自動的に接続されません"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"インターネットに接続されていません"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"認証エラー"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"パスワードを再確認してください"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP 設定エラー"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"無効"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"アクセス ポイントが一時的にいっぱいです"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ネットワークが一時的に不安定な状態です"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"電波が安定していません。ルーターに近づいてみてください。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ネットワーク容量の上限を超えています。しばらくしてからもう一度お試しください。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"接続できません。しばらくしてからもう一度お試しください。"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"接続できません。しばらくしてからもう一度お試しください。"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"未接続"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"保存済み"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"従量制"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"定額制"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g>で接続しました"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g>で利用可能"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g>で自動的に接続しました"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ネットワーク評価プロバイダ経由で自動的に接続しました"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"接続が制限されています"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"プライベート DNS サーバーにアクセスできません"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"デバイスに接続されました。インターネットにアクセスできません。"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"低品質"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"なし"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"期限切れ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"タップして登録してください"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"タップして定期購入を更新し、接続してください"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> を開いています"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"接続エラー"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"登録を完了しています…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"登録を完了できませんでした。タップしてもう一度お試しください。"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"登録が完了しました。接続しています…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"このネットワークは SIM ID を受信します。この ID を使ってデバイスの位置情報が追跡される可能性があります。"<annotation id="url">"詳細"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"非常に遅い"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"遅い"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"普通"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"速い"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"非常に速い"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi に自動接続しません"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"自動接続が OFF です"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g>により保存"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"自動的に接続されません"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"インターネット接続なし"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"認証エラー"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"パスワードを再確認してください"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP設定エラー"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"無効"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"アクセス ポイントが一時的にいっぱいです"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"未接続"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"保存済み"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"従量制"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"定額制"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> で接続しました"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>で利用可能"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> で自動的に接続しました"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ネットワーク評価プロバイダ経由で自動的に接続しています"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"接続が制限されています"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"プライベート DNS サーバーにアクセスできません"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"インターネットに接続されていません"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"なし"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"期限切れ"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"タップして登録してください"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"タップして定期購入を更新し、接続してください"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> を開いています"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"接続できませんでした"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"登録を完了しています…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"登録を完了できませんでした。タップしてもう一度お試しください。"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"登録が完了しました。接続しています…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"このネットワークは SIM ID を受信します。この ID を使ってデバイスの位置情報が追跡される可能性があります。"<annotation id="url">"詳細"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"とても遅い"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"遅い"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"普通"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"速い"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"非常に速い"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ka/arrays.xml b/libs/WifiTrackerLib/res/values-ka/arrays.xml
index 33a8991a1..8012aa553 100644
--- a/libs/WifiTrackerLib/res/values-ka/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ka/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"მიმდინარეობს სკანირება…"</item>
- <item msgid="9055468790485684083">"მიმდინარეობს დაკავშირება…"</item>
- <item msgid="6099499723199990208">"მიმდინარეობს ავთენტიკაცია…"</item>
- <item msgid="6794055951297347103">"მიმდინარეობს IP მისამართის მიღება…"</item>
- <item msgid="5450920562291300229">"დაკავშირებული"</item>
- <item msgid="6332116533879646145">"შეჩერებული"</item>
- <item msgid="294459081501073818">"კავშირი წყდება…"</item>
- <item msgid="1577368920272598676">"კავშირი გაწყვეტილია"</item>
- <item msgid="7655843177582495451">"ვერ განხორციელდა"</item>
- <item msgid="8953752690917593623">"დაბლოკილი"</item>
- <item msgid="4400457817750243671">"სუსტი კავშირის დროებით თავიდან აცილება"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"მიმდინარეობს სკანირება…"</item>
+ <item msgid="6222852518007967736">"მიმდინარეობს დაკავშირება…"</item>
+ <item msgid="1176401854208153464">"ავთენტიკაცია…"</item>
+ <item msgid="1377026397901197257">"მიმდინარეობს IP მისამართის მიღება…"</item>
+ <item msgid="7627139816052121509">"დაკავშირებული"</item>
+ <item msgid="1598801023719359130">"შეჩერებული"</item>
+ <item msgid="9160765456671002324">"კავშირი წყდება…"</item>
+ <item msgid="8013176736494493734">"კავშირი გაწყვეტილია"</item>
+ <item msgid="4077393480368783785">"ვერ განხორციელდა"</item>
+ <item msgid="605372180740008604">"დაბლოკილი"</item>
+ <item msgid="5102306451432929048">"სუსტი კავშირის დროებით თავიდან აცილება"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ka/strings.xml b/libs/WifiTrackerLib/res/values-ka/strings.xml
index 049d604e4..0995b2481 100644
--- a/libs/WifiTrackerLib/res/values-ka/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ka/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ავტოდაკავშირება გამორთულია"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"შენახული <xliff:g id="NAME">%1$s</xliff:g>-ის მიერ"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ავტომატურად დაკავშირება ვერ ხერხდება"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ინტერნეტ-კავშირი არ არის"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ავთენტიკაციის პრობლემა"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"გადაამოწმეთ პაროლი და ხელახლა ცადეთ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP კონფიგურაციის შეფერხება"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"გათიშული"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"წვდომის წერტილი დროებით გადატვირთულია"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ქსელის სუსტი კავშირის დროებითი მდგომარეობა"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"სიგნალი სუსტია. ცადეთ როუტერთან მიახლოება."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ქსელი გადატვირთულია. ცადეთ მოგვიანებით."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"დაკავშირება შეუძლებელია. ცადეთ მოგვიანებით."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"დაკავშირება შეუძლებელია. ცადეთ მოგვიანებით."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"კავშირი გაწყვეტილია"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"შენახული"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ლიმიტირებული"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"არალიმიტირებული"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"დაკავშირებულია <xliff:g id="NAME">%1$s</xliff:g>-ით"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"ხელმისაწვდომია <xliff:g id="NAME">%1$s</xliff:g>-ით"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"ავტომატურად დაკავშირებულია <xliff:g id="NAME">%1$s</xliff:g>-ით"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ავტომატურად დაკავშირდა ქსელის ხარისხის შეფასების პროვაიდერის მეშვეობით"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"შეზღუდული კავშირი"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"პირად DNS სერვერზე წვდომა შეუძლებელია"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"დაუკავშირდა მოწყობილობას. ინტერნეტის მიწოდება ვერ ხერხდება."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"დაბალი ხარისხი"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"არცერთი"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ვადაგასული"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"შეეხეთ რეგისტრაციისთვის"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"შეეხეთ გამოწერის გასაახლებლად და დასაკავშირებლად"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"მიმდინარეობს <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>-ის გახსნა"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"დაკავშირება ვერ მოხერხდა"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"მიმდინარეობს რეგისტრაციის დასრულება…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"რეგისტრაციის დასრულება ვერ მოხერხდა. შეეხეთ ხელახლა საცდელად."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"რეგისტრაცია დასრულდა. მიმდინარეობს დაკავშირება…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ეს ქსელი მიიღებს SIM-ის ID-ს, რომლის მეშვეობითაც შესაძლებელია მოწყობილობის მდებარეობაზე თვალის დევნება. "<annotation id="url">"შეიტყვეთ მეტი"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ძალიან ნელი"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ნელი"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"კარგი"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"საშუალო"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"სწრაფი"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ძალიან სწრაფი"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi დროებით ინტერნეტს ავტომატურად არ დაუკავშირდება"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ავტოდაკავშირება გამორთულია"</string>
+ <string name="saved_network" msgid="6241977554502802914">"შენახული <xliff:g id="NAME">%1$s</xliff:g>-ის მიერ"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ავტომატურად დაკავშირება ვერ ხერხდება"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ინტერნეტ-კავშირი არ არის"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ავთენტიკაციის პრობლემა"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"გადაამოწმეთ პაროლი და ხელახლა ცადეთ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP კონფიგურაციის შეფერხება"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"გამორთულია"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"წვდომის წერტილი დროებით გადატვირთულია"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"კავშირი გაწყვეტილია"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"დამახსოვრებულია"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"ლიმიტირებული"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"არალიმიტირებული"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"დაკავშირებულია <xliff:g id="NAME">%1$s</xliff:g>-ით"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"ხელმისაწვდომია <xliff:g id="NAME">%1$s</xliff:g>-ის მეშვეობით"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"ავტომატურად დაკავშირებულია <xliff:g id="NAME">%1$s</xliff:g>-ით"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ავტომატურად დაკავშირდა ქსელის ხარისხის შეფასების პროვაიდერის მეშვეობით"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"შეზღუდული კავშირი"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"პირად DNS სერვერზე წვდომა შეუძლებელია"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ინტერნეტ-კავშირი არ არის"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"არცერთი"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ვადაგასულია"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"შეეხეთ რეგისტრაციისთვის"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"შეეხეთ, რათა გაანაახლოთ გამოწერა და დაუკავშირდეთ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"მიმდინარეობს <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>-ის გახსნა"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"დაკავშირება ვერ მოხერხდა"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"მიმდინარეობს რეგისტრაციის დასრულება…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"რეგისტრაციის დასრულება ვერ მოხერხდა. შეეხეთ ხელახლა საცდელად."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"რეგისტრაცია დასრულდა. მიმდინარეობს დაკავშირება…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ეს ქსელი მიიღებს SIM-ის ID-ს, რომლის მეშვეობითაც შესაძლებელია მოწყობილობის მდებარეობაზე თვალის დევნება. "<annotation id="url">"შეიტყვეთ მეტი"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ძალიან ნელი"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ნელი"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"კარგი"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"საშუალო"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"სწრაფი"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ძალიან სწრაფი"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-kk/arrays.xml b/libs/WifiTrackerLib/res/values-kk/arrays.xml
index 475f9253b..fcbab3c79 100644
--- a/libs/WifiTrackerLib/res/values-kk/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-kk/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Іздеуде…"</item>
- <item msgid="9055468790485684083">"Қосылып жатыр…"</item>
- <item msgid="6099499723199990208">"Растауда…"</item>
- <item msgid="6794055951297347103">"IP мекенжайы алынуда…"</item>
- <item msgid="5450920562291300229">"Жалғанды"</item>
- <item msgid="6332116533879646145">"Уақытша ажыратылды"</item>
- <item msgid="294459081501073818">"Ажыратылуда…"</item>
- <item msgid="1577368920272598676">"Ажыратылды"</item>
- <item msgid="7655843177582495451">"Сәтсіз"</item>
- <item msgid="8953752690917593623">"Бөгелді"</item>
- <item msgid="4400457817750243671">"Нашар байланыс уақытша тоқтатылды."</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Іздеуде…"</item>
+ <item msgid="6222852518007967736">"Қосылуда…"</item>
+ <item msgid="1176401854208153464">"Аутентификациялауда…"</item>
+ <item msgid="1377026397901197257">"IP мекенжайы алынуда…"</item>
+ <item msgid="7627139816052121509">"Жалғанды"</item>
+ <item msgid="1598801023719359130">"Уақытша ажыратылды"</item>
+ <item msgid="9160765456671002324">"Ажыратылуда…"</item>
+ <item msgid="8013176736494493734">"Ажыратылған"</item>
+ <item msgid="4077393480368783785">"Сәтсіз"</item>
+ <item msgid="605372180740008604">"Бөгелді"</item>
+ <item msgid="5102306451432929048">"Нашар байланыс болғандықтан уақытша ажыратылды"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-kk/strings.xml b/libs/WifiTrackerLib/res/values-kk/strings.xml
index 6559bac37..ab855c1a0 100644
--- a/libs/WifiTrackerLib/res/values-kk/strings.xml
+++ b/libs/WifiTrackerLib/res/values-kk/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автоматты жалғау өшірулі"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> сақтаған"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Автоматты байланыстырылмайды."</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Интернетпен байланыс жоқ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Аутентификация қатесі"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Құпия сөзді тексеріп, әрекетті қайталаңыз."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP конфигурациясының қатесі"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Өшірулі"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Кіру нүктесі уақытша бос емес."</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Желі байланысы уақытша нашар."</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Сигнал әлсіз. Құрылғыны маршрутизаторға жақындатып көріңіз."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Желінің өткізу қабілеті шектен асып кетті. Кейінірек қайталап көріңіз."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Қосылу мүмкін емес. Кейінірек қайталап көріңіз."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Қосылу мүмкін емес. Кейінірек қайталап көріңіз."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Ажыратылды"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Сақталған"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Трафик саналатын желі"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Трафик саналмайды"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> арқылы жалғанған"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> арқылы қолжетімді"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> арқылы автоматты байланыстырылды."</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Желі рейтингі провайдері арқылы автоматты түрде қосылған"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Шектеулі байланыс"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Жеке DNS серверіне кіру мүмкін емес."</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Құрылғыға қосылды. Интернетке қосылым жоқ."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Төмен сапа"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Жоқ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Мерзімі өтіп кетті."</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Тіркелу үшін түртіңіз."</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Жазылымды қайта жаңартып, қосылу үшін түртіңіз."</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ашылуда"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Қосылмады"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Тіркелу аяқталуда…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Тіркелу аяқталмады. Әрекетті қайталау үшін түртіңіз."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Тіркелу аяқталды. Байланыс орнатылуда…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Бұл желіге SIM идентификаторы беріледі, оның көмегімен құрылғының орналасқан жері қадағаланады. "<annotation id="url">"Толығырақ"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Өте баяу"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Баяу"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Иә"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Орташа"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Жылдам"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Өте жылдам"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Қазір Wi-Fi автоматты түрде қосылмайды."</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автоматты жалғау өшірулі"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> сақтаған"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Автоматты байланыстырылмайды."</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Интернетпен байланыс жоқ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Аутентификация қатесі"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Құпия сөзді тексеріп, әрекетті қайталаңыз"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP конфигурациясының қатесі"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Өшірілген"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Кіру нүктесі уақытша бос емес"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Ажыратылған"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Сақталды"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Трафик саналатын желі"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Трафик саналмайды"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> арқылы жалғанған"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> арқылы қолжетімді"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> арқылы автоматты байланыстырылды."</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Желіні бағалау провайдері арқылы автоматты түрде қосылған"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Шектеулі байланыс"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Жеке DNS серверіне кіру мүмкін емес."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Интернетпен байланыс жоқ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Жоқ"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Мерзімі өтті"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Тіркелу үшін түртіңіз."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Жазылымды қайта жаңартып, қосылу үшін түртіңіз."</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ашылуда."</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Байланыстырылмады."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Тіркелу аяқталуда…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Тіркелу аяқталмады. Әрекетті қайталау үшін түртіңіз."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Тіркелу аяқталды. Байланыс орнатылуда…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Бұл желіге SIM идентификаторы беріледі, оның көмегімен құрылғының орналасқан жері қадағаланады. "<annotation id="url">"Толығырақ"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Өте баяу"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Баяу"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Жарайды"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Орташа"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Жылдам"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Өте жылдам"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-km/arrays.xml b/libs/WifiTrackerLib/res/values-km/arrays.xml
index 5aff06f59..b26498cba 100644
--- a/libs/WifiTrackerLib/res/values-km/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-km/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"កំពុងស្កេន…"</item>
- <item msgid="9055468790485684083">"កំពុងភ្ជាប់…"</item>
- <item msgid="6099499723199990208">"កំពុង​ផ្ទៀងផ្ទាត់…"</item>
- <item msgid="6794055951297347103">"កំពុង​ទទួល​អាសយដ្ឋាន IP…"</item>
- <item msgid="5450920562291300229">"បានភ្ជាប់"</item>
- <item msgid="6332116533879646145">"បាន​ផ្អាក"</item>
- <item msgid="294459081501073818">"កំពុង​ផ្ដាច់…"</item>
- <item msgid="1577368920272598676">"បាន​ផ្ដាច់"</item>
- <item msgid="7655843177582495451">"មិន​ជោគជ័យ"</item>
- <item msgid="8953752690917593623">"បាន​ទប់ស្កាត់"</item>
- <item msgid="4400457817750243671">"កំពុង​ជៀសវាង​ការតភ្ជាប់​ខ្សោយ​ជា​បណ្ដោះអាសន្ន"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"កំពុងស្កេន…"</item>
+ <item msgid="6222852518007967736">"កំពុងភ្ជាប់…"</item>
+ <item msgid="1176401854208153464">"កំពុង​ផ្ទៀងផ្ទាត់…"</item>
+ <item msgid="1377026397901197257">"កំពុង​ទទួល​អាសយដ្ឋាន IP…"</item>
+ <item msgid="7627139816052121509">"បានភ្ជាប់"</item>
+ <item msgid="1598801023719359130">"បាន​ផ្អាក"</item>
+ <item msgid="9160765456671002324">"កំពុង​ផ្ដាច់…"</item>
+ <item msgid="8013176736494493734">"បាន​ផ្ដាច់"</item>
+ <item msgid="4077393480368783785">"មិន​ជោគជ័យ"</item>
+ <item msgid="605372180740008604">"បាន​ទប់ស្កាត់"</item>
+ <item msgid="5102306451432929048">"ជៀសវាង​ការ​តភ្ជាប់​​ខ្សោយ​ជា​បណ្ដោះអាសន្ន"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-km/strings.xml b/libs/WifiTrackerLib/res/values-km/strings.xml
index 0fc0db197..764e33777 100644
--- a/libs/WifiTrackerLib/res/values-km/strings.xml
+++ b/libs/WifiTrackerLib/res/values-km/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ការភ្ជាប់​ដោយស្វ័យប្រវត្តិ​ត្រូវបានបិទ"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"បានរក្សាទុកដោយ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"នឹងមិនភ្ជាប់ដោយស្វ័យប្រវត្តិទេ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"មិនមាន​ការតភ្ជាប់​អ៊ីនធឺណិតទេ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"បញ្ហា​ការ​ផ្ទៀងផ្ទាត់"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"សូមពិនិត្យមើលពាក្យសម្ងាត់ រួចព្យាយាមម្ដងទៀត"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"ការ​កំណត់​រចនាសម្ព័ន្ធ IP មិនបានសម្រេច"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"បានបិទ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ដុំភ្ជាប់បណ្ដាញ​ឥតខ្សែពេញ​ជាបណ្តោះអាសន្ន"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ស្ថានភាព​បណ្ដាញ​ខ្សោយ​ជាបណ្ដោះអាសន្ន"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"រលកសញ្ញាខ្សោយ។ សូមសាកល្បងខិតឱ្យកាន់តែជិតរ៉ោទ័រ។"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"បណ្ដាលកំពុងដំណើរការហួសសមត្ថភាព។ សូមព្យាយាម​ម្តងទៀត​នៅពេលក្រោយ។"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"មិនអាច​ភ្ជាប់​បានទេ។ សូមព្យាយាម​ម្តងទៀត​នៅពេលក្រោយ។"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"មិនអាច​ភ្ជាប់​បានទេ។ សូមព្យាយាម​ម្តងទៀត​នៅពេលក្រោយ។"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"បាន​ផ្ដាច់"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"បាន​រក្សាទុក"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ផ្អែកតាម​ទិន្នន័យ​ដែលប្រើ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"មិនផ្អែកតាម​ទិន្នន័យ​ដែលប្រើ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"បានភ្ជាប់​តាមរយៈ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"អាចប្រើបាន​តាមរយៈ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"បានភ្ជាប់ដោយស្វ័យប្រវត្តិតាមរយៈ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"បានភ្ជាប់​ដោយស្វ័យប្រវត្តិ​តាម​រយៈក្រុមហ៊ុនផ្តល់​ការ​វាយ​តម្លៃលើ​បណ្តាញ"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ការតភ្ជាប់មានកម្រិត"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"មិនអាច​ចូលប្រើ​ម៉ាស៊ីនមេ DNS ឯកជន​បានទេ"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"បានភ្ជាប់​ជាមួយ​ឧបករណ៍។ មិនអាចផ្ដល់​អ៊ីនធឺណិតបានទេ។"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"គុណភាព​ទាប"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"គ្មាន"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"បាន​ផុត​កំណត់"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ចុច​ដើម្បី​ចុះឈ្មោះ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ចុច ដើម្បី​បន្តការ​ជាវជាថ្មី និង​ភ្ជាប់"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"កំពុង​បើក <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"មិន​អាចភ្ជាប់​បានទេ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"កំពុង​បញ្ចប់​ការចុះឈ្មោះ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"មិនអាច​បញ្ចប់​ការចុះឈ្មោះ​បានទេ។ សូមចុច ដើម្បី​ព្យាយាម​ម្ដង​ទៀត។"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ការចុះ​ឈ្មោះ​បានបញ្ចប់។ កំពុងភ្ជាប់…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"បណ្ដាញ​នេះ​ទទួលបាន​លេខសម្គាល់ស៊ីម ដែល​អាចប្រើ​ដើម្បី​តាមដាន​ទីតាំង​ឧបករណ៍។ "<annotation id="url">"ស្វែងយល់បន្ថែម"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"យឺតណាស់"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"យឺត"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"យល់ព្រម"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"មធ្យម"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"លឿន"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"លឿន​ណាស់"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi នឹងមិនភ្ជាប់ដោយស្វ័យប្រវត្តិក្នុងពេលនេះទេ"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ការភ្ជាប់​ដោយស្វ័យប្រវត្តិ​ត្រូវបានបិទ"</string>
+ <string name="saved_network" msgid="6241977554502802914">"បានរក្សាទុកដោយ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"នឹងមិនភ្ជាប់ដោយស្វ័យប្រវត្តិទេ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"មិនមាន​ការតភ្ជាប់​អ៊ីនធឺណិតទេ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"បញ្ហា​ក្នុងការ​ផ្ទៀងផ្ទាត់"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"សូមពិនិត្យមើលពាក្យសម្ងាត់ រួចព្យាយាមម្ដងទៀត"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"ការ​កំណត់​រចនាសម្ព័ន្ធ IP បរាជ័យ"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"បាន​បិទ"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ចំណុចចូលប្រើពេញជាបណ្តោះអាសន្ន"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"បាន​ផ្ដាច់"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"បាន​រក្សាទុក"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"មានការកំណត់"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"មិនមានការកំណត់"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"ភ្ជាប់​តាម <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"អាចប្រើបាន​តាមរយៈ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"បានភ្ជាប់ដោយស្វ័យប្រវត្តិតាមរយៈ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"បានភ្ជាប់​ដោយស្វ័យប្រវត្តិ​តាម​រយៈក្រុមហ៊ុនផ្តល់​ការ​វាយ​តម្លៃលើ​បណ្តាញ"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ការតភ្ជាប់មានកម្រិត"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"មិនអាច​ចូលប្រើ​ម៉ាស៊ីនមេ DNS ឯកជន​បានទេ"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"គ្មាន​អ៊ីនធឺណិតទេ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"គ្មាន"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"បានផុតកំណត់"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ចុច​ដើម្បី​ចុះឈ្មោះ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ចុច ដើម្បី​បន្តការ​ជាវជាថ្មី និង​ភ្ជាប់"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"កំពុង​បើក <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"មិន​អាចភ្ជាប់​បានទេ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"កំពុង​បញ្ចប់​ការចុះឈ្មោះ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"មិនអាច​បញ្ចប់​ការចុះឈ្មោះ​បានទេ។ សូមចុច ដើម្បី​ព្យាយាម​ម្ដង​ទៀត។"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ការចុះ​ឈ្មោះ​បានបញ្ចប់។ កំពុងភ្ជាប់…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"បណ្ដាញនេះ​ទទួលបាន​លេខសម្គាល់ស៊ីម ដែល​អាចប្រើ​ដើម្បី​តាមដាន​ទីតាំង​ឧបករណ៍។ "<annotation id="url">"ស្វែងយល់បន្ថែម"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"យឺតណាស់"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"យឺត"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"យល់ព្រម"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"មធ្យម"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"លឿន"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"លឿន​ខ្លាំង"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-kn/arrays.xml b/libs/WifiTrackerLib/res/values-kn/arrays.xml
index f6ce05fe9..d738de992 100644
--- a/libs/WifiTrackerLib/res/values-kn/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-kn/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</item>
- <item msgid="9055468790485684083">"ಕನೆಕ್ಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</item>
- <item msgid="6099499723199990208">"ದೃಢೀಕರಿಸಲಾಗುತ್ತಿದೆ…"</item>
- <item msgid="6794055951297347103">"IP ವಿಳಾಸವನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ…"</item>
- <item msgid="5450920562291300229">"ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</item>
- <item msgid="6332116533879646145">"ಅಮಾನತುಗೊಳಿಸಲಾಗಿದೆ"</item>
- <item msgid="294459081501073818">"ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಲಾಗುತ್ತಿದೆ…"</item>
- <item msgid="1577368920272598676">"ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಲಾಗಿದೆ"</item>
- <item msgid="7655843177582495451">"ವಿಫಲವಾಗಿದೆ"</item>
- <item msgid="8953752690917593623">"ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ"</item>
- <item msgid="4400457817750243671">"ಕಳಪೆ ಗುಣಮಟ್ಟದ ಕನೆಕ್ಷನ್ ಅನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ತಡೆಗಟ್ಟಲಾಗುತ್ತಿದೆ"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ಸ್ಕ್ಯಾನ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</item>
+ <item msgid="6222852518007967736">"ಕನೆಕ್ಟ್ ಆಗುತ್ತಿದೆ…"</item>
+ <item msgid="1176401854208153464">"ಪ್ರಮಾಣೀಕರಿಸಲಾಗುತ್ತಿದೆ..."</item>
+ <item msgid="1377026397901197257">"IP ವಿಳಾಸವನ್ನು ಪಡೆಯಲಾಗುತ್ತಿದೆ…"</item>
+ <item msgid="7627139816052121509">"ಕನೆಕ್ಟ್ ಆಗಿದೆ"</item>
+ <item msgid="1598801023719359130">"ತಡೆಹಿಡಿಯಲಾಗಿದೆ"</item>
+ <item msgid="9160765456671002324">"ಡಿಸ್‌ಕನೆಕ್ಟ್ ಆಗುತ್ತಿದೆ…"</item>
+ <item msgid="8013176736494493734">"ಡಿಸ್‌ಕನೆಕ್ಟ್ ಆಗಿದೆ"</item>
+ <item msgid="4077393480368783785">"ವಿಫಲಗೊಂಡಿದೆ"</item>
+ <item msgid="605372180740008604">"ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ"</item>
+ <item msgid="5102306451432929048">"ಕಳಪೆ ಗುಣಮಟ್ಟದ ಕನೆಕ್ಷನ್ ತಾತ್ಕಾಲಿಕವಾಗಿ ತಡೆಗಟ್ಟಲಾಗುತ್ತಿದೆ"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-kn/strings.xml b/libs/WifiTrackerLib/res/values-kn/strings.xml
index 01712ad59..173cd9a30 100644
--- a/libs/WifiTrackerLib/res/values-kn/strings.xml
+++ b/libs/WifiTrackerLib/res/values-kn/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ಸ್ವಯಂ ಕನೆಕ್ಟ್ ಆಫ್ ಆಗಿದೆ"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> ನಿಂದ ಉಳಿಸಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ಯಾವುದೇ ಇಂಟರ್ನೆಟ್ ಪ್ರವೇಶವಿಲ್ಲ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ದೃಢೀಕರಣದ ಸಮಸ್ಯೆ"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"ಪಾಸ್‌ವರ್ಡ್ ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP ಕಾನ್ಫಿಗರೇಶನ್ ವೈಫಲ್ಯ"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ಪ್ರವೇಶ ಕೇಂದ್ರ ತಾತ್ಕಾಲಿಕವಾಗಿ ಭರ್ತಿಯಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ತಾತ್ಕಾಲಿಕ ಕಳಪೆ ನೆಟ್‌ವರ್ಕ್ ಸ್ಥಿತಿಗಳು"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"ದುರ್ಬಲ ಸಿಗ್ನಲ್. ರೂಟರ್‌ನ ಹತ್ತಿರ ಹೋಗಿ ಕನೆಕ್ಟ್ ಮಾಡಿ ನೋಡಿ."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ನೆಟ್‌ವರ್ಕ್ ಸಾಮರ್ಥ್ಯದ ಮಿತಿ ಮೀರಿದೆ. ನಂತರ ಪುನಃ ಪ್ರಯತ್ನಿಸಿ."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"ಸಂಪರ್ಕಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ನಂತರ ಪುನಃ ಪ್ರಯತ್ನಿಸಿ."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"ಸಂಪರ್ಕಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ನಂತರ ಪುನಃ ಪ್ರಯತ್ನಿಸಿ."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ಉಳಿಸಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ಮೀಟರ್ ಮಾಡಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ಮೀಟರ್ ಮಾಡಲಾಗಿಲ್ಲ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> ಆ್ಯಪ್ ಮೂಲಕ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ಮೂಲಕ ಲಭ್ಯವಿದೆ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> ಮೂಲಕ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ನೆಟ್‌ವರ್ಕ್ ರೇಟಿಂಗ್ ಒದಗಿಸುವವರ ಮೂಲಕ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ಸೀಮಿತ ಸಂಪರ್ಕ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ಖಾಸಗಿ DNS ಸರ್ವರ್ ಅನ್ನು ಪ್ರವೇಶಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ಸಾಧನಕ್ಕೆ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ. ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕ ಒದಗಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ಕಳಪೆ ಕನೆಕ್ಷನ್"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ಯಾವುದೂ ಇಲ್ಲ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ಅವಧಿ ಮುಕ್ತಾಯವಾಗಿದೆ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ಸೈನ್ ಅಪ್ ಮಾಡಲು ಟ್ಯಾಪ್‌ ಮಾಡಿ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ಸಬ್‌ಸ್ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು ಕನೆಕ್ಟ್ ಮಾಡಿ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯಲಾಗುತ್ತಿದೆ"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಳಿಸಲಾಗುತ್ತಿದೆ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಳಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ. ಪುನಃ ಪ್ರಯತ್ನಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಂಡಿದೆ. ಕನೆಕ್ಟ್ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ಸಾಧನದ ಸ್ಥಳವನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು ಬಳಸಬಹುದಾದ SIM ಐಡಿಯನ್ನು ಈ ನೆಟ್‌ವರ್ಕ್ ಸ್ವೀಕರಿಸುತ್ತದೆ. "<annotation id="url">"ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ಬಹಳ ನಿಧಾನವಾಗಿದೆ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ನಿಧಾನ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ಸರಿ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"ಮಧ್ಯಮ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ವೇಗ"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ಬಹಳ ವೇಗವಾಗಿದೆ"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"ಇದೀಗ ವೈ-ಫೈ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಆಗುವುದಿಲ್ಲ"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ಸ್ವಯಂ ಕನೆಕ್ಟ್ ಆಫ್ ಆಗಿದೆ"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> ನಿಂದ ಉಳಿಸಲಾಗಿದೆ"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ಯಾವುದೇ ಇಂಟರ್ನೆಟ್ ಪ್ರವೇಶವಿಲ್ಲ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ಪ್ರಮಾಣೀಕರಣ ಸಮಸ್ಯೆ"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"ಪಾಸ್‌ವರ್ಡ್ ಪರಿಶೀಲಿಸಿ ಮತ್ತು ಪುನಃ ಪ್ರಯತ್ನಿಸಿ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP ಕಾನ್ಫಿಗರೇಶನ್ ವಿಫಲತೆ"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ಪ್ರವೇಶ ಕೇಂದ್ರ ತಾತ್ಕಾಲಿಕವಾಗಿ ಭರ್ತಿಯಾಗಿದೆ"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ಸಂಪರ್ಕ ಕಡಿತಗೊಳಿಸಲಾಗಿದೆ"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ಉಳಿಸಲಾಗಿದೆ"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"ಮೀಟರ್ ಮಾಡಲಾಗಿದೆ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ಮೀಟರ್ ಮಾಡಲಾಗಿಲ್ಲ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ಆ್ಯಪ್ ಮೂಲಕ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ಮೂಲಕ ಲಭ್ಯವಿದೆ"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> ಮೂಲಕ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ನೆಟ್‌ವರ್ಕ್ ರೇಟಿಂಗ್ ಒದಗಿಸುವವರ ಮೂಲಕ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ಸೀಮಿತ ಸಂಪರ್ಕ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ಖಾಸಗಿ DNS ಸರ್ವರ್ ಅನ್ನು ಪ್ರವೇಶಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ಇಂಟರ್ನೆಟ್ ಇಲ್ಲ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ಯಾವುದೂ ಇಲ್ಲ"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ಅವಧಿ ಮುಕ್ತಾಯವಾಗಿದೆ"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ಸೈನ್ ಅಪ್ ಮಾಡಲು ಟ್ಯಾಪ್‌ ಮಾಡಿ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ಸಬ್‌ಸ್ಕ್ರಿಪ್ಶನ್ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು ಸಂಪರ್ಕಿಸಿ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ಅನ್ನು ತೆರೆಯಲಾಗುತ್ತಿದೆ"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಳಿಸಲಾಗುತ್ತಿದೆ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಳಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತಿಲ್ಲ. ಮತ್ತೊಮ್ಮೆ ಪ್ರಯತ್ನಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ಸೈನ್-ಅಪ್ ಪೂರ್ಣಗೊಂಡಿದೆ. ಕನೆಕ್ಟ್ ಆಗುತ್ತಿದೆ…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ಸಾಧನದ ಸ್ಥಳವನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು ಬಳಸಬಹುದಾದ ಅನನ್ಯ ಐಡಿಯನ್ನು ಈ ನೆಟ್‌ವರ್ಕ್ ಸ್ವೀಕರಿಸುತ್ತದೆ. "<annotation id="url">"ಇನ್ನಷ್ಟು ತಿಳಿಯಿರಿ"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ತುಂಬಾ ನಿಧಾನವಾಗಿದೆ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ನಿಧಾನ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ಸರಿ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ಮಧ್ಯಮ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ವೇಗ"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ತುಂಬಾ ವೇಗವಾಗಿದೆ"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ko/arrays.xml b/libs/WifiTrackerLib/res/values-ko/arrays.xml
index b6d88f664..3ae58c25d 100644
--- a/libs/WifiTrackerLib/res/values-ko/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ko/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"검색 중…"</item>
- <item msgid="9055468790485684083">"연결 중…"</item>
- <item msgid="6099499723199990208">"인증 중…"</item>
- <item msgid="6794055951297347103">"IP 주소를 가져오는 중…"</item>
- <item msgid="5450920562291300229">"연결됨"</item>
- <item msgid="6332116533879646145">"정지됨"</item>
- <item msgid="294459081501073818">"연결 해제 중…"</item>
- <item msgid="1577368920272598676">"연결 해제됨"</item>
- <item msgid="7655843177582495451">"실패"</item>
- <item msgid="8953752690917593623">"차단됨"</item>
- <item msgid="4400457817750243671">"신호가 약한 네트워크에 일시적으로 연결하지 않음"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"검색 중…"</item>
+ <item msgid="6222852518007967736">"연결 중…"</item>
+ <item msgid="1176401854208153464">"인증하는 중…"</item>
+ <item msgid="1377026397901197257">"IP 주소를 가져오는 중…"</item>
+ <item msgid="7627139816052121509">"연결됨"</item>
+ <item msgid="1598801023719359130">"정지됨"</item>
+ <item msgid="9160765456671002324">"연결 해제 중…"</item>
+ <item msgid="8013176736494493734">"연결 해제됨"</item>
+ <item msgid="4077393480368783785">"실패"</item>
+ <item msgid="605372180740008604">"차단됨"</item>
+ <item msgid="5102306451432929048">"신호가 약한 네트워크에 일시적으로 연결하지 않음"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ko/strings.xml b/libs/WifiTrackerLib/res/values-ko/strings.xml
index a68585d40..a4871204a 100644
--- a/libs/WifiTrackerLib/res/values-ko/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ko/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"자동 연결 꺼짐"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> 앱으로 저장됨"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"자동으로 연결되지 않음"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"인터넷에 연결되어 있지 않음"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"인증 문제"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"비밀번호를 확인하고 다시 시도하세요."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP 구성 실패"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"사용 안함"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"액세스 포인트가 일시적으로 가득 참"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"네트워크 연결이 일시적으로 불안정함"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"신호가 약합니다. 라우터 가까이 이동해 보세요."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"네트워크 용량을 초과했습니다. 나중에 다시 시도해 주세요."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"연결할 수 없습니다. 나중에 다시 시도해 주세요."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"연결할 수 없습니다. 나중에 다시 시도해 주세요."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"연결 해제됨"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"저장됨"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"종량제"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"무제한"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> 앱을 통해 연결됨"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> 앱을 통해 사용 가능"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> 앱을 통해 자동으로 연결됨"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"네트워크 평가 제공업체를 통해 자동으로 연결됨"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"제한된 연결"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"비공개 DNS 서버에 액세스할 수 없음"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"기기에 연결되었습니다. 인터넷을 이용할 수 없습니다."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"품질 낮음"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"없음"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"만료됨"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"탭하여 가입"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"탭하여 가입 갱신 및 연결"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> 여는 중"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"연결할 수 없음"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"가입 완료 중…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"가입을 완료할 수 없음. 탭하여 다시 시도"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"가입 완료. 연결 중…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"이 네트워크는 기기 위치 추적에 사용될 수 있는 SIM ID를 수신합니다. "<annotation id="url">"자세히 알아보기"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"매우 느림"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"느림"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"양호"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"보통"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"빠름"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"매우 빠름"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"지금은 Wi-Fi가 자동으로 연결되지 않습니다."</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"자동 연결 꺼짐"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g>(으)로 저장됨"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"자동으로 연결되지 않음"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"인터넷에 연결되어 있지 않음"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"인증 문제"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"비밀번호를 확인하고 다시 시도하세요."</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP 설정 실패"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"사용 중지됨"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"액세스 포인트가 일시적으로 가득 참"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"연결 끊김"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"저장됨"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"종량제 네트워크"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"무제한 네트워크"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g>을(를) 통해 연결됨"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>을(를) 통해 사용 가능"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g>을(를) 통해 자동으로 연결됨"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"네트워크 평가 제공업체를 통해 자동으로 연결됨"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"제한된 연결"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"비공개 DNS 서버에 액세스할 수 없습니다."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"인터넷 연결 없음"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"없음"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"만료됨"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"가입하려면 탭하세요."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"가입을 갱신하고 연결하려면 탭하세요."</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> 여는 중"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"연결할 수 없습니다."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"가입 완료 중…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"가입을 완료할 수 없습니다. 다시 시도하려면 탭하세요."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"가입이 완료되었습니다. 연결 중…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"이 네트워크는 기기 위치 추적에 사용될 수 있는 SIM ID를 수신합니다. "<annotation id="url">"자세히 알아보기"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"매우 느림"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"느림"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"보통"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"보통"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"빠름"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"매우 빠름"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ky/arrays.xml b/libs/WifiTrackerLib/res/values-ky/arrays.xml
index 186aee41d..00ab8f678 100644
--- a/libs/WifiTrackerLib/res/values-ky/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ky/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Изделүүдө…"</item>
- <item msgid="9055468790485684083">"Туташууда…"</item>
- <item msgid="6099499723199990208">"Аутентификациядан өтүүдө…"</item>
- <item msgid="6794055951297347103">"IP дареги алынууда…"</item>
- <item msgid="5450920562291300229">"Туташып турат"</item>
- <item msgid="6332116533879646145">"Убактылуу токтотулду"</item>
- <item msgid="294459081501073818">"Ажыратылууда…"</item>
- <item msgid="1577368920272598676">"Ажыратылды"</item>
- <item msgid="7655843177582495451">"Ката"</item>
- <item msgid="8953752690917593623">"Бөгөттөлдү"</item>
- <item msgid="4400457817750243671">"Байланыш начар болгондуктан өчүрүлдү"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Изделүүдө…"</item>
+ <item msgid="6222852518007967736">"Туташууда…"</item>
+ <item msgid="1176401854208153464">"Аныктыгы текшерилүүдө…"</item>
+ <item msgid="1377026397901197257">"IP дареги алынууда…"</item>
+ <item msgid="7627139816052121509">"Туташып турат"</item>
+ <item msgid="1598801023719359130">"Убактылуу токтотулду"</item>
+ <item msgid="9160765456671002324">"Ажыратылууда…"</item>
+ <item msgid="8013176736494493734">"Ажыратылды"</item>
+ <item msgid="4077393480368783785">"Ката"</item>
+ <item msgid="605372180740008604">"Бөгөттөлдү"</item>
+ <item msgid="5102306451432929048">"Байланыш начар болгондуктан өчүрүлдү"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ky/strings.xml b/libs/WifiTrackerLib/res/values-ky/strings.xml
index dc9b2e386..111562bd1 100644
--- a/libs/WifiTrackerLib/res/values-ky/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ky/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автоматтык түрдө туташуу өчүк"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> боюнча сакталган"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Автоматтык түрдө туташпайт"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Интернетке туташпай турат"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Аутентификация маселеси бар"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Сырсөздү текшерип, кайталап көрүңүз"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP конфигурациясы бузулду"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Өчүк"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Байланыш түйүнүнө өтө көп түзмөк туташып турат"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Тармак убактылуу начар иштеп жатат"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Начар сигнал. Роутерге жакын жылып көрүңүз."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Тармакка өтө көп түзмөк туташып турат. Кайталаңыз."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Туташпай жатат. Кайталаңыз."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Туташпай жатат. Кайталаңыз."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Ажыратылды"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Сакталды"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Трафик ченелет"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Чектелбеген тармак"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу туташты"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу жеткиликтүү"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу автоматтык түрдө туташты"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Тармактар рейтингинин булагы аркылуу автоматтык түрдө туташты"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Байланыш чектелген"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Жеке DNS сервери жеткиликсиз"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Түзмөккө туташып турат. Интернет жок."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Начар сапат"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Жок"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Мөөнөтү бүткөн"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Катталуу үчүн таптап коюңуз"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Жазылууну жаңыртып, туташуу үчүн таптап коюңуз"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ачылууда"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Туташпай койду"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Катталуу аяктоодо…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Катталуу аягына чыккан жок. Кайра аракет кылуу үчүн таптап коюңуз."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Катталуу аягына чыкты. Туташууда…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Бул тармакка SIM-картанын идентификатору берилет жана аны түзмөктүн жайгашкан жерин көзөмөлдөп туруу үчүн колдонууга болот. "<annotation id="url">"Кеңири маалымат"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Өтө жай"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Жай"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Дурус"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Орто"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Ылдам"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Абдан ылдам"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi азырынча автоматтык түрдө туташпайт"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автоматтык түрдө туташуу өчүк"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> тарабынан сакталды"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Автоматтык түрдө туташпайт"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Интернетке туташпай турат"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Аутентификация маселеси бар"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Сырсөздү текшерип, кайталап көрүңүз."</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP конфигурациясы бузулду"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Өчүрүлгөн"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Байланыш түйүнүнө өтө көп түзмөк туташып турат"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Ажыратылды"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Сакталды"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Трафик ченелет"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Чектелбеген тармак"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу туташты"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу жеткиликтүү"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> аркылуу автоматтык түрдө туташты"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Тармактар рейтингинин булагы аркылуу автоматтык түрдө туташты"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Байланыш чектелген"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Жеке DNS сервери жеткиликсиз"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Интернет жок"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Жок"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Эскирип калган"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Катталуу үчүн таптап коюңуз"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Жазылууну жаңыртып, туташуу үчүн таптап коюңуз"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ачылууда"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Туташпай койду"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Катталуу аяктоодо…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Катталуу аягына чыккан жок. Кайра аракет кылуу үчүн таптап коюңуз."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Катталуу аягына чыкты. Туташууда…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Бул тармакка SIM-картанын идентификатору берилет жана аны түзмөктүн жайгашкан жерин көзөмөлдөп туруу үчүн колдонууга болот. "<annotation id="url">"Кеңири маалымат"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Өтө жай"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Жай"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Жарайт"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Орто"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Ылдам"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Абдан ылдам"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lo/arrays.xml b/libs/WifiTrackerLib/res/values-lo/arrays.xml
index 6216bb5cf..61588c23c 100644
--- a/libs/WifiTrackerLib/res/values-lo/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-lo/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ກຳລັງສະແກນ…"</item>
- <item msgid="9055468790485684083">"ກຳລັງເຊື່ອມຕໍ່…"</item>
- <item msgid="6099499723199990208">"ກຳລັງພິສູດຢືນຢັນ…"</item>
- <item msgid="6794055951297347103">"ກຳລັງຂໍທີ່ຢູ່ IP…"</item>
- <item msgid="5450920562291300229">"ເຊື່ອມຕໍ່ແລ້ວ"</item>
- <item msgid="6332116533879646145">"ຖືກລະງັບໄວ້"</item>
- <item msgid="294459081501073818">"ກຳລັງຕັດການເຊື່ອມຕໍ່…"</item>
- <item msgid="1577368920272598676">"ຕັດການເຊື່ອມຕໍ່ແລ້ວ"</item>
- <item msgid="7655843177582495451">"ບໍ່ສຳເລັດ"</item>
- <item msgid="8953752690917593623">"ບລັອກແລ້ວ"</item>
- <item msgid="4400457817750243671">"ຫຼີກເວັ້ນການເຊື່ອມຕໍ່ເຄືອຂ່າຍສັນຍານອ່ອນຊົ່ວຄາວ"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ກຳລັງສະແກນ…"</item>
+ <item msgid="6222852518007967736">"ກຳລັງເຊື່ອມຕໍ່…"</item>
+ <item msgid="1176401854208153464">"ກຳລັງກວດຮັບຮອງຄວາມຖືກຕ້ອງ…"</item>
+ <item msgid="1377026397901197257">"ກຳລັງຂໍທີ່ຢູ່ IP…"</item>
+ <item msgid="7627139816052121509">"ເຊື່ອມຕໍ່ແລ້ວ"</item>
+ <item msgid="1598801023719359130">"ຖືກລະງັບໄວ້"</item>
+ <item msgid="9160765456671002324">"ກຳລັງຕັດການເຊື່ອມຕໍ່…"</item>
+ <item msgid="8013176736494493734">"ຕັດການເຊື່ອມຕໍ່ແລ້ວ"</item>
+ <item msgid="4077393480368783785">"ບໍ່ສຳເລັດ"</item>
+ <item msgid="605372180740008604">"ບລັອກແລ້ວ"</item>
+ <item msgid="5102306451432929048">"ຫຼີກເວັ້ນການເຊື່ອມຕໍ່ເຄືອຂ່າຍສັນຍານອ່ອນຊົ່ວຄາວ"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lo/strings.xml b/libs/WifiTrackerLib/res/values-lo/strings.xml
index 7ae67bec1..efeb6f74a 100644
--- a/libs/WifiTrackerLib/res/values-lo/strings.xml
+++ b/libs/WifiTrackerLib/res/values-lo/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ການເຊື່ອມຕໍ່ອັດຕະໂນມັດປິດຢູ່"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"ບັນທຶກໄວ້ໂດຍ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ຈະບໍ່ເຊື່ອມຕໍ່ອັດຕະໂນມັດ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ບໍ່ມີການເຊື່ອມຕໍ່ອິນເຕີເນັດ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ເກີດບັນຫາການພິສູດຢືນຢັນ"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"ກະລຸນາກວດສອບລະຫັດຜ່ານແລ້ວລອງໃໝ່"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"ການຕັ້ງຄ່າ IP ບໍ່ສຳເລັດ"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ປິດນຳໃຊ້ແລ້ວ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ຈຸດການເຂົ້າເຖິງເຕັມຊົ່ວຄາວ"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ສະພາບເຄືອຂ່າຍສັນຍານບໍ່ດີຊົ່ວຄາວ"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"ສັນ​ຍານ​ອ່ອນ. ລອງຍ້າຍໄປໃກ້ເຣົາເຕີ."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ເກີນຄວາມຈຸເຄືອຂ່າຍແລ້ວ. ກະລຸນາລອງໃໝ່ໃນພາຍຫຼັງ."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້. ກະລຸນາລອງໃໝ່ໃນພາຍຫຼັງ."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້. ກະລຸນາລອງໃໝ່ໃນພາຍຫຼັງ."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ຕັດການເຊື່ອມຕໍ່ແລ້ວ"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ບັນທຶກແລ້ວ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ມີການວັດແທກ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ບໍ່ໄດ້ວັດແທກ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"ເຊື່ອມ​ຕໍ່​ຜ່ານ <xliff:g id="NAME">%1$s</xliff:g> ແລ້ວ"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"ສາມາດໃຊ້ໄດ້ຜ່ານ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"ເຊື່ອມຕໍ່ອັດຕະໂນມັດຜ່ານ <xliff:g id="NAME">%1$s</xliff:g> ແລ້ວ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ເຊື່ອມຕໍ່ກັບອັດຕະໂນມັດແລ້ວຜ່ານຜູ້ໃຫ້ບໍລິການຄະແນນເຄືອຂ່າຍ"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ການເຊື່ອມຕໍ່ຈຳກັດ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ບໍ່ສາມາດເຂົ້າເຖິງເຊີບເວີ DNS ສ່ວນຕົວໄດ້"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ເຊື່ອມຕໍ່ຫາອຸປະກອນແລ້ວ. ບໍ່ສາມາດໃຫ້ບໍລິການອິນເຕີເນັດໄດ້."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ຄຸນນະພາບຕໍ່າ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ບໍ່ມີ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ໝົດອາຍຸແລ້ວ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ແຕະເພື່ອສະໝັກ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ແຕະເພື່ອຕໍ່ອາຍຸການສະໝັກໃຊ້ ແລະ ເຊື່ອມຕໍ່"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"ກຳລັງເປີດ <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ກຳລັງສຳເລັດການສະໝັກ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ບໍ່ສາມາດສຳເລັດການສະໝັກໄດ້. ແຕະເພື່ອລອງໃໝ່."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ສະໝັກສຳເລັດແລ້ວ. ກຳລັງເຊື່ອມຕໍ່…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ເຄືອຂ່າຍນີ້ຈະຮັບ ID ຊິມທີ່ສາມາດໃຊ້ເພື່ອຕິດຕາມສະຖານທີ່ອຸປະກອນ "<annotation id="url">"ສຶກສາເພີ່ມເຕີມ"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ຊ້າຫຼາຍ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ຊ້າ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ຕົກລົງ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"ປານກາງ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ໄວ"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ໄວຫຼາຍ"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi ຈະບໍ່ເຊື່ອມຕໍ່ອັດຕະໂນມັດສຳລັບຕອນນີ້"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ການເຊື່ອມຕໍ່ອັດຕະໂນມັດປິດຢູ່"</string>
+ <string name="saved_network" msgid="6241977554502802914">"ບັນທຶກ​​​ໂດຍ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ຈະບໍ່ເຊື່ອມຕໍ່ອັດຕະໂນມັດ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ບໍ່ມີການເຊື່ອມຕໍ່ອິນເຕີເນັດ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ເກີດບັນຫາການພິສູດຢືນຢັນ"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"ກະລຸນາກວດສອບລະຫັດຜ່ານແລ້ວລອງໃໝ່ອີກຄັ້ງ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"ການຕັ້ງຄ່າ IP ບໍ່ສຳເລັດ"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ປິດການນຳໃຊ້"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ຈຸດການເຂົ້າເຖິງເຕັມຊົ່ວຄາວ"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ຕັດການເຊື່ອມຕໍ່ແລ້ວ"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ບັນ​ທຶກແລ້ວ"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"ມີການວັດແທກ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ບໍ່ໄດ້ວັດແທກ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"ເຊື່ອມ​ຕໍ່​ຜ່ານ <xliff:g id="NAME">%1$s</xliff:g> ແລ້ວ"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"ສາມາດໃຊ້ໄດ້ຜ່ານ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"ເຊື່ອມຕໍ່ອັດຕະໂນມັດຜ່ານ <xliff:g id="NAME">%1$s</xliff:g> ແລ້ວ"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ເຊື່ອມຕໍ່ກັບອັດຕະໂນມັດແລ້ວຜ່ານຜູ້ໃຫ້ບໍລິການຄະແນນເຄືອຂ່າຍ"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ການເຊື່ອມຕໍ່ຈຳກັດ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ບໍ່ສາມາດເຂົ້າເຖິງເຊີບເວີ DNS ສ່ວນຕົວໄດ້"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ບໍ່ມີອິນເຕີເນັດ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ບໍ່ໃຊ້"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ໝົດອາຍຸແລ້ວ"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ແຕະເພື່ອສະໝັກ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ແຕະເພື່ອຕໍ່ອາຍຸການສະໝັກໃຊ້ ແລະ ເຊື່ອມຕ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"ກຳລັງເປີດ <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ກຳລັງສຳເລັດການສະໝັກ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ບໍ່ສາມາດສຳເລັດການສະໝັກໄດ້. ແຕະເພື່ອລອງໃໝ່."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ສະໝັກສຳເລັດແລ້ວ. ກຳລັງເຊື່ອມຕໍ່…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ເຄືອຂ່າຍນີ້ຈະຮັບ ID ຊິມທີ່ສາມາດໃຊ້ເພື່ອຕິດຕາມສະຖານທີ່ອຸປະກອນ "<annotation id="url">"ສຶກສາເພີ່ມເຕີມ"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ຊ້າຫຼາຍ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ຊ້າ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ຕົກລົງ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ປານກາງ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ໄວ"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ໄວຫຼາຍ"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lt/arrays.xml b/libs/WifiTrackerLib/res/values-lt/arrays.xml
index 91e76d781..a78eb7051 100644
--- a/libs/WifiTrackerLib/res/values-lt/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-lt/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Nuskaitoma…"</item>
- <item msgid="9055468790485684083">"Prisijungiama…"</item>
- <item msgid="6099499723199990208">"Autentifikuojama…"</item>
- <item msgid="6794055951297347103">"Gaunamas IP adresas…"</item>
- <item msgid="5450920562291300229">"Prisijungta"</item>
- <item msgid="6332116533879646145">"Laikinai sustabdyta"</item>
- <item msgid="294459081501073818">"Atsijungiama…"</item>
- <item msgid="1577368920272598676">"Atsijungta"</item>
- <item msgid="7655843177582495451">"Nepavyko"</item>
- <item msgid="8953752690917593623">"Užblokuota"</item>
- <item msgid="4400457817750243671">"Laikinai vengiama prasto ryšio"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Nuskaitoma…"</item>
+ <item msgid="6222852518007967736">"Prijungiama…"</item>
+ <item msgid="1176401854208153464">"Nustatoma tapatybė…"</item>
+ <item msgid="1377026397901197257">"Gaunamas IP adresas…"</item>
+ <item msgid="7627139816052121509">"Prisijungta"</item>
+ <item msgid="1598801023719359130">"Laikinai sustabdyta"</item>
+ <item msgid="9160765456671002324">"Atjungiama…"</item>
+ <item msgid="8013176736494493734">"Atjungta"</item>
+ <item msgid="4077393480368783785">"Nepavyko"</item>
+ <item msgid="605372180740008604">"Užblokuota"</item>
+ <item msgid="5102306451432929048">"Laikinai vengiama prasto ryšio"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lt/strings.xml b/libs/WifiTrackerLib/res/values-lt/strings.xml
index ae6dc6d1e..c21d8e387 100644
--- a/libs/WifiTrackerLib/res/values-lt/strings.xml
+++ b/libs/WifiTrackerLib/res/values-lt/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatinio prisijungimo funkcija išjungta"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Išsaugojo: „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nebus automatiškai prisijungiama"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nėra interneto ryšio"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentifikavimo problema"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Patikrinkite slaptažodį ir bandykite dar kartą"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP konfigūracijos triktis"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Išjungta"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Prieigos taškas laikinai visiškai užimtas"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Laikinai prastos tinklo sąlygos"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Silpnas signalas. Pabandykite prieiti arčiau maršruto parinktuvo."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Tinklas pernelyg užimtas. Vėliau bandykite dar kartą."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nepavyko prisijungti. Vėliau bandykite dar kartą."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nepavyko prisijungti. Vėliau bandykite dar kartą."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Atsijungta"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Išsaugota"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Matuojamas"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Nematuojamas"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Prisijungta naudojant programą „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Pasiekiama naudojant „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatiškai prisijungta per „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatiškai prisijungta naudojant tinklo įvertinimo paslaugos teikėjo paslaugomis"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ribotas ryšys"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Privataus DNS serverio negalima pasiekti"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Prisijungta prie įrenginio. Nepavyksta prisijungti prie interneto."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Prastas ryšys"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nėra"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Negalioja"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Palieskite, kad prisiregistruotumėte"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Palieskite, kad atnaujintumėte prenumeratą ir prisijungtumėte"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Atidaroma: „<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>“"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nepavyko prisijungti"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Baigiamas prisiregistravimas…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Nepavyko užbaigti prisiregistravimo. Jei norite bandyti dar kartą, palieskite."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Prisiregistravimas baigtas. Prisijungiama…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Šis tinklas gauna SIM kortelės ID, kurį galima naudoti įrenginio vietovei stebėti. "<annotation id="url">"Sužinokite daugiau"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Labai lėtas"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lėtas"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Geras"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Vidutinis"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Spartus"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Labai spartus"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"„Wi-Fi“ šiuo metu nebus prijungtas automatiškai"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatinio prisijungimo funkcija išjungta"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Išsaugojo <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nebus automatiškai prisijungiama"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nėra interneto ryšio"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentifikavimo problema"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Patikrinkite slaptažodį ir bandykite dar kartą"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP konfigūracijos triktis"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Neleidžiama"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Prieigos taškas laikinai visiškai užimtas"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Neprisijungta"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Išsaugotas"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Matuojamas"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Neišmatuotas"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Prisijungta naudojant programą „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Pasiekiama naudojant „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatiškai prisijungta per „<xliff:g id="NAME">%1$s</xliff:g>“"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatiškai prisijungta naudojant tinklo įvertinimo paslaugos teikėjo paslaugomis"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ribotas ryšys"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Privataus DNS serverio negalima pasiekti"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nėra interneto ryšio"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nėra"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Baigėsi galiojimo laikas"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Palieskite, kad prisiregistruotumėte"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Palieskite, kad atnaujintumėte prenumeratą ir prisijungtumėte"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Atidaroma: „<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>“"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nepavyko prisijungti"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Baigiamas prisiregistravimas…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Nepavyko užbaigti prisiregistravimo. Jei norite bandyti dar kartą, palieskite."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Prisiregistravimas baigtas. Prijungiama…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Šis tinklas gauna SIM kortelės ID, kurį galima naudoti įrenginio vietovei stebėti. "<annotation id="url">"Sužinokite daugiau"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Labai lėtas"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lėtas"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Gerai"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Vidutinis"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Greitas"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Labai greitas"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lv/arrays.xml b/libs/WifiTrackerLib/res/values-lv/arrays.xml
index f15581362..fe50755b7 100644
--- a/libs/WifiTrackerLib/res/values-lv/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-lv/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Notiek meklēšana…"</item>
- <item msgid="9055468790485684083">"Notiek savienojuma izveide…"</item>
- <item msgid="6099499723199990208">"Notiek autentificēšana…"</item>
- <item msgid="6794055951297347103">"Notiek IP adreses iegūšana…"</item>
- <item msgid="5450920562291300229">"Izveidots savienojums"</item>
- <item msgid="6332116533879646145">"Apturēta darbība"</item>
- <item msgid="294459081501073818">"Notiek savienojuma pārtraukšana…"</item>
- <item msgid="1577368920272598676">"Savienojums pārtraukts"</item>
- <item msgid="7655843177582495451">"Neizdevās"</item>
- <item msgid="8953752690917593623">"Bloķēts"</item>
- <item msgid="4400457817750243671">"Pagaidām netiek izmantots vājš savienojums."</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Notiek meklēšana…"</item>
+ <item msgid="6222852518007967736">"Notiek savienojuma izveide…"</item>
+ <item msgid="1176401854208153464">"Notiek autentificēšana…"</item>
+ <item msgid="1377026397901197257">"Notiek IP adreses iegūšana…"</item>
+ <item msgid="7627139816052121509">"Izveidots savienojums"</item>
+ <item msgid="1598801023719359130">"Apturēts"</item>
+ <item msgid="9160765456671002324">"Notiek savienojuma pārtraukšana…"</item>
+ <item msgid="8013176736494493734">"Savienojums pārtraukts"</item>
+ <item msgid="4077393480368783785">"Neizdevās"</item>
+ <item msgid="605372180740008604">"Bloķēts"</item>
+ <item msgid="5102306451432929048">"Pagaidām netiek izmantots vājš savienojums."</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-lv/strings.xml b/libs/WifiTrackerLib/res/values-lv/strings.xml
index 5f706d904..a4df7e2c8 100644
--- a/libs/WifiTrackerLib/res/values-lv/strings.xml
+++ b/libs/WifiTrackerLib/res/values-lv/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Savienojuma automātiskā izveide ir izslēgta."</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saglabāja: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Savienojums netiks izveidots automātiski."</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nav piekļuves internetam."</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentificēšanas problēma"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Pārbaudiet paroli un mēģiniet vēlreiz."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP konfigurācijas kļūme"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Atspējots"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Piekļuves punkts īslaicīgi ir pilns."</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Īslaicīgs slikts tīkla stāvoklis"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Vājš signāls. Pārvietojieties tuvāk maršrutētājam."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Tīkls ir pārslogots. Vēlāk mēģiniet vēlreiz."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nevar izveidot savienojumu. Vēlāk mēģiniet vēlreiz."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nevar izveidot savienojumu. Vēlāk mēģiniet vēlreiz."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Savienojums pārtraukts"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saglabāts"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Maksas"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Bezmaksas"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Izveidots savienojums, izmantojot <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Pieejams, izmantojot <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automātiski izveidots savienojums, izmantojot <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automātiski izveidots savienojums, izmantojot tīkla vērtējuma sniedzēju"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ierobežots savienojums"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Nevar piekļūt privātam DNS serverim."</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Izveidots savienojums ar ierīci. Nav piekļuves internetam."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Zema kvalitāte"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nav"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Beidzies derīguma termiņš"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Pieskarieties, lai reģistrētos."</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Pieskarieties, lai atjaunotu abonementu un izveidotu savienojumu."</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Notiek nodrošinātāja <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> atvēršana."</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nevarēja izveidot savienojumu"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Notiek reģistrācijas pabeigšana…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Nevarēja pabeigt reģistrāciju. Pieskarieties, lai mēģinātu vēlreiz."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Reģistrācija ir pabeigta. Notiek savienojuma izveide…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Šis tīkls saņem SIM ID, ko var izmantot, lai izsekotu ierīces atrašanās vietu. "<annotation id="url">"Uzziniet vairāk"</annotation>"."</string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Ļoti lēns"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lēns"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Pietiekams"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Vidējs"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Ātrs"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Ļoti ātrs"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi savienojums īslaicīgi netiks veidots automātiski"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Savienojuma automātiskā izveide ir izslēgta."</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saglabāja: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Savienojums netiks izveidots automātiski"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nav piekļuves internetam"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentificēšanas problēma"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Pārbaudiet paroli un mēģiniet vēlreiz."</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP konfigurācijas kļūme"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Atspējots"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Piekļuves punkts īslaicīgi ir pilns"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Savienojums pārtraukts"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saglabāts"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Maksas"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Bezmaksas"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Savienojums ar <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Pieejams, izmantojot <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automātiski izveidots savienojums, izmantojot <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automātiski izveidots savienojums, izmantojot tīkla vērtējuma sniedzēju"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ierobežots savienojums"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Nevar piekļūt privātam DNS serverim."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nav interneta"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nav"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Beidzies derīguma termiņš"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Pieskarieties, lai reģistrētos."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Pieskarieties, lai atjaunotu abonementu un izveidotu savienojumu"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Notiek nodrošinātāja <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> atvēršana."</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nevarēja izveidot savienojumu."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Notiek reģistrācijas pabeigšana…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Nevarēja pabeigt reģistrāciju. Pieskarieties, lai mēģinātu vēlreiz."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Reģistrācija ir pabeigta. Notiek savienojuma izveide…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Šis tīkls saņem SIM ID, ko var izmantot, lai izsekotu ierīces atrašanās vietai. "<annotation id="url">"Uzziniet vairāk"</annotation>"."</string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Ļoti lēns"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lēns"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Labi"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Vidējs"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Ātrs"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Ļoti ātrs"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mk/arrays.xml b/libs/WifiTrackerLib/res/values-mk/arrays.xml
index d37dfa771..1ee619cb1 100644
--- a/libs/WifiTrackerLib/res/values-mk/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-mk/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Се скенира…"</item>
- <item msgid="9055468790485684083">"Се поврзува…"</item>
- <item msgid="6099499723199990208">"Се проверува…"</item>
- <item msgid="6794055951297347103">"Се добива IP-адресата…"</item>
- <item msgid="5450920562291300229">"Поврзано"</item>
- <item msgid="6332116533879646145">"Прекинато"</item>
- <item msgid="294459081501073818">"Се исклучува…"</item>
- <item msgid="1577368920272598676">"Не е поврзано"</item>
- <item msgid="7655843177582495451">"Неуспешно"</item>
- <item msgid="8953752690917593623">"Блокирано"</item>
- <item msgid="4400457817750243671">"Привремено избегнува лоша врска"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Се скенира…"</item>
+ <item msgid="6222852518007967736">"Се поврзува…"</item>
+ <item msgid="1176401854208153464">"Се проверува…"</item>
+ <item msgid="1377026397901197257">"Се добива IP-адресата…"</item>
+ <item msgid="7627139816052121509">"Поврзано"</item>
+ <item msgid="1598801023719359130">"Прекинато"</item>
+ <item msgid="9160765456671002324">"Се исклучува…"</item>
+ <item msgid="8013176736494493734">"Не е поврзано"</item>
+ <item msgid="4077393480368783785">"Неуспешно"</item>
+ <item msgid="605372180740008604">"Блокирано"</item>
+ <item msgid="5102306451432929048">"Привремено избегнува лоша врска"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mk/strings.xml b/libs/WifiTrackerLib/res/values-mk/strings.xml
index d0dd758ef..bc5f746fc 100644
--- a/libs/WifiTrackerLib/res/values-mk/strings.xml
+++ b/libs/WifiTrackerLib/res/values-mk/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автоматското поврзување е исклучено"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Зачувана од <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Не може да се поврзе автоматски"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Нема пристап до интернет"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Проблем при проверката"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Проверете ја лозинката и обидете се повторно"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Конфигурацијата на IP не успеа"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Оневозможена"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Пристапната точка е привремено преоптоварена"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Привремено слаби услови на мрежата"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Слаб сигнал. Доближете се до рутерот."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Мрежата е преоптоварена. Обидете се повторно подоцна."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Не може да се поврзе. Обидете се повторно подоцна."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Не може да се поврзе. Обидете се повторно подоцна."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Не е поврзано"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Зачувана"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Со ограничен интернет"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Со неограничен интернет"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Поврзано преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Достапна преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Автоматски поврзано преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Автоматски поврзано преку оценувач на мрежа"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ограничена врска"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Не може да се пристапи до приватниот DNS-сервер"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Поврзано со уредот. Не може да се обезбеди интернет."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Лош квалитет"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Нема"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Истечена"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Допрете за да се регистрирате"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Допрете за да ја обновите претплатата и да се поврзете"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Се отвора <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Не може да се поврзе"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Се завршува регистрацијата…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Не може да се заврши регистрацијата. Допрете за да се обидете повторно."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Регистрацијата е завршена. Се поврзува…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Мрежава прима уникатен ID на SIM што може да се користи за следење на локацијата на уредот. "<annotation id="url">"Дознајте повеќе"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Многу бавна"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Бавна"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Во ред"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Средна"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Брза"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Многу брза"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi нема да се поврзува автоматски засега"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автоматското поврзување е исклучено"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Зачувано од <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Не може да се поврзе автоматски"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Нема пристап до интернет"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Проблем при проверката"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Проверете ја лозинката и обидете се повторно"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Конфигурацијата на IP не успеа"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Оневозможено"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Пристапната точка привремено е преоптоварена"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Не е поврзано"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Зачувано"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Со ограничен интернет"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Без ограничен интернет"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Поврзано преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Достапна преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Автоматски поврзано преку <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Автоматски поврзано преку оценувач на мрежа"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ограничена врска"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Не може да се пристапи до приватниот DNS-сервер"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Нема интернет"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Нема"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Истечено"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Допрете за да се регистрирате"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Допрете за обновување на претплатата и поврзување"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Се отвора <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Не може да се поврзе"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Се завршува регистрацијата…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Не може да се заврши регистрацијата. Допрете за да се обидете повторно."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Регистрацијата е завршена. Се поврзува…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Мрежава прима ID на SIM-картичка што може да се користи за следење на локацијата на уредот. "<annotation id="url">"Дознајте повеќе"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Многу бавна"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Бавна"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Во ред"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Средна"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Брза"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Многу брза"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ml/arrays.xml b/libs/WifiTrackerLib/res/values-ml/arrays.xml
index 41a01ba0d..78f9e27eb 100644
--- a/libs/WifiTrackerLib/res/values-ml/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ml/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"സ്‌കാൻ ചെയ്യുന്നു…"</item>
- <item msgid="9055468790485684083">"കണക്‌റ്റ് ചെയ്യുന്നു…"</item>
- <item msgid="6099499723199990208">"പരിശോധിച്ചുറപ്പിക്കുന്നു…"</item>
- <item msgid="6794055951297347103">"IP വിലാസം നേടുന്നു…"</item>
- <item msgid="5450920562291300229">"കണക്റ്റ് ചെയ്തു"</item>
- <item msgid="6332116533879646145">"തൽക്കാലികമായി റദ്ദാക്കി"</item>
- <item msgid="294459081501073818">"വിച്ഛേദിക്കുന്നു…"</item>
- <item msgid="1577368920272598676">"വിച്ഛേദിച്ചു"</item>
- <item msgid="7655843177582495451">"കണക്റ്റ് ചെയ്യാനായില്ല"</item>
- <item msgid="8953752690917593623">"ബ്ലോക്ക് ചെയ്തു"</item>
- <item msgid="4400457817750243671">"മോശം കണക്ഷൻ കാരണം വൈഫൈ താൽക്കാലികമായി ഒഴിവാക്കുന്നു"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"സ്‌കാൻ ചെയ്യുന്നു..."</item>
+ <item msgid="6222852518007967736">"കണക്‌റ്റ് ചെയ്യുന്നു..."</item>
+ <item msgid="1176401854208153464">"പരിശോധിച്ചുറപ്പിക്കുന്നു…"</item>
+ <item msgid="1377026397901197257">"IP വിലാസം നേടുന്നു..."</item>
+ <item msgid="7627139816052121509">"കണ‌ക്റ്റ് ചെയ്‌തു"</item>
+ <item msgid="1598801023719359130">"താൽക്കാലികമായി റദ്ദാക്കി"</item>
+ <item msgid="9160765456671002324">"വിച്‌ഛേദിക്കുന്നു..."</item>
+ <item msgid="8013176736494493734">"വിച്ഛേദിച്ചു"</item>
+ <item msgid="4077393480368783785">"പരാജയപ്പെട്ടു"</item>
+ <item msgid="605372180740008604">"ബ്ലോക്ക് ചെയ്തിരിക്കുന്നു"</item>
+ <item msgid="5102306451432929048">"മോശം കണക്ഷൻ താൽക്കാലികമായി ഒഴിവാക്കുന്നു"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ml/strings.xml b/libs/WifiTrackerLib/res/values-ml/strings.xml
index b39326d6d..28035202f 100644
--- a/libs/WifiTrackerLib/res/values-ml/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ml/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ഓട്ടോ-കണക്റ്റ് ഓഫാണ്"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> സംരക്ഷിച്ചത്"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"സ്വയമേവ കണക്‌റ്റ് ചെയ്യില്ല"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ഇന്റർനെറ്റ് ആക്‌സസ് ഇല്ല"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"പരിശോധിച്ചുറപ്പിക്കുന്നതിൽ പ്രശ്‌നം"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"പാസ്‌വേഡ് പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP കോൺഫിഗർ ചെയ്യാനായില്ല"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"പ്രവർത്തനരഹിതമാക്കി"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ആക്‌സസ് പോയിന്റ് താൽക്കാലികമായി നിറഞ്ഞു"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"നിലവിലെ നെറ്റ്‌വർക്ക് നില മോശം"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"സിഗ്‌നൽ ദുർബലമാണ്. റൂട്ടറിന് കൂടുതൽ അടുത്തേക്ക് നീക്കി ശ്രമിക്കുക."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"നിങ്ങളുടെ നെറ്റ്‌വർക്ക് ശേഷി കവിഞ്ഞു. പിന്നീട് വീണ്ടും ശ്രമിക്കുക."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"കണക്‌റ്റ് ചെയ്യാനാകുന്നില്ല. പിന്നീട് വീണ്ടും ശ്രമിക്കുക."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"കണക്റ്റ് ചെയ്യാനാകുന്നില്ല. പിന്നീട് വീണ്ടും ശ്രമിക്കുക."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"വിച്ഛേദിച്ചു"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"സംരക്ഷിച്ചു"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"മീറ്റർ ചെയ്‌തത്"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"മീറ്റർമാപകമല്ലാത്തത്"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> മുഖേന കണക്‌റ്റ് ചെയ്‌തു"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> മുഖേന ലഭ്യമാണ്"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> മുഖേന സ്വയമേവ കണക്റ്റ് ചെയ്‌തു"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"നെറ്റ്‌വർക്ക് റേറ്റിംഗ് ദാതാവുമായി സ്വയമേവ കണക്‌റ്റ് ചെയ്‌തു"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"പരിമിത കണക്‌ഷൻ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"സ്വകാര്യ DNS സെർവർ ആക്‌സസ് ചെയ്യാനാവുന്നില്ല"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ഉപകരണത്തിലേക്ക് കണക്റ്റ് ചെയ്‌തു. ഇന്റർനെറ്റ് നൽകാനാകില്ല."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"കുറഞ്ഞ നിലവാരം"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ഒന്നുമില്ല"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"കാലഹരണപ്പെട്ടു"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"സൈൻ അപ്പ് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"സബ്‌സ്ക്രിപ്ഷൻ പുതുക്കാൻ ടാപ്പ് ചെയ്ത ശേഷം കണക്റ്റ് ചെയ്യുക"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> തുറക്കുന്നു"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"കണക്റ്റ് ചെയ്യാനായില്ല"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"സൈൻ അപ്പ് പൂർത്തിയാക്കുന്നു…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"സൈൻ അപ്പ് പൂർത്തിയാക്കാനായില്ല. വീണ്ടും ശ്രമിക്കാൻ ടാപ്പ് ചെയ്യുക."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"സൈൻ അപ്പ് പൂർത്തിയായി. കണക്റ്റ് ചെയ്യുന്നു…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ഉപകരണ ലൊക്കേഷൻ ട്രാക്ക് ചെയ്യാൻ ഉപയോഗിക്കാവുന്ന സിം ഐഡി ഈ നെറ്റ്‌വർക്കിന് ലഭിക്കും. "<annotation id="url">"കൂടുതലറിയുക"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"വളരെ കുറഞ്ഞ വേഗത്തിൽ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"കുറഞ്ഞ വേഗത്തിൽ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ശരി"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"ഇടത്തരം"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"വേഗത്തിൽ"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"അതിവേഗം"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"വൈഫൈ ഇപ്പോൾ സ്വയമേവ കണക്റ്റ് ചെയ്യില്ല"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ഓട്ടോ-കണക്റ്റ് ഓഫാണ്"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> സംരക്ഷിച്ചത്"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"സ്വയമേവ കണക്‌റ്റ് ചെയ്യില്ല"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ഇന്റർനെറ്റ് ആക്‌സസ് ഇല്ല"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"പരിശോധിച്ചുറപ്പിക്കുന്നതിലെ പ്രശ്നം"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"പാസ്‌വേഡ് പരിശോധിച്ച് വീണ്ടും ശ്രമിക്കുക"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP കോൺഫിഗറേഷൻ പരാജയം"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"പ്രവർത്തനരഹിതമാക്കി"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ആക്‌സസ് പോയിന്റ് താൽക്കാലികമായി നിറഞ്ഞിരിക്കുന്നു"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"വിച്ഛേദിച്ചു"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"സംരക്ഷിച്ചു"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"മീറ്റർ ചെയ്തത്"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"മീറ്റർമാപകമല്ലാത്തത്"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> മുഖേന കണക്‌റ്റ് ചെയ്‌തു"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> വഴി ലഭ്യമാണ്"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> മുഖേന സ്വയമേവ കണക്‌റ്റ് ചെയ്തിരിക്കുന്നു"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"നെറ്റ്‌വർക്ക് റേറ്റിംഗ് ദാതാവുമായി സ്വയം കണക്‌റ്റുചെയ്‌തു"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"പരിമിത കണക്‌ഷൻ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"സ്വകാര്യ DNS സെർവർ ആക്‌സസ് ചെയ്യാനാവില്ല"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ഇന്റർനെറ്റ് ഇല്ല"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ഒന്നുമില്ല"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"കാലഹരണപ്പെട്ടത്"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"സൈൻ അപ്പ് ചെയ്യാൻ ടാപ്പ് ചെയ്യുക"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"സബ്‌സ്ക്രിപ്ഷൻ പുതുക്കാൻ ടാപ്പ് ചെയ്ത് കണക്റ്റ് ചെയ്യുക"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> തുറക്കുന്നു"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"കണക്റ്റ് ചെയ്യാനായില്ല"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"സൈൻ അപ്പ് പൂർത്തിയാക്കുന്നു…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"സൈൻ അപ്പ് പൂർത്തിയാക്കാനായില്ല. വീണ്ടും ശ്രമിക്കാൻ ടാപ്പ് ചെയ്യുക."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"സൈൻ അപ്പ് പൂർത്തിയായി. കണക്റ്റ് ചെയ്യുന്നു…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ഉപകരണ ലൊക്കേഷൻ ട്രാക്ക് ചെയ്യാൻ ഉപയോഗിക്കാവുന്ന സിം ഐഡി ഈ നെറ്റ്‌വർക്കിന് ലഭിക്കും. "<annotation id="url">"കൂടുതലറിയുക"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"വളരെ കുറഞ്ഞ വേഗത്തിൽ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"കുറഞ്ഞ വേഗത്തിൽ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ശരി"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ഇടത്തരം"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"വേഗത്തിൽ"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"അതിവേഗം"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mn/arrays.xml b/libs/WifiTrackerLib/res/values-mn/arrays.xml
index b6dfc2029..654a1c219 100644
--- a/libs/WifiTrackerLib/res/values-mn/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-mn/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Скан хийж байна…"</item>
- <item msgid="9055468790485684083">"Холбогдож байна…"</item>
- <item msgid="6099499723199990208">"Баталгаажуулж байна…"</item>
- <item msgid="6794055951297347103">"IP хаягийг авч байна…"</item>
- <item msgid="5450920562291300229">"Холбогдсон"</item>
- <item msgid="6332116533879646145">"Түр хаасан"</item>
- <item msgid="294459081501073818">"Салгаж байна…"</item>
- <item msgid="1577368920272598676">"Салгасан"</item>
- <item msgid="7655843177582495451">"Амжилтгүй боллоо"</item>
- <item msgid="8953752690917593623">"Блоклосон"</item>
- <item msgid="4400457817750243671">"Сул холболтоос түр зайлсхийж байна"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Скан хийж байна…"</item>
+ <item msgid="6222852518007967736">"Холбогдож байна…"</item>
+ <item msgid="1176401854208153464">"Баталгаажуулж байна…"</item>
+ <item msgid="1377026397901197257">"IP хаягийг авч байна…"</item>
+ <item msgid="7627139816052121509">"Холбогдсон"</item>
+ <item msgid="1598801023719359130">"Түр хаасан"</item>
+ <item msgid="9160765456671002324">"Салгаж байна…"</item>
+ <item msgid="8013176736494493734">"Салгасан"</item>
+ <item msgid="4077393480368783785">"Амжилтгүй"</item>
+ <item msgid="605372180740008604">"Блоклосон"</item>
+ <item msgid="5102306451432929048">"Муу холболтоос түр зайлсхийж байна"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mn/strings.xml b/libs/WifiTrackerLib/res/values-mn/strings.xml
index fe99e1a59..749fd40c2 100644
--- a/libs/WifiTrackerLib/res/values-mn/strings.xml
+++ b/libs/WifiTrackerLib/res/values-mn/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автомат холболт унтраалттай байна"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> хадгалсан"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Автоматаар холбогдохгүй"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Интернэт хандалт алга"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Баталгаажуулалтын асуудал"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Нууц үгийг шалгаад дахин оролдоно уу"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP тохируулга амжилтгүй боллоо"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Идэвхгүй болгосон"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Хандалтын цэг түр хугацаанд дүүрсэн байна"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Сүлжээний нөхцөл байдал түр хугацаанд муу байна"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Дохио сул байна. Рүүтэр лүүгээ ойртож үзнэ үү."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Сүлжээний хүчин чадал хэтэрсэн байна. Дараа дахин оролдоно уу."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Холбогдох боломжгүй байна. Дараа дахин оролдоно уу."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Холбогдох боломжгүй байна. Дараа дахин оролдоно уу."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Салгасан"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Хадгалсан"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Хязгаартай"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Хязгааргүй"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g>-р холбогдсон"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g>-р боломжтой"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g>-р автоматаар холбогдсон"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Сүлжээний үнэлгээ үзүүлэгчээр автоматаар холбогдсон"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Хязгаарлагдмал холболт"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Хувийн DNS серверт хандах боломжгүй байна"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Төхөөрөмжид холбогдсон байна. Интернэт олгох боломжгүй."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Чанар муу"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Байхгүй"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Хугацаа дууссан"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Бүртгүүлэхийн тулд товшино уу"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Захиалгыг шинэчилж, холбогдохын тулд товшино уу"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>-г нээж байна"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Холбогдож чадсангүй"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Бүртгэлийг дуусгаж байна…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Бүртгэлийг дуусгаж чадсангүй. Дахин оролдохын тулд товшино уу."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Бүртгэлийг дуусгалаа. Холбогдож байна…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Энэ сүлжээ нь төхөөрөмжийн байршлыг тандахад ашиглах боломжтой SIM ID-г хүлээн авдаг. "<annotation id="url">"Нэмэлт мэдээлэл авах"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Маш удаан"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Удаан"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ОК"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Дундаж"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Хурдан"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Маш хурдан"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi одоогоор автоматаар холбогдохгүй"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автомат холболт унтраалттай байна"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> хадгалсан"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Автоматаар холбогдохгүй"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Интернэт хандалт байхгүй байна"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Баталгаажуулалтын асуудал"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Нууц үгийг шалгаад дахин оролдоно уу"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP тохируулга амжилтгүй боллоо"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Идэвхгүйжүүлсэн"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Хандах цэг түр хугацаанд дүүрсэн байна"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Салсан"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Хадгалагдсан"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Хязгаартай"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Хязгааргүй"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g>-р холбогдсон"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>-р боломжтой байна"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g>-р автоматаар холбогдсон"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Сүлжээний үнэлгээ үзүүлэгчээр автоматаар холбогдох"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Хязгаарлагдмал холболт"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Хувийн DNS серверт хандах боломжгүй байна"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Интернэт алга"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Байхгүй"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Хугацаа дууссан"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Бүртгүүлэхийн тулд товшино уу"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Захиалгыг шинэчилж, холбогдохын тулд товшино уу"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>-г нээж байна"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Холбогдож чадсангүй"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Бүртгэлийг дуусгаж байна…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Бүртгэлийг дуусгаж чадсангүй. Дахин оролдохын тулд товшино уу."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Бүртгэлийг дуусгалаа. Холбогдож байна…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Энэ сүлжээ нь төхөөрөмжийн байршлыг тандахад ашиглах боломжтой SIM ID-г хүлээн авдаг. "<annotation id="url">"Нэмэлт мэдээлэл авах"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Маш удаан"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Удаан"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ЗА"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Дунд"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Хурдан"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Маш хурдан"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mr/arrays.xml b/libs/WifiTrackerLib/res/values-mr/arrays.xml
index ec4d819ca..ed3cd8aa3 100644
--- a/libs/WifiTrackerLib/res/values-mr/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-mr/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"स्कॅन करत आहे…"</item>
- <item msgid="9055468790485684083">"कनेक्ट करत आहे…"</item>
- <item msgid="6099499723199990208">"ऑथेंटिकेट करत आहे…"</item>
- <item msgid="6794055951297347103">"आयपी ॲड्रेस मिळवत आहे…"</item>
- <item msgid="5450920562291300229">"कनेक्ट केले"</item>
- <item msgid="6332116533879646145">"निलंबित केले"</item>
- <item msgid="294459081501073818">"डिस्कनेक्ट करत आहे…"</item>
- <item msgid="1577368920272598676">"डिस्कनेक्ट केले"</item>
- <item msgid="7655843177582495451">"अयशस्वी"</item>
- <item msgid="8953752690917593623">"ब्लॉक केले"</item>
- <item msgid="4400457817750243671">"खराब कनेक्शन तात्पुरते टाळत आहे"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"स्कॅन होत आहे…"</item>
+ <item msgid="6222852518007967736">"कनेक्ट करत आहे…"</item>
+ <item msgid="1176401854208153464">"ऑथेंटिकेट करत आहे…"</item>
+ <item msgid="1377026397901197257">"आयपी ॲड्रेस मिळवत आहे…"</item>
+ <item msgid="7627139816052121509">"कनेक्ट केले"</item>
+ <item msgid="1598801023719359130">"निलंबित"</item>
+ <item msgid="9160765456671002324">"डिस्कनेक्ट करत आहे…"</item>
+ <item msgid="8013176736494493734">"डिस्कनेक्ट केले"</item>
+ <item msgid="4077393480368783785">"अयशस्वी"</item>
+ <item msgid="605372180740008604">"ब्लॉक केले"</item>
+ <item msgid="5102306451432929048">"खराब कनेक्शन तात्पुरते टाळत आहे"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-mr/strings.xml b/libs/WifiTrackerLib/res/values-mr/strings.xml
index ca9d19ed7..661b7f0b9 100644
--- a/libs/WifiTrackerLib/res/values-mr/strings.xml
+++ b/libs/WifiTrackerLib/res/values-mr/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ऑटो-कनेक्ट बंद आहे"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> ने सेव्ह केले"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"आपोआप कनेक्ट होणार नाही"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"इंटरनेट अ‍ॅक्सेस नाही"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ऑथेंटिकेशनमध्ये समस्या आली"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"पासवर्ड तपासा आणि पुन्‍हा प्रयत्न करा"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"आयपी कॉंफिगरेशन पूर्ण करता आले नाही"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"बंद केली"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"अ‍ॅक्सेस पॉइंट तात्पुरता भरला आहे"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"नेटवर्कची स्थिती तात्पुरती खराब आहे"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"कमकुवत सिग्नल. राउटरच्‍या जवळ जाण्याचा प्रयत्‍न करा."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"नेटवर्कवर क्षमतेपेक्षा जास्त लोड आहे. नंतर पुन्हा प्रयत्न करा."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"कनेक्ट करू शकत नाही. नंतर पुन्हा प्रयत्न करा."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"कनेक्ट करू शकत नाही. नंतर पुन्हा प्रयत्न करा."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"डिस्कनेक्ट केले"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"सेव्ह केलेले"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"मर्यादित आहे"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"डेटा वापरानुसार नाही"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे कनेक्ट केले"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे उपलब्ध"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे आपोआप कनेक्ट केले"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"नेटवर्क रेटिंग पुरवठादाराद्वारे आपोआप कनेक्ट केले"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"मर्यादित कनेक्शन"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"खाजगी DNS सर्व्हर ॲक्सेस करू शकत नाही"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"डिव्हाइसशी कनेक्ट केले. इंटरनेट उपलब्ध नाही."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"कमी गुणवत्ता"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"काहीही नाही"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"एक्स्पायर झाला"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"साइन अप करण्यासाठी टॅप करा"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"सदस्यत्व रिन्यू करण्यासाठी टॅप करा आणि कनेक्ट करा"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> उघडत आहे"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"कनेक्ट करता आले नाही"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"साइन-अप करणे पूर्ण होत आहे…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"साइन-अप करणे पूर्ण करता आले नाही. पुन्हा प्रयत्न करण्यासाठी टॅप करा."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"साइन-अप करणे पूर्ण झाले. कनेक्ट करत आहे…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"हे नेटवर्क डिव्हाइसच्या स्थानाचा माग ठेवण्यासाठी वापरता येणारा सिम आयडी मिळवते. "<annotation id="url">"अधिक जाणून घ्या"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"खूप हळू"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"हळू"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ओके"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"मध्यम"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"जलद"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"खूप जलद"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"वाय-फाय सध्या ऑटो-कनेक्ट होणार नाही"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ऑटो-कनेक्ट बंद आहे"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे सेव्ह केले"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"आपोआप कनेक्ट झाले नाही"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"इंटरनेट अ‍ॅक्सेस नाही"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ऑथेंटिकेशन समस्या"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"पासवर्ड तपासा आणि पुन्‍हा प्रयत्‍न करा"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP कॉंफिगरेशन अयशस्वी"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"अक्षम"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"अ‍ॅक्सेस पॉइंट तात्पुरते भरलेले"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"डिस्कनेक्ट केले"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"सेव्ह केले"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"मीटरने मोजलेले"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"मीटरने न मोजलेले"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे कनेक्ट केले"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> द्वारे उपलब्ध"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> वरून आपोआप कनेक्ट केले आहे"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"नेटवर्क रेटिंग प्रदात्याद्वारे स्वयंचलितपणे कनेक्ट केले"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"मर्यादित कनेक्शन"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"खाजगी DNS सर्व्हर ॲक्सेस करू शकत नाही"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"इंटरनेट नाही"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"काहीही नाही"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"मुदत संपली"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"साइन अप करण्यासाठी टॅप करा"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"सदस्यत्व रिन्यू करण्यासाठी टॅप करा आणि कनेक्ट करा"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> उघडत आहे"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"कनेक्ट करता आले नाही"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"साइन-अप पूर्ण होत आहे…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"साइन-अप पूर्ण करता आले नाही. पुन्हा प्रयत्न करण्यासाठी टॅप करा."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"साइन-अप पूर्ण झाले आहे. कनेक्ट करत आहे…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"हे नेटवर्क डिव्हाइसच्या स्थानाचा माग ठेवण्यासाठी वापरता येणारा सिम आयडी मिळवते. "<annotation id="url">"अधिक जाणून घ्या"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"खूप हळू"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"हळू"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ठीक आहे"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"मध्‍यम"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"जलद"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"खूप जलद"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ms/arrays.xml b/libs/WifiTrackerLib/res/values-ms/arrays.xml
index 43a6dbfbf..b4fbeffda 100644
--- a/libs/WifiTrackerLib/res/values-ms/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ms/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Mengimbas…"</item>
- <item msgid="9055468790485684083">"Menyambung…"</item>
- <item msgid="6099499723199990208">"Mengesahkan…"</item>
- <item msgid="6794055951297347103">"Mendapatkan alamat IP…"</item>
- <item msgid="5450920562291300229">"Disambungkan"</item>
- <item msgid="6332116533879646145">"Digantung"</item>
- <item msgid="294459081501073818">"Memutuskan sambungn…"</item>
- <item msgid="1577368920272598676">"Diputuskan sambungan"</item>
- <item msgid="7655843177582495451">"Tidak berjaya"</item>
- <item msgid="8953752690917593623">"Disekat"</item>
- <item msgid="4400457817750243671">"Mengelakkan sambungan lemah buat sementara waktu"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Mengimbas…"</item>
+ <item msgid="6222852518007967736">"Menyambung…"</item>
+ <item msgid="1176401854208153464">"Mengesahkan…"</item>
+ <item msgid="1377026397901197257">"Mendapatkan alamat IP…"</item>
+ <item msgid="7627139816052121509">"Disambungkan"</item>
+ <item msgid="1598801023719359130">"Digantung"</item>
+ <item msgid="9160765456671002324">"Memutuskan sambungan…"</item>
+ <item msgid="8013176736494493734">"Diputuskan sambungan"</item>
+ <item msgid="4077393480368783785">"Tidak berjaya"</item>
+ <item msgid="605372180740008604">"Disekat"</item>
+ <item msgid="5102306451432929048">"Mengelakkan sambungan lemah buat sementara waktu"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ms/strings.xml b/libs/WifiTrackerLib/res/values-ms/strings.xml
index 655df3bbb..e88a0cf43 100644
--- a/libs/WifiTrackerLib/res/values-ms/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ms/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Autosambung dimatikan"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Disimpan oleh <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Tidak akan menyambung secara automatik"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Tiada akses Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Masalah pengesahan"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Semak kata laluan, kemudian cuba lagi"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Kegagalan konfigurasi IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Dilumpuhkan"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Titik akses penuh buat sementara waktu"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Keadaan rangkaian teruk sementara"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Isyarat lemah. Cuba bergerak lebih rapat ke penghala."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Rangkaian melebihi kapasiti. Cuba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Tidak dapat menyambung. Cuba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Tidak dapat menyambung. Cuba lagi nanti."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Diputuskan sambungan"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Disimpan"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Bermeter"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Tidak bermeter"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Disambungkan melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tersedia melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Disambungkan secara automatik melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Disambungkan secara automatik melalui pembekal penilaian rangkaian"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Sambungan terhad"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Pelayan DNS peribadi tidak boleh diakses"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Disambungkan pada peranti. Tidak dapat menyediakan Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Kualiti rendah"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Tiada"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Tamat tempoh"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Ketik untuk daftar"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Ketik untuk membaharui langganan dan sambung"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Membuka <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Tidak dapat menyambung"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Menyelesaikan pendaftaran…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Tidak dapat menyelesaikan pendaftaran. Ketik untuk mencuba lagi."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Pendaftaran selesai. Menyambung…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Rangkaian ini menerima ID SIM yang boleh digunakan untuk menjejaki lokasi peranti. "<annotation id="url">"Ketahui lebih lanjut"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Sangat Perlahan"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Perlahan"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Sederhana"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Laju"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Sangat Laju"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi tidak akan disambungkan secara automatik buat masa ini"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Autosambung dimatikan"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Diselamatkan oleh <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Tidak akan menyambung secara automatik"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Tiada akses Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Masalah pengesahan"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Semak kata laluan, kemudian cuba lagi"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Kegagalan konfigurasi IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Dinyahdayakan"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Titik akses penuh buat sementara waktu"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Diputuskan sambungan"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Disimpan"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Bermeter"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Tidak bermeter"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Disambungkan melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Tersedia melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Disambungkan secara automatik melalui <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Disambungkan secara automatik melalui pembekal penilaian rangkaian"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Sambungan terhad"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Pelayan DNS peribadi tidak boleh diakses"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Tiada Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Tiada"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Tamat tempoh"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Ketik untuk daftar"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Ketik untuk membaharui langganan dan sambung"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Membuka <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Tidak dapat menyambung"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Menyelesaikan pendaftaran…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Tidak dapat menyelesaikan pendaftaran. Ketik untuk mencuba lagi."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Pendaftaran selesai. Menyambung…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Rangkaian ini menerima ID SIM yang boleh digunakan untuk menjejak lokasi peranti. "<annotation id="url">"Ketahui lebih lanjut"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Sangat Perlahan"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Perlahan"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Sederhana"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Laju"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Sangat Laju"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-my/arrays.xml b/libs/WifiTrackerLib/res/values-my/arrays.xml
index b09dab483..2443e14a2 100644
--- a/libs/WifiTrackerLib/res/values-my/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-my/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ရှာဖွေနေသည်…"</item>
- <item msgid="9055468790485684083">"ချိတ်ဆက်နေသည်…"</item>
- <item msgid="6099499723199990208">"အထောက်အထားစိစစ်နေသည်…"</item>
- <item msgid="6794055951297347103">"IP လိပ်စာ ရယူနေသည်…"</item>
- <item msgid="5450920562291300229">"ချိတ်ဆက်ထားသည်"</item>
- <item msgid="6332116533879646145">"ဆိုင်းငံ့ထားသည်"</item>
- <item msgid="294459081501073818">"ချိတ်ဆက်မှု ဖြတ်နေသည်…"</item>
- <item msgid="1577368920272598676">"ချိတ်ဆက်မထားပါ"</item>
- <item msgid="7655843177582495451">"မအောင်မြင်ပါ"</item>
- <item msgid="8953752690917593623">"ပိတ်ထားသည်"</item>
- <item msgid="4400457817750243671">"နှေးကွေးသောဆက်သွယ်မှုကို ယာယီရှောင်ထားသည်"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"စကင်ဖတ်နေသည်…"</item>
+ <item msgid="6222852518007967736">"ချိတ်ဆက်နေသည်…"</item>
+ <item msgid="1176401854208153464">"အထောက်အထားစိစစ်နေသည်…"</item>
+ <item msgid="1377026397901197257">"အိုင်ပီလိပ်စာ ရယူနေသည်…"</item>
+ <item msgid="7627139816052121509">"ချိတ်ဆက်ပြီးပြီ"</item>
+ <item msgid="1598801023719359130">"ဆိုင်းငံ့ထားသည်"</item>
+ <item msgid="9160765456671002324">"ချိတ်ဆက်မှု ဖြတ်နေသည်…"</item>
+ <item msgid="8013176736494493734">"ချိတ်ဆက်မထားပါ"</item>
+ <item msgid="4077393480368783785">"မအောင်မြင်ပါ"</item>
+ <item msgid="605372180740008604">"ပိတ်ထားသည်"</item>
+ <item msgid="5102306451432929048">"အားနည်းသည့် ချိတ်ဆက်မှုကို ယာယီရှောင်ရှားသည်"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-my/strings.xml b/libs/WifiTrackerLib/res/values-my/strings.xml
index 827147eff..41e352b4a 100644
--- a/libs/WifiTrackerLib/res/values-my/strings.xml
+++ b/libs/WifiTrackerLib/res/values-my/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"အော်တိုချိတ်ဆက်မှု ပိတ်ထားသည်"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> က သိမ်းထားသည်"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"အလိုအလျောက် ချိတ်ဆက်မည်မဟုတ်ပါ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"အင်တာနက် ချိတ်ဆက်မှု မရှိပါ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"အထောက်အထားစိစစ်မှု ပြဿနာ"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"စကားဝှက်ကို စစ်ဆေးပြီး ထပ်စမ်းကြည့်ပါ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP စီစဉ်သတ်မှတ်ခြင်း မအောင်မြင်ပါ"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ပိတ်ထားသည်"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ချိတ်ဆက်ရန်နေရာ ယာယီပြည့်နေသည်"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ကွန်ရက်အခြေအနေများ ယာယီအားနည်းနေသည်"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"အချက်ပြမှု အားနည်းသည်။ ရောက်တာအနီးသို့ ရွှေ့ကြည့်ပါ။"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ကွန်ရက်က လက်ခံနိုင်စွမ်းကို ကျော်လွန်နေသည်။ နောက်မှ ထပ်စမ်းကြည့်ပါ။"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"ချိတ်ဆက်၍ မရပါ။ နောက်မှ ထပ်စမ်းကြည့်ပါ။"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"ချိတ်ဆက်၍ မရပါ။ နောက်မှ ထပ်စမ်းကြည့်ပါ။"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ချိတ်ဆက်မထားပါ"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"သိမ်းပြီးပါပြီ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"အခမဲ့ မဟုတ်ပါ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"အခမဲ့"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> မှတစ်ဆင့် ချိတ်ဆက်ထားသည်"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g>မှတစ်ဆင့် ရနိုင်သည်"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> မှတစ်ဆင့် အလိုအလျောက် ချိတ်ဆက်ထားသည်"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ကွန်ရက်အဆင့်သတ်မှတ်ပေးသူ မှတစ်ဆင့် အလိုအလျောက် ချိတ်ဆက်ထားပါသည်"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ချိတ်ဆက်မှု ကန့်သတ်ထားသည်"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"သီးသန့် ဒီအန်အက်စ် (DNS) ဆာဗာကို သုံး၍မရပါ"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"စက်ပစ္စည်းသို့ ချိတ်ဆက်ထားသည်။ အင်တာနက်ကို မပေးနိုင်ပါ။"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"အရည်အသွေး နိမ့်သည်"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"မရှိ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"သက်တမ်းကုန်သွားပါပြီ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"အကောင့်ဖွင့်ရန် တို့ပါ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"စာရင်းသွင်းမှာယူမှုကို သက်တမ်းတိုးပြီး ချိတ်ဆက်ရန် တို့ပါ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ကို ဖွင့်နေသည်"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"ချိတ်ဆက်၍ မရပါ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"အကောင့်ဖွင့်ခြင်း အပြီးသတ်နေသည်…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"အကောင့်ဖွင့်ခြင်းကို အပြီးသတ်၍ မရပါ။ ထပ်စမ်းကြည့်ရန် တို့ပါ။"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"အကောင့်ဖွင့်ပြီးပါပြီ။ ချိတ်ဆက်နေသည်…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ဤကွန်ရက်က စက်တည်နေရာကို ခြေရာခံရန် အသုံးပြုနိုင်သည့် SIM ID တစ်ခုကို ရရှိပါသည်။ "<annotation id="url">"ပိုမိုလေ့လာရန်"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"အလွန်နှေး"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"အနှေး"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"အလယ်အလတ်"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"အမြန်"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"အလွန်မြန်"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi က ယခု အလိုအလျောက် ချိတ်ဆက်မည်မဟုတ်ပါ"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"အော်တိုချိတ်ဆက်မှု ပိတ်ထားသည်"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> က သိမ်းဆည်းခဲ့သည်"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"အလိုအလျောက် ချိတ်ဆက်မည်မဟုတ်ပါ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"အင်တာနက် ချိတ်ဆက်မှု မရှိပါ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"အထောက်အထားစိစစ်မှု ပြဿနာ"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"စကားဝှက်ကို စစ်ဆေးပြီး ထပ်လုပ်ကြည့်ပါ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP စီစဉ်သတ်မှတ်ခြင်း မအောင်မြင်ပါ"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ပိတ်ထားသည်"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ကွန်ရက်ချိတ်ဆက်မှု ယာယီပြည့်နေသည်"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ချိတ်ဆက်မထားပါ"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"သိမ်းဆည်းပြီး"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"အခမဲ့ မဟုတ်ပါ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"အခမဲ့"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> မှတစ်ဆင့် ချိတ်ဆက်ထားသည်"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g>မှတစ်ဆင့် ရနိုင်သည်"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> မှတစ်ဆင့် အလိုအလျောက် ချိတ်ဆက်ထားသည်"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ကွန်ရက်အဆင့်သတ်မှတ်ပေးသူ မှတစ်ဆင့် အလိုအလျောက် ချိတ်ဆက်ထားပါသည်"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ချိတ်ဆက်မှု ကန့်သတ်ထားသည်"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"သီးသန့် ဒီအန်အက်စ် (DNS) ဆာဗာကို သုံး၍မရပါ။"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"အင်တာနက် မရှိပါ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"မရှိ"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"သက်တမ်းကုန်သွားပါပြီ"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"အကောင့်ဖွင့်ရန် တို့ပါ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"စာရင်းသွင်းမှာယူမှုကို သက်တမ်းတိုးပြီး ချိတ်ဆက်ရန် တို့ပါ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ကို ဖွင့်နေသည်"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"ချိတ်ဆက်၍ မရပါ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"အကောင့်ဖွင့်ခြင်း အပြီးသတ်နေသည်…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"အကောင့်ဖွင့်ခြင်း အပြီးသတ်၍ မရပါ။ ထပ်စမ်းကြည့်ရန် တို့ပါ။"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"အကောင့်ဖွင့်ပြီးပါပြီ။ ချိတ်ဆက်နေသည်…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ဤကွန်ရက်က စက်တည်နေရာကို ခြေရာခံရန် အသုံးပြုနိုင်သည့် SIM ID တစ်ခုကို ရရှိပါသည်။ "<annotation id="url">"ပိုမိုလေ့လာရန်"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"အလွန်နှေး"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"နှေး"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"အတော်အသင့်"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"မြန်"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"အလွန်မြန်"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-nb/arrays.xml b/libs/WifiTrackerLib/res/values-nb/arrays.xml
index 108db4971..ce4845eda 100644
--- a/libs/WifiTrackerLib/res/values-nb/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-nb/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Skanner …"</item>
- <item msgid="9055468790485684083">"Kobler til …"</item>
- <item msgid="6099499723199990208">"Autentiserer …"</item>
- <item msgid="6794055951297347103">"Henter IP-adresse …"</item>
- <item msgid="5450920562291300229">"Tilkoblet"</item>
- <item msgid="6332116533879646145">"Sperret midlertidig"</item>
- <item msgid="294459081501073818">"Kobler fra …"</item>
- <item msgid="1577368920272598676">"Frakoblet"</item>
- <item msgid="7655843177582495451">"Mislykket"</item>
- <item msgid="8953752690917593623">"Blokkert"</item>
- <item msgid="4400457817750243671">"Unngår dårlig tilkobling midlertidig"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Skanner …"</item>
+ <item msgid="6222852518007967736">"Kobler til …"</item>
+ <item msgid="1176401854208153464">"Autentiserer …"</item>
+ <item msgid="1377026397901197257">"Henter IP-adresse …"</item>
+ <item msgid="7627139816052121509">"Tilkoblet"</item>
+ <item msgid="1598801023719359130">"Sperret midlertidig"</item>
+ <item msgid="9160765456671002324">"Kobler fra …"</item>
+ <item msgid="8013176736494493734">"Frakoblet"</item>
+ <item msgid="4077393480368783785">"Mislykket"</item>
+ <item msgid="605372180740008604">"Blokkert"</item>
+ <item msgid="5102306451432929048">"Unngår dårlig tilkobling midlertidig"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-nb/strings.xml b/libs/WifiTrackerLib/res/values-nb/strings.xml
index d7fd60f98..5943e8afc 100644
--- a/libs/WifiTrackerLib/res/values-nb/strings.xml
+++ b/libs/WifiTrackerLib/res/values-nb/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatisk tilkobling er av"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Lagret av <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Kobler ikke til automatisk"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ingen internettilgang"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentiseringsproblem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Sjekk passordet og prøv igjen"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-konfigurasjonsfeil"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Slått av"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Tilgangspunktet er midlertidig fullt"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Dårlige nettverksforhold midlertidig"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Svakt signal. Prøv å flytte deg nærmere ruteren."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Nettverket er over kapasitet. Prøv igjen senere."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Kan ikke koble til. Prøv igjen senere."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Kan ikke koble til. Prøv igjen senere."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Frakoblet"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Lagret"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Med datamåling"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Uten datamåling"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Tilkoblet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tilgjengelig via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatisk tilkoblet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatisk tilkoblet via leverandør av nettverksvurdering"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Begrenset tilkobling"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Den private DNS-tjeneren kan ikke nås"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Koblet til enheten. Kan ikke gi internettilgang."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Lav kvalitet"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ingen"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Utløpt"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Trykk for å registrere deg"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Trykk for å fornye abonnementet og koble til"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Åpner <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Kunne ikke koble til"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Fullfører registreringen …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Kunne ikke fullføre registreringen. Trykk for å prøve på nytt."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registreringen er fullført. Kobler til …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Dette nettverket mottar en SIM-ID som kan brukes til å spore enhetsposisjonen. "<annotation id="url">"Finn ut mer"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Veldig treg"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Treg"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medium"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rask"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Veldig rask"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi kobles ikke til automatisk inntil videre"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatisk tilkobling er av"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Lagret av <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Kobler ikke til automatisk"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ingen internettilgang"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentiseringsproblem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Sjekk passordet og prøv igjen"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-konfigurasjonsfeil"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Slått av"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Tilgangspunktet er midlertidig fullt"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Frakoblet"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Lagret"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Med datamåling"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Uten datamåling"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Tilkoblet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Tilgjengelig via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatisk tilkoblet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatisk tilkoblet via leverandør av nettverksvurdering"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Begrenset tilkobling"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Den private DNS-tjeneren kan ikke nås"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Ingen internettilkobling"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ingen"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Utløpt"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Trykk for å registrere deg"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Trykk for å fornye abonnementet og koble til"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Åpner <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Kunne ikke koble til"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Fullfører registreringen …"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Kunne ikke fullføre registreringen. Trykk for å prøve på nytt."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registreringen er fullført. Kobler til …"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Dette nettverket mottar en SIM-ID som kan brukes til å spore enhetsposisjonen. "<annotation id="url">"Finn ut mer"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Veldig treg"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Treg"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Ok"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Middels"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rask"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Veldig rask"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ne/arrays.xml b/libs/WifiTrackerLib/res/values-ne/arrays.xml
index 192875b18..804a6de32 100644
--- a/libs/WifiTrackerLib/res/values-ne/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ne/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"स्क्यान गर्दै…"</item>
- <item msgid="9055468790485684083">"कनेक्ट गर्दै…"</item>
- <item msgid="6099499723199990208">"प्रमाणीकरण गर्दै…"</item>
- <item msgid="6794055951297347103">"IP एड्रेस हासिल गर्दै…"</item>
- <item msgid="5450920562291300229">"कनेक्ट गरिएको छ"</item>
- <item msgid="6332116533879646145">"निलम्बन गरियो"</item>
- <item msgid="294459081501073818">"डिस्कनेक्ट गर्दै…"</item>
- <item msgid="1577368920272598676">"डिस्कनेक्ट गरिएको छ"</item>
- <item msgid="7655843177582495451">"Wi-Fi कनेक्ट गर्न सकिएन"</item>
- <item msgid="8953752690917593623">"रोक लगाइयो"</item>
- <item msgid="4400457817750243671">"केही समयका लागि कमजोर इन्टरनेटलाई बेवास्ता गर्दै"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"स्क्यान गर्दै…"</item>
+ <item msgid="6222852518007967736">"जोड्दै…"</item>
+ <item msgid="1176401854208153464">"प्रमाणीकरण गर्दै…"</item>
+ <item msgid="1377026397901197257">"IP एड्रेस हासिल गर्दै…"</item>
+ <item msgid="7627139816052121509">"कनेक्ट गरिएको छ"</item>
+ <item msgid="1598801023719359130">"निलम्बित"</item>
+ <item msgid="9160765456671002324">"विच्छेद गर्दै…"</item>
+ <item msgid="8013176736494493734">"विच्छेद गरियो"</item>
+ <item msgid="4077393480368783785">"असफल"</item>
+ <item msgid="605372180740008604">"रोकियो"</item>
+ <item msgid="5102306451432929048">"कमजोर जडानलाई अस्थायी रूपमा बेवास्ता गर्दै"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ne/strings.xml b/libs/WifiTrackerLib/res/values-ne/strings.xml
index a1546a21f..0c730c653 100644
--- a/libs/WifiTrackerLib/res/values-ne/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ne/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"स्वतः कनेक्ट गर्ने सुविधा अफ छ"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> ले सेभ गरेको"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"स्वतः कनेक्ट हुने छैन"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"इन्टरनेट छैन"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"प्रमाणीकरण हुन सकेन"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"पासवर्ड जाँच गरेर फेरि प्रयास गर्नुहोस्"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP कन्फिगर गर्न सकिएन"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"असक्षम पारिएको छ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"पहुँच बिन्दु केही समयका लागि भरिएको छ"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"अहिले इन्टरनेट राम्ररी चलिरहेको छैन"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"सिग्नल कमजोर छ। राउटरको नजिकै गई हेर्नुहोस्।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"नेटवर्कमा अत्यधिक लोड छ। पछि फेरि प्रयास गर्नुहोस्।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"कनेक्ट गर्न सकिएन। पछि फेरि प्रयास गर्नुहोस्।"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"कनेक्ट गर्न सकिएन। पछि फेरि प्रयास गर्नुहोस्।"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"डिस्कनेक्ट गरिएको छ"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"सेभ गरिएको छ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"सीमा तोकिएको इन्टरनेट"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"सीमा हटाइएको छ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत कनेक्ट गरियो"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत उपलब्ध छ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत स्वतः कनेक्ट भयो"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"नेटवर्कको मूल्याङ्कन गर्ने सेवा प्रदायकमार्फत स्वतः कनेक्ट भयो"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"सीमित कनेक्सन"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"निजी DNS सर्भरमाथि पहुँच राख्न सकिँदैन"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"डिभाइसमा कनेक्ट गरियो। इन्टरनेट उपलब्ध छैन।"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"न्यून गुणस्तर"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"कुनै पनि होइन"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"म्याद सकियो"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"साइन अप गर्न ट्याप गर्नुहोस्"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ट्याप गरेर सदस्यता नवीकरण गर्नुहोस् र इन्टरनेटमा कनेक्ट गर्नुहोस्"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> खोल्दै"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"कनेक्ट गर्न सकिएन"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"साइन अप गर्ने कार्य सम्पन्न गर्दै…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"साइन अप गर्ने कार्य सम्पन्न गर्न सकिएन। फेरि प्रयास गर्न ट्याप गर्नुहोस्।"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"साइन अप गर्ने कार्य सम्पन्न भयो। कनेक्ट गर्दै…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"यो नेटवर्कलाई डिभाइसको स्थान पहिल्याउन प्रयोग गर्न मिल्ने एउटा अद्वितीय SIM कार्ड ID उपलब्ध गराइन्छ। "<annotation id="url">"थप जान्नुहोस्"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"धेरै सुस्त"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"सुस्त"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ठिकै"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"मध्यम"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"छिटो"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"धेरै छिटो"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"केही समयका लागि Wi-Fi स्वतः कनेक्ट हुँदैन"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"स्वतः कनेक्ट गर्ने सुविधा अफ छ"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> द्वारा सेभ गरियो"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"स्वतः जोडिने छैन"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"इन्टरनेटमाथिको पहुँच छैन"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"प्रमाणीकरणसम्बन्धी समस्या"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"पासवर्ड जाँच गरेर फेरि प्रयास गर्नुहोस्"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP कन्फिगरेसन असफल"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"असक्षम पारियो"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"पहुँचसम्बन्धी स्थान अस्थायी रूपमा भरिएको छ"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"विच्छेद गरियो"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"सेभ गरियो"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"सशुल्क वाइफाइ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"मिटर नगरिएको"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत जडान गरिएको"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत उपलब्ध"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> मार्फत स्वतः जोडियो"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"नेटवर्क मूल्याङ्कनकर्ता मार्फत स्वत: जडान गरिएको"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"सीमित जडान"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"निजी DNS सर्भरमाथि पहुँच प्राप्त गर्न सकिँदैन"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"इन्टरनेट छैन"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"कुनै पनि होइन"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"म्याद सकियो"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"साइन अप गर्न ट्याप गर्नुहोस्"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ट्याप गरेर सदस्यता नवीकरण गर्नुहोस् र इन्टरनेटमा कनेक्ट गर्नुहोस्"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> खोल्दै"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"जोडिन सकिएन"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"साइन अप गर्ने कार्य सम्पन्न गर्दै…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"साइन अप गर्ने कार्य सम्पन्न गर्न सकिएन। फेरि प्रयास गर्न ट्याप गर्नुहोस्।"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"साइन अप गर्ने कार्य सम्पन्न भयो। जोड्दै…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"यो नेटवर्कलाई डिभाइसको स्थान पहिल्याउन प्रयोग गर्न मिल्ने एउटा अद्वितीय SIM कार्ड ID उपलब्ध गराइन्छ। "<annotation id="url">"थप जान्नुहोस्"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"धेरै ढिलो"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"बिस्तारै"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ठिक छ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"मध्यम"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"छिटो"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"धेरै छिटो"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-nl/arrays.xml b/libs/WifiTrackerLib/res/values-nl/arrays.xml
index ce64c221f..ec2f523ea 100644
--- a/libs/WifiTrackerLib/res/values-nl/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-nl/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Scannen…"</item>
- <item msgid="9055468790485684083">"Verbinden…"</item>
- <item msgid="6099499723199990208">"Verifiëren…"</item>
- <item msgid="6794055951297347103">"IP-adres ophalen…"</item>
- <item msgid="5450920562291300229">"Verbonden"</item>
- <item msgid="6332116533879646145">"Opgeschort"</item>
- <item msgid="294459081501073818">"Verbinding verbreken…"</item>
- <item msgid="1577368920272598676">"Verbinding verbroken"</item>
- <item msgid="7655843177582495451">"Mislukt"</item>
- <item msgid="8953752690917593623">"Geblokkeerd"</item>
- <item msgid="4400457817750243671">"Slechte verbinding tijdelijk vermijden"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Scannen…"</item>
+ <item msgid="6222852518007967736">"Verbinden…"</item>
+ <item msgid="1176401854208153464">"Verifiëren…"</item>
+ <item msgid="1377026397901197257">"IP-adres ophalen…"</item>
+ <item msgid="7627139816052121509">"Verbonden"</item>
+ <item msgid="1598801023719359130">"Opgeschort"</item>
+ <item msgid="9160765456671002324">"Verbinding verbreken…"</item>
+ <item msgid="8013176736494493734">"Verbinding verbroken"</item>
+ <item msgid="4077393480368783785">"Mislukt"</item>
+ <item msgid="605372180740008604">"Geblokkeerd"</item>
+ <item msgid="5102306451432929048">"Slechte verbinding tijdelijk vermijden"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-nl/strings.xml b/libs/WifiTrackerLib/res/values-nl/strings.xml
index c4d4cbd45..005060f9a 100644
--- a/libs/WifiTrackerLib/res/values-nl/strings.xml
+++ b/libs/WifiTrackerLib/res/values-nl/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatisch verbinding maken staat uit"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Opgeslagen door <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Er wordt niet automatisch verbinding gemaakt"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Geen internettoegang"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Verificatieprobleem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Check het wachtwoord en probeer het opnieuw"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-configuratie mislukt"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Uitgezet"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Toegangspunt tijdelijk vol"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tijdelijk slechte netwerkomstandigheden"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Zwak signaal. Ga dichter naar de router toe."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Netwerk is overbelast. Probeer het later opnieuw."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Kan geen verbinding maken. Probeer het later opnieuw."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Kan geen verbinding maken. Probeer het later opnieuw."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Verbinding verbroken"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Opgeslagen"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Met datalimiet"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Gratis"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Verbonden via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Beschikbaar via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatisch verbonden via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatisch verbonden via provider van netwerkbeoordelingen"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Beperkte verbinding"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Geen toegang tot privé-DNS-server"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Verbonden met apparaat. Kan geen internet bieden."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Lage kwaliteit"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Geen"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Verlopen"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tik om aan te melden"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tik om het abonnement te verlengen en verbinding te maken"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> openen"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Kan geen verbinding maken"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Aanmelding voltooien…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Kan aanmelding niet voltooien. Tik om het opnieuw te proberen."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Aanmelding voltooid. Verbinden…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Dit netwerk ontvangt een simkaart-ID die kan worden gebruikt om de apparaatlocatie bij te houden. "<annotation id="url">"Meer informatie"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Zeer langzaam"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Langzaam"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Normaal"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Snel"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Zeer snel"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wifi maakt momenteel niet automatisch verbinding"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"\'Automatisch verbinding maken\' staat uit"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Opgeslagen door \'<xliff:g id="NAME">%1$s</xliff:g>\'"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Er wordt niet automatisch verbinding gemaakt"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Geen internettoegang"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Verificatieprobleem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Controleer het wachtwoord en probeer het opnieuw"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-configuratie mislukt"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Uitgezet"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Toegangspunt tijdelijk vol"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Verbinding verbroken"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Opgeslagen"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Met datalimiet"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Gratis"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Verbonden via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Beschikbaar via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatisch verbonden via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatisch verbonden via provider van netwerkbeoordelingen"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Beperkte verbinding"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Geen toegang tot privé-DNS-server"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Geen internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Geen"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Verlopen"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tik om aan te melden"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tik om het abonnement te verlengen en verbinding te maken"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> openen"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Kan geen verbinding maken"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Aanmelding voltooien…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Kan aanmelding niet voltooien. Tik om het opnieuw te proberen."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Aanmelding voltooid. Verbinden…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Dit netwerk ontvangt een simkaart-ID die kan worden gebruikt om de apparaatlocatie bij te houden. "<annotation id="url">"Meer informatie"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Zeer langzaam"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Langzaam"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Redelijk"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Gemiddeld"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Snel"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Zeer snel"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-or/arrays.xml b/libs/WifiTrackerLib/res/values-or/arrays.xml
index 607552e7b..7aecb3f19 100644
--- a/libs/WifiTrackerLib/res/values-or/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-or/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ସ୍କାନ୍ କରାଯାଉଛି…"</item>
- <item msgid="9055468790485684083">"ସଂଯୋଗ ହେଉଛି…"</item>
- <item msgid="6099499723199990208">"ପ୍ରାମାଣିକରଣ କରାଯାଉଛି…"</item>
- <item msgid="6794055951297347103">"IP ଠିକଣା ପ୍ରାପ୍ତ କରୁଛି…"</item>
- <item msgid="5450920562291300229">"ସଂଯୋଗ ହୋଇଛି"</item>
- <item msgid="6332116533879646145">"ସାମୟିକ ଭାବରେ ବନ୍ଦ କରାଯାଇଛି"</item>
- <item msgid="294459081501073818">"ବିଚ୍ଛିନ୍ନ କରାଯାଉଛି…"</item>
- <item msgid="1577368920272598676">"ବିଚ୍ଛିନ୍ନ କରାଯାଇଛି"</item>
- <item msgid="7655843177582495451">"ଅସଫଳ"</item>
- <item msgid="8953752690917593623">"ବ୍ଲକ୍ କରାଯାଇଛି"</item>
- <item msgid="4400457817750243671">"ଦୁର୍ବଳ ସଂଯୋଗକୁ ସାମୟିକ ଭାବେ ଏଡ଼ାଉଛି"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ସ୍କାନ୍ ହେଉଛି…"</item>
+ <item msgid="6222852518007967736">"ସଂଯୋଗ ହେଉଛି…"</item>
+ <item msgid="1176401854208153464">"ପ୍ରାମାଣିକରଣ କରାଯାଉଛି…"</item>
+ <item msgid="1377026397901197257">"IP ଠିକଣା ହାସଲ କରୁଛି…"</item>
+ <item msgid="7627139816052121509">"ସଂଯୋଗ ହୋଇଛି"</item>
+ <item msgid="1598801023719359130">"ସାମୟିକ ଭାବରେ ବନ୍ଦ କରାଯାଇଛି"</item>
+ <item msgid="9160765456671002324">"ବିଚ୍ଛିନ୍ନ କରାଯାଉଛି…"</item>
+ <item msgid="8013176736494493734">"ବିଚ୍ଛିନ୍ନ କରାଯାଇଛି"</item>
+ <item msgid="4077393480368783785">"ଅସଫଳ"</item>
+ <item msgid="605372180740008604">"ବ୍ଲକ୍ କରାଯାଇଛି"</item>
+ <item msgid="5102306451432929048">"ଦୁର୍ବଳ ସଂଯୋଗକୂ ସାମୟିକ ଭାବେ ଏଡ଼ାଉଛି"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-or/strings.xml b/libs/WifiTrackerLib/res/values-or/strings.xml
index 2f7a6299e..1bd0601b3 100644
--- a/libs/WifiTrackerLib/res/values-or/strings.xml
+++ b/libs/WifiTrackerLib/res/values-or/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ସ୍ୱତଃ-ସଂଯୋଗ ବନ୍ଦ ଅଛି"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> ଦ୍ୱାରା ସେଭ୍ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ସ୍ୱଚାଳିତ ଭାବେ ସଂଯୋଗ ହେବ ନାହିଁ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"କୌଣସି ଇଣ୍ଟର୍ନେଟ୍ ଆକ୍ସେସ୍ ନାହିଁ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ପ୍ରାମାଣିକତା ସମସ୍ୟା"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"ପାସୱାର୍ଡ ଯାଞ୍ଚ କରି ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP କନଫିଗରେସନ୍ ବିଫଳ ହୋଇଛି"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ଅକ୍ଷମ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ଆକ୍ସେସ୍ ପଏଣ୍ଟ ସାମୟିକ ଭାବେ ପୂର୍ଣ୍ଣ ହୋଇଛି"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ଅସ୍ଥାୟୀ ଭାବରେ ଖରାପ ନେଟୱାର୍କ ସ୍ଥିତି"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"ସିଗନାଲ୍ ଦୁର୍ବଳ ଅଟେ। ରାଉଟର୍ ପାଖକୁ ଯାଇ ଦେଖନ୍ତୁ।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ନେଟୱାର୍କ କ୍ଷମତାର ସର୍ବାଧିକ ସୀମାରେ ପହଞ୍ଚିଯାଇଛି। ପରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"ସଂଯୋଗ କରାଯାଇପାରିବ ନାହିଁ। ପରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"ସଂଯୋଗ କରାଯାଇପାରିବ ନାହିଁ। ପରେ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ।"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ବିଚ୍ଛିନ୍ନ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ସେଭ୍ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ମିଟର ହୋଇଥିବା"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ମିଟର ହୋଇନଥିବା"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> ମାଧ୍ୟମରେ ସଂଯୋଗ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ମାଧ୍ୟମରେ ଉପଲବ୍ଧ ଅଛି"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> ମାଧ୍ୟମରେ ସ୍ୱଚାଳିତ ଭାବେ ସଂଯୋଗ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ନେଟୱାର୍କ ମୂଲ୍ୟାଙ୍କନ ପ୍ରଦାନକାରୀଙ୍କ ମାଧ୍ୟମରେ ସ୍ୱଚାଳିତ ଭାବେ ସଂଯୋଗ କରାଯାଇଛି"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ସୀମିତ ସଂଯୋଗ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ବ୍ୟକ୍ତିଗତ DNS ସର୍ଭରକୁ ଆକ୍ସେସ୍ କରାଯାଇପାରିବ ନାହିଁ"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ଡିଭାଇସ୍ ସହ ସଂଯୋଗ କରାଯାଇଛି। ଇଣ୍ଟରନେଟ୍ ପ୍ରଦାନ କରାଯାଇପାରିବ ନାହିଁ।"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ନିମ୍ନ ଗୁଣବତ୍ତା"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"କିଛି ନାହିଁ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ମିଆଦ ଶେଷ ହୋଇଯାଇଛି"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ସାଇନ୍ ଅପ୍ କରିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ସଦସ୍ୟତାକୁ ନବୀକରଣ କରି ସଂଯୋଗ କରିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ଖୋଲୁଛି"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"ସଂଯୋଗ କରାଯାଇପାରିଲା ନାହିଁ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ସାଇନ୍-ଅପ୍ ସମ୍ପୂର୍ଣ୍ଣ କରାଯାଉଛି…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ସାଇନ୍ ଅପ୍ ସମ୍ପୂର୍ଣ୍ଣ ହୋଇପାରିଲା ନାହିଁ। ପୁଣି ଚେଷ୍ଟା କରିବାକୁ ଟାପ୍ କରନ୍ତୁ।"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ସାଇନ୍ ଅପ୍ ସମ୍ପୂର୍ଣ୍ଣ ହୋଇଛି। ସଂଯୋଗ କରୁଛି…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ଏହି ନେଟୱାର୍କ ଏକ SIM ID ପ୍ରାପ୍ତ କରେ ଯାହା ଡିଭାଇସର ଲୋକେସନ୍ ଟ୍ରାକ୍ କରିବାରେ ବ୍ୟବହାର କରାଯାଇପାରିବ। "<annotation id="url">"ଅଧିକ ଜାଣନ୍ତୁ"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ଅତି ଧୀର"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ଧୀର"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ଠିକ୍ ଅଛି"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"ମଧ୍ୟମ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ଦ୍ରୁତ"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ଅତି ଦ୍ରୁତ"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"ବର୍ତ୍ତମାନ ପାଇଁ ୱାଇ-ଫାଇ ସ୍ୱତଃ-ସଂଯୋଗ ହେବ ନାହିଁ"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ସ୍ୱତଃ-ସଂଯୋଗ ବନ୍ଦ ଅଛି"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> ଦ୍ୱାରା ସେଭ କରାଯାଇଛି"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ସ୍ୱଚାଳିତ ଭାବେ ସଂଯୋଗ ହେବ ନାହିଁ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"କୌଣସି ଇଣ୍ଟର୍ନେଟ୍ ଆକ୍ସେସ୍ ନାହିଁ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ପ୍ରମାଣିକତା ସମସ୍ୟା"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"ପାସ୍‌ୱର୍ଡ ଯାଞ୍ଚ କରନ୍ତୁ ଏବଂ ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP କନଫିଗରେସନ ବିଫଳ ହୋଇଛି"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ଅକ୍ଷମ ହୋଇଛି"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ଆକ୍ସେସ୍ ପଏଣ୍ଟ ସାମୟିକ ଭାବେ ପୂର୍ଣ୍ଣ"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ବିଛିନ୍ନ କରାଯାଇଛି"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ସେଭ୍‌ ହୋଇଗଲା"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"ମପାଯାଉଥିବା"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ମପାଯାଉନଥିବା"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ଦ୍ବାରା ସଂଯୋଗ କରାଯାଇଛି"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ମାଧ୍ୟମରେ ଉପଲବ୍ଧ ଅଛି"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> ମାଧ୍ୟମରେ ସ୍ୱଚାଳିତ ଭାବେ ସଂଯୋଗ କରାଯାଇଛି"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ନେଟୱର୍କ ମୂଲ୍ୟାୟନ ପ୍ରଦାତାଙ୍କ ମାଧ୍ୟମରେ ଅଟୋମେଟିକାଲ୍ୟ ସଂଯୁକ୍ତ"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ସୀମିତ ସଂଯୋଗ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ବ୍ୟକ୍ତିଗତ DNS ସର୍ଭର୍ ଆକ୍ସେସ୍ କରିହେବ ନାହିଁ"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ଇଣ୍ଟର୍ନେଟ୍ ସଂଯୋଗ ନାହିଁ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"କିଛି ନାହିଁ"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ମିଆଦ ଶେଷ ହୋଇଯାଇଛି"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ସାଇନ୍ ଅପ୍ କରିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ସଦସ୍ୟତାକୁ ନବୀକରଣ କରି ସଂଯୋଗ କରିବାକୁ ଟାପ୍ କରନ୍ତୁ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ଖୋଲୁଛି"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"ସଂଯୋଗ କରିହେଲା ନାହିଁ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ସାଇନ୍ ଅପ୍ ଶେଷ ହେଉଛି…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ସାଇନ୍ ଅପ୍ ଶେଷ ହୋଇପାରିଲା ନାହିଁ। ପୁଣି ଚେଷ୍ଟା କରିବାକୁ ଟାପ୍ କରନ୍ତୁ।"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ସାଇନ୍ ଅପ୍ ଶେଷ ହୋଇଛି। ସଂଯୋଗ କରୁଛି…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ଏହି ନେଟୱାର୍କ ଏକ SIM ID ପ୍ରାପ୍ତ କରେ ଯାହା ଡିଭାଇସ୍ ଲୋକେସନ୍ ଟ୍ରାକ୍ କରିବାକୁ ବ୍ୟବହାର କରାଯାଇପାରିବ। "<annotation id="url">"ଅଧିକ ଜାଣନ୍ତୁ"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ବହୁତ ମନ୍ଥର"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"କମ୍‌ ବେଗ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ଠିକ୍‌ ଅଛି"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ମଧ୍ୟମ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ଦ୍ରୁତ"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ଅତି ଦ୍ରୁତ"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pa/arrays.xml b/libs/WifiTrackerLib/res/values-pa/arrays.xml
index 3f469e5a8..71be4c240 100644
--- a/libs/WifiTrackerLib/res/values-pa/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-pa/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ਸਕੈਨ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</item>
- <item msgid="9055468790485684083">"ਕਨੈਕਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</item>
- <item msgid="6099499723199990208">"ਪ੍ਰਮਾਣਿਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</item>
- <item msgid="6794055951297347103">"IP ਪਤਾ ਪ੍ਰਾਪਤ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</item>
- <item msgid="5450920562291300229">"ਕਨੈਕਟ ਹੈ"</item>
- <item msgid="6332116533879646145">"ਮੁਅੱਤਲ ਕੀਤਾ"</item>
- <item msgid="294459081501073818">"ਡਿਸਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ…"</item>
- <item msgid="1577368920272598676">"ਡਿਸਕਨੈਕਟ ਕੀਤਾ"</item>
- <item msgid="7655843177582495451">"ਅਸਫਲ"</item>
- <item msgid="8953752690917593623">"ਬਲਾਕ ਕੀਤਾ ਗਿਆ"</item>
- <item msgid="4400457817750243671">"ਅਸਥਾਈ ਤੌਰ \'ਤੇ ਖਰਾਬ ਕਨੈਕਸ਼ਨ ਤੋਂ ਬਚਣ ਲਈ"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ਸਕੈਨ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</item>
+ <item msgid="6222852518007967736">"ਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ…"</item>
+ <item msgid="1176401854208153464">"ਪ੍ਰਮਾਣਿਤ ਕਰ ਰਿਹਾ ਹੈ…"</item>
+ <item msgid="1377026397901197257">"IP ਪਤਾ ਪ੍ਰਾਪਤ ਕਰ ਰਿਹਾ ਹੈ…"</item>
+ <item msgid="7627139816052121509">"ਕਨੈਕਟ ਹੈ"</item>
+ <item msgid="1598801023719359130">"ਮੁਅੱਤਲ ਕੀਤਾ"</item>
+ <item msgid="9160765456671002324">"ਡਿਸਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ…"</item>
+ <item msgid="8013176736494493734">"ਡਿਸਕਨੈਕਟ ਕੀਤਾ"</item>
+ <item msgid="4077393480368783785">"ਅਸਫਲ"</item>
+ <item msgid="605372180740008604">"ਬਲਾਕ ਕੀਤਾ ਗਿਆ"</item>
+ <item msgid="5102306451432929048">"ਅਸਥਾਈ ਤੌਰ \'ਤੇ ਕਮਜ਼ੋਰ ਕਨੈਕਸ਼ਨ ਤੋਂ ਬਚਣ ਲਈ"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pa/strings.xml b/libs/WifiTrackerLib/res/values-pa/strings.xml
index 4d5efb0ad..8a2e4817e 100644
--- a/libs/WifiTrackerLib/res/values-pa/strings.xml
+++ b/libs/WifiTrackerLib/res/values-pa/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ਸਵੈ-ਕਨੈਕਟ ਬੰਦ ਹੈ"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> ਵੱਲੋਂ ਰੱਖਿਅਤ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ਕੋਈ ਇੰਟਰਨੈੱਟ ਪਹੁੰਚ ਨਹੀਂ"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ਪ੍ਰਮਾਣੀਕਰਨ ਸਮੱਸਿਆ"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"ਪਾਸਵਰਡ ਦੀ ਜਾਂਚ ਕਰਕੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP ਸੰਰੂਪਣ ਅਸਫਲਤਾ"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ਬੰਦ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ਪਹੁੰਚ ਬਿੰਦੂ ਅਸਥਾਈ ਤੌਰ \'ਤੇ ਸੰਪੂਰਨ ਰੁਝੇਂਵੇਂ ਵਿੱਚ ਹੈ"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"ਅਸਥਾਈ ਖਰਾਬ ਨੈੱਟਵਰਕ ਸਥਿਤੀ"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"ਕਮਜ਼ੋਰ ਸਿਗਨਲ। ਰਾਊਟਰ ਦੇ ਨਜ਼ਦੀਕ ਜਾ ਕੇ ਦੇਖੋ।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ਨੈੱਟਵਰਕ ਦੀ ਸਮਰੱਥਾ ਪੂਰੀ ਹੋ ਗਈ ਹੈ। ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ। ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"ਡਿਸਕਨੈਕਟ ਕੀਤਾ"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"ਰੱਖਿਅਤ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"ਮੀਟਰਬੱਧ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ਗੈਰ-ਮੀਟਰਬੱਧ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਉਪਲਬਧ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ਨੈੱਟਵਰਕ ਰੇਟਿੰਗ ਪ੍ਰਦਾਨਕ ਰਾਹੀਂ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਹੋਇਆ"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"ਸੀਮਤ ਕਨੈਕਸ਼ਨ"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ਨਿੱਜੀ DNS ਸਰਵਰ \'ਤੇ ਪਹੁੰਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"ਡੀਵਾਈਸ ਨਾਲ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ। ਇੰਟਰਨੈੱਟ ਮੁਹੱਈਆ ਨਹੀਂ ਹੋ ਸਕਦਾ।"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ਠੀਕ-ਠਾਕ ਕਨੈਕਸ਼ਨ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ਕੋਈ ਨਹੀਂ"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"ਮਿਆਦ ਮੁੱਕ ਗਈ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ਸਾਈਨ-ਅੱਪ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"ਗਾਹਕੀ ਦੇ ਨਵੀਨੀਕਰਨ ਅਤੇ ਕਨੈਕਟ ਹੋਣ ਲਈ ਟੈਪ ਕਰੋ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ਖੋਲ੍ਹਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਹੋਇਆ। ਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"ਇਹ ਨੈੱਟਵਰਕ ਇੱਕ ਸਿਮ ਆਈਡੀ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਡੀਵਾਈਸ ਦੇ ਟਿਕਾਣੇ ਨੂੰ ਟਰੈਕ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। "<annotation id="url">"ਹੋਰ ਜਾਣੋ"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ਬਹੁਤ ਹੌਲੀ"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ਹੌਲੀ"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ਠੀਕ ਹੈ"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"ਮੱਧਮ"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"ਤੇਜ਼"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ਬਹੁਤ ਤੇਜ਼"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"ਫ਼ਿਲਹਾਲ ਵਾਈ-ਫਾਈ ਸਵੈ-ਕਨੈਕਟ ਨਹੀਂ ਹੋਵੇਗਾ"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ਸਵੈ-ਕਨੈਕਟ ਬੰਦ ਹੈ"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> ਵੱਲੋਂ ਰੱਖਿਅਤ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ਕੋਈ ਇੰਟਰਨੈੱਟ ਪਹੁੰਚ ਨਹੀਂ"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ਪ੍ਰਮਾਣੀਕਰਨ ਸਮੱਸਿਆ"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"ਪਾਸਵਰਡ ਦੀ ਜਾਂਚ ਕਰੋ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP ਸੰਰੂਪਣ ਅਸਫਲਤਾ"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ਅਯੋਗ ਬਣਾਇਆ"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ਐਕਸੈੱਸ ਪੁਆਇੰਟ ਅਸਥਾਈ ਤੌਰ \'ਤੇ ਸੰਪੂਰਨ ਰੁਝੇਂਵੇਂ ਵਿੱਚ ਹੈ"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ਡਿਸਕਨੈਕਟ ਕੀਤਾ"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"ਰੱਖਿਅਤ ਕੀਤਾ"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"ਮੀਟਰਬੱਧ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ਗੈਰ-ਮੀਟਰਬੱਧ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਉਪਲਬਧ"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> ਰਾਹੀਂ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ਨੈੱਟਵਰਕ ਰੇਟਿੰਗ ਪ੍ਰਦਾਨਕ ਰਾਹੀਂ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਕਨੈਕਟ ਹੋਇਆ"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"ਸੀਮਤ ਕਨੈਕਸ਼ਨ"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ਨਿੱਜੀ ਡੋਮੇਨ ਨਾਮ ਪ੍ਰਣਾਲੀ (DNS) ਸਰਵਰ \'ਤੇ ਪਹੁੰਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ਇੰਟਰਨੈੱਟ ਨਹੀਂ"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ਕੋਈ ਨਹੀਂ"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"ਮਿਆਦ ਮੁੱਕ ਗਈ"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ਸਾਈਨ-ਅੱਪ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"ਗਾਹਕੀ ਦੇ ਨਵੀਨੀਕਰਨ ਲਈ ਅਤੇ ਕਨੈਕਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ਨੂੰ ਖੋਲ੍ਹਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"ਕਨੈਕਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ। ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ।"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ਸਾਈਨ-ਅੱਪ ਮੁਕੰਮਲ ਹੋਇਆ। ਕਨੈਕਟ ਹੋ ਰਿਹਾ ਹੈ…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"ਇਹ ਨੈੱਟਵਰਕ ਇੱਕ ਸਿਮ ਆਈਡੀ ਪ੍ਰਾਪਤ ਕਰਦਾ ਹੈ ਜਿਸਨੂੰ ਡੀਵਾਈਸ ਦੇ ਟਿਕਾਣੇ ਨੂੰ ਟਰੈਕ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ। "<annotation id="url">"ਹੋਰ ਜਾਣੋ"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ਬਹੁਤ ਹੌਲੀ"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ਹੌਲੀ"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ਠੀਕ ਹੈ"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ਔਸਤ"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"ਤੇਜ਼"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ਬਹੁਤ ਤੇਜ਼"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pl/arrays.xml b/libs/WifiTrackerLib/res/values-pl/arrays.xml
index bdb1b51ed..74edefed9 100644
--- a/libs/WifiTrackerLib/res/values-pl/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-pl/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Skanuję…"</item>
- <item msgid="9055468790485684083">"Łączę…"</item>
- <item msgid="6099499723199990208">"Uwierzytelniam…"</item>
- <item msgid="6794055951297347103">"Uzyskuję adres IP…"</item>
- <item msgid="5450920562291300229">"Połączono"</item>
- <item msgid="6332116533879646145">"Zawieszono"</item>
- <item msgid="294459081501073818">"Rozłączam…"</item>
- <item msgid="1577368920272598676">"Odłączono"</item>
- <item msgid="7655843177582495451">"Niepowodzenie"</item>
- <item msgid="8953752690917593623">"Zablokowano"</item>
- <item msgid="4400457817750243671">"Tymczasowe unikanie połączenia o niskiej jakości"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Skanuję…"</item>
+ <item msgid="6222852518007967736">"Łączę…"</item>
+ <item msgid="1176401854208153464">"Uwierzytelniam…"</item>
+ <item msgid="1377026397901197257">"Uzyskuję adres IP…"</item>
+ <item msgid="7627139816052121509">"Połączono"</item>
+ <item msgid="1598801023719359130">"Zawieszono"</item>
+ <item msgid="9160765456671002324">"Rozłączam…"</item>
+ <item msgid="8013176736494493734">"Odłączono"</item>
+ <item msgid="4077393480368783785">"Niepowodzenie"</item>
+ <item msgid="605372180740008604">"Zablokowano"</item>
+ <item msgid="5102306451432929048">"Tymczasowo, by uniknąć połączenia o niskiej jakości"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pl/strings.xml b/libs/WifiTrackerLib/res/values-pl/strings.xml
index 3d56bc7e5..cc78c1874 100644
--- a/libs/WifiTrackerLib/res/values-pl/strings.xml
+++ b/libs/WifiTrackerLib/res/values-pl/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Łączenie automatyczne wyłączone"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Zapisane przez aplikację <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nie można połączyć automatycznie"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Brak dostępu do internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem z uwierzytelnianiem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Sprawdź hasło i spróbuj ponownie"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Błąd konfiguracji IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Wyłączono"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Punkt dostępu jest tymczasowo zajęty"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tymczasowo niska jakość połączenia sieciowego"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Słaby sygnał. Przysuń się do routera."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Sieć jest przeciążona. Spróbuj ponownie później."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nie udało się połączyć. Spróbuj ponownie później."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nie udało się połączyć. Spróbuj ponownie później."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Odłączono"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Zapisano"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Użycie danych jest mierzone"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Bez pomiaru"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Połączenie przez aplikację <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Dostęp przez aplikację <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatyczne połączenie przez aplikację <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatyczne połączenie przez aplikację dostawcy ocen jakości sieci"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ograniczone połączenie"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Brak dostępu do prywatnego serwera DNS"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Podłączono do urządzenia. Nie można zapewnić dostępu do internetu."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Niska jakość"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Brak"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Ważność wygasła"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Kliknij, by się zarejestrować"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Kliknij, by odnowić subskrypcję i nawiązać połączenie"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Otwieram: <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nie udało się połączyć"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Kończę rejestrować…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Nie udało się dokończyć rejestracji. Kliknij, by spróbować ponownie."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Rejestracja zakończona. Łączę…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ta sieć otrzymuje identyfikator SIM, który można wykorzystać do śledzenia lokalizacji urządzenia. "<annotation id="url">"Więcej informacji"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Bardzo wolna"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Wolna"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Średnia"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Szybka"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Bardzo szybka"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi nie będzie na razie włączać się automatycznie"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Łączenie automatyczne wyłączone"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Zapisane przez: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nie można połączyć automatycznie"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Brak dostępu do internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem z uwierzytelnianiem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Sprawdź hasło i spróbuj ponownie"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Błąd konfiguracji IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Wyłączona"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Punkt dostępu jest tymczasowo zajęty"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Rozłączono"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Zapisana"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Użycie danych jest mierzone"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Użycie danych nie jest mierzone"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Połączenie przez: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Dostęp przez aplikację <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatyczne połączenie przez <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatycznie połączono przez dostawcę ocen jakości sieci"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ograniczone połączenie"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Brak dostępu do prywatnego serwera DNS"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Brak internetu"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Brak"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Ważność wygasła"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Kliknij, by się zarejestrować"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Kliknij, by odnowić subskrypcję i nawiązać połączenie"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Otwieram: <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nie udało się połączyć"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Kończę rejestrować…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Nie udało się dokończyć rejestracji. Kliknij, by spróbować ponownie."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Rejestracja zakończona. Łączę…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ta sieć otrzymuje unikalny identyfikator karty SIM, który można wykorzystać do śledzenia lokalizacji urządzenia. "<annotation id="url">"Więcej informacji"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Bardzo wolna"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Wolna"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Średnia"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Szybka"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Bardzo szybka"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt-rBR/arrays.xml b/libs/WifiTrackerLib/res/values-pt-rBR/arrays.xml
index e55c77a1d..5330614d1 100644
--- a/libs/WifiTrackerLib/res/values-pt-rBR/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-pt-rBR/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Buscando…"</item>
- <item msgid="9055468790485684083">"Conectando…"</item>
- <item msgid="6099499723199990208">"Autenticando…"</item>
- <item msgid="6794055951297347103">"Recebendo endereço IP…"</item>
- <item msgid="5450920562291300229">"Conectada"</item>
- <item msgid="6332116533879646145">"Suspenso"</item>
- <item msgid="294459081501073818">"Desconectando…"</item>
- <item msgid="1577368920272598676">"Desconectado"</item>
- <item msgid="7655843177582495451">"Falha"</item>
- <item msgid="8953752690917593623">"Bloqueado"</item>
- <item msgid="4400457817750243671">"Evitando temporariamente uma conexão ruim"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Buscando…"</item>
+ <item msgid="6222852518007967736">"Conectando…"</item>
+ <item msgid="1176401854208153464">"Autenticando…"</item>
+ <item msgid="1377026397901197257">"Recebendo endereço IP…"</item>
+ <item msgid="7627139816052121509">"Conectada"</item>
+ <item msgid="1598801023719359130">"Suspensa"</item>
+ <item msgid="9160765456671002324">"Desconectando…"</item>
+ <item msgid="8013176736494493734">"Desconectada"</item>
+ <item msgid="4077393480368783785">"Falha"</item>
+ <item msgid="605372180740008604">"Bloqueada"</item>
+ <item msgid="5102306451432929048">"Evitando temporariamente uma conexão ruim"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt-rBR/strings.xml b/libs/WifiTrackerLib/res/values-pt-rBR/strings.xml
index 19357b51c..818bc64ea 100644
--- a/libs/WifiTrackerLib/res/values-pt-rBR/strings.xml
+++ b/libs/WifiTrackerLib/res/values-pt-rBR/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"A conexão automática está desativada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Salva por <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Não se conectará automaticamente"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sem acesso à Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticação"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Verifique a senha e tente novamente"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Falha na configuração de IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desativada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Ponto de acesso temporariamente cheio"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Conexão de rede temporariamente fraca"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"O sinal está fraco. Tente se aproximar do roteador."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"A rede está sobrecarregada. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Não foi possível conectar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Não foi possível conectar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconectada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Salva"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Limitada"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Ilimitada"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conectado via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponível via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Conectado automaticamente via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Conectado automaticamente via provedor de avaliação de rede"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Conexão limitada"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Não é possível acessar o servidor DNS particular"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Conectada ao dispositivo. Sem acesso à Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Conexão lenta"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nenhuma"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expirado"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toque para se inscrever"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toque para renovar a assinatura e se conectar"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Não foi possível conectar"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Concluindo inscrição…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Inscrição concluída. Conectando…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Essa rede recebe um ID de chip que pode ser usado para monitorar o local do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Muito lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Ok"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Média"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Muito rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"A conexão automática ao Wi-Fi não está disponível no momento"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"A conexão automática está desativada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Salva por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Não se conectará automaticamente"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Sem acesso à Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema de autenticação"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Verifique a senha e tente novamente"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Falha na configuração de IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desativado"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Ponto de acesso temporariamente cheio"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desconectada"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Salva"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Limitada"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Ilimitada"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Conectado via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponível via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Conectada automaticamente via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectado automaticamente via provedor de avaliação de rede"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Conexão limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Não é possível acessar o servidor DNS privado"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sem Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nenhuma"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expirada"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toque para se inscrever"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toque para renovar a assinatura e se conectar"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Não foi possível conectar"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Concluindo inscrição…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Inscrição concluída. Conectando…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Essa rede recebe um ID de chip que pode ser usado para monitorar o local do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Muito lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Ok"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Média"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Muito rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt-rPT/arrays.xml b/libs/WifiTrackerLib/res/values-pt-rPT/arrays.xml
index 822b09180..b15b6a510 100644
--- a/libs/WifiTrackerLib/res/values-pt-rPT/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-pt-rPT/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"A procurar…"</item>
- <item msgid="9055468790485684083">"A ligar…"</item>
- <item msgid="6099499723199990208">"A autenticar…"</item>
- <item msgid="6794055951297347103">"A obter endereço IP…"</item>
- <item msgid="5450920562291300229">"Ligado"</item>
- <item msgid="6332116533879646145">"Suspenso"</item>
- <item msgid="294459081501073818">"A desligar…"</item>
- <item msgid="1577368920272598676">"Desligado"</item>
- <item msgid="7655843177582495451">"Sem êxito"</item>
- <item msgid="8953752690917593623">"Bloqueado"</item>
- <item msgid="4400457817750243671">"A evitar temporariamente uma ligação fraca…"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"A procurar…"</item>
+ <item msgid="6222852518007967736">"A ligar…"</item>
+ <item msgid="1176401854208153464">"A autenticar…"</item>
+ <item msgid="1377026397901197257">"A obter endereço IP…"</item>
+ <item msgid="7627139816052121509">"Ligado"</item>
+ <item msgid="1598801023719359130">"Suspenso"</item>
+ <item msgid="9160765456671002324">"A desligar…"</item>
+ <item msgid="8013176736494493734">"Desligado"</item>
+ <item msgid="4077393480368783785">"Sem êxito"</item>
+ <item msgid="605372180740008604">"Bloqueado"</item>
+ <item msgid="5102306451432929048">"A evitar temporariamente uma ligação fraca…"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt-rPT/strings.xml b/libs/WifiTrackerLib/res/values-pt-rPT/strings.xml
index 6f80eb9ac..470d9f7f4 100644
--- a/libs/WifiTrackerLib/res/values-pt-rPT/strings.xml
+++ b/libs/WifiTrackerLib/res/values-pt-rPT/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"A ligação automática está desativada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>."</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Não é efetuada uma ligação automaticamente."</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sem acesso à Internet."</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticação"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Verifique a palavra-passe e tente novamente."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Falha de configuração de IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desativada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Ponto de acesso temporariamente cheio."</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Condições de rede fraca temporárias"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Sinal fraco. Experimente aproximar-se do router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"A capacidade da rede foi excedida. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Não é possível ligar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Não é possível ligar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desligada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Guardada"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Com acesso limitado"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Com acesso ilimitado"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Ligado através de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponível através de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Ligado automaticamente através de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Ligado automaticamente através do fornecedor de classificação de rede"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ligação limitada."</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Não é possível aceder ao servidor DNS privado."</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Ligado ao dispositivo. Não é possível disponibilizar Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Baixa qualidade"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nenhuma"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expirado"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toque para se inscrever."</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toque para renovar a subscrição e estabelecer ligação."</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"A abrir <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Não foi possível estabelecer ligação"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"A concluir a inscrição…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Inscrição concluída. A estabelecer ligação…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Esta rede recebe um ID do SIM que pode ser utilizado para monitorizar a localização do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Muito lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Razoável"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Média"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Muito rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Por agora, o Wi-Fi não irá estabelecer ligação automaticamente"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"A ligação automática está desativada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Guardada por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Não é efetuada uma ligação automaticamente."</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Sem acesso à Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema de autenticação"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Verifique a palavra-passe e tente novamente"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Falha de configuração de IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desativado"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Ponto de acesso temporariamente cheio"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desligada"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Guardada"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Acesso limitado"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Acesso ilimitado"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Ligado via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponível através da app <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Ligado automaticamente através de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Ligado automaticamente através do fornecedor de classificação de rede"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ligação limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Não é possível aceder ao servidor DNS."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sem Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nenhuma"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expirada"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toque para se inscrever."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toque para renovar a subscrição e estabelecer ligação."</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"A abrir <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Não foi possível estabelecer ligação."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"A concluir a inscrição…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Inscrição concluída. A estabelecer ligação…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Esta rede recebe um ID do SIM que pode ser utilizado para monitorizar a localização do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Muito lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Média"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Muito rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt/arrays.xml b/libs/WifiTrackerLib/res/values-pt/arrays.xml
index e55c77a1d..5330614d1 100644
--- a/libs/WifiTrackerLib/res/values-pt/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-pt/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Buscando…"</item>
- <item msgid="9055468790485684083">"Conectando…"</item>
- <item msgid="6099499723199990208">"Autenticando…"</item>
- <item msgid="6794055951297347103">"Recebendo endereço IP…"</item>
- <item msgid="5450920562291300229">"Conectada"</item>
- <item msgid="6332116533879646145">"Suspenso"</item>
- <item msgid="294459081501073818">"Desconectando…"</item>
- <item msgid="1577368920272598676">"Desconectado"</item>
- <item msgid="7655843177582495451">"Falha"</item>
- <item msgid="8953752690917593623">"Bloqueado"</item>
- <item msgid="4400457817750243671">"Evitando temporariamente uma conexão ruim"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Buscando…"</item>
+ <item msgid="6222852518007967736">"Conectando…"</item>
+ <item msgid="1176401854208153464">"Autenticando…"</item>
+ <item msgid="1377026397901197257">"Recebendo endereço IP…"</item>
+ <item msgid="7627139816052121509">"Conectada"</item>
+ <item msgid="1598801023719359130">"Suspensa"</item>
+ <item msgid="9160765456671002324">"Desconectando…"</item>
+ <item msgid="8013176736494493734">"Desconectada"</item>
+ <item msgid="4077393480368783785">"Falha"</item>
+ <item msgid="605372180740008604">"Bloqueada"</item>
+ <item msgid="5102306451432929048">"Evitando temporariamente uma conexão ruim"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-pt/strings.xml b/libs/WifiTrackerLib/res/values-pt/strings.xml
index 19357b51c..818bc64ea 100644
--- a/libs/WifiTrackerLib/res/values-pt/strings.xml
+++ b/libs/WifiTrackerLib/res/values-pt/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"A conexão automática está desativada"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Salva por <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Não se conectará automaticamente"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Sem acesso à Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema de autenticação"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Verifique a senha e tente novamente"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Falha na configuração de IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Desativada"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Ponto de acesso temporariamente cheio"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Conexão de rede temporariamente fraca"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"O sinal está fraco. Tente se aproximar do roteador."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"A rede está sobrecarregada. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Não foi possível conectar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Não foi possível conectar. Tente novamente mais tarde."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Desconectada"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Salva"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Limitada"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Ilimitada"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conectado via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponível via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Conectado automaticamente via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Conectado automaticamente via provedor de avaliação de rede"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Conexão limitada"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Não é possível acessar o servidor DNS particular"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Conectada ao dispositivo. Sem acesso à Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Conexão lenta"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Nenhuma"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expirado"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Toque para se inscrever"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Toque para renovar a assinatura e se conectar"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Não foi possível conectar"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Concluindo inscrição…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Inscrição concluída. Conectando…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Essa rede recebe um ID de chip que pode ser usado para monitorar o local do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Muito lenta"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lenta"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Ok"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Média"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rápida"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Muito rápida"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"A conexão automática ao Wi-Fi não está disponível no momento"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"A conexão automática está desativada"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Salva por <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Não se conectará automaticamente"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Sem acesso à Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema de autenticação"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Verifique a senha e tente novamente"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Falha na configuração de IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Desativado"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Ponto de acesso temporariamente cheio"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Desconectada"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Salva"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Limitada"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Ilimitada"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Conectado via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponível via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Conectada automaticamente via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectado automaticamente via provedor de avaliação de rede"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Conexão limitada"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Não é possível acessar o servidor DNS privado"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Sem Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Nenhuma"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expirada"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Toque para se inscrever"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Toque para renovar a assinatura e se conectar"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Abrindo <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Não foi possível conectar"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Concluindo inscrição…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Não foi possível concluir a inscrição. Toque para tentar novamente."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Inscrição concluída. Conectando…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Essa rede recebe um ID de chip que pode ser usado para monitorar o local do dispositivo. "<annotation id="url">"Saiba mais"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Muito lenta"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lenta"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Ok"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Média"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rápida"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Muito rápida"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ro/arrays.xml b/libs/WifiTrackerLib/res/values-ro/arrays.xml
index 83730ec73..5512f8b36 100644
--- a/libs/WifiTrackerLib/res/values-ro/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ro/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Se scanează…"</item>
- <item msgid="9055468790485684083">"Se conectează…"</item>
- <item msgid="6099499723199990208">"Se autentifică…"</item>
- <item msgid="6794055951297347103">"Se obține adresa IP…"</item>
- <item msgid="5450920562291300229">"Conectată"</item>
- <item msgid="6332116533879646145">"Suspendată"</item>
- <item msgid="294459081501073818">"Se deconectează…"</item>
- <item msgid="1577368920272598676">"Deconectată"</item>
- <item msgid="7655843177582495451">"Nereușită"</item>
- <item msgid="8953752690917593623">"Blocată"</item>
- <item msgid="4400457817750243671">"Se evită temporar conexiunea slabă"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Se scanează…"</item>
+ <item msgid="6222852518007967736">"Se conectează…"</item>
+ <item msgid="1176401854208153464">"Se autentifică…"</item>
+ <item msgid="1377026397901197257">"Se obține adresa IP…"</item>
+ <item msgid="7627139816052121509">"Conectată"</item>
+ <item msgid="1598801023719359130">"Suspendată"</item>
+ <item msgid="9160765456671002324">"Se deconectează…"</item>
+ <item msgid="8013176736494493734">"Deconectată"</item>
+ <item msgid="4077393480368783785">"Nereușită"</item>
+ <item msgid="605372180740008604">"Blocată"</item>
+ <item msgid="5102306451432929048">"Evitarea temporară a conexiunii slabe"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ro/strings.xml b/libs/WifiTrackerLib/res/values-ro/strings.xml
index 8f081c8be..e506a9055 100644
--- a/libs/WifiTrackerLib/res/values-ro/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ro/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Conectarea automată este dezactivată"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Salvate de <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nu se va conecta automat"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nu există acces la internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problemă la autentificare"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Verificați parola și încercați din nou"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Eroare de configurare a IP-ului"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Dezactivată"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Punctul de acces este temporar plin"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Momentan, conexiunea la rețea este slabă"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Semnal slab. Apropiați-vă de router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Capacitatea rețelei a fost depășită. Încercați din nou mai târziu."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nu se poate conecta. Încercați din nou mai târziu."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nu se poate conecta. Reîncercați mai târziu."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Deconectată"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Salvată"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Contorizată"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Necontorizată"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Conectată prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Disponibilă prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Conectată automat prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Conectată automat prin furnizor de evaluări ale rețelei"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Conexiune limitată"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Serverul DNS privat nu poate fi accesat"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"S-a conectat la dispozitiv. Nu se poate stabili o conexiune la internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Calitate slabă"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Fără"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Expirată"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Atingeți pentru a vă înscrie"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Atingeți pentru a reînnoi abonamentul și a vă conecta"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Se deschide <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nu s-a putut conecta"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Se finalizează înscrierea…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Nu s-a putut finaliza înscrierea. Atingeți pentru a încerca din nou."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Înscrierea a fost finalizată. Se conectează…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Această rețea primește un cod SIM care se poate folosi pentru a urmări locația dispozitivului. "<annotation id="url">"Aflați mai multe"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Foarte lentă"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Lentă"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medie"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rapidă"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Foarte rapidă"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Deocamdată, Wi-Fi nu se poate conecta automat"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Conectarea automată este dezactivată"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Salvată de <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nu se va conecta automat"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nu există acces la internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problemă la autentificare"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Verificați parola și încercați din nou"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Eroare de configurare a IP-ului"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Dezactivată"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Punctul de acces este temporar plin"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Deconectat"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Salvată"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Contorizată"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Necontorizată"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Conectat prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Disponibil prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Conectată automat prin <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Conectată automat prin furnizor de evaluări ale rețelei"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Conexiune limitată"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Serverul DNS privat nu poate fi accesat"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Fără conexiune la internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Niciuna"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Expirat"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Atingeți pentru a vă înscrie"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Atingeți pentru a reînnoi abonamentul și a vă conecta"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Se deschide <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nu s-a putut conecta"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Se finalizează înscrierea…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Nu s-a putut finaliza înscrierea. Atingeți pentru a încerca din nou."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Înscrierea a fost finalizată. Se conectează…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Această rețea primește un cod SIM care se poate folosi pentru a urmări locația dispozitivului. "<annotation id="url">"Aflați mai multe"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Foarte lentă"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Lentă"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Bine"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medie"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rapidă"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Foarte rapidă"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ru/arrays.xml b/libs/WifiTrackerLib/res/values-ru/arrays.xml
index 783681b37..dd93fbf75 100644
--- a/libs/WifiTrackerLib/res/values-ru/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ru/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Поиск…"</item>
- <item msgid="9055468790485684083">"Подключение…"</item>
- <item msgid="6099499723199990208">"Аутентификация…"</item>
- <item msgid="6794055951297347103">"Получение IP-адреса…"</item>
- <item msgid="5450920562291300229">"Подключено"</item>
- <item msgid="6332116533879646145">"Приостановлено"</item>
- <item msgid="294459081501073818">"Отключение…"</item>
- <item msgid="1577368920272598676">"Не подключено"</item>
- <item msgid="7655843177582495451">"Сбой"</item>
- <item msgid="8953752690917593623">"Заблокировано"</item>
- <item msgid="4400457817750243671">"Временно отключено из-за плохого соединения"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Поиск…"</item>
+ <item msgid="6222852518007967736">"Подключение…"</item>
+ <item msgid="1176401854208153464">"Аутентификация…"</item>
+ <item msgid="1377026397901197257">"Получение IP-адреса…"</item>
+ <item msgid="7627139816052121509">"Подключено"</item>
+ <item msgid="1598801023719359130">"Приостановлено"</item>
+ <item msgid="9160765456671002324">"Отключение…"</item>
+ <item msgid="8013176736494493734">"Нет подключения"</item>
+ <item msgid="4077393480368783785">"Сбой"</item>
+ <item msgid="605372180740008604">"Заблокировано"</item>
+ <item msgid="5102306451432929048">"Отключено из-за плохого соединения"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ru/strings.xml b/libs/WifiTrackerLib/res/values-ru/strings.xml
index 5563e1da9..b6d64d985 100644
--- a/libs/WifiTrackerLib/res/values-ru/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ru/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автоподключение отключено"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Сохранено: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Подключение не будет выполняться автоматически"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Без доступа к Интернету"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Ошибка аутентификации"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Похоже, вы указали неверный пароль. Повторите попытку."</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Ошибка конфигурации IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Отключено"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"К точке доступа подключено слишком много устройств"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Временное нестабильное подключение к сети."</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Слабый сигнал. Попробуйте разместить устройство ближе к роутеру."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Превышена пропускная способность сети. Повторите попытку позже."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ошибка подключения. Повторите попытку позже."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ошибка подключения. Повторите попытку позже."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Не подключено"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Сохранено"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Сеть с тарификацией трафика"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Сеть без тарификации трафика"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Подключено через приложение \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Доступно через приложение \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Автоматически подключено через <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Автоматически подключено через автора рейтинга сетей"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Подключение к сети ограничено"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Доступа к частному DNS-серверу нет"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Подключено к устройству. Нет доступа к интернету."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"низкое качество"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Нет"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Срок действия истек"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Нажмите, чтобы зарегистрироваться"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Нажмите, чтобы обновить подписку и установить подключение"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Открывается <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ошибка подключения"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Завершение регистрации…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Не удалось завершить регистрацию. Нажмите, чтобы повторить попытку."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Регистрация завершена. Подключение…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Этой сети будет передан идентификатор SIM-карты, с помощью которого можно отследить местоположение устройства. "<annotation id="url">"Подробнее…"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Очень медленная"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Низкая"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ОК"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Средняя"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Быстрая"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Очень быстрая"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Подключение по Wi-Fi не установится автоматически."</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автоподключение выключено"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Сохранено: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Подключение не будет выполняться автоматически"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Без доступа к Интернету"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Ошибка аутентификации"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Возможно, вы указали неверный пароль. Повторите попытку."</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Ошибка конфигурации IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Отключено"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"К точке доступа подключено слишком много устройств"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Не подключено"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Сохранено"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Сеть с тарификацией трафика"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Сеть без тарификации трафика"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Подключено через приложение \"<xliff:g id="NAME">%1$s</xliff:g>\"."</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Доступно через приложение \"<xliff:g id="NAME">%1$s</xliff:g>\""</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Автоматически подключено через <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Автоматически подключено через автора рейтинга сетей"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Подключение к сети ограничено."</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Доступа к частному DNS-серверу нет."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Нет подключения к Интернету"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Без защиты"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Срок действия истек"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Нажмите, чтобы зарегистрироваться."</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Нажмите, чтобы обновить подписку и установить подключение"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Открывается <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>…"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Не удалось подключиться."</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Завершение регистрации…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Не удалось завершить регистрацию. Нажмите, чтобы повторить попытку."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Регистрация завершена. Подключение…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Этой сети будет передан идентификатор SIM-карты, с помощью которого можно отследить местоположение устройства. "<annotation id="url">"Подробнее…"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Очень медленная"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Медленная"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ОК"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Средняя"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Быстрая"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Очень быстрая"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-si/arrays.xml b/libs/WifiTrackerLib/res/values-si/arrays.xml
index 59a348eec..f716ab857 100644
--- a/libs/WifiTrackerLib/res/values-si/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-si/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"ස්කෑන් කරමින්…"</item>
- <item msgid="9055468790485684083">"සබැඳෙමින්…"</item>
- <item msgid="6099499723199990208">"සත්‍යාපනය කරමින්…"</item>
- <item msgid="6794055951297347103">"IP ලිපිනය ලබා ගනිමින්…"</item>
- <item msgid="5450920562291300229">"සම්බන්ධිතයි"</item>
- <item msgid="6332116533879646145">"තහනම් කරන ලදි"</item>
- <item msgid="294459081501073818">"විසන්ධි වෙමින්…"</item>
- <item msgid="1577368920272598676">"විසන්ධි විය"</item>
- <item msgid="7655843177582495451">"අසාර්ථකයි"</item>
- <item msgid="8953752690917593623">"අවහිරයි"</item>
- <item msgid="4400457817750243671">"දුර්වල සම්බන්ධතාව තාවකාලිකව මග හරිමින්"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ස්කෑන් කරමින්…"</item>
+ <item msgid="6222852518007967736">"සබැඳෙමින්…"</item>
+ <item msgid="1176401854208153464">"සත්‍යාපනය කරමින්…"</item>
+ <item msgid="1377026397901197257">"IP ලිපිනය ලබා ගනිමින්…"</item>
+ <item msgid="7627139816052121509">"සම්බන්ධිතයි"</item>
+ <item msgid="1598801023719359130">"තහනම් කරන ලද"</item>
+ <item msgid="9160765456671002324">"විසන්ධි වෙමින්…"</item>
+ <item msgid="8013176736494493734">"විසන්ධි විය"</item>
+ <item msgid="4077393480368783785">"අසාර්ථකයි"</item>
+ <item msgid="605372180740008604">"අවහිරයි"</item>
+ <item msgid="5102306451432929048">"දුර්වල සම්බන්ධතාව තාවකාලිකව මගහරිමින්"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-si/strings.xml b/libs/WifiTrackerLib/res/values-si/strings.xml
index 4db942388..a7c5b1ace 100644
--- a/libs/WifiTrackerLib/res/values-si/strings.xml
+++ b/libs/WifiTrackerLib/res/values-si/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ස්වයං සබැඳීම ක්‍රියාවිරහිතයි"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> විසින් සුරකින ලදී"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ස්වයංක්‍රියව සම්බන්ධ නොවනු ඇත"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"අන්තර්ජාල ප්‍රවේශය නැත"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"සත්‍යාපනයේ ගැටලුවකි"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"මුරපදය පරික්ෂා කර නැවත උත්සාහ කරන්න"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP වින්‍යාස කිරීම අසාර්ථකයි"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"අබල කළ"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"ප්‍රවේශ ලක්ෂ්‍යය තාවකාලිකව පිරී ඇත"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"තාවකාලික දුර්වල ජාල තත්ත්ව"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"දුර්වල සංඥා. රවුටරය වෙත වඩාත් සමීප වීමට උත්සාහ කරන්න."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"ජාලයේ ධාරිතාව ඉක්මවා ඇත. පසුව නැවත උත්සාහ කරන්න."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"සම්බන්ධ විය නොහැකිය. පසුව නැවත උත්සාහ කරන්න."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"සම්බන්ධ විය නොහැකිය. පසුව නැවත උත්සාහ කරන්න."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"විසන්ධි විය"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"සුරකින ලදි"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"මනුගත"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"මනුගත නොකළ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> හරහා සම්බන්ධිතයි"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> හරහා ලබා ගත හැකිය"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> හරහා ස්වයංක්‍රියව සම්බන්ධ විය"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"ජාල ශ්‍රේණිගත සපයන්නා හරහා ස්වයංක්‍රියව සම්බන්ධ විය"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"සීමිත සම්බන්ධතාව"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"පුද්ගලික DNS සේවාදායකයට ප්‍රවේශ වීමට නොහැකිය"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"උපාංගයට සම්බන්ධයි. අන්තර්ජාලය සැපයීමට නොහැකිය."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"අඩු ගුණත්වය"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"කිසිවක් නැත"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"කල් ඉකුත් විය"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"ලියාපදිංචි වීමට තට්ටු කරන්න"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"දායකත්වය අලුත් කිරීමට තට්ටු කර සම්බන්ධ වන්න"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> විවෘත කරමින්"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"සබැඳීමට නොහැකි විය"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"ලියාපදිංචිය සම්පූර්ණ කරමින්…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ලියාපදිංචිය සම්පූර්ණ කළ නොහැකි විය. නැවත උත්සාහ කිරීමට තට්ටු කරන්න."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"ලියාපදිංචිය සම්පූර්ණයි. සබැඳෙමින්…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"උපාංග ස්ථානය නිරීක්ෂණය කිරීමට භාවිත කළ හැකි SIM ID එකක් මෙම ජාලයට ලැබේ "<annotation id="url">"තව දැන ගන්න"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ඉතා මන්දගාමී"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"මන්දගාමී"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"හරි"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"මධ්‍යම"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"වේගවත්"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"ඉතා වේගවත්"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi දැනට ස්වයංක්‍රියව සබැඳි නොවනු ඇත"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ස්වයං සබැඳීම ක්‍රියාවිරහිතයි"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> විසින් සුරකින ලදී"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ස්වයංක්‍රියව නැවත සම්බන්ධ නොවනු ඇත"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"අන්තර්ජාල ප්‍රවේශය නැත"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"සත්‍යාපනයේ ගැටලුවකි"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"මුරපදය පරික්ෂා කර නැවත උත්සාහ කරන්න"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP වින්‍යාස කිරීම අසාර්ථකයි"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"අබලයි"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"ප්‍රවේශ ලක්ෂ්‍ය තාවකාලිකව පිරී ඇත"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"විසන්ධි විය"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"සුරකින ලදි"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"මනිනු ලැබේ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"මනින්නේ නැත"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> හරහා සම්බන්ධයි"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> හරහා ලබා ගත හැකිය"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> හරහා ස්වයංක්‍රියව සම්බන්ධ විය"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"ජාල ශ්‍රේණිගත සපයන්නා හරහා ස්වයංක්‍රියව සම්බන්ධ විය"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"සීමිත සම්බන්ධතාව"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"පුද්ගලික DNS සේවාදායකයට ප්‍රවේශ වීමට නොහැකිය"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"අන්තර්ජාලය නැත"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"කිසිවක් නැත"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"කල් ඉකුත් විය"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"ලියාපදිංචි වීමට තට්ටු කරන්න"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"දායකත්වය අලුත් කිරීමට තට්ටු කර සම්බන්ධ වන්න"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> විවෘත කරමින්"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"සබැඳීමට නොහැකි විය"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"ලියාපදිංචිය සම්පූර්ණ කරමින්…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ලියාපදිංචිය සම්පූර්ණ කළ නොහැකි විය. නැවත උත්සාහ කිරීමට තට්ටු කරන්න."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"ලියාපදිංචිය සම්පූර්ණයි. සබැඳෙමින්…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"උපාංග ස්ථානය නිරීක්ෂණය කිරීමට භාවිත කළ හැකි SIM ID එකක් මෙම ජාලයට ලැබේ. "<annotation id="url">"තව දැන ගන්න"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ඉතා මන්දගාමී"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"මන්දගාමී"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"හරි"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"මධ්‍යම"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"වේගවත්"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"ඉතා වේගවත්"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sk/arrays.xml b/libs/WifiTrackerLib/res/values-sk/arrays.xml
index 2c6af2207..6e06d6367 100644
--- a/libs/WifiTrackerLib/res/values-sk/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sk/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Vyhľadáva sa…"</item>
- <item msgid="9055468790485684083">"Pripája sa…"</item>
- <item msgid="6099499723199990208">"Overuje sa…"</item>
- <item msgid="6794055951297347103">"Získava sa adresa IP…"</item>
- <item msgid="5450920562291300229">"Pripojené"</item>
- <item msgid="6332116533879646145">"Pozastavené"</item>
- <item msgid="294459081501073818">"Odpája sa…"</item>
- <item msgid="1577368920272598676">"Odpojené"</item>
- <item msgid="7655843177582495451">"Neúspešné"</item>
- <item msgid="8953752690917593623">"Blokované"</item>
- <item msgid="4400457817750243671">"Dočasne bolo zabránené slabému pripojeniu"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Vyhľadáva sa…"</item>
+ <item msgid="6222852518007967736">"Pripája sa…"</item>
+ <item msgid="1176401854208153464">"Overuje sa…"</item>
+ <item msgid="1377026397901197257">"Získava sa adresa IP…"</item>
+ <item msgid="7627139816052121509">"Pripojená"</item>
+ <item msgid="1598801023719359130">"Pozastavená"</item>
+ <item msgid="9160765456671002324">"Odpája sa…"</item>
+ <item msgid="8013176736494493734">"Odpojená"</item>
+ <item msgid="4077393480368783785">"Nedá sa pripojiť"</item>
+ <item msgid="605372180740008604">"Blokovaná"</item>
+ <item msgid="5102306451432929048">"Dočasne bolo zabránené slabému pripojeniu"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sk/strings.xml b/libs/WifiTrackerLib/res/values-sk/strings.xml
index 0996784af..c7a84ce8a 100644
--- a/libs/WifiTrackerLib/res/values-sk/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sk/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatické pripojenie je vypnuté"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Uložil používateľ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nedôjde k automatickému pripojeniu"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Bez prístupu k internetu"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problém s overením"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Skontrolujte heslo a skúste to znova"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Zlyhanie konfigurácie adresy IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Vypnuté"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Prístupový bod je dočasne plný"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Dočasne nízka kvalita siete"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Slabý signál. Skúste sa priblížiť k smerovaču."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Bola prekročená kapacita siete. Skúste to neskôr."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nedá sa pripojiť. Skúste to neskôr."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nedá sa pripojiť. Skúste to neskôr."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Odpojené"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Uložené"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Merané"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Nemerané"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Pripojené prostredníctvom siete <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"K dispozícii prostredníctvom aplikácie <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automaticky pripojené prostredníctvom poskytovateľa <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automaticky pripojené prostredníctvom poskytovateľa hodnotenia siete"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Obmedzené pripojenie"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"K súkromnému serveru DNS sa nepodarilo získať prístup"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Pripojené k zariadeniu. Internet nie je možné poskytnúť."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Nízka kvalita"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Žiadne"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Platnosť vypršala"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Prihláste sa klepnutím"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Klepnutím obnovíte odber a pripojíte sa"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Otvára sa <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nepodarilo sa pripojiť"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Dokončuje sa registrácia…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registráciu sa nepodarilo dokončiť. Klepnutím to skúste znova."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registrácia je dokončená. Pripája sa…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Táto sieť dostáva jedinečný identifikátor SIM karty, pomocou ktorého je možné sledovať polohu zariadenia. "<annotation id="url">"Ďalšie informácie"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Veľmi nízka"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Nízka"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Stredná"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Rýchla"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Veľmi vysoká"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi sa momentálne automaticky nepripojí"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatické pripojenie je vypnuté"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Uložila aplikácia <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nedôjde k automatickému pripojeniu"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Žiadny prístup k internetu"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problém s overením"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Skontrolujte heslo a skúste to znova"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Zlyhanie konfigurácie adresy IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Vypnuté"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Prístupový bod je dočasne plný"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Odpojené"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Uložené"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Merané"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Bez merania dát"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Pripojené prostredníctvom siete <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"K dispozícii prostredníctvom aplikácie <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automaticky pripojené prostredníctvom poskytovateľa <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automaticky pripojené prostredníctvom poskytovateľa hodnotenia siete"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Obmedzené pripojenie"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"K súkromnému serveru DNS sa nepodarilo získať prístup"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Bez internetu"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Žiadne"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Platnosť vypršala"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Prihláste sa klepnutím"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Klepnutím obnovíte odber a pripojíte sa"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Otvára sa <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nepodarilo sa pripojiť"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Dokončuje sa registrácia…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registráciu sa nepodarilo dokončiť. Klepnutím to skúste znova."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registrácia je dokončená. Pripája sa…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Táto sieť dostáva jedinečný identifikátor SIM karty, pomocou ktorého je možné sledovať polohu zariadenia. "<annotation id="url">"Ďalšie informácie"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Veľmi pomalá"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Pomalá"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Stredná"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Rýchla"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Veľmi rýchla"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sl/arrays.xml b/libs/WifiTrackerLib/res/values-sl/arrays.xml
index 008257503..10c727227 100644
--- a/libs/WifiTrackerLib/res/values-sl/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sl/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Iskanje …"</item>
- <item msgid="9055468790485684083">"Povezovanje …"</item>
- <item msgid="6099499723199990208">"Preverjanje pristnosti …"</item>
- <item msgid="6794055951297347103">"Pridobivanje naslova IP …"</item>
- <item msgid="5450920562291300229">"Povezano"</item>
- <item msgid="6332116533879646145">"Onemogočeno"</item>
- <item msgid="294459081501073818">"Prekinjanje povezave …"</item>
- <item msgid="1577368920272598676">"Ni povezave"</item>
- <item msgid="7655843177582495451">"Neuspešno"</item>
- <item msgid="8953752690917593623">"Blokirano"</item>
- <item msgid="4400457817750243671">"Začasno izogibanje slabi povezavi"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Iskanje …"</item>
+ <item msgid="6222852518007967736">"Povezovanje …"</item>
+ <item msgid="1176401854208153464">"Preverjanje pristnosti …"</item>
+ <item msgid="1377026397901197257">"Pridobivanje naslova IP …"</item>
+ <item msgid="7627139816052121509">"Povezano"</item>
+ <item msgid="1598801023719359130">"Začasno ustavljeno"</item>
+ <item msgid="9160765456671002324">"Prekinjanje povezave …"</item>
+ <item msgid="8013176736494493734">"Povezava je prekinjena"</item>
+ <item msgid="4077393480368783785">"Neuspešno"</item>
+ <item msgid="605372180740008604">"Blokirano"</item>
+ <item msgid="5102306451432929048">"Začasno izogibanje slabi povezavi"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sl/strings.xml b/libs/WifiTrackerLib/res/values-sl/strings.xml
index d481c0ddb..03e326db7 100644
--- a/libs/WifiTrackerLib/res/values-sl/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sl/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Samodejno povezovanje izklopljeno"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Shranila aplikacija <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Povezava ne bo samodejno vzpostavljena"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ni dostopa do interneta"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Težava preverjanja pristnosti"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Preverite geslo in poskusite znova"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Konfiguracija IP-ja ni uspela"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Onemogočeno"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Dostopna točka je trenutno zasedena"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Začasno slabo stanje omrežja"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Šibek signal. Poskusite se premakniti bliže k usmerjevalniku."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Omrežje je prezasedeno. Poskusite znova pozneje."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Povezave ni mogoče vzpostaviti. Poskusite znova pozneje."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Povezave ni mogoče vzpostaviti. Poskusite znova pozneje."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Ni povezave"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Shranjeno"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Z omejenim prenosom podatkov"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Z neomejenim prenosom podatkov"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Povezava vzpostavljena prek omrežja <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Na voljo prek aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Povezava je samodejno vzpostavljena prek: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Samodejno vzpostavljena povezava prek ponudnika ocenjevanja omrežij"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Omejena povezava"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Do zasebnega strežnika DNS ni mogoče dostopati"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Povezava z napravo je vzpostavljena. Dostop do interneta ni na voljo."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Nizka kakovost"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Brez"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Poteklo"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Dotaknite se, če se želite registrirati"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Dotaknite se za podaljšanje naročnine in vzpostavitev povezave"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Odpiranje ponudnika <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Povezave ni bilo mogoče vzpostaviti"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Dokončevanje registracije …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registracije ni bilo mogoče dokončati. Če želite poskusiti znova, se dotaknite."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registracija je končana. Povezovanje …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"To omrežje prejme ID kartice SIM, s katerim je mogoče spremljati lokacijo naprave. "<annotation id="url">"Več o tem"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Zelo počasna"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Počasna"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"V redu"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Srednje hitra"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Hitra"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Zelo hitra"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Vmesnik Wi-Fi trenutno ne bo samodejno vzpostavil povezave."</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Samodejno povezovanje izklopljeno"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Shranil(-a): <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Povezava ne bo samodejno vzpostavljena"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ni dostopa do interneta"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Težava pri preverjanju pristnosti"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Preverite geslo in poskusite znova"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Konfiguracija IP-ja ni uspela"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Onemogočeno"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Dostopna točka je trenutno zasedena"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Ni povezave"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Shranjeno"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Omejen prenos podatkov"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Z neomejenim prenosom podatkov"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Povezava vzpostavljena prek omrežja <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Na voljo prek aplikacije <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Povezava je samodejno vzpostavljena prek: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Samodejno vzpostavljena povezava prek ponudnika ocenjevanja omrežij"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Omejena povezava"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Do zasebnega strežnika DNS ni mogoče dostopati"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Ni internetne povezave"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Brez"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Poteklo"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Dotaknite se, če se želite registrirati"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Dotaknite se za podaljšanje naročnine in vzpostavitev povezave"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Odpiranje ponudnika <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Povezave ni bilo mogoče vzpostaviti"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Dokončevanje registracije …"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registracije ni bilo mogoče dokončati. Če želite poskusiti znova, se dotaknite."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registracija je končana. Povezovanje …"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"To omrežje prejme ID kartice SIM, s katerim je mogoče spremljati lokacijo naprave. "<annotation id="url">"Več o tem"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Zelo počasna"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Počasna"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"V redu"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Srednje hitra"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Hitra"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Zelo hitra"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sq/arrays.xml b/libs/WifiTrackerLib/res/values-sq/arrays.xml
index 97c35ed8f..ac1f301da 100644
--- a/libs/WifiTrackerLib/res/values-sq/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sq/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Po skanon…"</item>
- <item msgid="9055468790485684083">"Po lidhet…"</item>
- <item msgid="6099499723199990208">"Po vërtetohet…"</item>
- <item msgid="6794055951297347103">"Po merr adresën IP…"</item>
- <item msgid="5450920562291300229">"Lidhur"</item>
- <item msgid="6332116533879646145">"Pezulluar"</item>
- <item msgid="294459081501073818">"Po shkëputet…"</item>
- <item msgid="1577368920272598676">"Shkëputur"</item>
- <item msgid="7655843177582495451">"Pa sukses"</item>
- <item msgid="8953752690917593623">"Bllokuar"</item>
- <item msgid="4400457817750243671">"Po shmang përkohësisht një lidhje të dobët"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Po skanon…"</item>
+ <item msgid="6222852518007967736">"Po lidhet…"</item>
+ <item msgid="1176401854208153464">"Po vërtetohet…"</item>
+ <item msgid="1377026397901197257">"Po merr adresën IP…"</item>
+ <item msgid="7627139816052121509">"Lidhur"</item>
+ <item msgid="1598801023719359130">"Pezulluar"</item>
+ <item msgid="9160765456671002324">"Po shkëputet…"</item>
+ <item msgid="8013176736494493734">"Shkëputur"</item>
+ <item msgid="4077393480368783785">"Pa sukses"</item>
+ <item msgid="605372180740008604">"Bllokuar"</item>
+ <item msgid="5102306451432929048">"Po shmang përkohësisht lidhje të dobët"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sq/strings.xml b/libs/WifiTrackerLib/res/values-sq/strings.xml
index 96f4f6f09..71113eb68 100644
--- a/libs/WifiTrackerLib/res/values-sq/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sq/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Lidhja automatike është joaktive"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Ruajtur nga <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Nuk do të lidhet automatikisht"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Nuk ka qasje në internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problem me vërtetimin"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Kontrollo fjalëkalimin dhe provo përsëri"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Dështim në konfigurimin e IP-së"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Çaktivizuar"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pika e qasjes është përkohësisht plot"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Kushte përkohësisht të këqija rrjeti"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Sinjal i dobët. Provo të lëvizësh më pranë ruterit."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Rrjeti është mbi kapacitet Provo sërish më vonë."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Nuk mund të lidhet. Provo sërish më vonë."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Nuk mund të lidhet. Provo sërish më vonë."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Shkëputur"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Ruajtur"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Me matje"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Pa matje"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Lidhur përmes <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Ofrohet përmes <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Lidhur automatikisht nëpërmjet <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Lidhur automatikisht nëpërmjet ofruesit të vlerësimit të rrjetit"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Lidhje e kufizuar"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Nuk mund të qasesh në serverin privat DNS"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"U lidh me pajisjen. Interneti nuk mund të ofrohet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Cilësi e ulët"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Asnjë"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Skaduar"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Trokit për t\'u regjistruar"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Trokit për të rinovuar abonimin dhe për t\'u lidhur"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Po hapet <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Nuk mund të lidhej"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Po përfundon regjistrimin…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Regjistrimi nuk mund të përfundonte. Trokit për të provuar përsëri."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Regjistrimi përfundoi. Po lidhet…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ky rrjet merr një ID karte SIM që mund të përdoret për të monitoruar vendndodhjen e pajisjes. "<annotation id="url">"Mëso më shumë"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Shumë e ngadaltë"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"E ngadaltë"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"E pranueshme"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Mesatare"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"E shpejtë"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Shumë e shpejtë"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi nuk do të lidhet automatikisht për momentin"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Lidhja automatike është joaktive"</string>
+ <string name="saved_network" msgid="6241977554502802914">"E ruajtur nga <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Nuk do të lidhet automatikisht"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Nuk ka qasje në internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problem me vërtetimin"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Kontrollo fjalëkalimin dhe provo sërish"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Dështim në konfigurimin e IP-së"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Të çaktivizuara"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pika e qasjes është përkohësisht plot"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Shkëputur"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"U ruajt"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Me matje"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Pa matje"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Lidhur përmes <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Ofrohet përmes <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Është lidhur automatikisht nëpërmjet <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Lidhur automatikisht nëpërmjet ofruesit të vlerësimit të rrjetit"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Lidhje e kufizuar"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Serveri privat DNS nuk mund të qaset"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Nuk ka internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Asnjë"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Skaduar"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Trokit për t\'u regjistruar"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Trokit për të rinovuar abonimin dhe për t\'u lidhur"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Po hapet <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Nuk mund të lidhej"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Po përfundon regjistrimin…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Regjistrimi nuk mund të përfundonte. Trokit për të provuar përsëri."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Regjistrimi përfundoi. Po lidhet…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ky rrjet merr një ID karte SIM që mund të përdoret për të monitoruar vendndodhjen e pajisjes. "<annotation id="url">"Mëso më shumë"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Shumë e ulët"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"E ngadaltë"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Në rregull"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Mesatare"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"E shpejtë"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Shumë e shpejtë"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sr/arrays.xml b/libs/WifiTrackerLib/res/values-sr/arrays.xml
index 1d8e0d7a0..b3929543e 100644
--- a/libs/WifiTrackerLib/res/values-sr/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sr/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Тражи се…"</item>
- <item msgid="9055468790485684083">"Повезује се…"</item>
- <item msgid="6099499723199990208">"Потврђује се идентитет…"</item>
- <item msgid="6794055951297347103">"Преузима се IP адреса…"</item>
- <item msgid="5450920562291300229">"Повезано је"</item>
- <item msgid="6332116533879646145">"Суспендовано"</item>
- <item msgid="294459081501073818">"Прекида се веза…"</item>
- <item msgid="1577368920272598676">"Веза је прекинута"</item>
- <item msgid="7655843177582495451">"Није успело"</item>
- <item msgid="8953752690917593623">"Блокирано"</item>
- <item msgid="4400457817750243671">"Привремено избегавање лоше везе"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Тражи се…"</item>
+ <item msgid="6222852518007967736">"Повезује се…"</item>
+ <item msgid="1176401854208153464">"Потврђује се идентитет…"</item>
+ <item msgid="1377026397901197257">"Преузима се IP адреса…"</item>
+ <item msgid="7627139816052121509">"Повезано"</item>
+ <item msgid="1598801023719359130">"Суспендовано"</item>
+ <item msgid="9160765456671002324">"Прекида се веза…"</item>
+ <item msgid="8013176736494493734">"Веза је прекинута"</item>
+ <item msgid="4077393480368783785">"Није успело"</item>
+ <item msgid="605372180740008604">"Блокирано"</item>
+ <item msgid="5102306451432929048">"Привремено избегавање лоше везе"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sr/strings.xml b/libs/WifiTrackerLib/res/values-sr/strings.xml
index c794bc047..ee560b892 100644
--- a/libs/WifiTrackerLib/res/values-sr/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sr/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Аутоматско повезивање је искључено"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Сачувао/ла: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Аутоматско повезивање није успело"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Нема приступа интернету"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Проблем са потврдом идентитета"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Проверите лозинку и пробајте поново"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP конфигурација је отказала"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Онемогућено"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Приступна тачка је привремено заузета"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Привремено слаба мрежа"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Слаб сигнал. Пробајте да се приближите рутеру."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Капацитет мреже је премашен. Пробајте поново касније."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Повезивање није успело. Пробајте поново касније."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Повезивање није успело. Пробајте поново касније."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Веза је прекинута"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Сачувано"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Са ограничењем"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Без ограничења"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Повезано помоћу апликације <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Доступно преко апликације <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Аутоматски повезано помоћу апликације <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Аутоматски повезано преко добављача оцене мреже"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Ограничена веза"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Приступ приватном DNS серверу није успео"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Уређај је повезан. Пружање интернета није успело."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Лош квалитет"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ништа"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Истекла"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Додирните да бисте се регистровали"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Додирните да бисте обновили претплату и повезали се"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Отвара се <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Повезивање није успело"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Регистрација се довршава…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Довршавање регистрације није успело. Додирните да бисте пробали поново."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Регистрација је довршена. Повезује се…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ова мрежа добија ИД SIM картице који може да се користи за праћење локације уређаја. "<annotation id="url">"Сазнајте више"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Веома споро"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Споро"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"У реду"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Средње"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Брзо"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Веома брзо"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"WiFi тренутно не може да се аутоматски повеже"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Аутоматско повезивање је искључено"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Сачувао/ла је <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Аутоматско повезивање није успело"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Нема приступа интернету"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Проблем са потврдом идентитета"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Проверите лозинку и пробајте поново"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP конфигурација је отказала"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Онемогућено"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Приступна тачка је привремено заузета"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Веза је прекинута"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Сачувано"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Са ограничењем"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Без ограничења"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Повезано преко: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Доступно преко апликације <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Аутоматски повезано преко: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Аутоматски повезано преко добављача оцене мреже"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Ограничена веза"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Приступ приватном DNS серверу није успео"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Нема интернета"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ништа"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Истекло"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Додирните да бисте се регистровали"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Додирните да бисте обновили претплату и повезали"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Отвара се <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Повезивање није успело"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Регистрација се довршава…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Довршавање регистрације није успело. Додирните да бисте пробали поново."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Регистрација је довршена. Повезује се…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ова мрежа добија ИД SIM картице који може да се користи за праћење локације уређаја. "<annotation id="url">"Сазнајте више"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Веома спора"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Спора"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Потврди"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Средња"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Брза"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Веома брза"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sv/arrays.xml b/libs/WifiTrackerLib/res/values-sv/arrays.xml
index f3d097962..7f3ee923d 100644
--- a/libs/WifiTrackerLib/res/values-sv/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sv/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Söker …"</item>
- <item msgid="9055468790485684083">"Ansluter …"</item>
- <item msgid="6099499723199990208">"Autentiserar …"</item>
- <item msgid="6794055951297347103">"Hämtar IP-adress …"</item>
- <item msgid="5450920562291300229">"Ansluten"</item>
- <item msgid="6332116533879646145">"Avstängt"</item>
- <item msgid="294459081501073818">"Kopplar från …"</item>
- <item msgid="1577368920272598676">"Frånkopplad"</item>
- <item msgid="7655843177582495451">"Misslyckades"</item>
- <item msgid="8953752690917593623">"Blockerat"</item>
- <item msgid="4400457817750243671">"Undviker just nu dålig anslutning"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Söker …"</item>
+ <item msgid="6222852518007967736">"Ansluter …"</item>
+ <item msgid="1176401854208153464">"Autentiserar …"</item>
+ <item msgid="1377026397901197257">"Hämtar IP-adress …"</item>
+ <item msgid="7627139816052121509">"Ansluten"</item>
+ <item msgid="1598801023719359130">"Avstängt"</item>
+ <item msgid="9160765456671002324">"Kopplar från …"</item>
+ <item msgid="8013176736494493734">"Frånkopplat"</item>
+ <item msgid="4077393480368783785">"Misslyckades"</item>
+ <item msgid="605372180740008604">"Blockerad"</item>
+ <item msgid="5102306451432929048">"Undviker just nu dålig anslutning"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sv/strings.xml b/libs/WifiTrackerLib/res/values-sv/strings.xml
index d4c5e018e..98cb2bcad 100644
--- a/libs/WifiTrackerLib/res/values-sv/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sv/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Automatisk anslutning har inaktiverats"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Sparades av <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Det går inte att ansluta automatiskt"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Ingen internetåtkomst"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Autentiseringsproblem"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Kontrollera lösenordet och försök igen"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP-konfigurationsfel"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Inaktiverat"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Åtkomstpunkten har inga platser över för tillfället"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tillfälligt dåliga nätverksförhållanden"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Svag signal. Gå närmare routern."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Nätverket är överbelastat. Försök igen senare."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Det gick inte att ansluta. Försök igen senare."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Det gick inte att ansluta. Försök igen senare."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Frånkopplad"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Sparat"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Med datapriser"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Utan datapriser"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Ansluten via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Tillgängligt via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Automatiskt ansluten via <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Automatiskt ansluten via leverantör av nätverksbetyg"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Begränsad anslutning"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Det går inte att komma åt den privata DNS-servern."</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Ansluten till enheten. Det går inte att ansluta till internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Låg kvalitet"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Ingen"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Utgått"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Tryck för att logga in"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Tryck här om du vill förnya prenumerationen och ansluta"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Öppnar <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Det gick inte att ansluta"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Registreringen slutförs …"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Det gick inte att slutföra registreringen. Tryck för att försöka igen."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registrering har slutförts. Ansluter …"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Det här nätverket får ett SIM-id som kan användas till att spåra enhetens plats. "<annotation id="url">"Läs mer"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Mycket långsam"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Långsam"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Medel"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Snabb"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Mycket snabb"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Du ansluts inte till wifi automatiskt för närvarande"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Automatisk anslutning har inaktiverats"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Sparades av <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Det går inte att ansluta automatiskt"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Ingen internetåtkomst"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Autentiseringsproblem"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Kontrollera lösenordet och försök igen"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP-konfigurationsfel"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Inaktiverad"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Åtkomstpunkten har inga platser över för tillfället"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Frånkopplad"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Sparat"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Med datapriser"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Utan datapriser"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Anslutet via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Tillgängligt via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Automatiskt ansluten via <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Automatiskt ansluten via leverantör av nätverksbetyg"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Begränsad anslutning"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Det går inte att komma åt den privata DNS-servern."</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Inget internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Ingen"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Har upphört att gälla"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Tryck för att registrera dig"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Tryck här om du vill förnya prenumerationen och ansluta"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Öppnar <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Det gick inte att ansluta"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Registreringen slutförs …"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Det gick inte att slutföra registreringen. Tryck för att försöka igen."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registrering har slutförts. Ansluter …"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Det här nätverket får ett SIM-id som kan användas till att spåra enhetens plats. "<annotation id="url">"Läs mer"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Mycket långsam"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Långsam"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Okej"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Medelsnabb"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Snabb"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Mycket snabb"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sw/arrays.xml b/libs/WifiTrackerLib/res/values-sw/arrays.xml
index 1b5fb0be3..6e7f23f54 100644
--- a/libs/WifiTrackerLib/res/values-sw/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-sw/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Inatafuta…"</item>
- <item msgid="9055468790485684083">"Inaunganisha…"</item>
- <item msgid="6099499723199990208">"Inathibitisha…"</item>
- <item msgid="6794055951297347103">"Inapata anwani ya IP…"</item>
- <item msgid="5450920562291300229">"Imeunganishwa"</item>
- <item msgid="6332116533879646145">"Imesimamishwa"</item>
- <item msgid="294459081501073818">"Inatenganisha…"</item>
- <item msgid="1577368920272598676">"Imetenganishwa"</item>
- <item msgid="7655843177582495451">"Imeshindwa kuunganisha"</item>
- <item msgid="8953752690917593623">"Imezuiwa"</item>
- <item msgid="4400457817750243671">"Inaepuka kwa muda muunganisho mbovu"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Inatafuta…"</item>
+ <item msgid="6222852518007967736">"Inaunganisha…"</item>
+ <item msgid="1176401854208153464">"Inathibitisha…"</item>
+ <item msgid="1377026397901197257">"Inapata anwani ya IP…"</item>
+ <item msgid="7627139816052121509">"Imeunganisha"</item>
+ <item msgid="1598801023719359130">"Imesimamishwa"</item>
+ <item msgid="9160765456671002324">"Inatenganisha…"</item>
+ <item msgid="8013176736494493734">"Imetenganishwa"</item>
+ <item msgid="4077393480368783785">"Imeshindwa kuunganisha"</item>
+ <item msgid="605372180740008604">"Imezuiwa"</item>
+ <item msgid="5102306451432929048">"Inaepuka muunganisho hafifu kwa muda"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-sw/strings.xml b/libs/WifiTrackerLib/res/values-sw/strings.xml
index fce858b54..f549d45b7 100644
--- a/libs/WifiTrackerLib/res/values-sw/strings.xml
+++ b/libs/WifiTrackerLib/res/values-sw/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Kipengele cha kuunganisha kiotomatiki kimezimwa"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Ilihifadhiwa na <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Haiwezi kuunganisha kiotomatiki"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Hakuna muunganisho wa intaneti"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Tatizo la uthibitishaji"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Angalia nenosiri na ujaribu tena"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Imeshindwa kuweka mipangilio ya IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Umezimwa"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Mlango wa mtandao una shughuli nyingi kwa sasa"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Hali ya muda ya mtandao dhaifu"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Muunganisho si thabiti. Jaribu kusogea karibu na kisambaza data."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Kuna msongamano kwenye mtandao. Jaribu tena baadaye."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Imeshindwa kuunganisha. Jaribu tena baadaye."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Imeshindwa kuunganisha. Jaribu tena baadaye."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Imetenganishwa"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Uliohifadhiwa"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Mtandao unaopima data"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Mtandao usiopima data"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Imeunganishwa kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Inapatikana kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Imeunganishwa kiotomatiki kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Imeunganishwa kiotomatiki kupitia kampuni ya kukadiria mitandao"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Muunganisho hafifu"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Seva ya faragha ya DNS haiwezi kufikiwa"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Kifaa kimeunganishwa. Imeshindwa kusambaza intaneti."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Ubora wa chini"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Hamna"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Muda wake umeisha"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Gusa ili ujisajili"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Gusa ili usasishe usajili na uunganishe"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Inafungua <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Imeshindwa kuunganisha"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Inakamilisha usajili…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Imeshindwa kukamilisha usajili. Gusa ili ujaribu tena."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Imekamilisha usajili. Inaunganisha…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Mtandao huu hupokea kitambulisho cha SIM ambacho kinaweza kutumiwa kufuatilia mahali kifaa kilipo. "<annotation id="url">"Pata maelezo zaidi"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Polepole Sana"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Polepole"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Sawa"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Wastani"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Haraka"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Haraka Sana"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi haitaunganishwa kiotomatiki kwa sasa"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Kuunganisha kiotomatiki kumezimwa"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Ilihifadhiwa na <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Haiwezi kuunganisha kiotomatiki"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Hakuna muunganisho wa intaneti"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Tatizo la uthibitishaji"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Angalia nenosiri na ujaribu tena"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Imeshindwa kuweka mipangilio ya IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Imezimwa"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Lango la mtandao lina shughuli nyingi kwa sasa"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Hujaunganishwa"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Umehifadhiwa"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Mtandao unapima data"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Mtandao usiopima data"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Imeunganishwa kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Inapatikana kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Umeunganishwa kiotomatiki kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Imeunganishwa kiotomatiki kupitia mtoa huduma wa ukadiriaji wa mtandao"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Muunganisho hafifu"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Seva ya faragha ya DNS haiwezi kufikiwa"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Hakuna intaneti"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Hamna"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Muda umeisha"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Gusa ili ujisajili"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Gusa ili usasishe usajili na uunganishe"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Inafungua <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Imeshindwa kuunganisha"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Inakamilisha usajili…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Imeshindwa kukamilisha usajili. Gusa ili ujaribu tena."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Imekamilisha usajili. Inaunganisha…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Mtandao huu hupokea kitambulisho cha SIM ambacho kinaweza kutumiwa kufuatilia mahali kifaa kilipo. "<annotation id="url">"Pata maelezo zaidi"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Polepole Sana"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Polepole"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Sawa"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Wastani"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Haraka"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Haraka Sana"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ta/arrays.xml b/libs/WifiTrackerLib/res/values-ta/arrays.xml
index 69670cc0c..8329cc3a7 100644
--- a/libs/WifiTrackerLib/res/values-ta/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ta/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"தேடுகிறது…"</item>
- <item msgid="9055468790485684083">"இணைக்கிறது…"</item>
- <item msgid="6099499723199990208">"அங்கீகரிக்கிறது…"</item>
- <item msgid="6794055951297347103">"IP முகவரியைப் பெறுகிறது…"</item>
- <item msgid="5450920562291300229">"இணைக்கப்பட்டது"</item>
- <item msgid="6332116533879646145">"இடைநிறுத்தப்பட்டது"</item>
- <item msgid="294459081501073818">"துண்டிக்கிறது…"</item>
- <item msgid="1577368920272598676">"தொடர்பு துண்டிக்கப்பட்டது"</item>
- <item msgid="7655843177582495451">"தோல்வி"</item>
- <item msgid="8953752690917593623">"தடுக்கப்பட்டது"</item>
- <item msgid="4400457817750243671">"வேகம் குறைவான இணைப்பைத் தற்காலிகமாகத் தவிர்க்கிறது"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"ஸ்கேன் செய்கிறது…"</item>
+ <item msgid="6222852518007967736">"இணைக்கிறது…"</item>
+ <item msgid="1176401854208153464">"அங்கீகரிக்கிறது…"</item>
+ <item msgid="1377026397901197257">"IP முகவரியைப் பெறுகிறது…"</item>
+ <item msgid="7627139816052121509">"இணைக்கப்பட்டது"</item>
+ <item msgid="1598801023719359130">"இடைநிறுத்தப்பட்டது"</item>
+ <item msgid="9160765456671002324">"துண்டிக்கிறது…"</item>
+ <item msgid="8013176736494493734">"தொடர்பு துண்டிக்கப்பட்டது"</item>
+ <item msgid="4077393480368783785">"தோல்வி"</item>
+ <item msgid="605372180740008604">"தடுக்கப்பட்டன"</item>
+ <item msgid="5102306451432929048">"வேகம் குறைவான இணைப்பைத் தற்காலிகமாகத் தவிர்க்கிறது"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ta/strings.xml b/libs/WifiTrackerLib/res/values-ta/strings.xml
index c718787de..7e88d378e 100644
--- a/libs/WifiTrackerLib/res/values-ta/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ta/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"தானியங்கு இணைப்பு ஆஃப் செய்யப்பட்டுள்ளது"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> சேமித்தது"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"தானாக இணைக்கப்படாது"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"இணைய அணுகல் இல்லை"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"அங்கீகரிப்புச் சிக்கல்"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"கடவுச்சொல்லைச் சரிபார்த்து மீண்டும் முயலவும்"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP உள்ளமைவில் தோல்வி"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"முடக்கப்பட்டது"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"தற்காலிகமாக ஆக்சஸ் பாயிண்ட் நிரம்பியுள்ளது"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"தற்காலிகமாக நெட்வொர்க் சரியில்லை"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"வலுவற்ற சிக்னல். ரூட்டருக்கு அருகில் சென்று சிக்னல் வலுவாகக் கிடைக்கிறதா எனப் பாருங்கள்."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"நெட்வொர்க் பிசியாக உள்ளது. பிறகு முயலவும்."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"இணைக்க முடியவில்லை. பிறகு முயலவும்."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"இணைக்க முடியவில்லை. பிறகு முயலவும்."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"தொடர்பு துண்டிக்கப்பட்டது"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"சேமித்தது"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"கட்டண நெட்வொர்க்"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"கட்டணமில்லா நெட்வொர்க்"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் இணைக்கப்பட்டது"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் கிடைக்கும்"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் தானாக இணைக்கப்பட்டது"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"நெட்வொர்க் மதிப்பீடு வழங்குநர் மூலம் தானாக இணைக்கப்பட்டது"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"வரம்பிற்கு உட்பட்ட இணைப்பு"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"தனிப்பட்ட DNS சேவையகத்தை அணுக இயலாது"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"சாதனத்துடன் இணைக்கப்பட்டது. இணைய இணைப்பு இல்லை."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"குறைந்த தரம்"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ஏதுமில்லை"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"காலாவதியானது"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"பதிவு செய்ய தட்டவும்"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"சந்தாவைப் புதுப்பித்து இணைக்க தட்டவும்"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> திறக்கப்படுகிறது"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"இணைக்க இயலவில்லை"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"பதிவு செய்வது நிறைவடைகிறது…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"பதிவு செய்தலை நிறைவுசெய்ய முடியவில்லை. மீண்டும் முயல தட்டவும்."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"பதிவு செய்தல் நிறைவடைந்தது. இணைக்கிறது…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"சாதன இருப்பிடத்தைக் கண்காணிக்கப் பயன்படுத்தப்படும் சிம் ஐடியை இந்த நெட்வொர்க் பெறும். "<annotation id="url">"மேலும் அறிக"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"மிகவும் மெதுவானது"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"மெதுவானது"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"சரி"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"நடுத்தரம்"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"வேகமானது"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"மிகவும் வேகமானது"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"இப்போது வைஃபை தானாக இணைக்கப்படாது"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"தானியங்கு இணைப்பு ஆஃப் செய்யப்பட்டுள்ளது"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> சேமித்தது"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"தானாக இணைக்கப்படாது"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"இணைய அணுகல் இல்லை"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"அங்கீகரிப்புச் சிக்கல்"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"கடவுச்சொல்லைச் சரிபார்த்து, மீண்டும் முயலவும்"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP உள்ளமைவில் தோல்வி"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"முடக்கப்பட்டது"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"தற்காலிகமாக அணுகல் புள்ளி நிரம்பியுள்ளது"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"தொடர்பு துண்டிக்கப்பட்டது"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"சேமிக்கப்பட்டது"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"கட்டண நெட்வொர்க்"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"கட்டணமில்லா நெட்வொர்க்"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் இணைக்கப்பட்டது"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் கிடைக்கும்"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் தானாக இணைக்கப்பட்டது"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"நெட்வொர்க் மதிப்பீடு வழங்குநரால் தானாக இணைக்கப்பட்டது"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"வரம்பிற்கு உட்பட்ட இணைப்பு"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"தனிப்பட்ட DNS சேவையகத்தை அணுக இயலாது"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"இணைய இணைப்பு இல்லை"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ஏதுமில்லை"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"காலாவதியாகிவிட்டது"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"பதிவு செய்ய தட்டவும்"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"சந்தாவைப் புதுப்பித்து இணைக்க தட்டவும்"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> திறக்கப்படுகிறது"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"இணைக்க இயலவில்லை"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"பதிவு செய்தல் நிறைவடைகிறது…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"பதிவு செய்தலை நிறைவுசெய்ய முடியவில்லை. மீண்டும் முயல தட்டவும்."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"பதிவு செய்தல் நிறைவடைந்தது. இணைக்கிறது…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"சாதன இருப்பிடத்தைக் கண்காணிக்கப் பயன்படுத்தப்படும் சிம் ஐடியை இந்த நெட்வொர்க் பெறும். "<annotation id="url">"மேலும் அறிக"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"மிகவும் வேகம் குறைவானது"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"வேகம் குறைவு"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"சரி"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"நடுத்தரம்"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"வேகம்"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"மிகவும் வேகமானது"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-te/arrays.xml b/libs/WifiTrackerLib/res/values-te/arrays.xml
index efff29a8f..58d67b88a 100644
--- a/libs/WifiTrackerLib/res/values-te/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-te/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"స్కాన్ చేస్తోంది…"</item>
- <item msgid="9055468790485684083">"కనెక్ట్ అవుతోంది…"</item>
- <item msgid="6099499723199990208">"ప్రామాణీకరిస్తోంది…"</item>
- <item msgid="6794055951297347103">"IP అడ్రస్‌ను పొందుతోంది…"</item>
- <item msgid="5450920562291300229">"కనెక్ట్ అయింది"</item>
- <item msgid="6332116533879646145">"సస్పెండ్ చేయబడింది"</item>
- <item msgid="294459081501073818">"డిస్‌కనెక్ట్ అవుతోంది…"</item>
- <item msgid="1577368920272598676">"డిస్‌కనెక్ట్ అయింది"</item>
- <item msgid="7655843177582495451">"విఫలమైంది"</item>
- <item msgid="8953752690917593623">"బ్లాక్ చేయబడింది"</item>
- <item msgid="4400457817750243671">"బలహీన కనెక్షన్‌ను తాత్కాలికంగా నివారిస్తుంది"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"స్కాన్ చేస్తోంది…"</item>
+ <item msgid="6222852518007967736">"కనెక్ట్ అవుతోంది…"</item>
+ <item msgid="1176401854208153464">"ప్రామాణీకరిస్తోంది…"</item>
+ <item msgid="1377026397901197257">"IP అడ్రస్‌ను పొందుతోంది…"</item>
+ <item msgid="7627139816052121509">"కనెక్ట్ చేయబడింది"</item>
+ <item msgid="1598801023719359130">"తాత్కాలికంగా రద్దు చేయబడింది"</item>
+ <item msgid="9160765456671002324">"డిస్‌కనెక్ట్ చేస్తోంది…"</item>
+ <item msgid="8013176736494493734">"డిస్‌కనెక్ట్ అయ్యింది"</item>
+ <item msgid="4077393480368783785">"విఫలమైంది"</item>
+ <item msgid="605372180740008604">"బ్లాక్ చేయబడింది"</item>
+ <item msgid="5102306451432929048">"బలహీన కనెక్షన్‌ను తాత్కాలికంగా నివారిస్తోంది"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-te/strings.xml b/libs/WifiTrackerLib/res/values-te/strings.xml
index c5b05b7b7..6d1fa1203 100644
--- a/libs/WifiTrackerLib/res/values-te/strings.xml
+++ b/libs/WifiTrackerLib/res/values-te/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"ఆటో-కనెక్ట్ ఆఫ్‌లో ఉంది"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> చేత సేవ్ చేయబడింది"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"ఆటోమేటిక్‌గా కనెక్ట్ కాదు"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"ఇంటర్నెట్ యాక్సెస్ లేదు"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ప్రామాణీకరణ సమస్య"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"పాస్‌వర్డ్‌ను తనిఖీ చేసి, మళ్లీ ట్రై చేయండి"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP కాన్ఫిగరేషన్ వైఫల్యం"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"డిజేబుల్ చేయబడింది"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"యాక్సెస్ పాయింట్ తాత్కాలికంగా నిండి ఉంది"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"తాత్కాలికంగా పేలవమైన నెట్‌వర్క్ పరిస్థితులు ఉన్నాయి"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"పేలవమైన సిగ్నల్. రూటర్‌కు కొద్దిగా దగ్గరికి వెళ్ళడానికి ట్రై చేయండి."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"నెట్‌వర్క్ సామర్థ్యం మించిపోయింది. తర్వాత మళ్లీ ట్రై చేయండి."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"కనెక్ట్ చేయడం సాధ్యపడదు. తర్వాత మళ్లీ ట్రై చేయండి."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"కనెక్ట్ చేయడం సాధ్యపడదు. తర్వాత మళ్లీ ట్రై చేయండి."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"డిస్‌కనెక్ట్ అయింది"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"సేవ్ అయింది"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"గణించబడింది"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"గణించబడటం లేదు"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా కనెక్ట్ చేయబడింది"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా అందుబాటులో ఉంది"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా ఆటోమేటిక్‌గా కనెక్ట్ చేయబడింది"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"నెట్‌వర్క్ రేటింగ్ ప్రొవైడర్ ద్వారా ఆటోమేటిక్‌గా కనెక్ట్ చేయబడింది"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"పరిమిత కనెక్షన్"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"ప్రైవేట్ DNS సర్వర్‌ను యాక్సెస్ చేయడం సాధ్యపడదు"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"పరికరానికి కనెక్ట్ అయింది. ఇంటర్నెట్‌ను అందిచడం సాధ్యం కాదు."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"తక్కువ క్వాలిటీ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ఏవీ లేవు"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"గడువు ముగిసింది"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"సైన్ అప్ చేయడానికి ట్యాప్ చేయండి"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"సభ్యత్వాన్ని రెన్యూ చేసి, కనెక్ట్ చేయడానికి ట్యాప్ చేయండి"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> తెరవబడుతోంది"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"కనెక్ట్ చేయడం సాధ్యపడలేదు"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"సైన్ అప్ పూర్తి కావస్తోంది…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"సైన్ అప్‌ను పూర్తి చేయడం సాధ్యపడలేదు. మళ్ళీ ట్రై చేయడానికి ట్యాప్ చేయండి."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"సైన్ అప్ పూర్తయింది. కనెక్ట్ చేయబడుతోంది…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"పరికర లొకేషన్‌ను ట్రాక్ చేయడానికి ఉపయోగపడే SIM IDని ఈ నెట్‌వర్క్ అందుకుంటుంది. "<annotation id="url">"మరింత తెలుసుకోండి"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"చాలా నెమ్మది"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"నెమ్మది"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"సరే"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"మధ్యస్థం"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"వేగవంతం"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"చాలా వేగవంతం"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"ప్రస్తుతానికి Wi-Fi ఆటోమేటిక్‌గా కనెక్ట్ అవ్వదు"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"ఆటో-కనెక్ట్ ఆఫ్‌లో ఉంది"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా సేవ్ చేయబడింది"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"ఆటోమేటిక్‌గా కనెక్ట్ కాదు"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"ఇంటర్నెట్ యాక్సెస్ లేదు"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ప్రామాణీకరణ సమస్య"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"పాస్‌వర్డ్‌ను తనిఖీ చేసి, మళ్లీ ప్రయత్నించండి"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP కాన్ఫిగరేషన్ వైఫల్యం"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"డిజేబుల్ చేయబడింది"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"యాక్సెస్ పాయింట్ తాత్కాలికంగా నిండుకుంది"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"డిస్‌కనెక్ట్ అయ్యింది"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"సేవ్ చేయబడింది"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"గణించబడుతోంది"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"గణించబడటం లేదు"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా కనెక్ట్ చేయబడింది"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా అందుబాటులో ఉంది"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> ద్వారా ఆటోమేటిక్‌గా కనెక్ట్ చేయబడింది"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"నెట్‌వర్క్ రేటింగ్ ప్రదాత ద్వారా ఆటోమేటిక్‌గా కనెక్ట్ చేయబడింది"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"పరిమిత కనెక్షన్"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"ప్రైవేట్ DNS సర్వర్‌ను యాక్సెస్ చేయడం సాధ్యపడదు"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ఇంటర్నెట్ లేదు"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ఏదీ లేదు"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"గడువు ముగిసింది"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"సైన్ అప్ చేయడానికి ట్యాప్ చేయండి"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"సభ్యత్వాన్ని రెన్యూ చేసి, కనెక్ట్ చేయడానికి నొక్కండి"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> తెరవబడుతోంది"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"కనెక్ట్ చేయడం సాధ్యపడలేదు"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"సైన్ అప్ పూర్తవుతోంది…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"సైన్ అప్‌ను పూర్తి చేయడం సాధ్యపడలేదు. మళ్ళీ ప్రయత్నించడానికి ట్యాప్ చేయండి."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"సైన్ అప్ పూర్తయింది. కనెక్ట్ చేయబడుతోంది…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"పరికరం లొకేషన్‌ను ట్రాక్ చేయడానికి ఉపయోగపడే SIM IDని ఈ నెట్‌వర్క్ అందుకుంటుంది. "<annotation id="url">"మరింత తెలుసుకోండి"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"చాలా నెమ్మది"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"నెమ్మది"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"సరే"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"మధ్యస్థం"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"వేగవంతం"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"చాలా వేగవంతం"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-th/arrays.xml b/libs/WifiTrackerLib/res/values-th/arrays.xml
index 878febfa6..2be340972 100644
--- a/libs/WifiTrackerLib/res/values-th/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-th/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"กำลังสแกน…"</item>
- <item msgid="9055468790485684083">"กำลังเชื่อมต่อ…"</item>
- <item msgid="6099499723199990208">"กำลังตรวจสอบสิทธิ์…"</item>
- <item msgid="6794055951297347103">"กำลังรับที่อยู่ IP…"</item>
- <item msgid="5450920562291300229">"เชื่อมต่อแล้ว"</item>
- <item msgid="6332116533879646145">"ถูกระงับ"</item>
- <item msgid="294459081501073818">"กำลังยกเลิกการเชื่อมต่อ…"</item>
- <item msgid="1577368920272598676">"เลิกเชื่อมต่อแล้ว"</item>
- <item msgid="7655843177582495451">"ไม่สำเร็จ"</item>
- <item msgid="8953752690917593623">"ถูกบล็อก"</item>
- <item msgid="4400457817750243671">"หลีกเลี่ยงการเชื่อมต่อกับสัญญาณที่ไม่แรงพอชั่วคราว"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"กำลังสแกน…"</item>
+ <item msgid="6222852518007967736">"กำลังเชื่อมต่อ…"</item>
+ <item msgid="1176401854208153464">"กำลังตรวจสอบสิทธิ์…"</item>
+ <item msgid="1377026397901197257">"กำลังรับที่อยู่ IP…"</item>
+ <item msgid="7627139816052121509">"เชื่อมต่อแล้ว"</item>
+ <item msgid="1598801023719359130">"ถูกระงับ"</item>
+ <item msgid="9160765456671002324">"กำลังยกเลิกการเชื่อมต่อ…"</item>
+ <item msgid="8013176736494493734">"ยกเลิกการเชื่อมต่อแล้ว"</item>
+ <item msgid="4077393480368783785">"ไม่สำเร็จ"</item>
+ <item msgid="605372180740008604">"ถูกบล็อก"</item>
+ <item msgid="5102306451432929048">"หลีกเลี่ยงการเชื่อมต่อกับสัญญาณที่ไม่แรงพอชั่วคราว"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-th/strings.xml b/libs/WifiTrackerLib/res/values-th/strings.xml
index f8b2d5f46..d13a25454 100644
--- a/libs/WifiTrackerLib/res/values-th/strings.xml
+++ b/libs/WifiTrackerLib/res/values-th/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"การเชื่อมต่ออัตโนมัติปิดอยู่"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"บันทึกโดย <xliff:g id="NAME">%1$s</xliff:g> แล้ว"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"จะไม่เชื่อมต่อโดยอัตโนมัติ"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"เข้าถึงอินเทอร์เน็ตไม่ได้"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"ปัญหาในการตรวจสอบสิทธิ์"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"ตรวจสอบรหัสผ่านและลองอีกครั้ง"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"การกำหนดค่า IP ล้มเหลว"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"ปิดใช้"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"จุดเข้าใช้งานเต็มชั่วคราว"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"สภาพเครือข่ายไม่เสถียรชั่วคราว"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"สัญญาณไม่ดี ลองเข้าไปใกล้กับเราเตอร์"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"มีการใช้งานเครือข่ายเกินความจุ ลองอีกครั้งในภายหลัง"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"เชื่อมต่อไม่ได้ ลองอีกครั้งในภายหลัง"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"เชื่อมต่อไม่ได้ ลองอีกครั้งในภายหลัง"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"เลิกเชื่อมต่อแล้ว"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"บันทึกแล้ว"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"แบบจำกัดปริมาณ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"ไม่มีการวัดปริมาณอินเทอร์เน็ต"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"เชื่อมต่อแล้วผ่าน <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"ใช้งานได้ผ่านทาง <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"เชื่อมต่อโดยอัตโนมัติผ่าน <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"เชื่อมต่ออัตโนมัติผ่านผู้ให้บริการการจัดอันดับเครือข่าย"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"การเชื่อมต่อที่จำกัด"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"เข้าถึงเซิร์ฟเวอร์ DNS ส่วนตัวไม่ได้"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"เชื่อมต่ออุปกรณ์แล้ว แต่ไม่มีอินเทอร์เน็ต"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"คุณภาพต่ำ"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"ไม่มี"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"หมดอายุ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"แตะเพื่อลงชื่อสมัครใช้"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"แตะเพื่อต่ออายุการสมัครใช้บริการและเชื่อมต่อ"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"กำลังเปิด <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"เชื่อมต่อไม่ได้"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"กำลังลงชื่อสมัครใช้ให้เสร็จสิ้น…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"ลงชื่อสมัครใช้ไม่สำเร็จ แตะเพื่อลองอีกครั้ง"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"การลงชื่อสมัครใช้เสร็จสมบูรณ์ กำลังเชื่อมต่อ…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"เครือข่ายนี้จะได้รับรหัส SIM ซึ่งใช้ติดตามตำแหน่งอุปกรณ์ได้ "<annotation id="url">"ดูข้อมูลเพิ่มเติม"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"ช้ามาก"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"ช้า"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"พอใช้"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"กลาง"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"เร็ว"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"เร็วมาก"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi จะไม่เชื่อมต่ออัตโนมัติในตอนนี้"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"การเชื่อมต่ออัตโนมัติปิดอยู่"</string>
+ <string name="saved_network" msgid="6241977554502802914">"บันทึกโดย<xliff:g id="NAME">%1$s</xliff:g> แล้ว"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"จะไม่เชื่อมต่อโดยอัตโนมัติ"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"เข้าถึงอินเทอร์เน็ตไม่ได้"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"ปัญหาในการตรวจสอบสิทธิ์"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"ตรวจสอบรหัสผ่านและลองอีกครั้ง"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"การกำหนดค่า IP ล้มเหลว"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"ปิดอยู่"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"จุดเข้าใช้งานเต็มชั่วคราว"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"ยกเลิกการเชื่อมต่อแล้ว"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"บันทึกแล้ว"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"แบบจำกัดปริมาณ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"ไม่มีการวัดปริมาณอินเทอร์เน็ต"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"เชื่อมต่อแล้วผ่าน <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"ใช้งานได้ผ่านทาง <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"เชื่อมต่อโดยอัตโนมัติผ่าน <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"เชื่อมต่ออัตโนมัติผ่านผู้ให้บริการการจัดอันดับเครือข่าย"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"การเชื่อมต่อที่จำกัด"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"เข้าถึงเซิร์ฟเวอร์ DNS ไม่ได้"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"ไม่มีอินเทอร์เน็ต"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"ไม่มี"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"หมดอายุแล้ว"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"แตะเพื่อลงชื่อสมัครใช้"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"แตะเพื่อต่ออายุการสมัครใช้บริการและเชื่อมต่อ"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"กำลังเปิด <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"เชื่อมต่อไม่สำเร็จ"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"กำลังลงชื่อสมัครใช้ให้เสร็จสิ้น…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"ลงชื่อสมัครใช้ไม่สำเร็จ แตะเพื่อลองอีกครั้ง"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"การลงชื่อสมัครใช้เสร็จสมบูรณ์ กำลังเชื่อมต่อ…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"เครือข่ายนี้จะได้รับรหัส SIM ซึ่งใช้ติดตามตำแหน่งอุปกรณ์ได้ "<annotation id="url">"ดูข้อมูลเพิ่มเติม"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"ช้ามาก"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"ช้า"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ตกลง"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"ปานกลาง"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"เร็ว"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"เร็วมาก"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-tl/arrays.xml b/libs/WifiTrackerLib/res/values-tl/arrays.xml
index 70ed92485..1a511cf24 100644
--- a/libs/WifiTrackerLib/res/values-tl/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-tl/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Nagsa-scan…"</item>
- <item msgid="9055468790485684083">"Kumokonekta…"</item>
- <item msgid="6099499723199990208">"Ino-authenticate…"</item>
- <item msgid="6794055951297347103">"Kinukuha ang IP address…"</item>
- <item msgid="5450920562291300229">"Konektado"</item>
- <item msgid="6332116533879646145">"Nasuspinde"</item>
- <item msgid="294459081501073818">"Nagdidiskonekta…"</item>
- <item msgid="1577368920272598676">"Nadiskonekta"</item>
- <item msgid="7655843177582495451">"Hindi matagumpay"</item>
- <item msgid="8953752690917593623">"Naka-block"</item>
- <item msgid="4400457817750243671">"Pansamantalang iniiwasan ang mahinang koneksyon"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Nagsa-scan…"</item>
+ <item msgid="6222852518007967736">"Kumokonekta…"</item>
+ <item msgid="1176401854208153464">"Ino-authenticate…"</item>
+ <item msgid="1377026397901197257">"Kinukuha ang IP address…"</item>
+ <item msgid="7627139816052121509">"Konektado"</item>
+ <item msgid="1598801023719359130">"Sinuspinde"</item>
+ <item msgid="9160765456671002324">"Dinidiskonekta…"</item>
+ <item msgid="8013176736494493734">"Nadiskonekta"</item>
+ <item msgid="4077393480368783785">"Hindi Matagumpay"</item>
+ <item msgid="605372180740008604">"Naka-block"</item>
+ <item msgid="5102306451432929048">"Pansamantalang iniiwasan ang mabagal na koneksyon"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-tl/strings.xml b/libs/WifiTrackerLib/res/values-tl/strings.xml
index a296cbf78..30d97e896 100644
--- a/libs/WifiTrackerLib/res/values-tl/strings.xml
+++ b/libs/WifiTrackerLib/res/values-tl/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Naka-off ang Auto-connect"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Na-save ng/ni <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Hindi awtomatikong kokonekta"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Walang access sa internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Problema sa pag-authenticate"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Suriin ang password at subukan ulit"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Hindi na-configure ang IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Naka-disable"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Pansamantalang puno ang access point"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Pansamantalang hindi magandang kundisyon ng network"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Mahinang signal. Subukang mas lumapit sa router."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Lampas na sa kapasidad ang network. Subukan ulit sa ibang pagkakataon."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Hindi makakonekta. Subukan ulit sa ibang pagkakataon."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Hindi makakonekta. Subukan ulit sa ibang pagkakataon."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Nadiskonekta"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Naka-save"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Nakametro"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Hindi nakametro"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Nakakonekta sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Available sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Awtomatikong nakakonekta sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Awtomatikong nakakonekta sa pamamagitan ng provider ng rating ng network"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Limitadong koneksyon"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Hindi ma-access ang pribadong DNS server"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Nakakonekta sa device. Hindi makapagbigay ng internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Mababang kalidad"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Wala"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Nag-expire na"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"I-tap para mag-sign up"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"I-tap para i-renew ang subscription at kumonekta"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Binubuksan ang <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Hindi makakonekta"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Kinukumpleto ang pag-sign up…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Hindi makumpleto ang pag-sign up. I-tap para subukan ulit."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Kumpleto na ang pag-sign up. Kumokonekta…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Tumatanggap ang network na ito ng SIM ID na magagamit sa pag-track sa lokasyon ng device. "<annotation id="url">"Matuto pa"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Napakabagal"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Mabagal"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Katamtaman"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Mabilis"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Napakabilis"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Hindi awtomatikong kokonekta ang Wi-Fi sa ngayon"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Naka-off ang Auto-connect"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Na-save ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Hindi awtomatikong kokonekta"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Walang access sa internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Problema sa pag-authenticate"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Suriin ang password at subukang muli"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Hindi na-configure ang IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Naka-disable"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Pansamantalang puno ang access point"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Nadiskonekta"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Na-save"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Nakametro"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Hindi Nakametro"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Nakakonekta sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Available sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Awtomatikong nakakonekta sa pamamagitan ng <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Awtomatikong nakakonekta sa pamamagitan ng provider ng rating ng network"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Limitadong koneksyon"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Hindi ma-access ang pribadong DNS server"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Walang internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Wala"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Nag-expire na"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"I-tap para mag-sign up"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"I-tap para i-renew ang subscription at kumonekta"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Binubuksan ang <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Hindi makakonekta"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Kinukumpleto ang pag-sign up…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Hindi makumpleto ang pag-sign up. I-tap para subukan ulit."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Kumpleto na ang pag-sign up. Kumokonekta…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Tumatanggap ang network na ito ng SIM ID na magagamit sa pagsubaybay ng lokasyon ng device. "<annotation id="url">"Matuto pa"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Napakabagal"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Mabagal"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Katamtaman"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Mabilis"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Napakabilis"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-tr/arrays.xml b/libs/WifiTrackerLib/res/values-tr/arrays.xml
index 9e7db2e3d..59eb7a124 100644
--- a/libs/WifiTrackerLib/res/values-tr/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-tr/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Taranıyor…"</item>
- <item msgid="9055468790485684083">"Bağlanıyor…"</item>
- <item msgid="6099499723199990208">"Kimlik doğrulanıyor…"</item>
- <item msgid="6794055951297347103">"IP adresi alınıyor…"</item>
- <item msgid="5450920562291300229">"Bağlı"</item>
- <item msgid="6332116533879646145">"Askıya alındı"</item>
- <item msgid="294459081501073818">"Bağlantı kesiliyor…"</item>
- <item msgid="1577368920272598676">"Bağlı değil"</item>
- <item msgid="7655843177582495451">"Başarısız"</item>
- <item msgid="8953752690917593623">"Engellendi"</item>
- <item msgid="4400457817750243671">"Zayıf bağlantıdan geçici olarak kaçınılıyor"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Taranıyor…"</item>
+ <item msgid="6222852518007967736">"Bağlanıyor…"</item>
+ <item msgid="1176401854208153464">"Kimlik doğrulanıyor…"</item>
+ <item msgid="1377026397901197257">"IP adresi alınıyor…"</item>
+ <item msgid="7627139816052121509">"Bağlı"</item>
+ <item msgid="1598801023719359130">"Askıya alındı"</item>
+ <item msgid="9160765456671002324">"Bağlantı kesiliyor…"</item>
+ <item msgid="8013176736494493734">"Bağlı değil"</item>
+ <item msgid="4077393480368783785">"Başarısız"</item>
+ <item msgid="605372180740008604">"Engellendi"</item>
+ <item msgid="5102306451432929048">"Zayıf bağlantıdan geçici olarak kaçınılıyor"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-tr/strings.xml b/libs/WifiTrackerLib/res/values-tr/strings.xml
index d28646b5c..50628b59e 100644
--- a/libs/WifiTrackerLib/res/values-tr/strings.xml
+++ b/libs/WifiTrackerLib/res/values-tr/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Otomatik bağlanma kapalı"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"<xliff:g id="NAME">%1$s</xliff:g> tarafından kaydedildi"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Otomatik olarak bağlanmayacak"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"İnternet erişimi yok"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Kimlik doğrulama sorunu"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Şifreyi kontrol edip tekrar deneyin"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP yapılandırması hatası"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Devre dışı"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Erişim noktası geçici olarak dolu"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Geçici kötü ağ koşulları"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Sinyal gücü zayıf. Yönlendiriciye yaklaşmayı deneyin."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Ağ kapasitesi aşıldı. Daha sonra tekrar deneyin."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Bağlanılamıyor. Daha sonra tekrar deneyin."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Bağlanılamıyor. Daha sonra tekrar deneyin."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Bağlı değil"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Kayıtlı"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Sayaçlı"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Sınırsız"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> ile bağlandı"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ile kullanılabilir"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> ile otomatik olarak bağlandı"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Ağ derecelendirme sağlayıcısı aracılığıyla otomatik olarak bağlandı"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Sınırlı bağlantı"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Gizli DNS sunucusuna erişilemiyor"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Cihaza bağlandı. İnternet bağlantısı sağlanamıyor."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Düşük kalite"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Yok"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Süresi doldu"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Kaydolmak için dokunun"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Aboneliği yenilemek ve bağlanmak için dokunun"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> açılıyor"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Bağlanılamadı"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Kayıt işlemi tamamlanıyor…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Kayıt işlemi tamamlanamadı. Tekrar denemek için dokunun."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Kayıt tamamlandı. Bağlanıyor…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Bu ağ, cihaz konumunu izlemek için kullanılabilecek bir SIM kimliği alır. "<annotation id="url">"Daha fazla bilgi"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Çok Yavaş"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Yavaş"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Normal"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Orta"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Hızlı"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Çok Hızlı"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Şu anda kablosuz ağa otomatik olarak bağlanılamıyor"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Otomatik bağlanma kapalı"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> tarafından kaydedildi"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Otomatik olarak bağlanmayacak"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"İnternet erişimi yok"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Kimlik doğrulama sorunu"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Şifreyi kontrol edin ve tekrar deneyin"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP yapılandırması hatası"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Devre dışı"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Erişim noktası geçici olarak dolu"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Bağlı değil"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Kaydedildi"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Sayaçlı"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Sayaçsız"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> ile bağlandı"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ile kullanılabilir"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> ile otomatik olarak bağlandı"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Ağ derecelendirme sağlayıcı aracılığıyla otomatik olarak bağlandı"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Sınırlı bağlantı"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Gizli DNS sunucusuna erişilemiyor"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"İnternet yok"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Yok"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Süresi sona erdi"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Kaydolmak için dokunun"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Aboneliği yenilemek ve bağlanmak için dokunun"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> açılıyor"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Bağlanılamadı"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Kayıt işlemi tamamlanıyor…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Kayıt işlemi tamamlanamadı. Tekrar denemek için dokunun."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Kayıt tamamlandı. Bağlanıyor…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Bu ağ, cihaz konumunu izlemek için kullanılabilecek bir SIM kimliği alır. "<annotation id="url">"Daha fazla bilgi"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Çok Yavaş"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Yavaş"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Tamam"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Orta"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Hızlı"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Çok Hızlı"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-uk/arrays.xml b/libs/WifiTrackerLib/res/values-uk/arrays.xml
index 5e2cf54a5..69158c0a4 100644
--- a/libs/WifiTrackerLib/res/values-uk/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-uk/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Пошук…"</item>
- <item msgid="9055468790485684083">"Підключення…"</item>
- <item msgid="6099499723199990208">"Автентифікація…"</item>
- <item msgid="6794055951297347103">"Отримання ІР-адреси…"</item>
- <item msgid="5450920562291300229">"Підключено"</item>
- <item msgid="6332116533879646145">"Заблоковано"</item>
- <item msgid="294459081501073818">"Відключення…"</item>
- <item msgid="1577368920272598676">"Відключено"</item>
- <item msgid="7655843177582495451">"Помилка"</item>
- <item msgid="8953752690917593623">"Заблоковано"</item>
- <item msgid="4400457817750243671">"Перевірка підключення"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Пошук…"</item>
+ <item msgid="6222852518007967736">"Підключення…"</item>
+ <item msgid="1176401854208153464">"Автентифікація…"</item>
+ <item msgid="1377026397901197257">"Отримання ІР-адреси…"</item>
+ <item msgid="7627139816052121509">"Підключено"</item>
+ <item msgid="1598801023719359130">"Заблоковано"</item>
+ <item msgid="9160765456671002324">"Відключення…"</item>
+ <item msgid="8013176736494493734">"Відключено"</item>
+ <item msgid="4077393480368783785">"Помилка"</item>
+ <item msgid="605372180740008604">"Заблоковано"</item>
+ <item msgid="5102306451432929048">"Перевірка підключення"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-uk/strings.xml b/libs/WifiTrackerLib/res/values-uk/strings.xml
index f95b7283a..d1a1fbe28 100644
--- a/libs/WifiTrackerLib/res/values-uk/strings.xml
+++ b/libs/WifiTrackerLib/res/values-uk/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Автоматичне підключення вимкнено"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Збережено додатком <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Не підключатиметься автоматично"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Немає доступу до Інтернету"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Проблема з автентифікацією"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Перевірте пароль і повторіть спробу"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Помилка конфігурації IP-адреси"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Вимкнено"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Точка доступу тимчасово переповнена"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Тимчасові проблеми з\'єднання з мережею"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Слабкий сигнал. Підійдіть ближче до маршрутизатора."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Мережа перенавантажена. Повторіть спробу пізніше."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Не вдалося підключитися. Повторіть спробу пізніше."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Не вдалося підключитися. Повторіть спробу пізніше."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Відключено"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Збережено"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"З тарифікацією трафіку"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Без тарифікації трафіку"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Підключено через додаток <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Доступно в додатку <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Автоматично підключено через додаток <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Автоматично підключено через постачальника оцінки якості мережі"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Обмежене підключення"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Немає доступу до приватного DNS-сервера"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Підключено до пристрою. Інтернет-з\'єднання відсутнє."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Низька якість"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Немає"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Термін дії минув"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Торкніться, щоб увійти"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Натисніть, щоб поновити підписку та підключитися"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> відкривається"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Не вдалося підключитись"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Завершення реєстрації…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Не вдалося завершити реєстрацію. Торкніться, щоб повторити спробу."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Реєстрацію завершено. Підключення…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Ця мережа отримує ідентифікатор SIM-карти, за допомогою якого можна відстежити місцезнаходження пристрою. "<annotation id="url">"Докладніше"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Дуже повільна"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Повільна"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Середня"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Швидка"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Дуже швидка"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Пристрій не підключатиметься до Wi-Fi автоматично"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Автоматичне підключення вимкнено"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Збережено додатком <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Не підключатиметься автоматично"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Немає доступу до Інтернету"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Проблема з автентифікацією"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Перевірте пароль і повторіть спробу"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Помилка конфігурації IP-адреси"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Вимкнено"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Точка доступу тимчасово переповнена"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Від’єднано"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Збережено"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"З тарифікацією трафіку"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Без тарифікації трафіку"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Підключено через додаток <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Доступно в додатку <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Автоматично підключено через <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Автоматично під’єднано через постачальника оцінки якості мережі"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Обмежене з’єднання"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Немає доступу до приватного DNS-сервера"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Немає Інтернету"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Немає"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Термін дії минув"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Торкніться, щоб зареєструватись"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Натисніть, щоб поновити підписку та підключитися"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> відкривається"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Не вдалося підключитись"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Завершення реєстрації…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Не вдалося завершити реєстрацію. Торкніться, щоб повторити спробу."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Реєстрацію завершено. Підключення…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Ця мережа отримує ідентифікатор SIM-карти, за допомогою якого можна відстежити місцезнаходження пристрою. "<annotation id="url">"Докладніше"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Дуже повільна"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Повільна"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ОК"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Середня"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Швидка"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Дуже швидка"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ur/arrays.xml b/libs/WifiTrackerLib/res/values-ur/arrays.xml
index fa304981b..bd68c6dd6 100644
--- a/libs/WifiTrackerLib/res/values-ur/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-ur/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"اسکین ہو رہا ہے…"</item>
- <item msgid="9055468790485684083">"منسلک ہو رہا ہے…"</item>
- <item msgid="6099499723199990208">"توثیق ہو رہی ہے…"</item>
- <item msgid="6794055951297347103">"‏IP پتہ حاصل کر رہا ہے…"</item>
- <item msgid="5450920562291300229">"منسلک"</item>
- <item msgid="6332116533879646145">"معطل"</item>
- <item msgid="294459081501073818">"غیر منسلک ہو رہا ہے…"</item>
- <item msgid="1577368920272598676">"غیر منسلک"</item>
- <item msgid="7655843177582495451">"ناکام"</item>
- <item msgid="8953752690917593623">"مسدود"</item>
- <item msgid="4400457817750243671">"عارضی طور پر خراب کنکشن سے اجتناب کر رہا ہے"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"اسکین ہو رہا ہے…"</item>
+ <item msgid="6222852518007967736">"منسلک ہو رہا ہے…"</item>
+ <item msgid="1176401854208153464">"توثیق ہو رہی ہے…"</item>
+ <item msgid="1377026397901197257">"‏IP پتہ حاصل کر رہا ہے…"</item>
+ <item msgid="7627139816052121509">"منسلک ہے"</item>
+ <item msgid="1598801023719359130">"معطل ہے"</item>
+ <item msgid="9160765456671002324">"غیر منسلک ہو رہا ہے…"</item>
+ <item msgid="8013176736494493734">"غیر منسلک ہے"</item>
+ <item msgid="4077393480368783785">"ناکام"</item>
+ <item msgid="605372180740008604">"مسدود"</item>
+ <item msgid="5102306451432929048">"عارضی طور پر خراب کنکشن سے اجتناب کر رہا ہے"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-ur/strings.xml b/libs/WifiTrackerLib/res/values-ur/strings.xml
index 5d6d7e4d1..895ef6f35 100644
--- a/libs/WifiTrackerLib/res/values-ur/strings.xml
+++ b/libs/WifiTrackerLib/res/values-ur/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"خود کار طور پر منسلک ہونا آف ہے"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"‫<xliff:g id="NAME">%1$s</xliff:g> کی جانب سے محفوظ کردہ"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"خودکار طور پر منسلک نہیں ہو گا"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"انٹرنیٹ تک کوئی رسائی نہیں"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"توثیق کا مسئلہ"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"پاس ورڈ چیک کرکے دوبارہ کوشش کریں"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"‏‫IP کنفیگریشن کی ناکامی"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"غیر فعال"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"رسائی پوائنٹ عارضی طور پر فُل ہے"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"عارضی خراب نیٹ ورک کے حالات"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"کمزور سگنل۔ روٹر کے قریب منتقل کرنے کی کوشش کریں۔"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"نیٹ ورک کی گنجائش حد سے زیادہ ہے۔ بعد میں دوبارہ کوشش کریں۔"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"منسلک نہیں ہو سکا۔ بعد میں دوبارہ کوشش کریں۔"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"منسلک نہیں ہو سکا۔ بعد میں دوبارہ کوشش کریں۔"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"غیر منسلک"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"محفوظ کردہ"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"میٹرڈ"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"غیر میٹر شدہ"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"‫<xliff:g id="NAME">%1$s</xliff:g> کے ذریعے منسلک"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"دستیاب بذریعہ <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"خودکار طور پر <xliff:g id="NAME">%1$s</xliff:g> کے ذریعے منسلک"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"نیٹ ورک درجہ بندی کے فراہم کنندہ کے ذریعے از خود منسلک"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"محدود کنکشن"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"‏نجی DNS سرور تک رسائی حاصل نہیں کی جا سکی"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"آلے سے منسلک ہے۔ انٹرنیٹ فراہم نہیں کیا جا سکتا۔"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"ادنٰی معیار"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"کوئی نہیں"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"میعاد ختم شدہ"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"سائن اپ کے لیے تھپتھپائیں"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"سبسکرپشن کی تجدید کرنے اور منسلک ہونے کے لیے تھپتھپائیں"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"‫<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> کھل رہا ہے"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"منسلک نہیں کیا جا سکا"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"سائن اپ مکمل ہو رہا ہے…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"سائن اپ مکمل نہیں ہو سکا۔ دوبارہ کوشش کرنے کے لیے تھپتھپائیں۔"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"سائن اپ مکمل ہو گیا۔ منسلک ہو رہا ہے…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"‏اس نیٹ ورک کو ایک SIM ID موصول ہوتی ہے جو آلہ کے مقام کو ٹریک کرنے کیلئے استعمال ہو سکتی ہے۔ "<annotation id="url">"مزید جانیں"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"بہت سست"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"سست"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"ٹھیک ہے"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"متوسط"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"تیز"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"بہت تیز"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"‏ابھی Wi-Fi خود کار طور پر منسلک نہیں ہوگا"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"خود کار طور پر منسلک کریں آف ہے"</string>
+ <string name="saved_network" msgid="6241977554502802914">"<xliff:g id="NAME">%1$s</xliff:g> کی جانب سے محفوظ کردہ"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"خودکار طور پر منسلک نہیں ہو گا"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"انٹرنیٹ تک کوئی رسائی نہیں"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"توثیق کا مسئلہ"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"پاس ورڈ چیک کر کے دوبارہ کوشش کریں"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"‏IP کنفیگریشن کی ناکامی"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"غیر فعال"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"رسائی پوائنٹ عارضی طور پر فُل ہے"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"غیر منسلک"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"محفوظ کردیا گیا"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"میٹرڈ"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"غیر میٹر شدہ"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> کے ذریعے منسلک"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"دستیاب بذریعہ <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"خودکار طور پر <xliff:g id="NAME">%1$s</xliff:g> کے ذریعے منسلک"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"نیٹ ورک درجہ بندی کے فراہم کنندہ کے ذریعے از خود منسلک"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"محدود کنکشن"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"‏نجی DNS سرور تک رسائی حاصل نہیں کی جا سکی"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"انٹرنیٹ نہیں ہے"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"کوئی نہیں"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"میعاد ختم ہو گئی"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"سائن اپ کے لیے تھپتھپائیں"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"سبسکرپشن کی تجدید کرنے اور منسلک ہونے کے لیے تھپتھپائیں"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> کھل رہا ہے"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"منسلک نہیں کیا جا سکا"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"سائن اپ مکمل ہو رہا ہے…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"سائن اپ مکمل نہیں ہو سکا۔ دوبارہ کوشش کرنے کے لیے تھپتھپائیں۔"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"سائن اپ مکمل ہو گیا۔ منسلک ہو رہا ہے…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"‏اس نیٹ ورک کو ایک SIM ID موصول ہوتی ہے جو آلہ کے مقام کو ٹریک کرنے کیلئے استعمال ہو سکتی ہے۔ "<annotation id="url">"مزید جانیں"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"بہت سست"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"سست"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"ٹھیک ہے"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"متوسط"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"تیز"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"بہت تیز"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-uz/arrays.xml b/libs/WifiTrackerLib/res/values-uz/arrays.xml
index d6decee4c..56c2e91cd 100644
--- a/libs/WifiTrackerLib/res/values-uz/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-uz/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Qidirilmoqda…"</item>
- <item msgid="9055468790485684083">"Ulanmoqda…"</item>
- <item msgid="6099499723199990208">"Autentifikatsiya qilinmoqda…"</item>
- <item msgid="6794055951297347103">"IP manzil olinmoqda…"</item>
- <item msgid="5450920562291300229">"Ulandi"</item>
- <item msgid="6332116533879646145">"Bloklangan"</item>
- <item msgid="294459081501073818">"Uzilmoqda…"</item>
- <item msgid="1577368920272598676">"Uzildi"</item>
- <item msgid="7655843177582495451">"Ulanmadi"</item>
- <item msgid="8953752690917593623">"Bloklandi"</item>
- <item msgid="4400457817750243671">"Signali kuchsiz tarmoqqa vaqtinchalik ulanilmasin"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Qidirilmoqda…"</item>
+ <item msgid="6222852518007967736">"Ulanmoqda…"</item>
+ <item msgid="1176401854208153464">"Autentifikatsiya qilinmoqda…"</item>
+ <item msgid="1377026397901197257">"IP manzil olinmoqda…"</item>
+ <item msgid="7627139816052121509">"Ulangan"</item>
+ <item msgid="1598801023719359130">"Vaqtincha uzilgan"</item>
+ <item msgid="9160765456671002324">"Uzilmoqda…"</item>
+ <item msgid="8013176736494493734">"Uzilgan"</item>
+ <item msgid="4077393480368783785">"Ulanmadi"</item>
+ <item msgid="605372180740008604">"Bloklandi"</item>
+ <item msgid="5102306451432929048">"Signali kuchsiz tarmoqqa vaqtinchalik ulanilmasin"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-uz/strings.xml b/libs/WifiTrackerLib/res/values-uz/strings.xml
index 41ea13aac..6a7a205a8 100644
--- a/libs/WifiTrackerLib/res/values-uz/strings.xml
+++ b/libs/WifiTrackerLib/res/values-uz/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Avtomatik ulanish yoqilmagan"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Saqlangan: <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Avtomatik ravishda ulanilmaydi"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Internetga ulanmagan"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Haqiqiylikni tekshirishda muammo"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Parolni tekshirib, qaytadan urining"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP manzil sozlanmadi"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Yoqilmagan"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Ulanish nuqtasi vaqtinchalik toʻlgan"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tarmoq signali vaqtincha kuchsiz"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Signal kuchsiz. Routerga yaqinlashtiring."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Tarmoqda joy qolmadi. Keyinroq urining."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ulanish imkonsiz. Keyinroq urining."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ulanish imkonsiz. Keyinroq urining."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Uzildi"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Saqlangan"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Trafik hisoblanadi"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Trafik hisoblanmaydi"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"<xliff:g id="NAME">%1$s</xliff:g> orqali ulandi"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"<xliff:g id="NAME">%1$s</xliff:g> ilovasi orqali mavjud"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"<xliff:g id="NAME">%1$s</xliff:g> orqali avtomatik ulandi"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Tarmoqlar reytingi muallifi orqali avtomatik ulandi"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Cheklangan aloqa"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Xususiy DNS server ishlamayapti"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Qurilmaga ulandi. Internetga ulanmagan."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Sifati past"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"–"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Muddati tugagan"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Yozilish uchun bosing"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Obunani davom ettirish va ulanish uchun bosing"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ochilmoqda"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ulanmadi"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Registratsiya tamomlanmoqda…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Registratsiya tamomlanmadi. Qayta urinish uchun tegining."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Registratsiya qilindi. Ulanmoqda…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Bu tarmoqqa qurilma joylashuvini aniqlash imkonini beruvchi SIM identifikator beriladi. "<annotation id="url">"Batafsil"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Juda sekin"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Sekin"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"OK"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Oʻrtacha"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Tez"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Juda tez"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Wi-Fi hozir avtomatik ulanmaydi"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Avtomatik ulanish yoqilmagan"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Saqlangan: <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Avtomatik ravishda ulanilmaydi"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Internetga ulanmagan"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Haqiqiylikni tekshirishda muammo"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Parolni tekshirib, qaytadan urining"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP manzil sozlanmadi"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Yoqilmagan"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Internet kirish nuqtasi vaqtinchalik to‘lgan"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Ulanmagan"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Saqlangan"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Trafik hisoblanadigan tarmoq"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Trafik hisobi yuritilmaydigan tarmoq"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"<xliff:g id="NAME">%1$s</xliff:g> orqali ulandi"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"<xliff:g id="NAME">%1$s</xliff:g> ilovasi orqali mavjud"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"<xliff:g id="NAME">%1$s</xliff:g> orqali avtomatik ulandi"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Tarmoqlar reytingi muallifi orqali avtomatik ulandi"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Cheklangan aloqa"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Xususiy DNS server ishlamayapti"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Internetga ulanmagansiz"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Hech qanday"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Muddati tugagan"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Registratsiya qilish uchun bosing"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Obunani davom ettirish va ulanish uchun bosing"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g> ochilmoqda"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ulanmadi"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Registratsiya tamomlanmoqda…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Registratsiya tamomlanmadi. Qayta urinish uchun tegining."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Registratsiya qilindi. Ulanmoqda…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Bu tarmoqqa qurilma joylashuvini aniqlash imkonini beruvchi SIM identifikator beriladi. "<annotation id="url">"Batafsil"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Juda sekin"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Sekin"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"OK"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"O‘rtacha"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Tez"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Juda tez"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-vi/arrays.xml b/libs/WifiTrackerLib/res/values-vi/arrays.xml
index 730a1082e..4294b6e53 100644
--- a/libs/WifiTrackerLib/res/values-vi/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-vi/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Đang quét…"</item>
- <item msgid="9055468790485684083">"Đang kết nối…"</item>
- <item msgid="6099499723199990208">"Đang xác thực…"</item>
- <item msgid="6794055951297347103">"Đang lấy địa chỉ IP…"</item>
- <item msgid="5450920562291300229">"Đã kết nối"</item>
- <item msgid="6332116533879646145">"Bị tạm ngưng"</item>
- <item msgid="294459081501073818">"Đang ngắt kết nối…"</item>
- <item msgid="1577368920272598676">"Đã ngắt kết nối"</item>
- <item msgid="7655843177582495451">"Không thành công"</item>
- <item msgid="8953752690917593623">"Bị chặn"</item>
- <item msgid="4400457817750243671">"Tạm thời tránh kết nối kém"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Đang quét…"</item>
+ <item msgid="6222852518007967736">"Đang kết nối…"</item>
+ <item msgid="1176401854208153464">"Đang xác thực…"</item>
+ <item msgid="1377026397901197257">"Đang lấy địa chỉ IP…"</item>
+ <item msgid="7627139816052121509">"Đã kết nối"</item>
+ <item msgid="1598801023719359130">"Bị tạm ngưng"</item>
+ <item msgid="9160765456671002324">"Đang ngắt kết nối…"</item>
+ <item msgid="8013176736494493734">"Đã ngắt kết nối"</item>
+ <item msgid="4077393480368783785">"Không thành công"</item>
+ <item msgid="605372180740008604">"Bị chặn"</item>
+ <item msgid="5102306451432929048">"Tạm thời tránh kết nối kém"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-vi/strings.xml b/libs/WifiTrackerLib/res/values-vi/strings.xml
index efc1131a9..8bf92abda 100644
--- a/libs/WifiTrackerLib/res/values-vi/strings.xml
+++ b/libs/WifiTrackerLib/res/values-vi/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Tính năng tự động kết nối đang tắt"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Do ứng dụng <xliff:g id="NAME">%1$s</xliff:g> lưu"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Sẽ không tự động kết nối"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Không có kết nối Internet"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Sự cố xác thực"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Kiểm tra mật khẩu và thử lại"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Lỗi cấu hình IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Đã tắt"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Điểm truy cập đã tạm thời đạt đến giới hạn số lượng thiết bị truy cập"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Tình trạng mạng kém tạm thời"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Tín hiệu yếu. Hãy thử di chuyển đến gần bộ định tuyến hơn."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Mạng bị quá tải. Hãy thử lại sau."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Không thể kết nối. Hãy thử lại sau."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Không thể kết nối. Hãy thử lại sau."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Đã ngắt kết nối"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Đã lưu"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Đo lượng dữ liệu"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Không đo lượng dữ liệu"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Đã kết nối qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Được cung cấp qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Đã tự động kết nối qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Đã tự động kết nối qua nhà cung cấp dịch vụ xếp hạng mạng"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Kết nối giới hạn"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Không thể truy cập máy chủ DNS riêng tư"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Đã kết nối với thiết bị. Không thể cung cấp Internet."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Chất lượng thấp"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Không có"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Đã hết hạn"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Nhấn để đăng ký"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Nhấn để gia hạn gói đăng ký và kết nối"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Đang mở <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Không thể kết nối"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Đang hoàn tất đăng ký…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Không thể hoàn tất quá trình đăng ký. Hãy nhấn để thử lại."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Đã đăng ký xong. Đang kết nối…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Mạng này nhận được một mã nhận dạng SIM có thể dùng để theo dõi vị trí của thiết bị. "<annotation id="url">"Tìm hiểu thêm"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Rất chậm"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Chậm"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"Khá tốt"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Trung bình"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Nhanh"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Rất nhanh"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"Tạm thời, Wi-Fi sẽ không tự động kết nối"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Tính năng tự động kết nối đang tắt"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Do ứng dụng <xliff:g id="NAME">%1$s</xliff:g> lưu"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Sẽ không tự động kết nối"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Không có kết nối Internet"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Sự cố xác thực"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Kiểm tra mật khẩu và thử lại"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Lỗi cấu hình IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Đã tắt"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Điểm truy cập tạm thời đã đạt đến giới hạn số lượng thiết bị truy cập."</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Đã ngắt kết nối"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Đã lưu"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Đo lượng dữ liệu"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Không đo lượng dữ liệu"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Đã kết nối qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Được cung cấp qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Đã tự động kết nối qua <xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Tự động được kết nối qua nhà cung cấp dịch vụ xếp hạng mạng"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Kết nối giới hạn"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Không thể truy cập máy chủ DNS riêng tư"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Không có Internet"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Không"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Đã hết hạn"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Nhấn để đăng ký"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Nhấn để gia hạn gói đăng ký và kết nối"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Đang mở <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Không thể kết nối"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Đang hoàn tất việc đăng ký…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Không thể hoàn tất việc đăng ký. Hãy nhấn để thử lại."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Đã đăng ký xong. Đang kết nối…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Mạng này nhận được một mã nhận dạng SIM có thể dùng để theo dõi vị trí của thiết bị. "<annotation id="url">"Tìm hiểu thêm"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Rất chậm"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Chậm"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"Khá tốt"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Trung bình"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Nhanh"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Rất nhanh"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rCN/arrays.xml b/libs/WifiTrackerLib/res/values-zh-rCN/arrays.xml
index 530080ab8..72c3cf422 100644
--- a/libs/WifiTrackerLib/res/values-zh-rCN/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rCN/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"正在扫描…"</item>
- <item msgid="9055468790485684083">"正在连接…"</item>
- <item msgid="6099499723199990208">"正在验证身份…"</item>
- <item msgid="6794055951297347103">"正在获取 IP 地址…"</item>
- <item msgid="5450920562291300229">"已连接"</item>
- <item msgid="6332116533879646145">"已暂停"</item>
- <item msgid="294459081501073818">"正在断开连接…"</item>
- <item msgid="1577368920272598676">"已断开连接"</item>
- <item msgid="7655843177582495451">"失败"</item>
- <item msgid="8953752690917593623">"已屏蔽"</item>
- <item msgid="4400457817750243671">"连接状况不佳,暂时停用"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"正在扫描…"</item>
+ <item msgid="6222852518007967736">"正在连接…"</item>
+ <item msgid="1176401854208153464">"正在验证身份…"</item>
+ <item msgid="1377026397901197257">"正在获取 IP 地址…"</item>
+ <item msgid="7627139816052121509">"已连接"</item>
+ <item msgid="1598801023719359130">"已暂停"</item>
+ <item msgid="9160765456671002324">"正在断开连接…"</item>
+ <item msgid="8013176736494493734">"已断开连接"</item>
+ <item msgid="4077393480368783785">"失败"</item>
+ <item msgid="605372180740008604">"已屏蔽"</item>
+ <item msgid="5102306451432929048">"暂时关闭(网络状况不佳)"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rCN/strings.xml b/libs/WifiTrackerLib/res/values-zh-rCN/strings.xml
index 8a1b5a395..0f9737dc2 100644
--- a/libs/WifiTrackerLib/res/values-zh-rCN/strings.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rCN/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"自动连接已关闭"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"已由<xliff:g id="NAME">%1$s</xliff:g>保存"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"无法自动连接"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"无法访问互联网"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"身份验证出现问题"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"请检查密码是否正确,然后重试"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"IP 配置失败"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"已停用"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"接入点暂时满载"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"临时性网络连接状况不佳"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"信号微弱。请尝试移到离路由器更近的地方。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"网络已过载。请稍后重试。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"无法连接。请稍后重试。"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"无法连接,请稍后重试。"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"已断开连接"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"已保存"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"按流量计费"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"不按流量计费"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"已通过<xliff:g id="NAME">%1$s</xliff:g>连接"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"可通过<xliff:g id="NAME">%1$s</xliff:g>使用"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"已通过<xliff:g id="NAME">%1$s</xliff:g>自动连接"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"已通过网络评分服务提供方自动连接"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"网络连接受限"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"无法访问专用 DNS 服务器"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"已连接到设备,但无法提供互联网连接。"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"质量不佳"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"无"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"已过期"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"点按即可注册"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"点按即可续订并连接"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"正在打开<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"无法连接"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"正在完成注册…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"无法完成注册。点按即可重试。"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"注册完毕。正在连接…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"此网络会收到可用于跟踪设备位置的 SIM 卡 ID。"<annotation id="url">"了解详情"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"很慢"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"慢"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"尚可"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"中"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"快"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"很快"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"WLAN 暂时无法自动连接"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"自动连接已关闭"</string>
+ <string name="saved_network" msgid="6241977554502802914">"由“<xliff:g id="NAME">%1$s</xliff:g>”保存"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"无法自动连接"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"无法访问互联网"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"身份验证出现问题"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"请检查密码,然后重试"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP 配置失败"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"已停用"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"接入点暂时满载"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"已断开连接"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"已保存"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"按流量计费"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"不按流量计费"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"已通过<xliff:g id="NAME">%1$s</xliff:g>连接到网络"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"可通过“<xliff:g id="NAME">%1$s</xliff:g>”使用"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"已通过<xliff:g id="NAME">%1$s</xliff:g>自动连接"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"已自动连接(通过网络评分服务提供方)"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"网络连接受限"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"无法访问私人 DNS 服务器"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"无法访问互联网"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"无"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"已失效"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"点按即可注册"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"点按即可续订并连接"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"正在打开<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"无法连接"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"正在完成注册…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"无法完成注册。点按即可重试。"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"注册完毕。正在连接…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"此网络会收到可用于跟踪设备位置的 SIM 卡 ID。"<annotation id="url">"了解详情"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"很慢"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"慢"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"良好"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"适中"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"快"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"很快"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rHK/arrays.xml b/libs/WifiTrackerLib/res/values-zh-rHK/arrays.xml
index 71e482162..b7306d604 100644
--- a/libs/WifiTrackerLib/res/values-zh-rHK/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rHK/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"正在掃瞄…"</item>
- <item msgid="9055468790485684083">"正在連線…"</item>
- <item msgid="6099499723199990208">"正在認證…"</item>
- <item msgid="6794055951297347103">"正在取得 IP 位址…"</item>
- <item msgid="5450920562291300229">"已連線"</item>
- <item msgid="6332116533879646145">"已暫停"</item>
- <item msgid="294459081501073818">"正在中斷連線…"</item>
- <item msgid="1577368920272598676">"已中斷連線"</item>
- <item msgid="7655843177582495451">"失敗"</item>
- <item msgid="8953752690917593623">"已封鎖"</item>
- <item msgid="4400457817750243671">"暫不使用訊號較弱的連線"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"正在掃瞄…"</item>
+ <item msgid="6222852518007967736">"正在連線…"</item>
+ <item msgid="1176401854208153464">"正在認證…"</item>
+ <item msgid="1377026397901197257">"正在取得 IP 位址…"</item>
+ <item msgid="7627139816052121509">"已連線"</item>
+ <item msgid="1598801023719359130">"已暫停"</item>
+ <item msgid="9160765456671002324">"正在解除連接…"</item>
+ <item msgid="8013176736494493734">"連線中斷"</item>
+ <item msgid="4077393480368783785">"失敗"</item>
+ <item msgid="605372180740008604">"已封鎖"</item>
+ <item msgid="5102306451432929048">"暫不使用訊號較弱的連線"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rHK/strings.xml b/libs/WifiTrackerLib/res/values-zh-rHK/strings.xml
index 5da6428b5..e8cc55433 100644
--- a/libs/WifiTrackerLib/res/values-zh-rHK/strings.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rHK/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"自動連線功能已關閉"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"由「<xliff:g id="NAME">%1$s</xliff:g>」儲存"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"不會自動連線"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"沒有互聯網連線"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"驗證問題"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"請檢查密碼,然後再試一次"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"無法設定 IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"已停用"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"存取點暫時已滿"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"暫時網絡連線欠佳"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"訊號偏弱,請嘗試移近路由器。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"網絡流量超出上限,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"無法連線,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"無法連線,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"已中斷連線"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"已儲存"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"按用量收費"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"非按用量收費"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"可透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」自動連線"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"已透過網絡評分供應商自動連線"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"連線受限"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"無法存取私人 DNS 伺服器"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"已連接裝置,但無法提供互聯網連線。"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"品質欠佳"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"無"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"已過期"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"輕按即可登入"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"輕按即可續購訂閱並連線"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"正在開啟 <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"無法連線"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"正在完成申請…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"無法完成申請。輕按即可重試。"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"已完成申請。連接中…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"此網絡會接收可用於追蹤裝置位置的 SIM 卡 ID。"<annotation id="url">"瞭解詳情"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"非常慢"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"慢"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"好"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"中"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"快"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"非常快"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"目前系統不會自動連線至 Wi-Fi"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"自動連線功能已關閉"</string>
+ <string name="saved_network" msgid="6241977554502802914">"由「<xliff:g id="NAME">%1$s</xliff:g>」儲存"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"不會自動連線"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"無法連接互聯網"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"驗證問題"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"請檢查密碼,然後再試一次"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"無法設定 IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"已停用"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"存取點暫時已滿"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"已解除連接"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"已儲存"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"按用量收費"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"不限數據用量收費"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"可透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」自動連線"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"已透過網絡評分供應商自動連線"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"連線受限"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"無法存取私人 DNS 伺服器"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"沒有互聯網連線"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"無"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"已過期"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"輕按即可登入"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"輕按即可續購訂閱並連線"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"正在開啟 <xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"無法連接"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"正在完成申請…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"無法完成申請。輕按即可重試。"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"已完成申請。連接中…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"此網絡會接收可用於追蹤裝置位置的 SIM 卡 ID。"<annotation id="url">"瞭解詳情"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"非常慢"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"慢"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"良好"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"適中"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"快"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"非常快"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rTW/arrays.xml b/libs/WifiTrackerLib/res/values-zh-rTW/arrays.xml
index 068574571..b89603dd4 100644
--- a/libs/WifiTrackerLib/res/values-zh-rTW/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rTW/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"掃描中…"</item>
- <item msgid="9055468790485684083">"連線中…"</item>
- <item msgid="6099499723199990208">"驗證中…"</item>
- <item msgid="6794055951297347103">"正在取得 IP 位址…"</item>
- <item msgid="5450920562291300229">"已連線"</item>
- <item msgid="6332116533879646145">"已暫停使用"</item>
- <item msgid="294459081501073818">"正在中斷連線…"</item>
- <item msgid="1577368920272598676">"已中斷連線"</item>
- <item msgid="7655843177582495451">"失敗"</item>
- <item msgid="8953752690917593623">"已封鎖"</item>
- <item msgid="4400457817750243671">"暫時不使用訊號較弱的連線"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"掃描中…"</item>
+ <item msgid="6222852518007967736">"連線中…"</item>
+ <item msgid="1176401854208153464">"驗證中…"</item>
+ <item msgid="1377026397901197257">"正在取得 IP 位址…"</item>
+ <item msgid="7627139816052121509">"已連線"</item>
+ <item msgid="1598801023719359130">"已暫停使用"</item>
+ <item msgid="9160765456671002324">"正在中斷連線…"</item>
+ <item msgid="8013176736494493734">"已中斷連線"</item>
+ <item msgid="4077393480368783785">"不成功"</item>
+ <item msgid="605372180740008604">"已封鎖"</item>
+ <item msgid="5102306451432929048">"暫時不使用訊號較弱的連線"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zh-rTW/strings.xml b/libs/WifiTrackerLib/res/values-zh-rTW/strings.xml
index 62e4da130..254d34db0 100644
--- a/libs/WifiTrackerLib/res/values-zh-rTW/strings.xml
+++ b/libs/WifiTrackerLib/res/values-zh-rTW/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"自動連線功能已關閉"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"由「<xliff:g id="NAME">%1$s</xliff:g>」儲存"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"不會自動連線"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"沒有網際網路連線"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"驗證問題"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"請檢查密碼,然後再試一次"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"無法設定 IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"已停用"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"存取點暫時滿載"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"暫時性網路連線品質不佳"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"網路訊號微弱,建議你移動到比較靠近路由器的位置。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"網路流量超載,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"無法連線,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"無法連線,請稍後再試。"</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"已中斷連線"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"已儲存"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"計量付費"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"非計量付費"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"可透過「<xliff:g id="NAME">%1$s</xliff:g>」使用"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"已透過「<xliff:g id="NAME">%1$s</xliff:g>」自動連線"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"已透過連線品質評估供應商自動連線"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"連線能力受限"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"無法存取私人 DNS 伺服器"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"已連上裝置,但無法提供網際網路連線。"</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"品質不佳"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"無"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"已失效"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"輕觸即可註冊"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"輕觸即可續訂並連線"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"正在開啟「<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>」"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"無法連線"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"正在完成註冊程序…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"無法完成註冊程序。輕觸即可重試。"</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"註冊完成。連線中…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"這個網路會收到可用於追蹤裝置位置的 SIM 卡 ID。"<annotation id="url">"瞭解詳情"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"非常慢"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"慢"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"尚可"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"中"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"快"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"非常快"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"目前不會自動連上 Wi-Fi"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"自動連線功能已關閉"</string>
+ <string name="saved_network" msgid="6241977554502802914">"由「<xliff:g id="NAME">%1$s</xliff:g>」儲存"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"不會自動連線"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"沒有可用的網際網路連線"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"驗證問題"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"請檢查密碼,然後再試一次"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"IP 設定失敗"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"已停用"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"存取點暫時滿載"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"已中斷連線"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"已儲存"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"計量付費"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"非計量付費"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"透過「<xliff:g id="NAME">%1$s</xliff:g>」連線"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"可透過「<xliff:g id="NAME">%1$s</xliff:g>」使用"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"透過「<xliff:g id="NAME">%1$s</xliff:g>」自動連線"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"已透過網路評分供應商自動連線"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"連線能力受限"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"無法存取私人 DNS 伺服器"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"沒有網際網路連線"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"無"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"已失效"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"輕觸即可註冊"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"輕觸即可續訂並連線"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"正在開啟「<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>」"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"無法連線"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"正在完成註冊程序…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"無法完成註冊程序。輕觸即可重試。"</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"註冊完成。連線中…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"這個網路會收到可用於追蹤裝置位置的 SIM 卡 ID。"<annotation id="url">"瞭解詳情"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"非常慢"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"慢"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"確定"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"適中"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"快"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"非常快"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zu/arrays.xml b/libs/WifiTrackerLib/res/values-zu/arrays.xml
index 942921929..867c56892 100644
--- a/libs/WifiTrackerLib/res/values-zu/arrays.xml
+++ b/libs/WifiTrackerLib/res/values-zu/arrays.xml
@@ -20,18 +20,18 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string-array name="wifitrackerlib_wifi_status">
- <item msgid="4878873480828298657"></item>
- <item msgid="5782995872855767551">"Iyaskena…"</item>
- <item msgid="9055468790485684083">"Iyaxhuma…"</item>
- <item msgid="6099499723199990208">"Iyaqinisekisa…"</item>
- <item msgid="6794055951297347103">"Ithola ikheli lasesizindeni se-inthanethi…"</item>
- <item msgid="5450920562291300229">"Ixhunyiwe"</item>
- <item msgid="6332116533879646145">"Kumiswe okwesikhashana"</item>
- <item msgid="294459081501073818">"Iyanqamula…"</item>
- <item msgid="1577368920272598676">"Inqamukile"</item>
- <item msgid="7655843177582495451">"Akuphumelelanga"</item>
- <item msgid="8953752690917593623">"Ivinjiwe"</item>
- <item msgid="4400457817750243671">"Okwesikhashana ivikela ukuxhumana okungaqinile"</item>
+ <string-array name="wifi_status">
+ <item msgid="8763475525292171481"></item>
+ <item msgid="903308535197209786">"Iyaskena…"</item>
+ <item msgid="6222852518007967736">"Iyaxhuma…"</item>
+ <item msgid="1176401854208153464">"Iyaqinisekisa…"</item>
+ <item msgid="1377026397901197257">"Ithola ikheli le-IP…"</item>
+ <item msgid="7627139816052121509">"Ixhunyiwe"</item>
+ <item msgid="1598801023719359130">"Kumiswe okwesikhashana"</item>
+ <item msgid="9160765456671002324">"Iyanqamula…"</item>
+ <item msgid="8013176736494493734">"Inqamukile"</item>
+ <item msgid="4077393480368783785">"Akuphumelelanga"</item>
+ <item msgid="605372180740008604">"Ivinjiwe"</item>
+ <item msgid="5102306451432929048">"Ivimbela ukuxhumeka okungekho kuhle kahle okwesikhashana"</item>
</string-array>
</resources>
diff --git a/libs/WifiTrackerLib/res/values-zu/strings.xml b/libs/WifiTrackerLib/res/values-zu/strings.xml
index 41b1e1ac8..c6d5f81c7 100644
--- a/libs/WifiTrackerLib/res/values-zu/strings.xml
+++ b/libs/WifiTrackerLib/res/values-zu/strings.xml
@@ -16,48 +16,41 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
- <string name="wifitrackerlib_summary_separator" msgid="6613897475167609815">" / "</string>
- <string name="wifitrackerlib_auto_connect_disable" msgid="4714835547164460651">"Ukuxhuma ngokuzenzakalelayo kuvaliwe"</string>
- <string name="wifitrackerlib_saved_network" msgid="5353460010746484376">"Kulondolozwe ngu-<xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect" msgid="6618216332537706908">"Ngeke ixhume ngokuzenzekelayo"</string>
- <string name="wifitrackerlib_wifi_no_internet" msgid="4998563744669636949">"Akukho ukufinyelela kwe-inthanethi"</string>
- <string name="wifitrackerlib_wifi_disabled_password_failure" msgid="2850244218754633550">"Inkinga yokufakazela ubuqiniso"</string>
- <string name="wifitrackerlib_wifi_check_password_try_again" msgid="2327777719175574699">"Hlola iphasiwedi uphinde uzame futhi"</string>
- <string name="wifitrackerlib_wifi_disabled_network_failure" msgid="3046956554224277166">"Ukwehluleka kokulungiswa kwe-IP"</string>
- <string name="wifitrackerlib_wifi_disabled_generic" msgid="4278806060337007814">"Ikhutshaziwe"</string>
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta" msgid="931922372010639716">"Iphoyinti lokufinyelela ligcwele okwesikhashana"</string>
- <string name="wifitrackerlib_wifi_poor_channel_conditions" msgid="26484680900376236">"Izimo zesikhashana zenethiwekhi engasimeme"</string>
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi" msgid="5078611817423181773">"Isignali ebuthakathaka. Zama ukusondela eduze nomzila."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated" msgid="4418848919914618807">"Inethiwekhi ingaphezu komthamo. Zama futhi emuva kwesikhathi."</string>
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect" msgid="2692286425448897083">"Ayikwazi ukuxhuma. Zama futhi emuva kwesikhathi."</string>
- <string name="wifitrackerlib_wifi_network_not_found" msgid="1308764769892463388">"Ayikwazi ukuxhuma. Zama futhi emuva kwesikhathi."</string>
- <string name="wifitrackerlib_wifi_disconnected" msgid="3320414360982942679">"Inqamukile"</string>
- <string name="wifitrackerlib_wifi_remembered" msgid="2406091442008343041">"Kulondoloziwe"</string>
- <string name="wifitrackerlib_wifi_metered_label" msgid="8818508951778620385">"Kulinganisiwe"</string>
- <string name="wifitrackerlib_wifi_unmetered_label" msgid="1902150402929678469">"Akulinganiselwa"</string>
- <string name="wifitrackerlib_connected_via_app" msgid="7823921840931347560">"Ixhumeke nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_available_via_app" msgid="8556844256194837469">"Kutholakala nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer" msgid="6306655070903763086">"Kuxhunywe ngokuzenzekelayo nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_connected_via_network_scorer_default" msgid="3436792128688839692">"Kuxhunywe ngokuzenzakalelayo ngomhlinzeki wesilinganiso wenethiwekhi"</string>
- <string name="wifitrackerlib_wifi_limited_connection" msgid="4234326409980991740">"Iqoqo elikhawulelwe"</string>
- <string name="wifitrackerlib_private_dns_broken" msgid="6049401148262718707">"Iseva eyimfihlo ye-DNS ayikwazi ukufinyelelwa"</string>
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet" msgid="3803471522215612745">"Ixhunywe kudivayisi. Ayikwazi ukunikeza i-inthanethi."</string>
- <string name="wifi_connected_low_quality" msgid="4478331645458058445">"Ikhwalithi ephansi"</string>
- <string name="wifitrackerlib_wifi_security_none" msgid="2686062484642847280">"Lutho"</string>
- <string name="wifitrackerlib_wifi_passpoint_expired" msgid="7974960573887452566">"Iphelelwe isikhathi"</string>
- <string name="wifitrackerlib_tap_to_sign_up" msgid="3897017015910817402">"Thepha ukuze ubhalisele"</string>
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect" msgid="6048420776676138069">"Thepha ukuze wenze kabusha okubhalisile futhi uxhume"</string>
- <string name="wifitrackerlib_osu_opening_provider" msgid="7128677439450712558">"Ivula i-<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
- <string name="wifitrackerlib_osu_connect_failed" msgid="3872233609000700930">"Ayikwazanga ukuxhumeka"</string>
- <string name="wifitrackerlib_osu_completing_sign_up" msgid="4359503050543182480">"Iqedela ukubhalisa…"</string>
- <string name="wifitrackerlib_osu_sign_up_failed" msgid="3964140125523395898">"Ayikwazanga ukuqedelela ukubhalisa. Thepha ukuze uzame futhi."</string>
- <string name="wifitrackerlib_osu_sign_up_complete" msgid="3279606633343124580">"Ukubhalisa kuqediwe. Iyaxhuma…"</string>
- <string name="wifitrackerlib_imsi_protection_warning" msgid="7202210931586169466">"Le nethiwekhi ithola i-ISIM D engasetshenziselwa ukulandelela indawo yedivayisi. "<annotation id="url">"Funda kabanzi"</annotation></string>
- <string name="wifitrackerlib_speed_label_very_slow" msgid="6606409259798814244">"Phansi kakhulu"</string>
- <string name="wifitrackerlib_speed_label_slow" msgid="7327906382011957760">"Phansi"</string>
- <string name="wifitrackerlib_speed_label_okay" msgid="6656684124654881956">"KULUNGILE"</string>
- <string name="wifitrackerlib_speed_label_medium" msgid="2249280306855290094">"Okulingene"</string>
- <string name="wifitrackerlib_speed_label_fast" msgid="2593921008376044650">"Sheshayo"</string>
- <string name="wifitrackerlib_speed_label_very_fast" msgid="4162759416291355173">"Kushesha kakhulu"</string>
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now" msgid="4923161724964349851">"I-Wi-Fi ngeke ixhume ngokuzenzakalelayo okwamanje"</string>
+ <string name="summary_separator" msgid="6533720408587140819">" / "</string>
+ <string name="auto_connect_disable" msgid="1078319396240632542">"Ukuxhuma ngokuzenzakalelayo kuvaliwe"</string>
+ <string name="saved_network" msgid="6241977554502802914">"Kulondolozwe ngu-<xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="wifi_no_internet_no_reconnect" msgid="3089980800841926268">"Ngeke ixhume ngokuzenzekelayo"</string>
+ <string name="wifi_no_internet" msgid="4461212237521310895">"Akukho ukufinyelela kwe-inthanethi"</string>
+ <string name="wifi_disabled_password_failure" msgid="3015007143699702403">"Inkinga yokufakazela ubuqiniso"</string>
+ <string name="wifi_check_password_try_again" msgid="2643230209986217827">"Hlola iphasiwedi uphinde uzame futhi"</string>
+ <string name="wifi_disabled_network_failure" msgid="6506742207778007439">"Ukwehluleka kokulungiswa kwe-IP"</string>
+ <string name="wifi_disabled_generic" msgid="8307050327779256414">"Akusebenzi"</string>
+ <string name="wifi_ap_unable_to_handle_new_sta" msgid="6552198761671428871">"Iphoyinti lokufinyelela ligcwele okwesikhashana"</string>
+ <string name="wifi_disconnected" msgid="3720926757662831062">"Inqamukile"</string>
+ <string name="wifi_remembered" msgid="5126903736498678708">"Kulondoloziwe"</string>
+ <string name="wifi_metered_label" msgid="1362621600006544014">"Kulinganisiwe"</string>
+ <string name="wifi_unmetered_label" msgid="499466875639448350">"Akulinganiselwa"</string>
+ <string name="connected_via_app" msgid="1818040967936972127">"Ixhumeke nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="available_via_app" msgid="9110324040292242769">"Kutholakala nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer" msgid="209764314005159012">"Kuxhunywe ngokuzenzekelayo nge-<xliff:g id="NAME">%1$s</xliff:g>"</string>
+ <string name="connected_via_network_scorer_default" msgid="3084818437004202462">"Kuxhunywe ngokuzenzakalelayo ngomhlinzeki wesilinganiso wenethiwekhi"</string>
+ <string name="wifi_limited_connection" msgid="3646701342701276239">"Iqoqo elikhawulelwe"</string>
+ <string name="private_dns_broken" msgid="2212227512243587416">"Iseva eyimfihlo ye-DNS ayikwazi ukufinyelelwa"</string>
+ <string name="wifi_connected_no_internet" msgid="7273909077465731259">"Ayikho i-inthanethi"</string>
+ <string name="wifi_security_none" msgid="6680263031386719053">"Lutho"</string>
+ <string name="wifi_passpoint_expired" msgid="3257021415099577815">"Iphelelwe isikhathi"</string>
+ <string name="tap_to_sign_up" msgid="2409214576606918295">"Thepha ukuze ubhalisele"</string>
+ <string name="tap_to_renew_subscription_and_connect" msgid="375976298920840105">"Thepha ukuze wenze kabusha okubhalisile futhi uxhume"</string>
+ <string name="osu_opening_provider" msgid="5633521771769175139">"Ivula i-<xliff:g id="PASSPOINTPROVIDER">%1$s</xliff:g>"</string>
+ <string name="osu_connect_failed" msgid="8503501619299851793">"Ayikwazanga ukuxhumeka"</string>
+ <string name="osu_completing_sign_up" msgid="7188493241442946231">"Iqedela ukubhalisa…"</string>
+ <string name="osu_sign_up_failed" msgid="2725057866968590279">"Ayikwazanga ukuqedelela ukubhalisa. Thepha ukuze uzame futhi."</string>
+ <string name="osu_sign_up_complete" msgid="7013805426618985953">"Ukubhalisa kuqediwe. Iyaxhuma…"</string>
+ <string name="imsi_protection_warning" msgid="5231726821588271569">"Le nethiwekhi ithola i-SIM ID engasetshenziselwa ukulandelela indawo yedivayisi. "<annotation id="url">"Funda kabanzi"</annotation></string>
+ <string name="speed_label_very_slow" msgid="2401582671941367179">"Phansi kakhulu"</string>
+ <string name="speed_label_slow" msgid="8410385703344502127">"Phansi"</string>
+ <string name="speed_label_okay" msgid="3741857805086997968">"KULUNGILE"</string>
+ <string name="speed_label_medium" msgid="3175703848952862009">"Okumaphakathi"</string>
+ <string name="speed_label_fast" msgid="8344116097613544322">"Sheshayo"</string>
+ <string name="speed_label_very_fast" msgid="1595806641512447877">"Kushesha kakhulu"</string>
</resources>
diff --git a/libs/WifiTrackerLib/res/values/arrays.xml b/libs/WifiTrackerLib/res/values/arrays.xml
index 93a827cfb..9292a5e48 100644
--- a/libs/WifiTrackerLib/res/values/arrays.xml
+++ b/libs/WifiTrackerLib/res/values/arrays.xml
@@ -23,7 +23,7 @@
<!-- Match this with the order of NetworkInfo.DetailedState. --> <skip />
<!-- Wi-Fi settings. The status messages when the network is unknown. -->
- <string-array name="wifitrackerlib_wifi_status">
+ <string-array name="wifi_status">
<!-- Status message of Wi-Fi when it is idle. -->
<item></item>
<!-- Status message of Wi-Fi when it is scanning. -->
diff --git a/libs/WifiTrackerLib/res/values/strings.xml b/libs/WifiTrackerLib/res/values/strings.xml
index 4b4741a6c..7e81b5877 100644
--- a/libs/WifiTrackerLib/res/values/strings.xml
+++ b/libs/WifiTrackerLib/res/values/strings.xml
@@ -15,211 +15,181 @@
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Summary text separator for short descriptions (eg. "Fast / Connected"). [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_summary_separator">" / "</string>
+ <string name="summary_separator">" / "</string>
<!-- Strings for labeling Wi-Fi Auto-Connection is disabled. Wi-Fi Auto-Connection is a feature
for users to specify if a Wi-Fi network will be auto connected when it's reachable. [CHAR LIMIT=60] -->
- <string name="wifitrackerlib_auto_connect_disable">Auto-connect is off</string>
+ <string name="auto_connect_disable">Auto-connect is off</string>
<!-- Package name for Settings app-->
- <string name="wifitrackerlib_settings_package" translatable="false">com.android.settings</string>
+ <string name="settings_package" translatable="false">com.android.settings</string>
<!-- Package name for Certinstaller app-->
- <string name="wifitrackerlib_certinstaller_package" translatable="false">com.android.certinstaller</string>
+ <string name="certinstaller_package" translatable="false">com.android.certinstaller</string>
<!-- Summary for saved networks [CHAR LIMIT=NONE]-->
- <string name="wifitrackerlib_saved_network">Saved by <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
+ <string name="saved_network">Saved by <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
<!-- Summary for the network but no internet connection was detected. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_no_internet_no_reconnect">Won\u2019t automatically connect</string>
+ <string name="wifi_no_internet_no_reconnect">Won\u2019t automatically connect</string>
<!-- Summary for the remembered network but no internet connection was detected. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_no_internet">No internet access</string>
+ <string name="wifi_no_internet">No internet access</string>
<!-- Status for networks disabled from authentication failure (wrong password
or certificate). [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_disabled_password_failure">Authentication problem</string>
+ <string name="wifi_disabled_password_failure">Authentication problem</string>
<!-- Message shown when the user likely entered an incorrect password for a wifi network [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_check_password_try_again">Check password and try again</string>
+ <string name="wifi_check_password_try_again">Check password and try again</string>
<!-- Status for networked disabled from a DNS or DHCP failure [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_disabled_network_failure">IP configuration failure</string>
+ <string name="wifi_disabled_network_failure">IP configuration failure</string>
<!-- Status for networks disabled for unknown reason [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_disabled_generic">Disabled</string>
+ <string name="wifi_disabled_generic">Disabled</string>
- <!-- Summary for networks failing to connect due to one of the following reasons:
- association rejection status 17 - AP full,
- association rejection status 30 - AP rejected the device temporarily
- disconnection reason code 5 - AP can't handle all existing stations [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_ap_unable_to_handle_new_sta">Access point temporarily full</string>
-
- <!-- Summary for networks failing to connect due to association rejection status 34, poor channel conditions [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_poor_channel_conditions">Temporary poor network conditions</string>
-
- <!-- Summary for networks failing to connect due to association rejection status 17 or 30, with
- MBO association disallowed indication attribute reason code: Insufficient RSSI,
- or association rejection status 34, with OCE RSSI based association rejection information [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi">Weak signal. Try moving closer to the router.</string>
-
- <!-- Summary for networks failing to connect due to association rejection status 17 or 30, with
- MBO association disallowed indication attribute reason code: maximum number of associated stations reached, [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated">Network is over capacity. Try again later.</string>
-
- <!-- Summary for networks failing to connect due to association rejection status 17 or 30, with
- MBO association disallowed indication attribute with one of the following reason codes:
- Air interface is overloaded,
- Authentication server overloaded,
- Reserved/Unspecified [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect">Can\'t connect. Try again later.</string>
-
- <!-- Summary for networks failing to connect due to failed to find a network in supplicant scan result
- which matches the network requested by framework for connection (including network capabilities) [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_network_not_found">Can\'t connect. Try again later.</string>
+ <!-- Summary for networks failing to connect due to association rejection status 17, AP full [CHAR LIMIT=NONE] -->
+ <string name="wifi_ap_unable_to_handle_new_sta">Access point temporarily full</string>
<!-- Summary for the disconnected network. [CHAR LIMIT=40] -->
- <string name="wifitrackerlib_wifi_disconnected">Disconnected</string>
+ <string name="wifi_disconnected">Disconnected</string>
<!-- Summary for the remembered network. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_remembered">Saved</string>
+ <string name="wifi_remembered">Saved</string>
<!-- Label indicating network has been manually marked as metered [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_metered_label">Metered</string>
+ <string name="wifi_metered_label">Metered</string>
<!-- Label indicating network has been manually marked as unmetered [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_unmetered_label">Unmetered</string>
+ <string name="wifi_unmetered_label">Unmetered</string>
<!-- Status message of Wi-Fi when it is connected by a app (via suggestion or network request). [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_connected_via_app">Connected via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
+ <string name="connected_via_app">Connected via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
<!-- Summary for a network suggested by an app. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_available_via_app">Available via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
+ <string name="available_via_app">Available via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
<!-- Status message of Wi-Fi when it is automatically connected by a network recommendation provider. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_connected_via_network_scorer">Automatically connected via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
+ <string name="connected_via_network_scorer">Automatically connected via <xliff:g id="name" example="Wifi App">%1$s</xliff:g></string>
<!-- Status message of Wi-Fi when it is automatically connected by a default network recommendation provider. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_connected_via_network_scorer_default">Automatically connected via network rating provider</string>
+ <string name="connected_via_network_scorer_default">Automatically connected via network rating provider</string>
<!-- Summary for connected wifi network with partial internet connectivity [CHAR LIMIT=50] -->
- <string name="wifitrackerlib_wifi_limited_connection">Limited connection</string>
+ <string name="wifi_limited_connection">Limited connection</string>
<!-- Summary for connected network without internet due to private dns validation failed [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_private_dns_broken">Private DNS server cannot be accessed</string>
+ <string name="private_dns_broken">Private DNS server cannot be accessed</string>
- <!-- Summary for connected wifi network without internet [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_wifi_connected_cannot_provide_internet">
- Connected to device. Can\'t provide internet.</string>
+ <!-- Summary for Connected wifi network without internet [CHAR LIMIT=NONE] -->
+ <string name="wifi_connected_no_internet">No internet</string>
- <!-- Summary for Connected wifi network with a low quality connection [CHAR LIMIT=NONE] -->
- <string name="wifi_connected_low_quality">Low quality</string>
+ <!-- Do not translate. Concise terminology for wifi with 802.1x EAP security -->
+ <string name="wifi_security_short_eap" translatable="false">802.1x</string>
- <!-- Do not translate. Concise terminology for wifi with WPA/WPA2 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_short_eap_wpa_wpa2" translatable="false">WPA/WPA2-EAP</string>
+ <!-- Do not translate. Concise terminology for wifi with 802.1x EAP security -->
+ <string name="wifi_security_eap" translatable="false">WPA/WPA2/WPA3-Enterprise</string>
- <!-- Do not translate. Concise terminology for wifi with WPA/WPA2 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_eap_wpa_wpa2" translatable="false">WPA/WPA2-Enterprise</string>
+ <!-- Do not translate. Concise terminology for wifi with WPA 802.1x EAP security -->
+ <string name="wifi_security_short_eap_wpa" translatable="false">WPA-EAP</string>
- <!-- Do not translate. Concise terminology for wifi with WPA3 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_short_eap_wpa3" translatable="false">WPA3-EAP</string>
+ <!-- Do not translate. Concise terminology for wifi with WPA 802.1x EAP security -->
+ <string name="wifi_security_eap_wpa" translatable="false">WPA-Enterprise</string>
- <!-- Do not translate. Concise terminology for wifi with WPA3 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_eap_wpa3" translatable="false">WPA3-Enterprise</string>
+ <!-- Do not translate. Concise terminology for wifi with WPA2/WPA3 802.1x EAP security -->
+ <string name="wifi_security_short_eap_wpa2_wpa3" translatable="false">RSN-EAP</string>
- <!-- Do not translate. Concise terminology for wifi with WPA/WPA2/WPA3 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_short_eap_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3-EAP</string>
-
- <!-- Do not translate. Concise terminology for wifi with WPA/WPA2/WPA3 802.1x EAP security -->
- <string name="wifitrackerlib_wifi_security_eap_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3-Enterprise</string>
+ <!-- Do not translate. Concise terminology for wifi with WPA2/WPA3 802.1x EAP security -->
+ <string name="wifi_security_eap_wpa2_wpa3" translatable="false">WPA2/WPA3-Enterprise</string>
<!-- Do not translate. Concise terminology for wifi with 802.1x EAP Suite-B-192 security -->
- <string name="wifitrackerlib_wifi_security_short_eap_suiteb" translatable="false">Suite-B-192</string>
+ <string name="wifi_security_short_eap_suiteb" translatable="false">Suite-B-192</string>
<!-- Do not translate. Concise terminology for wifi with 802.1x EAP Suite-B-192 security -->
- <string name="wifitrackerlib_wifi_security_eap_suiteb" translatable="false">WPA3-Enterprise 192-bit</string>
+ <string name="wifi_security_eap_suiteb" translatable="false">WPA3-Enterprise 192-bit</string>
+
+ <!-- Do not translate. Concise terminology for wifi with WPA security -->
+ <string name="wifi_security_short_wpa" translatable="false">WPA</string>
+
+ <!-- Do not translate. Terminology for wifi with WPA security -->
+ <string name="wifi_security_wpa" translatable="false">WPA-Personal</string>
- <!-- Do not translate. Concise terminology for wifi with both WPA/WPA2 security -->
- <string name="wifitrackerlib_wifi_security_short_wpa_wpa2" translatable="false">WPA/WPA2</string>
+ <!-- Do not translate. Concise terminology for wifi with WPA2/WPA3 security -->
+ <string name="wifi_security_short_wpa2_wpa3" translatable="false">WPA2/WPA3</string>
- <!-- Do not translate. Terminology for wifi with both WPA/WPA2 security -->
- <string name="wifitrackerlib_wifi_security_wpa_wpa2" translatable="false">WPA/WPA2-Personal</string>
+ <!-- Do not translate. Terminology for wifi with WPA2/WPA3 security -->
+ <string name="wifi_security_wpa2_wpa3" translatable="false">WPA2/WPA3-Personal</string>
<!-- Do not translate. Concise terminology for wifi with both WPA/WPA2/WPA3 security -->
- <string name="wifitrackerlib_wifi_security_short_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3</string>
+ <string name="wifi_security_short_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3</string>
- <!-- Do not translate. Terminology for wifi with both WPA/WPA2/WPA3 security -->
- <string name="wifitrackerlib_wifi_security_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3-Personal</string>
+ <!-- Do not translate. Terminology for wifi with both WPA/WPA2/WPA3 security, or unknown -->
+ <string name="wifi_security_wpa_wpa2_wpa3" translatable="false">WPA/WPA2/WPA3-Personal</string>
<!-- Do not translate. Terminology for wifi with WEP security -->
- <string name="wifitrackerlib_wifi_security_wep" translatable="false">WEP</string>
+ <string name="wifi_security_wep" translatable="false">WEP</string>
<!-- Do not translate. Concise terminology for wifi with WPA3 security -->
- <string name="wifitrackerlib_wifi_security_short_sae" translatable="false">WPA3</string>
+ <string name="wifi_security_short_sae" translatable="false">WPA3</string>
<!-- Do not translate. Terminology for wifi with WPA3 security -->
- <string name="wifitrackerlib_wifi_security_sae" translatable="false">WPA3-Personal</string>
+ <string name="wifi_security_sae" translatable="false">WPA3-Personal</string>
<!-- Do not translate. Concise terminology for wifi with OWE security -->
- <string name="wifitrackerlib_wifi_security_short_owe" translatable="false">OWE</string>
+ <string name="wifi_security_short_owe" translatable="false">OWE</string>
<!-- Do not translate. Terminology for wifi with OWE security -->
- <string name="wifitrackerlib_wifi_security_owe" translatable="false">Enhanced Open</string>
+ <string name="wifi_security_owe" translatable="false">Enhanced Open</string>
<!-- Used in Wi-Fi settings dialogs when Wi-Fi does not have any security. [CHAR LIMIT=40] -->
- <string name="wifitrackerlib_wifi_security_none">None</string>
-
- <!-- Do not translate. Terminology for wifi with Passpoint security -->
- <string name="wifitrackerlib_wifi_security_passpoint">Passpoint</string>
+ <string name="wifi_security_none">None</string>
<!-- Passpoint summary for an expired passpoint [CHAR LIMIT=40] -->
- <string name="wifitrackerlib_wifi_passpoint_expired">Expired</string>
+ <string name="wifi_passpoint_expired">Expired</string>
<!-- Status message of OSU Provider network when not connected. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_tap_to_sign_up">Tap to sign up</string>
+ <string name="tap_to_sign_up">Tap to sign up</string>
<!-- Status message of OSU Provider network when existing profile is expired. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_tap_to_renew_subscription_and_connect">Tap to renew subscription and connect</string>
+ <string name="tap_to_renew_subscription_and_connect">Tap to renew subscription and connect</string>
<!-- Status message of OSU Provider upon initiating provisioning flow [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_osu_opening_provider">Opening <xliff:g id="passpointProvider" example="Passpoint Provider">%1$s</xliff:g></string>
+ <string name="osu_opening_provider">Opening <xliff:g id="passpointProvider" example="Passpoint Provider">%1$s</xliff:g></string>
<!-- Status message of OSU Provider when connection fails [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_osu_connect_failed">Couldn\u2019t connect</string>
+ <string name="osu_connect_failed">Couldn\u2019t connect</string>
<!-- Status message of OSU Provider after user completes provisioning flow [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_osu_completing_sign_up">Completing sign-up\u2026</string>
+ <string name="osu_completing_sign_up">Completing sign-up\u2026</string>
<!-- Status message of OSU Provider when sign up could not be completed [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_osu_sign_up_failed">Couldn\u2019t complete sign-up. Tap to try again.</string>
+ <string name="osu_sign_up_failed">Couldn\u2019t complete sign-up. Tap to try again.</string>
<!-- Status message of OSU Provider on completing provisioning. [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_osu_sign_up_complete">Sign-up complete. Connecting\u2026</string>
+ <string name="osu_sign_up_complete">Sign-up complete. Connecting\u2026</string>
<!-- IMSI protection warning for non-protection network [CHAR LIMIT=NONE] -->
- <string name="wifitrackerlib_imsi_protection_warning">This network receives a SIM ID that can be used to track device location. <annotation id="url">Learn more</annotation></string>
+ <string name="imsi_protection_warning">This network receives a SIM ID that can be used to track device location. <annotation id="url">Learn more</annotation></string>
<!-- Help URL, IMSI protection [DO NOT TRANSLATE] -->
- <string name="wifitrackerlib_help_url_imsi_protection" translatable="false"></string>
+ <string name="help_url_imsi_protection" translatable="false"></string>
<!-- Speed label for very slow network speed -->
- <string name="wifitrackerlib_speed_label_very_slow">Very Slow</string>
+ <string name="speed_label_very_slow">Very Slow</string>
<!-- Speed label for slow network speed -->
- <string name="wifitrackerlib_speed_label_slow">Slow</string>
+ <string name="speed_label_slow">Slow</string>
<!-- Speed label for okay network speed -->
- <string name="wifitrackerlib_speed_label_okay">OK</string>
+ <string name="speed_label_okay">OK</string>
<!-- Speed label for medium network speed -->
- <string name="wifitrackerlib_speed_label_medium">Medium</string>
+ <string name="speed_label_medium">Medium</string>
<!-- Speed label for fast network speed -->
- <string name="wifitrackerlib_speed_label_fast">Fast</string>
+ <string name="speed_label_fast">Fast</string>
<!-- Speed label for very fast network speed -->
- <string name="wifitrackerlib_speed_label_very_fast">Very Fast</string>
-
- <!-- Toast message for when the user selects cellular as the internet provider and Wi-Fi auto-connect is temporarily disabled -->
- <string name="wifitrackerlib_wifi_wont_autoconnect_for_now">Wi-Fi won\u2019t auto-connect for now</string>
+ <string name="speed_label_very_fast">Very Fast</string>
</resources>
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java
index b0415411b..18611e242 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/BaseWifiTracker.java
@@ -16,8 +16,6 @@
package com.android.wifitrackerlib;
-import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED;
-import static android.net.NetworkCapabilities.TRANSPORT_CELLULAR;
import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
import static java.util.stream.Collectors.toList;
@@ -34,14 +32,10 @@ import android.net.NetworkKey;
import android.net.NetworkRequest;
import android.net.NetworkScoreManager;
import android.net.ScoredNetwork;
-import android.net.TransportInfo;
-import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiNetworkScoreCache;
import android.os.Handler;
import android.os.Looper;
-import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
import android.util.Log;
import androidx.annotation.AnyThread;
@@ -92,18 +86,11 @@ public class BaseWifiTracker implements LifecycleObserver {
return BaseWifiTracker.sVerboseLogging;
}
- private boolean mIsStarted;
-
// Registered on the worker thread
private final BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver() {
@Override
@WorkerThread
public void onReceive(Context context, Intent intent) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
-
String action = intent.getAction();
if (isVerboseLoggingEnabled()) {
@@ -130,9 +117,6 @@ public class BaseWifiTracker implements LifecycleObserver {
handleNetworkStateChangedAction(intent);
} else if (WifiManager.RSSI_CHANGED_ACTION.equals(action)) {
handleRssiChangedAction();
- } else if (TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED.equals(action)) {
- handleDefaultSubscriptionChanged(intent.getIntExtra(
- "subscription", SubscriptionManager.INVALID_SUBSCRIPTION_ID));
}
}
};
@@ -149,122 +133,27 @@ public class BaseWifiTracker implements LifecycleObserver {
protected final long mScanIntervalMillis;
protected final ScanResultUpdater mScanResultUpdater;
protected final WifiNetworkScoreCache mWifiNetworkScoreCache;
- protected boolean mIsWifiValidated;
- protected boolean mIsWifiDefaultRoute;
- protected boolean mIsCellDefaultRoute;
private final Set<NetworkKey> mRequestedScoreKeys = new HashSet<>();
// Network request for listening on changes to Wifi link properties and network capabilities
// such as captive portal availability.
private final NetworkRequest mNetworkRequest = new NetworkRequest.Builder()
- .clearCapabilities()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN)
- .addTransportType(TRANSPORT_WIFI)
- .build();
+ .clearCapabilities().addTransportType(TRANSPORT_WIFI).build();
private final ConnectivityManager.NetworkCallback mNetworkCallback =
new ConnectivityManager.NetworkCallback() {
@Override
- @WorkerThread
- public void onLinkPropertiesChanged(@NonNull Network network,
- @NonNull LinkProperties lp) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- if (!isPrimaryWifiNetwork(
- mConnectivityManager.getNetworkCapabilities(network))) {
- return;
- }
+ public void onLinkPropertiesChanged(Network network, LinkProperties lp) {
handleLinkPropertiesChanged(lp);
}
@Override
- @WorkerThread
- public void onCapabilitiesChanged(@NonNull Network network,
- @NonNull NetworkCapabilities networkCapabilities) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- if (!isPrimaryWifiNetwork(networkCapabilities)) {
- return;
- }
- final boolean oldWifiValidated = mIsWifiValidated;
- mIsWifiValidated = networkCapabilities.hasCapability(NET_CAPABILITY_VALIDATED);
- if (isVerboseLoggingEnabled() && mIsWifiValidated != oldWifiValidated) {
- Log.v(mTag, "Is Wifi validated: " + mIsWifiValidated);
- }
+ public void onCapabilitiesChanged(Network network,
+ NetworkCapabilities networkCapabilities) {
handleNetworkCapabilitiesChanged(networkCapabilities);
}
-
- @Override
- @WorkerThread
- public void onLost(@NonNull Network network) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- if (!isPrimaryWifiNetwork(
- mConnectivityManager.getNetworkCapabilities(network))) {
- return;
- }
- mIsWifiValidated = false;
- }
};
- private final ConnectivityManager.NetworkCallback mDefaultNetworkCallback =
- new ConnectivityManager.NetworkCallback() {
- @Override
- @WorkerThread
- public void onCapabilitiesChanged(@NonNull Network network,
- @NonNull NetworkCapabilities networkCapabilities) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- final boolean oldWifiDefault = mIsWifiDefaultRoute;
- final boolean oldCellDefault = mIsCellDefaultRoute;
- // raw Wifi or VPN-over-Wifi is default => Wifi is default.
- mIsWifiDefaultRoute = networkCapabilities.hasTransport(TRANSPORT_WIFI);
- mIsCellDefaultRoute = networkCapabilities.hasTransport(TRANSPORT_CELLULAR);
- if (mIsWifiDefaultRoute != oldWifiDefault
- || mIsCellDefaultRoute != oldCellDefault) {
- if (isVerboseLoggingEnabled()) {
- Log.v(mTag, "Wifi is the default route: " + mIsWifiDefaultRoute);
- Log.v(mTag, "Cell is the default route: " + mIsCellDefaultRoute);
- }
- handleDefaultRouteChanged();
- }
- }
-
- @WorkerThread
- public void onLost(@NonNull Network network) {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- mIsWifiDefaultRoute = false;
- mIsCellDefaultRoute = false;
- if (isVerboseLoggingEnabled()) {
- Log.v(mTag, "Wifi is the default route: false");
- Log.v(mTag, "Cell is the default route: false");
- }
- handleDefaultRouteChanged();
- }
- };
-
- private boolean isPrimaryWifiNetwork(@Nullable NetworkCapabilities networkCapabilities) {
- if (networkCapabilities == null) {
- return false;
- }
- final TransportInfo transportInfo = networkCapabilities.getTransportInfo();
- if (!(transportInfo instanceof WifiInfo)) {
- return false;
- }
- return ((WifiInfo) transportInfo).isPrimary();
- }
-
/**
* Constructor for BaseWifiTracker.
*
@@ -327,37 +216,20 @@ public class BaseWifiTracker implements LifecycleObserver {
filter.addAction(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION);
filter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
filter.addAction(WifiManager.RSSI_CHANGED_ACTION);
- filter.addAction(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
mContext.registerReceiver(mBroadcastReceiver, filter,
/* broadcastPermission */ null, mWorkerHandler);
mConnectivityManager.registerNetworkCallback(mNetworkRequest, mNetworkCallback,
mWorkerHandler);
- mConnectivityManager.registerDefaultNetworkCallback(mDefaultNetworkCallback,
- mWorkerHandler);
- final NetworkCapabilities defaultNetworkCapabilities = mConnectivityManager
- .getNetworkCapabilities(mConnectivityManager.getActiveNetwork());
- if (defaultNetworkCapabilities != null) {
- mIsWifiDefaultRoute = defaultNetworkCapabilities.hasTransport(TRANSPORT_WIFI);
- mIsCellDefaultRoute = defaultNetworkCapabilities.hasTransport(TRANSPORT_CELLULAR);
- } else {
- mIsWifiDefaultRoute = false;
- mIsCellDefaultRoute = false;
- }
- if (isVerboseLoggingEnabled()) {
- Log.v(mTag, "Wifi is the default route: " + mIsWifiDefaultRoute);
- Log.v(mTag, "Cell is the default route: " + mIsCellDefaultRoute);
- }
-
mNetworkScoreManager.registerNetworkScoreCache(
NetworkKey.TYPE_WIFI,
mWifiNetworkScoreCache,
NetworkScoreManager.SCORE_FILTER_SCAN_RESULTS);
- mWorkerHandler.post(() -> {
- if (!mIsStarted) {
- mIsStarted = true;
- handleOnStart();
- }
- });
+ if (mWifiManager.getWifiState() == WifiManager.WIFI_STATE_ENABLED) {
+ mWorkerHandler.post(mScanner::start);
+ } else {
+ mWorkerHandler.post(mScanner::stop);
+ }
+ mWorkerHandler.post(this::handleOnStart);
}
/**
@@ -369,11 +241,9 @@ public class BaseWifiTracker implements LifecycleObserver {
mWorkerHandler.post(mScanner::stop);
mContext.unregisterReceiver(mBroadcastReceiver);
mConnectivityManager.unregisterNetworkCallback(mNetworkCallback);
- mConnectivityManager.unregisterNetworkCallback(mDefaultNetworkCallback);
mNetworkScoreManager.unregisterNetworkScoreCache(NetworkKey.TYPE_WIFI,
mWifiNetworkScoreCache);
mWorkerHandler.post(mRequestedScoreKeys::clear);
- mIsStarted = false;
}
/**
@@ -456,15 +326,6 @@ public class BaseWifiTracker implements LifecycleObserver {
}
/**
- * Handle when the default route changes. Whether Wifi is the default route is stored in
- * mIsWifiDefaultRoute.
- */
- @WorkerThread
- protected void handleDefaultRouteChanged() {
- // Do nothing.
- }
-
- /**
* Handle updates to the Wifi network score cache, which is stored in mWifiNetworkScoreCache
*/
@WorkerThread
@@ -473,14 +334,6 @@ public class BaseWifiTracker implements LifecycleObserver {
}
/**
- * Handle updates to the default data subscription id from SubscriptionManager.
- */
- @WorkerThread
- protected void handleDefaultSubscriptionChanged(int defaultSubId) {
- // Do nothing.
- }
-
- /**
* Scanner to handle starting scans every SCAN_INTERVAL_MILLIS
*/
@WorkerThread
@@ -488,24 +341,19 @@ public class BaseWifiTracker implements LifecycleObserver {
private static final int SCAN_RETRY_TIMES = 3;
private int mRetry = 0;
- private boolean mIsActive;
private Scanner(Looper looper) {
super(looper);
}
private void start() {
- if (!mIsActive) {
- mIsActive = true;
- if (isVerboseLoggingEnabled()) {
- Log.v(mTag, "Scanner start");
- }
- postScan();
+ if (isVerboseLoggingEnabled()) {
+ Log.v(mTag, "Scanner start");
}
+ postScan();
}
private void stop() {
- mIsActive = false;
if (isVerboseLoggingEnabled()) {
Log.v(mTag, "Scanner stop");
}
@@ -545,7 +393,8 @@ public class BaseWifiTracker implements LifecycleObserver {
*/
protected interface BaseWifiTrackerCallback {
/**
- * Called when the value for {@link #getWifiState() has changed.
+ * Called when the state of Wi-Fi has changed. The new value can be read through
+ * {@link #getWifiState()}
*/
@MainThread
void onWifiStateChanged();
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java
deleted file mode 100644
index 5dea44c9a..000000000
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/MergedCarrierEntry.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Copyright (C) 2020 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.wifitrackerlib;
-
-import static android.net.wifi.WifiInfo.DEFAULT_MAC_ADDRESS;
-import static android.net.wifi.WifiInfo.sanitizeSsid;
-
-import static com.android.wifitrackerlib.Utils.getVerboseLoggingDescription;
-
-import android.content.Context;
-import android.net.NetworkInfo;
-import android.net.wifi.WifiInfo;
-import android.net.wifi.WifiManager;
-import android.net.wifi.WifiNetworkScoreCache;
-import android.os.Handler;
-import android.text.TextUtils;
-import android.widget.Toast;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.annotation.WorkerThread;
-
-import java.util.StringJoiner;
-
-/**
- * WifiEntry representation of merged carrier network, uniquely identified by subscription id.
- */
-public class MergedCarrierEntry extends WifiEntry {
- static final String KEY_PREFIX = "MergedCarrierEntry:";
-
- private final int mSubscriptionId;
- @NonNull private final String mKey;
- @NonNull private final Context mContext;
- boolean mIsCellDefaultRoute;
-
- MergedCarrierEntry(@NonNull Handler callbackHandler,
- @NonNull WifiManager wifiManager,
- @NonNull WifiNetworkScoreCache scoreCache,
- boolean forSavedNetworksPage,
- @NonNull Context context,
- int subscriptionId) throws IllegalArgumentException {
- super(callbackHandler, wifiManager, scoreCache, forSavedNetworksPage);
- mContext = context;
- mSubscriptionId = subscriptionId;
- mKey = KEY_PREFIX + subscriptionId;
- }
-
- @Override
- public String getKey() {
- return mKey;
- }
-
- @Override
- public String getSummary(boolean concise) {
- StringJoiner sj = new StringJoiner(mContext.getString(
- R.string.wifitrackerlib_summary_separator));
- if (!concise) {
- final String verboseLoggingDescription = getVerboseLoggingDescription(this);
- if (!TextUtils.isEmpty(verboseLoggingDescription)) {
- sj.add(verboseLoggingDescription);
- }
- }
- return sj.toString();
- }
-
- @Override
- public synchronized String getSsid() {
- if (mWifiInfo != null) {
- return sanitizeSsid(mWifiInfo.getSSID());
- }
- return null;
- }
-
- @Override
- public synchronized String getMacAddress() {
- if (mWifiInfo != null) {
- final String wifiInfoMac = mWifiInfo.getMacAddress();
- if (!TextUtils.isEmpty(wifiInfoMac)
- && !TextUtils.equals(wifiInfoMac, DEFAULT_MAC_ADDRESS)) {
- return wifiInfoMac;
- }
- }
- return null;
- }
-
- @Override
- public synchronized boolean canConnect() {
- return getConnectedState() == CONNECTED_STATE_DISCONNECTED && !mIsCellDefaultRoute;
- }
-
- @Override
- public synchronized void connect(@Nullable ConnectCallback callback) {
- mConnectCallback = callback;
- mWifiManager.startRestrictingAutoJoinToSubscriptionId(mSubscriptionId);
- Toast.makeText(mContext,
- R.string.wifitrackerlib_wifi_wont_autoconnect_for_now, Toast.LENGTH_SHORT).show();
- if (mConnectCallback != null) {
- mCallbackHandler.post(() -> {
- final ConnectCallback connectCallback = mConnectCallback;
- if (connectCallback != null) {
- connectCallback.onConnectResult(ConnectCallback.CONNECT_STATUS_SUCCESS);
- }
- });
- }
- }
-
- @Override
- public boolean canDisconnect() {
- return getConnectedState() == CONNECTED_STATE_CONNECTED;
- }
-
- @Override
- public synchronized void disconnect(@Nullable DisconnectCallback callback) {
- mDisconnectCallback = callback;
- mWifiManager.stopRestrictingAutoJoinToSubscriptionId();
- mWifiManager.startScan();
- if (mDisconnectCallback != null) {
- mCallbackHandler.post(() -> {
- final DisconnectCallback disconnectCallback = mDisconnectCallback;
- if (disconnectCallback != null) {
- disconnectCallback.onDisconnectResult(
- DisconnectCallback.DISCONNECT_STATUS_SUCCESS);
- }
- });
- }
- }
-
- @WorkerThread
- protected boolean connectionInfoMatches(@NonNull WifiInfo wifiInfo,
- @NonNull NetworkInfo networkInfo) {
- return wifiInfo.isCarrierMerged() && mSubscriptionId == wifiInfo.getSubscriptionId();
- }
-
- /** Returns whether or not carrier network offload is enabled for this subscription **/
- public boolean isEnabled() {
- return mWifiManager.isCarrierNetworkOffloadEnabled(mSubscriptionId, true);
- }
-
- /** Enables/disables the carrier network */
- public void setEnabled(boolean enabled) {
- mWifiManager.setCarrierNetworkOffloadEnabled(mSubscriptionId, true, enabled);
- if (!enabled) {
- mWifiManager.stopRestrictingAutoJoinToSubscriptionId();
- mWifiManager.startScan();
- }
- }
-
- /* package */ int getSubscriptionId() {
- return mSubscriptionId;
- }
-
- /* package */ synchronized void updateIsCellDefaultRoute(boolean isCellDefaultRoute) {
- mIsCellDefaultRoute = isCellDefaultRoute;
- notifyOnUpdated();
- }
-}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkDetailsTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkDetailsTracker.java
index dd3819dee..91805f776 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkDetailsTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkDetailsTracker.java
@@ -16,24 +16,14 @@
package com.android.wifitrackerlib;
-import static androidx.core.util.Preconditions.checkNotNull;
-
-import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTED;
-
import android.content.Context;
-import android.content.Intent;
import android.net.ConnectivityManager;
-import android.net.LinkProperties;
-import android.net.NetworkCapabilities;
-import android.net.NetworkInfo;
import android.net.NetworkScoreManager;
import android.net.wifi.WifiManager;
import android.os.Handler;
import androidx.annotation.AnyThread;
import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.annotation.WorkerThread;
import androidx.lifecycle.Lifecycle;
import java.time.Clock;
@@ -71,7 +61,8 @@ public abstract class NetworkDetailsTracker extends BaseWifiTracker {
long maxScanAgeMillis,
long scanIntervalMillis,
String key) {
- if (key.startsWith(StandardWifiEntry.KEY_PREFIX)) {
+ if (key.startsWith(StandardWifiEntry.KEY_PREFIX)
+ || key.startsWith(NetworkRequestEntry.KEY_PREFIX)) {
return new StandardNetworkDetailsTracker(lifecycle, context, wifiManager,
connectivityManager, networkScoreManager, mainHandler, workerHandler, clock,
maxScanAgeMillis, scanIntervalMillis, key);
@@ -84,8 +75,6 @@ public abstract class NetworkDetailsTracker extends BaseWifiTracker {
}
}
- protected NetworkInfo mCurrentNetworkInfo;
-
/**
* Abstract constructor for NetworkDetailsTracker.
* Clients must use {@link NetworkDetailsTracker#createNetworkDetailsTracker} for creating
@@ -106,49 +95,6 @@ public abstract class NetworkDetailsTracker extends BaseWifiTracker {
null /* listener */, tag);
}
- @WorkerThread
- @Override
- protected void handleNetworkStateChangedAction(@NonNull Intent intent) {
- checkNotNull(intent, "Intent cannot be null!");
- mCurrentNetworkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
- getWifiEntry().updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
- }
-
- @WorkerThread
- @Override
- protected void handleRssiChangedAction() {
- getWifiEntry().updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
- }
-
- @WorkerThread
- @Override
- protected void handleLinkPropertiesChanged(@Nullable LinkProperties linkProperties) {
- final WifiEntry chosenEntry = getWifiEntry();
- if (chosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
- chosenEntry.updateLinkProperties(linkProperties);
- }
- }
-
- @WorkerThread
- @Override
- protected void handleNetworkCapabilitiesChanged(@Nullable NetworkCapabilities capabilities) {
- final WifiEntry chosenEntry = getWifiEntry();
- if (chosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
- chosenEntry.updateNetworkCapabilities(capabilities);
- chosenEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
- }
- }
-
- @WorkerThread
- @Override
- protected void handleDefaultRouteChanged() {
- final WifiEntry chosenEntry = getWifiEntry();
- if (chosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
- chosenEntry.setIsDefaultNetwork(mIsWifiDefaultRoute);
- chosenEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
- }
- }
-
/**
* Returns the WifiEntry object representing the single network being tracked.
*/
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkRequestEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkRequestEntry.java
index 422d34940..ccda30d1e 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkRequestEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/NetworkRequestEntry.java
@@ -16,6 +16,12 @@
package com.android.wifitrackerlib;
+import static android.net.wifi.WifiInfo.sanitizeSsid;
+
+import static androidx.core.util.Preconditions.checkNotNull;
+
+import static com.android.wifitrackerlib.Utils.getSecurityTypeFromWifiConfiguration;
+
import android.content.Context;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
@@ -29,16 +35,14 @@ import com.android.internal.annotations.VisibleForTesting;
/**
* WifiEntry representation of network requested through the NetworkRequest API,
- * uniquely identified by SSID, security, and profile key.
+ * uniquely identified by SSID and security.
*/
@VisibleForTesting
public class NetworkRequestEntry extends StandardWifiEntry {
- // TODO(b/187073621): This isn't used but is still referenced by clients of WifiTrackerLib.
- // Remove once String keys are removed entirely.
- public static final String KEY_PREFIX = "NetworkRequestEntry:";
+ static final String KEY_PREFIX = "NetworkRequestEntry:";
NetworkRequestEntry(@NonNull Context context, @NonNull Handler callbackHandler,
- @NonNull StandardWifiEntryKey key, @NonNull WifiManager wifiManager,
+ @NonNull String key, @NonNull WifiManager wifiManager,
@NonNull WifiNetworkScoreCache scoreCache,
boolean forSavedNetworksPage) throws IllegalArgumentException {
super(context, callbackHandler, key, wifiManager, scoreCache, forSavedNetworksPage);
@@ -145,4 +149,12 @@ public class NetworkRequestEntry extends StandardWifiEntry {
public void setAutoJoinEnabled(boolean enabled) {
return;
}
+
+ @NonNull
+ static String wifiConfigToNetworkRequestEntryKey(@NonNull WifiConfiguration config) {
+ checkNotNull(config, "Cannot create key with null config!");
+ checkNotNull(config.SSID, "Cannot create key with null SSID in config!");
+ return KEY_PREFIX + sanitizeSsid(config.SSID) + ","
+ + getSecurityTypeFromWifiConfiguration(config);
+ }
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java
index 35e582579..134ceef96 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/OsuWifiEntry.java
@@ -24,7 +24,6 @@ import static com.android.wifitrackerlib.WifiEntry.ConnectCallback.CONNECT_STATU
import android.annotation.MainThread;
import android.content.Context;
import android.net.NetworkInfo;
-import android.net.Uri;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
@@ -37,6 +36,7 @@ import android.os.Handler;
import android.text.TextUtils;
import android.util.Pair;
+import androidx.annotation.GuardedBy;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
@@ -52,18 +52,19 @@ import java.util.Map;
class OsuWifiEntry extends WifiEntry {
static final String KEY_PREFIX = "OsuWifiEntry:";
+ private final Object mLock = new Object();
// Scan result list must be thread safe for generating the verbose scan summary
+ @GuardedBy("mLock")
@NonNull private final List<ScanResult> mCurrentScanResults = new ArrayList<>();
@NonNull private final String mKey;
@NonNull private final Context mContext;
- @NonNull private final OsuProvider mOsuProvider;
- private String mSsid;
+ @NonNull private OsuProvider mOsuProvider;
private String mOsuStatusString;
private boolean mIsAlreadyProvisioned = false;
/**
- * Create an OsuWifiEntry with the associated OsuProvider
+ * Create n OsuWifiEntry with the associated OsuProvider
*/
OsuWifiEntry(@NonNull Context context, @NonNull Handler callbackHandler,
@NonNull OsuProvider osuProvider,
@@ -85,38 +86,33 @@ class OsuWifiEntry extends WifiEntry {
}
@Override
- public synchronized String getTitle() {
- final String friendlyName = mOsuProvider.getFriendlyName();
- if (!TextUtils.isEmpty(friendlyName)) {
- return friendlyName;
- }
- if (!TextUtils.isEmpty(mSsid)) {
- return mSsid;
- }
- final Uri serverUri = mOsuProvider.getServerUri();
- if (serverUri != null) {
- return serverUri.toString();
- }
- return "";
+ public String getTitle() {
+ return mOsuProvider.getFriendlyName();
}
@Override
- public synchronized String getSummary(boolean concise) {
+ public String getSummary(boolean concise) {
// TODO(b/70983952): Add verbose summary
if (mOsuStatusString != null) {
return mOsuStatusString;
} else if (isAlreadyProvisioned()) {
- return concise ? mContext.getString(R.string.wifitrackerlib_wifi_passpoint_expired)
- : mContext.getString(
- R.string.wifitrackerlib_tap_to_renew_subscription_and_connect);
+ return concise ? mContext.getString(R.string.wifi_passpoint_expired)
+ : mContext.getString(R.string.tap_to_renew_subscription_and_connect);
} else {
- return mContext.getString(R.string.wifitrackerlib_tap_to_sign_up);
+ return mContext.getString(R.string.tap_to_sign_up);
}
}
@Override
- public synchronized String getSsid() {
- return mSsid;
+ public String getSsid() {
+ // TODO(b/70983952): Fill this method in in case we need the SSID for verbose logging
+ return "";
+ }
+
+ @Override
+ @Security
+ public int getSecurity() {
+ return SECURITY_NONE;
}
@Override
@@ -126,35 +122,155 @@ class OsuWifiEntry extends WifiEntry {
}
@Override
- public synchronized boolean canConnect() {
+ public boolean isMetered() {
+ return false;
+ }
+
+ @Override
+ public boolean isSaved() {
+ return false;
+ }
+
+ @Override
+ public boolean isSuggestion() {
+ return false;
+ }
+
+ @Override
+ public boolean isSubscription() {
+ return false;
+ }
+
+ @Override
+ public WifiConfiguration getWifiConfiguration() {
+ return null;
+ }
+
+ @Override
+ public boolean canConnect() {
return mLevel != WIFI_LEVEL_UNREACHABLE
&& getConnectedState() == CONNECTED_STATE_DISCONNECTED;
}
@Override
- public synchronized void connect(@Nullable ConnectCallback callback) {
+ public void connect(@Nullable ConnectCallback callback) {
mConnectCallback = callback;
- mWifiManager.stopRestrictingAutoJoinToSubscriptionId();
mWifiManager.startSubscriptionProvisioning(mOsuProvider, mContext.getMainExecutor(),
new OsuWifiEntryProvisioningCallback());
}
+ // Exiting from the OSU flow should disconnect from the network.
+ @Override
+ public boolean canDisconnect() {
+ return false;
+ }
+
+ @Override
+ public void disconnect(@Nullable DisconnectCallback callback) {
+ }
+
+ @Override
+ public boolean canForget() {
+ return false;
+ }
+
+ @Override
+ public void forget(@Nullable ForgetCallback callback) {
+ }
+
+ @Override
+ public boolean canSignIn() {
+ return false;
+ }
+
+ @Override
+ public void signIn(@Nullable SignInCallback callback) {
+ return;
+ }
+
+ @Override
+ public boolean canShare() {
+ return false;
+ }
+
+ @Override
+ public boolean canEasyConnect() {
+ return false;
+ }
+
+ @Override
+ @MeteredChoice
+ public int getMeteredChoice() {
+ // Metered choice is meaningless for OSU entries
+ return METERED_CHOICE_AUTO;
+ }
+
+ @Override
+ public boolean canSetMeteredChoice() {
+ return false;
+ }
+
+ @Override
+ public void setMeteredChoice(int meteredChoice) {
+ // Metered choice is meaningless for OSU entries
+ }
+
+ @Override
+ @Privacy
+ public int getPrivacy() {
+ // MAC Randomization choice is meaningless for OSU entries.
+ return PRIVACY_UNKNOWN;
+ }
+
+ @Override
+ public boolean canSetPrivacy() {
+ return false;
+ }
+
+ @Override
+ public void setPrivacy(int privacy) {
+ // MAC Randomization choice is meaningless for OSU entries.
+ }
+
+ @Override
+ public boolean isAutoJoinEnabled() {
+ return false;
+ }
+
+ @Override
+ public boolean canSetAutoJoinEnabled() {
+ return false;
+ }
+
+ @Override
+ public void setAutoJoinEnabled(boolean enabled) {
+ }
+
+ @Override
+ public String getSecurityString(boolean concise) {
+ return "";
+ }
+
+ @Override
+ public boolean isExpired() {
+ return false;
+ }
+
@WorkerThread
- synchronized void updateScanResultInfo(@Nullable List<ScanResult> scanResults)
+ void updateScanResultInfo(@Nullable List<ScanResult> scanResults)
throws IllegalArgumentException {
if (scanResults == null) scanResults = new ArrayList<>();
- mCurrentScanResults.clear();
- mCurrentScanResults.addAll(scanResults);
+ synchronized (mLock) {
+ mCurrentScanResults.clear();
+ mCurrentScanResults.addAll(scanResults);
+ }
final ScanResult bestScanResult = getBestScanResultByLevel(scanResults);
- if (bestScanResult != null) {
- mSsid = bestScanResult.SSID;
- if (getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
- mLevel = mWifiManager.calculateSignalLevel(bestScanResult.level);
- }
- } else {
- mLevel = WIFI_LEVEL_UNREACHABLE;
+ if (getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
+ mLevel = bestScanResult != null
+ ? mWifiManager.calculateSignalLevel(bestScanResult.level)
+ : WIFI_LEVEL_UNREACHABLE;
}
notifyOnUpdated();
}
@@ -175,7 +291,7 @@ class OsuWifiEntry extends WifiEntry {
}
@Override
- protected String getScanResultDescription() {
+ String getScanResultDescription() {
// TODO(b/70983952): Fill this method in.
return "";
}
@@ -184,31 +300,25 @@ class OsuWifiEntry extends WifiEntry {
return mOsuProvider;
}
- synchronized boolean isAlreadyProvisioned() {
+ boolean isAlreadyProvisioned() {
return mIsAlreadyProvisioned;
}
- synchronized void setAlreadyProvisioned(boolean isAlreadyProvisioned) {
+ void setAlreadyProvisioned(boolean isAlreadyProvisioned) {
mIsAlreadyProvisioned = isAlreadyProvisioned;
}
class OsuWifiEntryProvisioningCallback extends ProvisioningCallback {
@Override
@MainThread public void onProvisioningFailure(int status) {
- synchronized (OsuWifiEntry.this) {
- if (TextUtils.equals(
- mOsuStatusString, mContext.getString(
- R.string.wifitrackerlib_osu_completing_sign_up))) {
- mOsuStatusString =
- mContext.getString(R.string.wifitrackerlib_osu_sign_up_failed);
- } else {
- mOsuStatusString =
- mContext.getString(R.string.wifitrackerlib_osu_connect_failed);
- }
+ if (TextUtils.equals(
+ mOsuStatusString, mContext.getString(R.string.osu_completing_sign_up))) {
+ mOsuStatusString = mContext.getString(R.string.osu_sign_up_failed);
+ } else {
+ mOsuStatusString = mContext.getString(R.string.osu_connect_failed);
}
- final ConnectCallback connectCallback = mConnectCallback;
- if (connectCallback != null) {
- connectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
+ if (mConnectCallback != null) {
+ mConnectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
}
notifyOnUpdated();
}
@@ -225,41 +335,35 @@ class OsuWifiEntry extends WifiEntry {
case OSU_STATUS_INIT_SOAP_EXCHANGE:
case OSU_STATUS_WAITING_FOR_REDIRECT_RESPONSE:
newStatusString = String.format(mContext.getString(
- R.string.wifitrackerlib_osu_opening_provider),
- getTitle());
+ R.string.osu_opening_provider),
+ mOsuProvider.getFriendlyName());
break;
case OSU_STATUS_REDIRECT_RESPONSE_RECEIVED:
case OSU_STATUS_SECOND_SOAP_EXCHANGE:
case OSU_STATUS_THIRD_SOAP_EXCHANGE:
case OSU_STATUS_RETRIEVING_TRUST_ROOT_CERTS:
- newStatusString = mContext.getString(
- R.string.wifitrackerlib_osu_completing_sign_up);
+ newStatusString = mContext.getString(R.string.osu_completing_sign_up);
break;
}
- synchronized (OsuWifiEntry.this) {
- boolean updated = !TextUtils.equals(mOsuStatusString, newStatusString);
- mOsuStatusString = newStatusString;
- if (updated) {
- notifyOnUpdated();
- }
+ boolean updated = !TextUtils.equals(mOsuStatusString, newStatusString);
+ mOsuStatusString = newStatusString;
+ if (updated) {
+ notifyOnUpdated();
}
}
@Override
@MainThread public void onProvisioningComplete() {
- synchronized (OsuWifiEntry.this) {
- mOsuStatusString = mContext.getString(R.string.wifitrackerlib_osu_sign_up_complete);
- }
+ mOsuStatusString = mContext.getString(R.string.osu_sign_up_complete);
notifyOnUpdated();
PasspointConfiguration passpointConfig = mWifiManager
.getMatchingPasspointConfigsForOsuProviders(Collections.singleton(mOsuProvider))
.get(mOsuProvider);
- final ConnectCallback connectCallback = mConnectCallback;
if (passpointConfig == null) {
// Failed to find the config we just provisioned
- if (connectCallback != null) {
- connectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
+ if (mConnectCallback != null) {
+ mConnectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
}
return;
}
@@ -287,8 +391,8 @@ class OsuWifiEntry extends WifiEntry {
}
// Failed to find the network we provisioned for
- if (connectCallback != null) {
- connectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
+ if (mConnectCallback != null) {
+ mConnectCallback.onConnectResult(CONNECT_STATUS_FAILURE_UNKNOWN);
}
}
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java
index 42f816ff6..e2d7acc8e 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointNetworkDetailsTracker.java
@@ -19,11 +19,13 @@ package com.android.wifitrackerlib;
import static androidx.core.util.Preconditions.checkNotNull;
import static com.android.wifitrackerlib.PasspointWifiEntry.uniqueIdToPasspointWifiEntryKey;
+import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTED;
import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_UNREACHABLE;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
+import android.net.LinkProperties;
import android.net.Network;
import android.net.NetworkInfo;
import android.net.NetworkScoreManager;
@@ -43,6 +45,7 @@ import androidx.annotation.WorkerThread;
import androidx.lifecycle.Lifecycle;
import java.time.Clock;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -50,15 +53,14 @@ import java.util.Optional;
/**
* Implementation of NetworkDetailsTracker that tracks a single PasspointWifiEntry.
*/
-public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
+class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
private static final String TAG = "PasspointNetworkDetailsTracker";
private final PasspointWifiEntry mChosenEntry;
private OsuWifiEntry mOsuWifiEntry;
private NetworkInfo mCurrentNetworkInfo;
- private WifiConfiguration mCurrentWifiConfig;
- public PasspointNetworkDetailsTracker(@NonNull Lifecycle lifecycle,
+ PasspointNetworkDetailsTracker(@NonNull Lifecycle lifecycle,
@NonNull Context context,
@NonNull WifiManager wifiManager,
@NonNull ConnectivityManager connectivityManager,
@@ -99,10 +101,16 @@ public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
"Cannot find config for given PasspointWifiEntry key!");
}
}
- // It is safe to call updateStartInfo() in the main thread here since onStart() won't have
- // a chance to post handleOnStart() on the worker thread until the main thread finishes
- // calling this constructor.
- updateStartInfo();
+
+ cacheNewScanResults();
+ conditionallyUpdateScanResults(true /* lastScanSucceeded */);
+ conditionallyUpdateConfig();
+ final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
+ final Network currentNetwork = mWifiManager.getCurrentNetwork();
+ mCurrentNetworkInfo = mConnectivityManager.getNetworkInfo(currentNetwork);
+ mChosenEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
+ handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(
+ mWifiManager.getCurrentNetwork()));
}
@AnyThread
@@ -114,12 +122,6 @@ public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
@WorkerThread
@Override
- protected void handleOnStart() {
- updateStartInfo();
- }
-
- @WorkerThread
- @Override
protected void handleWifiStateChangedAction() {
conditionallyUpdateScanResults(true /* lastScanSucceeded */);
}
@@ -140,18 +142,31 @@ public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
}
@WorkerThread
- private void updateStartInfo() {
- conditionallyUpdateScanResults(true /* lastScanSucceeded */);
- conditionallyUpdateConfig();
- final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
- final Network currentNetwork = mWifiManager.getCurrentNetwork();
- mCurrentNetworkInfo = mConnectivityManager.getNetworkInfo(currentNetwork);
- mChosenEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
- handleNetworkCapabilitiesChanged(
- mConnectivityManager.getNetworkCapabilities(currentNetwork));
- handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(currentNetwork));
- mChosenEntry.setIsDefaultNetwork(mIsWifiDefaultRoute);
- mChosenEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
+ @Override
+ protected void handleRssiChangedAction() {
+ mChosenEntry.updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleNetworkStateChangedAction(@NonNull Intent intent) {
+ checkNotNull(intent, "Intent cannot be null!");
+ mCurrentNetworkInfo = (NetworkInfo) intent.getExtra(WifiManager.EXTRA_NETWORK_INFO);
+ mChosenEntry.updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleLinkPropertiesChanged(@NonNull LinkProperties linkProperties) {
+ if (mChosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
+ mChosenEntry.updateLinkProperties(linkProperties);
+ }
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleNetworkScoreCacheUpdated() {
+ mChosenEntry.onScoreCacheUpdated();
}
@WorkerThread
@@ -165,16 +180,14 @@ public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
final String key = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());
if (TextUtils.equals(key, mChosenEntry.getKey())) {
- mCurrentWifiConfig = wifiConfig;
- mChosenEntry.updateScanResultInfo(mCurrentWifiConfig,
+ mChosenEntry.updateScanResultInfo(wifiConfig,
pair.second.get(WifiManager.PASSPOINT_HOME_NETWORK),
pair.second.get(WifiManager.PASSPOINT_ROAMING_NETWORK));
return;
}
}
- // No AP in range; set scan results to null but keep the last seen WifiConfig to display
- // the previous information while out of range.
- mChosenEntry.updateScanResultInfo(mCurrentWifiConfig,
+ // No AP in range; set scan results and connection config to null.
+ mChosenEntry.updateScanResultInfo(null /* wifiConfig */,
null /* homeScanResults */,
null /* roamingScanResults */);
}
@@ -222,9 +235,8 @@ public class PasspointNetworkDetailsTracker extends NetworkDetailsTracker {
*/
private void conditionallyUpdateScanResults(boolean lastScanSucceeded) {
if (mWifiManager.getWifiState() == WifiManager.WIFI_STATE_DISABLED) {
- mChosenEntry.updateScanResultInfo(mCurrentWifiConfig,
- null /* homeScanResults */,
- null /* roamingScanResults */);
+ mChosenEntry.updateScanResultInfo(null /* wifiConfig */,
+ Collections.emptyList(), Collections.emptyList());
return;
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java
index 59994a9e2..d873c25e5 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/PasspointWifiEntry.java
@@ -16,29 +16,27 @@
package com.android.wifitrackerlib;
-import static android.net.wifi.WifiInfo.DEFAULT_MAC_ADDRESS;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_PASSPOINT_R1_R2;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_PASSPOINT_R3;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_UNKNOWN;
import static android.net.wifi.WifiInfo.sanitizeSsid;
import static androidx.core.util.Preconditions.checkNotNull;
+import static com.android.wifitrackerlib.Utils.getAppLabel;
import static com.android.wifitrackerlib.Utils.getAutoConnectDescription;
import static com.android.wifitrackerlib.Utils.getAverageSpeedFromScanResults;
import static com.android.wifitrackerlib.Utils.getBestScanResultByLevel;
-import static com.android.wifitrackerlib.Utils.getConnectedDescription;
-import static com.android.wifitrackerlib.Utils.getConnectingDescription;
-import static com.android.wifitrackerlib.Utils.getDisconnectedDescription;
+import static com.android.wifitrackerlib.Utils.getCarrierNameForSubId;
+import static com.android.wifitrackerlib.Utils.getCurrentNetworkCapabilitiesInformation;
+import static com.android.wifitrackerlib.Utils.getDisconnectedStateDescription;
import static com.android.wifitrackerlib.Utils.getImsiProtectionDescription;
import static com.android.wifitrackerlib.Utils.getMeteredDescription;
+import static com.android.wifitrackerlib.Utils.getNetworkDetailedState;
+import static com.android.wifitrackerlib.Utils.getSecurityTypeFromWifiConfiguration;
import static com.android.wifitrackerlib.Utils.getSpeedDescription;
import static com.android.wifitrackerlib.Utils.getSpeedFromWifiInfo;
+import static com.android.wifitrackerlib.Utils.getSubIdForConfig;
import static com.android.wifitrackerlib.Utils.getVerboseLoggingDescription;
import android.content.Context;
-import android.net.ConnectivityManager;
-import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
@@ -48,8 +46,8 @@ import android.net.wifi.WifiNetworkScoreCache;
import android.net.wifi.hotspot2.PasspointConfiguration;
import android.os.Handler;
import android.text.TextUtils;
-import android.util.Log;
+import androidx.annotation.GuardedBy;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
@@ -57,7 +55,6 @@ import androidx.annotation.WorkerThread;
import com.android.internal.annotations.VisibleForTesting;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
import java.util.StringJoiner;
@@ -66,25 +63,25 @@ import java.util.StringJoiner;
*/
@VisibleForTesting
public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntryCallback {
- static final String TAG = "PasspointWifiEntry";
- public static final String KEY_PREFIX = "PasspointWifiEntry:";
+ static final String KEY_PREFIX = "PasspointWifiEntry:";
+ private final Object mLock = new Object();
+ // Scan result list must be thread safe for generating the verbose scan summary
+ @GuardedBy("mLock")
private final List<ScanResult> mCurrentHomeScanResults = new ArrayList<>();
+ @GuardedBy("mLock")
private final List<ScanResult> mCurrentRoamingScanResults = new ArrayList<>();
@NonNull private final String mKey;
- @NonNull private final String mFqdn;
- @NonNull private final String mFriendlyName;
+ @NonNull private String mFqdn;
+ @NonNull private String mFriendlyName;
@NonNull private final Context mContext;
@Nullable
private PasspointConfiguration mPasspointConfig;
@Nullable private WifiConfiguration mWifiConfig;
- private List<Integer> mTargetSecurityTypes =
- List.of(SECURITY_TYPE_PASSPOINT_R1_R2, SECURITY_TYPE_PASSPOINT_R3);
-
+ private @Security int mSecurity = SECURITY_EAP;
private boolean mIsRoaming = false;
private OsuWifiEntry mOsuWifiEntry;
- private boolean mShouldAutoOpenCaptivePortal = false;
protected long mSubscriptionExpirationTimeInMillis;
@@ -111,7 +108,6 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
mPasspointConfig = passpointConfig;
mKey = uniqueIdToPasspointWifiEntryKey(passpointConfig.getUniqueId());
mFqdn = passpointConfig.getHomeSp().getFqdn();
- checkNotNull(mFqdn, "Cannot construct with null PasspointConfiguration FQDN!");
mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();
mSubscriptionExpirationTimeInMillis =
passpointConfig.getSubscriptionExpirationTimeMillis();
@@ -130,7 +126,7 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
boolean forSavedNetworksPage) throws IllegalArgumentException {
super(callbackHandler, wifiManager, scoreCache, forSavedNetworksPage);
- checkNotNull(wifiConfig, "Cannot construct with null WifiConfiguration!");
+ checkNotNull(wifiConfig, "Cannot construct with null PasspointConfiguration!");
if (!wifiConfig.isPasspoint()) {
throw new IllegalArgumentException("Given WifiConfiguration is not for Passpoint!");
}
@@ -139,7 +135,6 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
mWifiConfig = wifiConfig;
mKey = uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey());
mFqdn = wifiConfig.FQDN;
- checkNotNull(mFqdn, "Cannot construct with null WifiConfiguration FQDN!");
mFriendlyName = mWifiConfig.providerFriendlyName;
}
@@ -150,7 +145,7 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
@Override
@ConnectedState
- public synchronized int getConnectedState() {
+ public int getConnectedState() {
if (isExpired()) {
if (super.getConnectedState() == CONNECTED_STATE_DISCONNECTED
&& mOsuWifiEntry != null) {
@@ -166,43 +161,43 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized String getSummary(boolean concise) {
- StringJoiner sj = new StringJoiner(mContext.getString(
- R.string.wifitrackerlib_summary_separator));
+ public String getSummary(boolean concise) {
+ StringJoiner sj = new StringJoiner(mContext.getString(R.string.summary_separator));
if (isExpired()) {
if (mOsuWifiEntry != null) {
sj.add(mOsuWifiEntry.getSummary(concise));
} else {
- sj.add(mContext.getString(R.string.wifitrackerlib_wifi_passpoint_expired));
+ sj.add(mContext.getString(R.string.wifi_passpoint_expired));
}
- } else {
- final String connectedStateDescription;
- final @ConnectedState int connectedState = getConnectedState();
- switch (connectedState) {
- case CONNECTED_STATE_DISCONNECTED:
- connectedStateDescription = getDisconnectedDescription(mContext,
- mWifiConfig,
- mForSavedNetworksPage,
- concise);
- break;
- case CONNECTED_STATE_CONNECTING:
- connectedStateDescription = getConnectingDescription(mContext, mNetworkInfo);
- break;
- case CONNECTED_STATE_CONNECTED:
- connectedStateDescription = getConnectedDescription(mContext,
- mWifiConfig,
- mNetworkCapabilities,
- null /* recommendationServiceLabel */,
- mIsDefaultNetwork,
- mIsLowQuality);
- break;
- default:
- Log.e(TAG, "getConnectedState() returned unknown state: " + connectedState);
- connectedStateDescription = null;
+ } else if (getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
+ String disconnectDescription = getDisconnectedStateDescription(mContext, this);
+ if (TextUtils.isEmpty(disconnectDescription)) {
+ if (concise) {
+ sj.add(mContext.getString(R.string.wifi_disconnected));
+ } else if (!mForSavedNetworksPage) {
+ if (mWifiConfig != null && mWifiConfig.fromWifiNetworkSuggestion) {
+ String carrierName = getCarrierNameForSubId(mContext,
+ getSubIdForConfig(mContext, mWifiConfig));
+ String suggestorLabel = getAppLabel(mContext, mWifiConfig.creatorName);
+ if (TextUtils.isEmpty(suggestorLabel)) {
+ // Fall-back to the package name in case the app label is missing
+ suggestorLabel = mWifiConfig.creatorName;
+ }
+ sj.add(mContext.getString(R.string.available_via_app, carrierName != null
+ ? carrierName
+ : suggestorLabel));
+ } else {
+ sj.add(mContext.getString(R.string.wifi_remembered));
+ }
+ }
+ } else {
+ sj.add(disconnectDescription);
}
- if (!TextUtils.isEmpty(connectedStateDescription)) {
- sj.add(connectedStateDescription);
+ } else {
+ String connectDescription = getConnectStateDescription();
+ if (!TextUtils.isEmpty(connectDescription)) {
+ sj.add(connectDescription);
}
}
@@ -231,14 +226,42 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
return sj.toString();
}
+ private String getConnectStateDescription() {
+ if (getConnectedState() == CONNECTED_STATE_CONNECTED) {
+ // For network suggestions
+ final String suggestionOrSpecifierPackageName = mWifiInfo != null
+ ? mWifiInfo.getRequestingPackageName() : null;
+ if (!TextUtils.isEmpty(suggestionOrSpecifierPackageName)) {
+ String carrierName = mWifiConfig != null
+ ? getCarrierNameForSubId(mContext, getSubIdForConfig(mContext, mWifiConfig))
+ : null;
+ String suggestorLabel = getAppLabel(mContext, suggestionOrSpecifierPackageName);
+ if (TextUtils.isEmpty(suggestorLabel)) {
+ // Fall-back to the package name in case the app label is missing
+ suggestorLabel = suggestionOrSpecifierPackageName;
+ }
+ return mContext.getString(R.string.connected_via_app, carrierName != null
+ ? carrierName
+ : suggestorLabel);
+ }
+ String networkCapabilitiesinformation =
+ getCurrentNetworkCapabilitiesInformation(mContext, mNetworkCapabilities);
+ if (!TextUtils.isEmpty(networkCapabilitiesinformation)) {
+ return networkCapabilitiesinformation;
+ }
+ }
+
+ return getNetworkDetailedState(mContext, mNetworkInfo);
+ }
+
@Override
- public synchronized CharSequence getSecondSummary() {
+ public CharSequence getSecondSummary() {
return getConnectedState() == CONNECTED_STATE_CONNECTED
? getImsiProtectionDescription(mContext, mWifiConfig) : "";
}
@Override
- public synchronized String getSsid() {
+ public String getSsid() {
if (mWifiInfo != null) {
return sanitizeSsid(mWifiInfo.getSSID());
}
@@ -247,47 +270,53 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized List<Integer> getSecurityTypes() {
- return new ArrayList<>(mTargetSecurityTypes);
+ @Security
+ public int getSecurity() {
+ return mSecurity;
}
@Override
- public synchronized String getMacAddress() {
- if (mWifiInfo != null) {
- final String wifiInfoMac = mWifiInfo.getMacAddress();
- if (!TextUtils.isEmpty(wifiInfoMac)
- && !TextUtils.equals(wifiInfoMac, DEFAULT_MAC_ADDRESS)) {
- return wifiInfoMac;
- }
- }
+ public String getMacAddress() {
if (mWifiConfig == null || getPrivacy() != PRIVACY_RANDOMIZED_MAC) {
final String[] factoryMacs = mWifiManager.getFactoryMacAddresses();
if (factoryMacs.length > 0) {
return factoryMacs[0];
+ } else {
+ return null;
}
- return null;
+ } else {
+ return mWifiConfig.getRandomizedMacAddress().toString();
}
- return mWifiConfig.getRandomizedMacAddress().toString();
}
@Override
- public synchronized boolean isMetered() {
+ public boolean isMetered() {
return getMeteredChoice() == METERED_CHOICE_METERED
|| (mWifiConfig != null && mWifiConfig.meteredHint);
}
@Override
- public synchronized boolean isSuggestion() {
+ public boolean isSaved() {
+ return false;
+ }
+
+ @Override
+ public boolean isSuggestion() {
return mWifiConfig != null && mWifiConfig.fromWifiNetworkSuggestion;
}
@Override
- public synchronized boolean isSubscription() {
+ public boolean isSubscription() {
return mPasspointConfig != null;
}
@Override
- public synchronized boolean canConnect() {
+ public WifiConfiguration getWifiConfiguration() {
+ return null;
+ }
+
+ @Override
+ public boolean canConnect() {
if (isExpired()) {
return mOsuWifiEntry != null && mOsuWifiEntry.canConnect();
}
@@ -297,23 +326,20 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized void connect(@Nullable ConnectCallback callback) {
+ public void connect(@Nullable ConnectCallback callback) {
if (isExpired()) {
if (mOsuWifiEntry != null) {
mOsuWifiEntry.connect(callback);
return;
}
}
- // We should flag this network to auto-open captive portal since this method represents
- // the user manually connecting to a network (i.e. not auto-join).
- mShouldAutoOpenCaptivePortal = true;
+
mConnectCallback = callback;
if (mWifiConfig == null) {
// We should not be able to call connect() if mWifiConfig is null
new ConnectActionListener().onFailure(0);
}
- mWifiManager.stopRestrictingAutoJoinToSubscriptionId();
mWifiManager.connect(mWifiConfig, new ConnectActionListener());
}
@@ -323,7 +349,7 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized void disconnect(@Nullable DisconnectCallback callback) {
+ public void disconnect(@Nullable DisconnectCallback callback) {
if (canDisconnect()) {
mCalledDisconnect = true;
mDisconnectCallback = callback;
@@ -333,18 +359,18 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
DisconnectCallback.DISCONNECT_STATUS_FAILURE_UNKNOWN);
}
}, 10_000 /* delayMillis */);
- mWifiManager.disableEphemeralNetwork(mFqdn);
+ mWifiManager.disableEphemeralNetwork(mWifiConfig.FQDN);
mWifiManager.disconnect();
}
}
@Override
- public synchronized boolean canForget() {
+ public boolean canForget() {
return !isSuggestion() && mPasspointConfig != null;
}
@Override
- public synchronized void forget(@Nullable ForgetCallback callback) {
+ public void forget(@Nullable ForgetCallback callback) {
if (!canForget()) {
return;
}
@@ -355,8 +381,28 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
+ public boolean canSignIn() {
+ return false;
+ }
+
+ @Override
+ public void signIn(@Nullable SignInCallback callback) {
+ return;
+ }
+
+ @Override
+ public boolean canShare() {
+ return false;
+ }
+
+ @Override
+ public boolean canEasyConnect() {
+ return false;
+ }
+
+ @Override
@MeteredChoice
- public synchronized int getMeteredChoice() {
+ public int getMeteredChoice() {
if (mMeteredOverride == WifiConfiguration.METERED_OVERRIDE_METERED) {
return METERED_CHOICE_METERED;
} else if (mMeteredOverride == WifiConfiguration.METERED_OVERRIDE_NOT_METERED) {
@@ -366,13 +412,13 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized boolean canSetMeteredChoice() {
+ public boolean canSetMeteredChoice() {
return !isSuggestion() && mPasspointConfig != null;
}
@Override
- public synchronized void setMeteredChoice(int meteredChoice) {
- if (mPasspointConfig == null || !canSetMeteredChoice()) {
+ public void setMeteredChoice(int meteredChoice) {
+ if (!canSetMeteredChoice()) {
return;
}
@@ -395,13 +441,13 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized boolean canSetPrivacy() {
+ public boolean canSetPrivacy() {
return !isSuggestion() && mPasspointConfig != null;
}
@Override
@Privacy
- public synchronized int getPrivacy() {
+ public int getPrivacy() {
if (mPasspointConfig == null) {
return PRIVACY_RANDOMIZED_MAC;
}
@@ -411,8 +457,8 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized void setPrivacy(int privacy) {
- if (mPasspointConfig == null || !canSetPrivacy()) {
+ public void setPrivacy(int privacy) {
+ if (!canSetPrivacy()) {
return;
}
@@ -422,38 +468,38 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- public synchronized boolean isAutoJoinEnabled() {
+ public boolean isAutoJoinEnabled() {
// Suggestion network; use WifiConfig instead
- if (mPasspointConfig != null) {
- return mPasspointConfig.isAutojoinEnabled();
- }
- if (mWifiConfig != null) {
+ if (mPasspointConfig == null && mWifiConfig != null) {
return mWifiConfig.allowAutojoin;
}
- return false;
+
+ return mPasspointConfig.isAutojoinEnabled();
}
@Override
- public synchronized boolean canSetAutoJoinEnabled() {
- return mPasspointConfig != null || mWifiConfig != null;
+ public boolean canSetAutoJoinEnabled() {
+ return true;
}
@Override
- public synchronized void setAutoJoinEnabled(boolean enabled) {
- if (mPasspointConfig != null) {
- mWifiManager.allowAutojoinPasspoint(mPasspointConfig.getHomeSp().getFqdn(), enabled);
- } else if (mWifiConfig != null) {
+ public void setAutoJoinEnabled(boolean enabled) {
+ if (mPasspointConfig == null && mWifiConfig != null) {
mWifiManager.allowAutojoin(mWifiConfig.networkId, enabled);
+ return;
}
+
+ mWifiManager.allowAutojoinPasspoint(mPasspointConfig.getHomeSp().getFqdn(), enabled);
}
@Override
public String getSecurityString(boolean concise) {
- return mContext.getString(R.string.wifitrackerlib_wifi_security_passpoint);
+ return concise ? mContext.getString(R.string.wifi_security_short_eap) :
+ mContext.getString(R.string.wifi_security_eap);
}
@Override
- public synchronized boolean isExpired() {
+ public boolean isExpired() {
if (mSubscriptionExpirationTimeInMillis <= 0) {
// Expiration time not specified.
return false;
@@ -463,9 +509,10 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@WorkerThread
- synchronized void updatePasspointConfig(@Nullable PasspointConfiguration passpointConfig) {
+ void updatePasspointConfig(@Nullable PasspointConfiguration passpointConfig) {
mPasspointConfig = passpointConfig;
if (mPasspointConfig != null) {
+ mFriendlyName = passpointConfig.getHomeSp().getFriendlyName();
mSubscriptionExpirationTimeInMillis =
passpointConfig.getSubscriptionExpirationTimeMillis();
mMeteredOverride = passpointConfig.getMeteredOverride();
@@ -474,21 +521,24 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@WorkerThread
- synchronized void updateScanResultInfo(@Nullable WifiConfiguration wifiConfig,
+ void updateScanResultInfo(@Nullable WifiConfiguration wifiConfig,
@Nullable List<ScanResult> homeScanResults,
@Nullable List<ScanResult> roamingScanResults)
throws IllegalArgumentException {
mIsRoaming = false;
mWifiConfig = wifiConfig;
- mCurrentHomeScanResults.clear();
- mCurrentRoamingScanResults.clear();
- if (homeScanResults != null) {
- mCurrentHomeScanResults.addAll(homeScanResults);
- }
- if (roamingScanResults != null) {
- mCurrentRoamingScanResults.addAll(roamingScanResults);
+ synchronized (mLock) {
+ mCurrentHomeScanResults.clear();
+ mCurrentRoamingScanResults.clear();
+ if (homeScanResults != null) {
+ mCurrentHomeScanResults.addAll(homeScanResults);
+ }
+ if (roamingScanResults != null) {
+ mCurrentRoamingScanResults.addAll(roamingScanResults);
+ }
}
if (mWifiConfig != null) {
+ mSecurity = getSecurityTypeFromWifiConfiguration(wifiConfig);
List<ScanResult> currentScanResults = new ArrayList<>();
ScanResult bestScanResult = null;
if (homeScanResults != null && !homeScanResults.isEmpty()) {
@@ -514,28 +564,19 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
notifyOnUpdated();
}
- @Override
- protected synchronized void updateSecurityTypes() {
- if (mWifiInfo != null) {
- final int wifiInfoSecurity = mWifiInfo.getCurrentSecurityType();
- if (wifiInfoSecurity != SECURITY_TYPE_UNKNOWN) {
- mTargetSecurityTypes = Collections.singletonList(wifiInfoSecurity);
- return;
- }
- }
- }
-
@WorkerThread
- synchronized void onScoreCacheUpdated() {
+ void onScoreCacheUpdated() {
if (mWifiInfo != null) {
mSpeed = getSpeedFromWifiInfo(mScoreCache, mWifiInfo);
} else {
- // Average speed is used to prevent speed label flickering from multiple APs.
- if (!mCurrentHomeScanResults.isEmpty()) {
- mSpeed = getAverageSpeedFromScanResults(mScoreCache, mCurrentHomeScanResults);
- } else {
- mSpeed = getAverageSpeedFromScanResults(mScoreCache,
- mCurrentRoamingScanResults);
+ synchronized (mLock) {
+ // Average speed is used to prevent speed label flickering from multiple APs.
+ if (!mCurrentHomeScanResults.isEmpty()) {
+ mSpeed = getAverageSpeedFromScanResults(mScoreCache, mCurrentHomeScanResults);
+ } else {
+ mSpeed = getAverageSpeedFromScanResults(mScoreCache,
+ mCurrentRoamingScanResults);
+ }
}
}
notifyOnUpdated();
@@ -553,18 +594,6 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
return TextUtils.equals(wifiInfo.getPasspointFqdn(), mFqdn);
}
- @WorkerThread
- @Override
- synchronized void updateNetworkCapabilities(@Nullable NetworkCapabilities capabilities) {
- super.updateNetworkCapabilities(capabilities);
-
- // Auto-open an available captive portal if the user manually connected to this network.
- if (canSignIn() && mShouldAutoOpenCaptivePortal) {
- mShouldAutoOpenCaptivePortal = false;
- signIn(null /* callback */);
- }
- }
-
@NonNull
static String uniqueIdToPasspointWifiEntryKey(@NonNull String uniqueId) {
checkNotNull(uniqueId, "Cannot create key with null unique id!");
@@ -572,22 +601,20 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
}
@Override
- protected String getScanResultDescription() {
+ String getScanResultDescription() {
// TODO(b/70983952): Fill this method in.
return "";
}
@Override
- synchronized String getNetworkSelectionDescription() {
+ String getNetworkSelectionDescription() {
return Utils.getNetworkSelectionDescription(mWifiConfig);
}
/** Pass a reference to a matching OsuWifiEntry for expiration handling */
- synchronized void setOsuWifiEntry(OsuWifiEntry osuWifiEntry) {
+ void setOsuWifiEntry(OsuWifiEntry osuWifiEntry) {
mOsuWifiEntry = osuWifiEntry;
- if (mOsuWifiEntry != null) {
- mOsuWifiEntry.setListener(this);
- }
+ mOsuWifiEntry.setListener(this);
}
/** Callback for updates to the linked OsuWifiEntry */
@@ -595,26 +622,4 @@ public class PasspointWifiEntry extends WifiEntry implements WifiEntry.WifiEntry
public void onUpdated() {
notifyOnUpdated();
}
-
- @Override
- public synchronized boolean canSignIn() {
- return mNetworkCapabilities != null
- && mNetworkCapabilities.hasCapability(
- NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL);
- }
-
- @Override
- public void signIn(@Nullable SignInCallback callback) {
- if (canSignIn()) {
- // canSignIn() implies that this WifiEntry is the currently connected network, so use
- // getCurrentNetwork() to start the captive portal app.
- ((ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .startCaptivePortalApp(mWifiManager.getCurrentNetwork());
- }
- }
-
- /** Get the PasspointConfiguration instance of the entry. */
- public PasspointConfiguration getPasspointConfig() {
- return mPasspointConfig;
- }
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java
index 8933ce739..df931f878 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/SavedNetworkTracker.java
@@ -19,8 +19,8 @@ package com.android.wifitrackerlib;
import static androidx.core.util.Preconditions.checkNotNull;
import static com.android.wifitrackerlib.PasspointWifiEntry.uniqueIdToPasspointWifiEntryKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.ScanResultKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.wifiConfigToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.Utils.mapScanResultsToKey;
import static java.util.stream.Collectors.toMap;
@@ -76,7 +76,7 @@ public class SavedNetworkTracker extends BaseWifiTracker {
@GuardedBy("mLock") private final List<WifiEntry> mSubscriptionWifiEntries = new ArrayList<>();
// Cache containing saved StandardWifiEntries. Must be accessed only by the worker thread.
- private final List<StandardWifiEntry> mStandardWifiEntryCache = new ArrayList<>();
+ private final Map<String, StandardWifiEntry> mStandardWifiEntryCache = new HashMap<>();
// Cache containing saved PasspointWifiEntries. Must be accessed only by the worker thread.
private final Map<String, PasspointWifiEntry> mPasspointWifiEntryCache = new HashMap<>();
@@ -154,7 +154,15 @@ public class SavedNetworkTracker extends BaseWifiTracker {
@Override
protected void handleConfiguredNetworksChangedAction(@Nullable Intent intent) {
checkNotNull(intent, "Intent cannot be null!");
- updateStandardWifiEntryConfigs(mWifiManager.getConfiguredNetworks());
+
+ final WifiConfiguration config =
+ (WifiConfiguration) intent.getExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
+ if (config != null && !config.isPasspoint()) {
+ updateStandardWifiEntryConfig(
+ config, (Integer) intent.getExtra(WifiManager.EXTRA_CHANGE_REASON));
+ } else {
+ updateStandardWifiEntryConfigs(mWifiManager.getConfiguredNetworks());
+ }
updatePasspointWifiEntryConfigs(mWifiManager.getPasspointConfigurations());
updateSavedWifiEntries();
updateSubscriptionWifiEntries();
@@ -163,7 +171,7 @@ public class SavedNetworkTracker extends BaseWifiTracker {
@WorkerThread
@Override
protected void handleNetworkScoreCacheUpdated() {
- for (StandardWifiEntry entry : mStandardWifiEntryCache) {
+ for (StandardWifiEntry entry : mStandardWifiEntryCache.values()) {
entry.onScoreCacheUpdated();
}
for (PasspointWifiEntry entry : mPasspointWifiEntryCache.values()) {
@@ -174,7 +182,7 @@ public class SavedNetworkTracker extends BaseWifiTracker {
private void updateSavedWifiEntries() {
synchronized (mLock) {
mSavedWifiEntries.clear();
- mSavedWifiEntries.addAll(mStandardWifiEntryCache);
+ mSavedWifiEntries.addAll(mStandardWifiEntryCache.values());
Collections.sort(mSavedWifiEntries);
if (isVerboseLoggingEnabled()) {
Log.v(TAG, "Updated SavedWifiEntries: "
@@ -201,14 +209,20 @@ public class SavedNetworkTracker extends BaseWifiTracker {
checkNotNull(scanResults, "Scan Result list should not be null!");
// Group scans by StandardWifiEntry key
- final Map<ScanResultKey, List<ScanResult>> scanResultsByKey = scanResults.stream()
- .collect(Collectors.groupingBy(StandardWifiEntry.ScanResultKey::new));
+ final Map<String, List<ScanResult>> scanResultsByKey = mapScanResultsToKey(
+ scanResults,
+ false /* chooseSingleSecurity */,
+ null /* wifiConfigsByKey */,
+ mWifiManager.isWpa3SaeSupported(),
+ mWifiManager.isWpa3SuiteBSupported(),
+ mWifiManager.isEnhancedOpenSupported());
// Iterate through current entries and update each entry's scan results
- mStandardWifiEntryCache.forEach(entry -> {
+ mStandardWifiEntryCache.entrySet().forEach(entry -> {
+ final String key = entry.getKey();
+ final StandardWifiEntry wifiEntry = entry.getValue();
// Update scan results if available, or set to null.
- entry.updateScanResultInfo(
- scanResultsByKey.get(entry.getStandardWifiEntryKey().getScanResultKey()));
+ wifiEntry.updateScanResultInfo(scanResultsByKey.get(key));
});
}
@@ -267,27 +281,64 @@ public class SavedNetworkTracker extends BaseWifiTracker {
updatePasspointWifiEntryScans(mScanResultUpdater.getScanResults(scanAgeWindow));
}
+ /**
+ * Updates or removes a WifiConfiguration for the corresponding StandardWifiEntry if it exists.
+ *
+ * If an entry does not exist and the changeReason is ADDED or UPDATED, then a new entry will
+ * be created for the new config.
+ *
+ * @param config WifiConfiguration to update
+ * @param changeReason WifiManager.CHANGE_REASON_ADDED, WifiManager.CHANGE_REASON_REMOVED, or
+ * WifiManager.CHANGE_REASON_CONFIG_CHANGE
+ */
+ @WorkerThread
+ private void updateStandardWifiEntryConfig(@NonNull WifiConfiguration config,
+ int changeReason) {
+ checkNotNull(config, "Config should not be null!");
+
+ final String key = wifiConfigToStandardWifiEntryKey(config);
+ final StandardWifiEntry entry = mStandardWifiEntryCache.get(key);
+
+ if (entry != null) {
+ if (changeReason == WifiManager.CHANGE_REASON_REMOVED) {
+ entry.updateConfig(null);
+ mStandardWifiEntryCache.remove(key);
+ } else { // CHANGE_REASON_ADDED || CHANGE_REASON_CONFIG_CHANGE
+ entry.updateConfig(config);
+ }
+ } else {
+ if (changeReason != WifiManager.CHANGE_REASON_REMOVED) {
+ mStandardWifiEntryCache.put(key,
+ new StandardWifiEntry(mContext, mMainHandler, key, config, mWifiManager,
+ mWifiNetworkScoreCache, true /* forSavedNetworksPage */));
+ }
+ }
+ }
+
private void updateStandardWifiEntryConfigs(@NonNull List<WifiConfiguration> configs) {
checkNotNull(configs, "Config list should not be null!");
// Group configs by StandardWifiEntry key
- final Map<StandardWifiEntryKey, List<WifiConfiguration>> wifiConfigsByKey = configs.stream()
- .filter(config -> !config.carrierMerged)
- .collect(Collectors.groupingBy(StandardWifiEntryKey::new));
+ final Map<String, WifiConfiguration> wifiConfigsByKey =
+ configs.stream().collect(Collectors.toMap(
+ StandardWifiEntry::wifiConfigToStandardWifiEntryKey,
+ Function.identity()));
// Iterate through current entries and update each entry's config
- mStandardWifiEntryCache.removeIf(entry -> {
+ mStandardWifiEntryCache.entrySet().removeIf((entry) -> {
+ final StandardWifiEntry wifiEntry = entry.getValue();
+ final String key = wifiEntry.getKey();
// Update config if available, or set to null (unsaved)
- entry.updateConfig(wifiConfigsByKey.remove(entry.getStandardWifiEntryKey()));
+ wifiEntry.updateConfig(wifiConfigsByKey.remove(key));
// Entry is now unsaved, remove it.
- return !entry.isSaved();
+ return !wifiEntry.isSaved();
});
// Create new entry for each unmatched config
- for (StandardWifiEntryKey key : wifiConfigsByKey.keySet()) {
- mStandardWifiEntryCache.add(new StandardWifiEntry(mContext, mMainHandler, key,
- wifiConfigsByKey.get(key), null, mWifiManager, mWifiNetworkScoreCache,
- true /* forSavedNetworksPage */));
+ for (String key : wifiConfigsByKey.keySet()) {
+ mStandardWifiEntryCache.put(key,
+ new StandardWifiEntry(mContext, mMainHandler, key, wifiConfigsByKey.get(key),
+ mWifiManager, mWifiNetworkScoreCache, true /* forSavedNetworksPage */));
}
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/ScanResultUpdater.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/ScanResultUpdater.java
index 533849a7b..6f5f53878 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/ScanResultUpdater.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/ScanResultUpdater.java
@@ -17,7 +17,6 @@
package com.android.wifitrackerlib;
import android.net.wifi.ScanResult;
-import android.util.Pair;
import androidx.annotation.NonNull;
@@ -25,15 +24,14 @@ import java.time.Clock;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
-import java.util.Map;
/**
- * Utility class to keep a running list of scan results merged by SSID+BSSID pair.
+ * Utility class to keep a running list of scan results merged by BSSID.
*
* Thread-safe.
*/
public class ScanResultUpdater {
- private Map<Pair<String, String>, ScanResult> mScanResultsBySsidAndBssid = new HashMap<>();
+ private HashMap<String, ScanResult> mScanResultsByBssid = new HashMap<>();
private final long mMaxScanAgeMillis;
private final Object mLock = new Object();
private final Clock mClock;
@@ -57,24 +55,23 @@ public class ScanResultUpdater {
}
/**
- * Updates scan result list and replaces older scans of the same SSID+BSSID pair.
+ * Updates scan result list and replaces older scans of the same BSSID.
*/
public void update(@NonNull List<ScanResult> newResults) {
synchronized (mLock) {
evictOldScans();
for (ScanResult result : newResults) {
- final Pair<String, String> key = new Pair(result.SSID, result.BSSID);
- ScanResult prevResult = mScanResultsBySsidAndBssid.get(key);
+ ScanResult prevResult = mScanResultsByBssid.get(result.BSSID);
if (prevResult == null || (prevResult.timestamp < result.timestamp)) {
- mScanResultsBySsidAndBssid.put(key, result);
+ mScanResultsByBssid.put(result.BSSID, result);
}
}
}
}
/**
- * Returns all seen scan results merged by SSID+BSSID pair.
+ * Returns all seen scan results merged by BSSID.
*/
@NonNull
public List<ScanResult> getScanResults() {
@@ -82,7 +79,7 @@ public class ScanResultUpdater {
}
/**
- * Returns all seen scan results merged by SSID+BSSID pair and newer than maxScanAgeMillis.
+ * Returns all seen scan results merged by BSSID and newer than maxScanAgeMillis.
* maxScanAgeMillis must be less than or equal to the mMaxScanAgeMillis field if it was set.
*/
@NonNull
@@ -93,7 +90,7 @@ public class ScanResultUpdater {
}
synchronized (mLock) {
List<ScanResult> ageFilteredResults = new ArrayList<>();
- for (ScanResult result : mScanResultsBySsidAndBssid.values()) {
+ for (ScanResult result : mScanResultsByBssid.values()) {
if (mClock.millis() - result.timestamp / 1000 <= maxScanAgeMillis) {
ageFilteredResults.add(result);
}
@@ -104,7 +101,7 @@ public class ScanResultUpdater {
private void evictOldScans() {
synchronized (mLock) {
- mScanResultsBySsidAndBssid.entrySet().removeIf((entry) ->
+ mScanResultsByBssid.entrySet().removeIf((entry) ->
mClock.millis() - entry.getValue().timestamp / 1000 > mMaxScanAgeMillis);
}
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java
index 39470c65b..3ef1b4727 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardNetworkDetailsTracker.java
@@ -18,24 +18,30 @@ package com.android.wifitrackerlib;
import static androidx.core.util.Preconditions.checkNotNull;
-import static com.android.wifitrackerlib.StandardWifiEntry.ScanResultKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
+import static com.android.wifitrackerlib.NetworkRequestEntry.wifiConfigToNetworkRequestEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.wifiConfigToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.Utils.getSecurityTypesFromScanResult;
+import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTED;
import static java.util.stream.Collectors.toList;
import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
+import android.net.LinkProperties;
import android.net.Network;
+import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.NetworkScoreManager;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
+import android.text.TextUtils;
import androidx.annotation.AnyThread;
import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
import androidx.lifecycle.Lifecycle;
@@ -45,15 +51,14 @@ import java.util.Collections;
/**
* Implementation of NetworkDetailsTracker that tracks a single StandardWifiEntry.
*/
-public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
+class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
private static final String TAG = "StandardNetworkDetailsTracker";
- private final StandardWifiEntryKey mKey;
private final StandardWifiEntry mChosenEntry;
private final boolean mIsNetworkRequest;
private NetworkInfo mCurrentNetworkInfo;
- public StandardNetworkDetailsTracker(@NonNull Lifecycle lifecycle,
+ StandardNetworkDetailsTracker(@NonNull Lifecycle lifecycle,
@NonNull Context context,
@NonNull WifiManager wifiManager,
@NonNull ConnectivityManager connectivityManager,
@@ -66,20 +71,24 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
String key) {
super(lifecycle, context, wifiManager, connectivityManager, networkScoreManager,
mainHandler, workerHandler, clock, maxScanAgeMillis, scanIntervalMillis, TAG);
- mKey = new StandardWifiEntryKey(key);
- if (mKey.isNetworkRequest()) {
+
+ if (key.startsWith(NetworkRequestEntry.KEY_PREFIX)) {
mIsNetworkRequest = true;
- mChosenEntry = new NetworkRequestEntry(mContext, mMainHandler, mKey, mWifiManager,
+ mChosenEntry = new NetworkRequestEntry(mContext, mMainHandler, key, mWifiManager,
mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
} else {
mIsNetworkRequest = false;
- mChosenEntry = new StandardWifiEntry(mContext, mMainHandler, mKey, mWifiManager,
+ mChosenEntry = new StandardWifiEntry(mContext, mMainHandler, key, mWifiManager,
mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
}
- // It is safe to call updateStartInfo() in the main thread here since onStart() won't have
- // a chance to post handleOnStart() on the worker thread until the main thread finishes
- // calling this constructor.
- updateStartInfo();
+ cacheNewScanResults();
+ conditionallyUpdateScanResults(true /* lastScanSucceeded */);
+ conditionallyUpdateConfig();
+ final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
+ final Network currentNetwork = mWifiManager.getCurrentNetwork();
+ mCurrentNetworkInfo = mConnectivityManager.getNetworkInfo(currentNetwork);
+ mChosenEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
+ handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(currentNetwork));
}
@AnyThread
@@ -91,12 +100,6 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
@WorkerThread
@Override
- protected void handleOnStart() {
- updateStartInfo();
- }
-
- @WorkerThread
- @Override
protected void handleWifiStateChangedAction() {
conditionallyUpdateScanResults(true /* lastScanSucceeded */);
}
@@ -113,28 +116,56 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
@Override
protected void handleConfiguredNetworksChangedAction(@NonNull Intent intent) {
checkNotNull(intent, "Intent cannot be null!");
- conditionallyUpdateConfig();
+ final WifiConfiguration updatedConfig =
+ (WifiConfiguration) intent.getExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
+ if (updatedConfig != null && configMatches(updatedConfig)) {
+ final int changeReason = intent.getIntExtra(WifiManager.EXTRA_CHANGE_REASON,
+ -1 /* defaultValue*/);
+ if (changeReason == WifiManager.CHANGE_REASON_ADDED
+ || changeReason == WifiManager.CHANGE_REASON_CONFIG_CHANGE) {
+ mChosenEntry.updateConfig(updatedConfig);
+ } else if (changeReason == WifiManager.CHANGE_REASON_REMOVED) {
+ mChosenEntry.updateConfig(null);
+ }
+ } else {
+ conditionallyUpdateConfig();
+ }
}
@WorkerThread
@Override
- protected void handleNetworkScoreCacheUpdated() {
- mChosenEntry.onScoreCacheUpdated();
+ protected void handleNetworkStateChangedAction(@NonNull Intent intent) {
+ checkNotNull(intent, "Intent cannot be null!");
+ mCurrentNetworkInfo = (NetworkInfo) intent.getExtra(WifiManager.EXTRA_NETWORK_INFO);
+ mChosenEntry.updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
}
@WorkerThread
- private void updateStartInfo() {
- conditionallyUpdateScanResults(true /* lastScanSucceeded */);
- conditionallyUpdateConfig();
- final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
- final Network currentNetwork = mWifiManager.getCurrentNetwork();
- mCurrentNetworkInfo = mConnectivityManager.getNetworkInfo(currentNetwork);
- mChosenEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
- handleNetworkCapabilitiesChanged(
- mConnectivityManager.getNetworkCapabilities(currentNetwork));
- handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(currentNetwork));
- mChosenEntry.setIsDefaultNetwork(mIsWifiDefaultRoute);
- mChosenEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
+ @Override
+ protected void handleRssiChangedAction() {
+ mChosenEntry.updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleLinkPropertiesChanged(@Nullable LinkProperties linkProperties) {
+ if (mChosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
+ mChosenEntry.updateLinkProperties(linkProperties);
+ }
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleNetworkCapabilitiesChanged(@Nullable NetworkCapabilities capabilities) {
+ if (mChosenEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
+ mChosenEntry.updateNetworkCapabilities(capabilities);
+ }
+ }
+
+ @WorkerThread
+ @Override
+ protected void handleNetworkScoreCacheUpdated() {
+ mChosenEntry.onScoreCacheUpdated();
}
/**
@@ -163,10 +194,10 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
* it to null if it does not exist.
*/
private void conditionallyUpdateConfig() {
- mChosenEntry.updateConfig(
- mWifiManager.getPrivilegedConfiguredNetworks().stream()
- .filter(this::configMatches)
- .collect(toList()));
+ WifiConfiguration updatedConfig = mWifiManager.getPrivilegedConfiguredNetworks().stream()
+ .filter(this::configMatches)
+ .findAny().orElse(null);
+ mChosenEntry.updateConfig(updatedConfig);
}
/**
@@ -174,7 +205,9 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
*/
private void cacheNewScanResults() {
mScanResultUpdater.update(mWifiManager.getScanResults().stream()
- .filter(scan -> new ScanResultKey(scan).equals(mKey.getScanResultKey()))
+ .filter(scan -> TextUtils.equals(scan.SSID, mChosenEntry.getSsid())
+ && getSecurityTypesFromScanResult(scan).contains(
+ mChosenEntry.getSecurity()))
.collect(toList()));
}
@@ -182,6 +215,9 @@ public class StandardNetworkDetailsTracker extends NetworkDetailsTracker {
if (config.isPasspoint()) {
return false;
}
- return mKey.equals(new StandardWifiEntryKey(config, mKey.isTargetingNewNetworks()));
+ String configKey = config.fromWifiNetworkSpecifier
+ ? wifiConfigToNetworkRequestEntryKey(config)
+ : wifiConfigToStandardWifiEntryKey(config);
+ return TextUtils.equals(configKey, mChosenEntry.getKey());
}
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java
index 994331a69..19c2619bc 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/StandardWifiEntry.java
@@ -20,31 +20,24 @@ import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED_AUTHENTICATION_NO_CREDENTIALS;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_ENABLED;
-import static android.net.wifi.WifiInfo.DEFAULT_MAC_ADDRESS;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_EAP;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_OPEN;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_OWE;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_PSK;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_SAE;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_UNKNOWN;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_WEP;
import static android.net.wifi.WifiInfo.sanitizeSsid;
+import static androidx.core.util.Preconditions.checkNotNull;
+
+import static com.android.wifitrackerlib.Utils.getAppLabel;
import static com.android.wifitrackerlib.Utils.getAutoConnectDescription;
import static com.android.wifitrackerlib.Utils.getAverageSpeedFromScanResults;
import static com.android.wifitrackerlib.Utils.getBestScanResultByLevel;
-import static com.android.wifitrackerlib.Utils.getConnectedDescription;
-import static com.android.wifitrackerlib.Utils.getConnectingDescription;
-import static com.android.wifitrackerlib.Utils.getDisconnectedDescription;
+import static com.android.wifitrackerlib.Utils.getCarrierNameForSubId;
+import static com.android.wifitrackerlib.Utils.getCurrentNetworkCapabilitiesInformation;
+import static com.android.wifitrackerlib.Utils.getDisconnectedStateDescription;
import static com.android.wifitrackerlib.Utils.getImsiProtectionDescription;
import static com.android.wifitrackerlib.Utils.getMeteredDescription;
-import static com.android.wifitrackerlib.Utils.getSecurityTypesFromScanResult;
-import static com.android.wifitrackerlib.Utils.getSecurityTypesFromWifiConfiguration;
-import static com.android.wifitrackerlib.Utils.getSingleSecurityTypeFromMultipleSecurityTypes;
+import static com.android.wifitrackerlib.Utils.getNetworkDetailedState;
+import static com.android.wifitrackerlib.Utils.getSecurityTypeFromWifiConfiguration;
import static com.android.wifitrackerlib.Utils.getSpeedDescription;
import static com.android.wifitrackerlib.Utils.getSpeedFromWifiInfo;
+import static com.android.wifitrackerlib.Utils.getSubIdForConfig;
import static com.android.wifitrackerlib.Utils.getVerboseLoggingDescription;
import android.content.Context;
@@ -61,31 +54,21 @@ import android.net.wifi.WifiManager;
import android.net.wifi.WifiNetworkScoreCache;
import android.os.Handler;
import android.os.SystemClock;
-import android.telephony.SubscriptionInfo;
-import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
import android.text.TextUtils;
-import android.util.ArraySet;
-import android.util.Log;
+import androidx.annotation.GuardedBy;
+import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
import com.android.internal.annotations.VisibleForTesting;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Comparator;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
import java.util.StringJoiner;
import java.util.stream.Collectors;
@@ -96,112 +79,153 @@ import java.util.stream.Collectors;
*/
@VisibleForTesting
public class StandardWifiEntry extends WifiEntry {
- static final String TAG = "StandardWifiEntry";
- public static final String KEY_PREFIX = "StandardWifiEntry:";
-
- @NonNull private final StandardWifiEntryKey mKey;
-
+ static final String KEY_PREFIX = "StandardWifiEntry:";
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef(value = {
+ EAP_WPA,
+ EAP_WPA2_WPA3,
+ EAP_UNKNOWN
+ })
+
+ public @interface EapType {}
+
+ private static final int EAP_WPA = 0; // WPA-EAP
+ private static final int EAP_WPA2_WPA3 = 1; // RSN-EAP
+ private static final int EAP_UNKNOWN = 2;
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef(value = {
+ PSK_WPA,
+ PSK_WPA2,
+ PSK_WPA_WPA2,
+ PSK_UNKNOWN
+ })
+
+ public @interface PskType {}
+
+ private static final int PSK_WPA = 0;
+ private static final int PSK_WPA2 = 1;
+ private static final int PSK_WPA_WPA2 = 2;
+ private static final int PSK_UNKNOWN = 3;
+
+ private final Object mLock = new Object();
+ // Scan result list must be thread safe for generating the verbose scan summary
+ @GuardedBy("mLock")
+ @NonNull private final List<ScanResult> mCurrentScanResults = new ArrayList<>();
+
+ @NonNull private final String mKey;
+ @NonNull private final String mSsid;
@NonNull private final Context mContext;
-
- // Map of security type to matching scan results
- @NonNull private final Map<Integer, List<ScanResult>> mMatchingScanResults = new HashMap<>();
- // Map of security type to matching WifiConfiguration
- // TODO: Change this to single WifiConfiguration once we can get multiple security type configs.
- @NonNull private final Map<Integer, WifiConfiguration> mMatchingWifiConfigs = new HashMap<>();
-
- // List of the target scan results to be displayed. This should match the highest available
- // security from all of the matched WifiConfigurations.
- // If no WifiConfigurations are available, then these should match the most appropriate security
- // type (e.g. PSK for an PSK/SAE entry, OWE for an Open/OWE entry).
- @NonNull private final List<ScanResult> mTargetScanResults = new ArrayList<>();
- // Target WifiConfiguration for connection and displaying WifiConfiguration info
- private WifiConfiguration mTargetWifiConfig;
- private List<Integer> mTargetSecurityTypes = new ArrayList<>();
-
+ private final @Security int mSecurity;
+ private @EapType int mEapType = EAP_UNKNOWN;
+ private @PskType int mPskType = PSK_UNKNOWN;
+ @Nullable private WifiConfiguration mWifiConfig;
private boolean mIsUserShareable = false;
@Nullable private String mRecommendationServiceLabel;
private boolean mShouldAutoOpenCaptivePortal = false;
- private final boolean mIsWpa3SaeSupported;
- private final boolean mIsWpa3SuiteBSupported;
- private final boolean mIsEnhancedOpenSupported;
-
StandardWifiEntry(@NonNull Context context, @NonNull Handler callbackHandler,
- @NonNull StandardWifiEntryKey key, @NonNull WifiManager wifiManager,
+ @NonNull String key,
+ @NonNull List<ScanResult> scanResults,
+ @NonNull WifiManager wifiManager,
@NonNull WifiNetworkScoreCache scoreCache,
- boolean forSavedNetworksPage) {
- super(callbackHandler, wifiManager, scoreCache, forSavedNetworksPage);
- mContext = context;
- mKey = key;
- mIsWpa3SaeSupported = wifiManager.isWpa3SaeSupported();
- mIsWpa3SuiteBSupported = wifiManager.isWpa3SuiteBSupported();
- mIsEnhancedOpenSupported = wifiManager.isEnhancedOpenSupported();
+ boolean forSavedNetworksPage) throws IllegalArgumentException {
+ this(context, callbackHandler, key, wifiManager, scoreCache,
+ forSavedNetworksPage);
+
+ checkNotNull(scanResults, "Cannot construct with null ScanResult list!");
+ if (scanResults.isEmpty()) {
+ throw new IllegalArgumentException("Cannot construct with empty ScanResult list!");
+ }
+ updateScanResultInfo(scanResults);
updateRecommendationServiceLabel();
}
StandardWifiEntry(@NonNull Context context, @NonNull Handler callbackHandler,
- @NonNull StandardWifiEntryKey key,
- @Nullable List<WifiConfiguration> configs,
- @Nullable List<ScanResult> scanResults,
+ @NonNull String key, @NonNull WifiConfiguration config,
@NonNull WifiManager wifiManager,
@NonNull WifiNetworkScoreCache scoreCache,
boolean forSavedNetworksPage) throws IllegalArgumentException {
this(context, callbackHandler, key, wifiManager, scoreCache,
forSavedNetworksPage);
- if (configs != null && !configs.isEmpty()) {
- updateConfig(configs);
- }
- if (scanResults != null && !scanResults.isEmpty()) {
- updateScanResultInfo(scanResults);
+
+ checkNotNull(config, "Cannot construct with null config!");
+ checkNotNull(config.SSID, "Supplied config must have an SSID!");
+ mWifiConfig = config;
+ updateRecommendationServiceLabel();
+ }
+
+ StandardWifiEntry(@NonNull Context context, @NonNull Handler callbackHandler,
+ @NonNull String key, @NonNull WifiManager wifiManager,
+ @NonNull WifiNetworkScoreCache scoreCache,
+ boolean forSavedNetworksPage) {
+ super(callbackHandler, wifiManager, scoreCache, forSavedNetworksPage);
+
+ mContext = context;
+ mKey = key;
+ try {
+ final int prefixDelimiter = key.indexOf(":");
+ final int securityDelimiter = key.lastIndexOf(",");
+ mSsid = key.substring(prefixDelimiter + 1, securityDelimiter);
+ mSecurity = Integer.valueOf(key.substring(securityDelimiter + 1));
+ } catch (StringIndexOutOfBoundsException | NumberFormatException e) {
+ throw new IllegalArgumentException("Malformed key: " + key);
}
+ updateRecommendationServiceLabel();
}
@Override
public String getKey() {
- return mKey.toString();
- }
-
- StandardWifiEntryKey getStandardWifiEntryKey() {
return mKey;
}
@Override
public String getTitle() {
- return mKey.getScanResultKey().getSsid();
+ return mSsid;
}
@Override
- public synchronized String getSummary(boolean concise) {
- StringJoiner sj = new StringJoiner(mContext.getString(
- R.string.wifitrackerlib_summary_separator));
-
- final String connectedStateDescription;
- final @ConnectedState int connectedState = getConnectedState();
- switch (connectedState) {
- case CONNECTED_STATE_DISCONNECTED:
- connectedStateDescription = getDisconnectedDescription(mContext,
- mTargetWifiConfig,
- mForSavedNetworksPage,
- concise);
- break;
- case CONNECTED_STATE_CONNECTING:
- connectedStateDescription = getConnectingDescription(mContext, mNetworkInfo);
- break;
- case CONNECTED_STATE_CONNECTED:
- connectedStateDescription = getConnectedDescription(mContext,
- mTargetWifiConfig,
- mNetworkCapabilities,
- mRecommendationServiceLabel,
- mIsDefaultNetwork,
- mIsLowQuality);
- break;
- default:
- Log.e(TAG, "getConnectedState() returned unknown state: " + connectedState);
- connectedStateDescription = null;
+ public String getSummary(boolean concise) {
+ StringJoiner sj = new StringJoiner(mContext.getString(R.string.summary_separator));
+
+ if (!concise && mForSavedNetworksPage && isSaved()) {
+ final CharSequence appLabel = getAppLabel(mContext, mWifiConfig.creatorName);
+ if (!TextUtils.isEmpty(appLabel)) {
+ sj.add(mContext.getString(R.string.saved_network, appLabel));
+ }
}
- if (!TextUtils.isEmpty(connectedStateDescription)) {
- sj.add(connectedStateDescription);
+
+ if (getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
+ String disconnectDescription = getDisconnectedStateDescription(mContext, this);
+ if (TextUtils.isEmpty(disconnectDescription)) {
+ if (concise) {
+ sj.add(mContext.getString(R.string.wifi_disconnected));
+ } else if (!mForSavedNetworksPage) {
+ // Summary for unconnected suggested network
+ if (isSuggestion()) {
+ String carrierName = getCarrierNameForSubId(mContext,
+ getSubIdForConfig(mContext, mWifiConfig));
+ String suggestorName = getAppLabel(mContext, mWifiConfig.creatorName);
+ if (TextUtils.isEmpty(suggestorName)) {
+ // Fall-back to the package name in case the app label is missing
+ suggestorName = mWifiConfig.creatorName;
+ }
+ sj.add(mContext.getString(R.string.available_via_app, carrierName != null
+ ? carrierName : suggestorName));
+ } else if (isSaved()) {
+ sj.add(mContext.getString(R.string.wifi_remembered));
+ }
+ }
+ } else {
+ sj.add(disconnectDescription);
+ }
+ } else {
+ final String connectDescription = getConnectStateDescription();
+ if (!TextUtils.isEmpty(connectDescription)) {
+ sj.add(connectDescription);
+ }
}
final String speedDescription = getSpeedDescription(mContext, this);
@@ -229,6 +253,43 @@ public class StandardWifiEntry extends WifiEntry {
return sj.toString();
}
+ private String getConnectStateDescription() {
+ if (getConnectedState() == CONNECTED_STATE_CONNECTED) {
+ // For suggestion or specifier networks
+ final String suggestionOrSpecifierPackageName = mWifiInfo != null
+ ? mWifiInfo.getRequestingPackageName() : null;
+ if (!TextUtils.isEmpty(suggestionOrSpecifierPackageName)) {
+ String carrierName = mWifiConfig != null
+ ? getCarrierNameForSubId(mContext, getSubIdForConfig(mContext, mWifiConfig))
+ : null;
+ String suggestorName = getAppLabel(mContext, suggestionOrSpecifierPackageName);
+ if (TextUtils.isEmpty(suggestorName)) {
+ // Fall-back to the package name in case the app label is missing
+ suggestorName = suggestionOrSpecifierPackageName;
+ }
+ return mContext.getString(R.string.connected_via_app, carrierName != null
+ ? carrierName : suggestorName);
+ }
+
+ if (!isSaved() && !isSuggestion()) {
+ // Special case for connected + ephemeral networks.
+ if (!TextUtils.isEmpty(mRecommendationServiceLabel)) {
+ return String.format(mContext.getString(R.string.connected_via_network_scorer),
+ mRecommendationServiceLabel);
+ }
+ return mContext.getString(R.string.connected_via_network_scorer_default);
+ }
+
+ String networkCapabilitiesinformation =
+ getCurrentNetworkCapabilitiesInformation(mContext, mNetworkCapabilities);
+ if (!TextUtils.isEmpty(networkCapabilitiesinformation)) {
+ return networkCapabilitiesinformation;
+ }
+ }
+
+ return getNetworkDetailedState(mContext, mNetworkInfo);
+ }
+
@Override
public CharSequence getSecondSummary() {
return getConnectedState() == CONNECTED_STATE_CONNECTED
@@ -237,130 +298,95 @@ public class StandardWifiEntry extends WifiEntry {
@Override
public String getSsid() {
- return mKey.getScanResultKey().getSsid();
+ return mSsid;
}
@Override
- public synchronized List<Integer> getSecurityTypes() {
- return new ArrayList<>(mTargetSecurityTypes);
+ @Security
+ public int getSecurity() {
+ return mSecurity;
}
@Override
- public synchronized String getMacAddress() {
- if (mWifiInfo != null) {
- final String wifiInfoMac = mWifiInfo.getMacAddress();
- if (!TextUtils.isEmpty(wifiInfoMac)
- && !TextUtils.equals(wifiInfoMac, DEFAULT_MAC_ADDRESS)) {
- return wifiInfoMac;
- }
- }
- if (mTargetWifiConfig == null || getPrivacy() != PRIVACY_RANDOMIZED_MAC) {
+ public String getMacAddress() {
+ if (mWifiConfig == null || getPrivacy() != PRIVACY_RANDOMIZED_MAC) {
final String[] factoryMacs = mWifiManager.getFactoryMacAddresses();
if (factoryMacs.length > 0) {
return factoryMacs[0];
+ } else {
+ return null;
}
- return null;
+ } else {
+ return mWifiConfig.getRandomizedMacAddress().toString();
}
- return mTargetWifiConfig.getRandomizedMacAddress().toString();
}
@Override
- public synchronized boolean isMetered() {
+ public boolean isMetered() {
return getMeteredChoice() == METERED_CHOICE_METERED
- || (mTargetWifiConfig != null && mTargetWifiConfig.meteredHint);
+ || (mWifiConfig != null && mWifiConfig.meteredHint);
+ }
+
+ @Override
+ public boolean isSaved() {
+ return mWifiConfig != null && !mWifiConfig.isEphemeral();
}
@Override
- public synchronized boolean isSaved() {
- return mTargetWifiConfig != null && !mTargetWifiConfig.fromWifiNetworkSuggestion
- && !mTargetWifiConfig.isEphemeral();
+ public boolean isSuggestion() {
+ return mWifiConfig != null && mWifiConfig.fromWifiNetworkSuggestion;
}
@Override
- public synchronized boolean isSuggestion() {
- return mTargetWifiConfig != null && mTargetWifiConfig.fromWifiNetworkSuggestion;
+ public boolean isSubscription() {
+ return false;
}
@Override
- public synchronized WifiConfiguration getWifiConfiguration() {
+ public WifiConfiguration getWifiConfiguration() {
if (!isSaved()) {
return null;
}
- return mTargetWifiConfig;
+ return mWifiConfig;
}
@Override
- public synchronized boolean canConnect() {
- if (mLevel == WIFI_LEVEL_UNREACHABLE
- || getConnectedState() != CONNECTED_STATE_DISCONNECTED) {
- return false;
- }
- // Allow connection for EAP SIM dependent methods if the SIM of specified carrier ID is
- // active in the device.
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_EAP) && mTargetWifiConfig != null
- && mTargetWifiConfig.enterpriseConfig != null) {
- if (!mTargetWifiConfig.enterpriseConfig.isAuthenticationSimBased()) {
- return true;
- }
- List<SubscriptionInfo> activeSubscriptionInfos = ((SubscriptionManager) mContext
- .getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE))
- .getActiveSubscriptionInfoList();
- if (activeSubscriptionInfos == null || activeSubscriptionInfos.size() == 0) {
- return false;
- }
- if (mTargetWifiConfig.carrierId == TelephonyManager.UNKNOWN_CARRIER_ID) {
- // To connect via default subscription.
- return true;
- }
- for (SubscriptionInfo subscriptionInfo : activeSubscriptionInfos) {
- if (subscriptionInfo.getCarrierId() == mTargetWifiConfig.carrierId) {
- return true;
- }
- }
- return false;
- }
- return true;
+ public ConnectedInfo getConnectedInfo() {
+ return mConnectedInfo;
}
@Override
- public synchronized void connect(@Nullable ConnectCallback callback) {
+ public boolean canConnect() {
+ return mLevel != WIFI_LEVEL_UNREACHABLE
+ && getConnectedState() == CONNECTED_STATE_DISCONNECTED;
+ }
+
+ @Override
+ public void connect(@Nullable ConnectCallback callback) {
mConnectCallback = callback;
// We should flag this network to auto-open captive portal since this method represents
// the user manually connecting to a network (i.e. not auto-join).
mShouldAutoOpenCaptivePortal = true;
- mWifiManager.stopRestrictingAutoJoinToSubscriptionId();
+
if (isSaved() || isSuggestion()) {
- if (Utils.isSimCredential(mTargetWifiConfig)
- && !Utils.isSimPresent(mContext, mTargetWifiConfig.carrierId)) {
- if (callback != null) {
- mCallbackHandler.post(() ->
- callback.onConnectResult(
- ConnectCallback.CONNECT_STATUS_FAILURE_SIM_ABSENT));
- }
- return;
- }
// Saved/suggested network
- mWifiManager.connect(mTargetWifiConfig.networkId, new ConnectActionListener());
+ mWifiManager.connect(mWifiConfig.networkId, new ConnectActionListener());
} else {
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_OWE)) {
- // OWE network
- final WifiConfiguration oweConfig = new WifiConfiguration();
- oweConfig.SSID = "\"" + mKey.getScanResultKey().getSsid() + "\"";
- oweConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
- mWifiManager.connect(oweConfig, new ConnectActionListener());
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_OPEN)) {
- // Add an extra Open config for OWE transition networks
- final WifiConfiguration openConfig = new WifiConfiguration();
- openConfig.SSID = "\"" + mKey.getScanResultKey().getSsid() + "\"";
- openConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- mWifiManager.save(openConfig, null);
- }
- } else if (mTargetSecurityTypes.contains(SECURITY_TYPE_OPEN)) {
+ // Unsaved network
+ if (mSecurity == SECURITY_NONE
+ || mSecurity == SECURITY_OWE) {
// Open network
- final WifiConfiguration openConfig = new WifiConfiguration();
- openConfig.SSID = "\"" + mKey.getScanResultKey().getSsid() + "\"";
- openConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- mWifiManager.connect(openConfig, new ConnectActionListener());
+ final WifiConfiguration connectConfig = new WifiConfiguration();
+ connectConfig.SSID = "\"" + mSsid + "\"";
+
+ if (mSecurity == SECURITY_OWE) {
+ // Use OWE if possible
+ connectConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.OWE);
+ connectConfig.requirePmf = true;
+ } else {
+ connectConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
+ }
+ mWifiManager.connect(connectConfig, new ConnectActionListener());
} else {
// Secure network
if (callback != null) {
@@ -378,7 +404,7 @@ public class StandardWifiEntry extends WifiEntry {
}
@Override
- public synchronized void disconnect(@Nullable DisconnectCallback callback) {
+ public void disconnect(@Nullable DisconnectCallback callback) {
if (canDisconnect()) {
mCalledDisconnect = true;
mDisconnectCallback = callback;
@@ -388,7 +414,7 @@ public class StandardWifiEntry extends WifiEntry {
DisconnectCallback.DISCONNECT_STATUS_FAILURE_UNKNOWN);
}
}, 10_000 /* delayMillis */);
- mWifiManager.disableEphemeralNetwork("\"" + mKey.getScanResultKey().getSsid() + "\"");
+ mWifiManager.disableEphemeralNetwork(mWifiConfig.SSID);
mWifiManager.disconnect();
}
}
@@ -399,15 +425,15 @@ public class StandardWifiEntry extends WifiEntry {
}
@Override
- public synchronized void forget(@Nullable ForgetCallback callback) {
+ public void forget(@Nullable ForgetCallback callback) {
if (canForget()) {
mForgetCallback = callback;
- mWifiManager.forget(mTargetWifiConfig.networkId, new ForgetActionListener());
+ mWifiManager.forget(mWifiConfig.networkId, new ForgetActionListener());
}
}
@Override
- public synchronized boolean canSignIn() {
+ public boolean canSignIn() {
return mNetworkCapabilities != null
&& mNetworkCapabilities.hasCapability(
NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL);
@@ -428,22 +454,21 @@ public class StandardWifiEntry extends WifiEntry {
* See https://github.com/zxing/zxing/wiki/Barcode-Contents#wi-fi-network-config-android-ios-11
*/
@Override
- public synchronized boolean canShare() {
+ public boolean canShare() {
if (getWifiConfiguration() == null) {
return false;
}
- for (int securityType : mTargetSecurityTypes) {
- switch (securityType) {
- case SECURITY_TYPE_OPEN:
- case SECURITY_TYPE_OWE:
- case SECURITY_TYPE_WEP:
- case SECURITY_TYPE_PSK:
- case SECURITY_TYPE_SAE:
- return true;
- }
+ switch (mSecurity) {
+ case SECURITY_NONE:
+ case SECURITY_OWE:
+ case SECURITY_WEP:
+ case SECURITY_PSK:
+ case SECURITY_SAE:
+ return true;
+ default:
+ return false;
}
- return false;
}
/**
@@ -451,7 +476,7 @@ public class StandardWifiEntry extends WifiEntry {
* See https://www.wi-fi.org/discover-wi-fi/wi-fi-easy-connect
*/
@Override
- public synchronized boolean canEasyConnect() {
+ public boolean canEasyConnect() {
if (getWifiConfiguration() == null) {
return false;
}
@@ -461,15 +486,20 @@ public class StandardWifiEntry extends WifiEntry {
}
// DPP 1.0 only supports WPA2 and WPA3.
- return mTargetSecurityTypes.contains(SECURITY_TYPE_PSK)
- || mTargetSecurityTypes.contains(SECURITY_TYPE_SAE);
+ switch (mSecurity) {
+ case SECURITY_PSK:
+ case SECURITY_SAE:
+ return true;
+ default:
+ return false;
+ }
}
@Override
@MeteredChoice
- public synchronized int getMeteredChoice() {
- if (!isSuggestion() && mTargetWifiConfig != null) {
- final int meteredOverride = mTargetWifiConfig.meteredOverride;
+ public int getMeteredChoice() {
+ if (getWifiConfiguration() != null) {
+ final int meteredOverride = getWifiConfiguration().meteredOverride;
if (meteredOverride == WifiConfiguration.METERED_OVERRIDE_METERED) {
return METERED_CHOICE_METERED;
} else if (meteredOverride == WifiConfiguration.METERED_OVERRIDE_NOT_METERED) {
@@ -485,19 +515,19 @@ public class StandardWifiEntry extends WifiEntry {
}
@Override
- public synchronized void setMeteredChoice(int meteredChoice) {
+ public void setMeteredChoice(int meteredChoice) {
if (!canSetMeteredChoice()) {
return;
}
if (meteredChoice == METERED_CHOICE_AUTO) {
- mTargetWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NONE;
+ mWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NONE;
} else if (meteredChoice == METERED_CHOICE_METERED) {
- mTargetWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED;
+ mWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED;
} else if (meteredChoice == METERED_CHOICE_UNMETERED) {
- mTargetWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NOT_METERED;
+ mWifiConfig.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NOT_METERED;
}
- mWifiManager.save(mTargetWifiConfig, null /* listener */);
+ mWifiManager.save(mWifiConfig, null /* listener */);
}
@Override
@@ -507,10 +537,9 @@ public class StandardWifiEntry extends WifiEntry {
@Override
@Privacy
- public synchronized int getPrivacy() {
- if (mTargetWifiConfig != null
- && mTargetWifiConfig.macRandomizationSetting
- == WifiConfiguration.RANDOMIZATION_NONE) {
+ public int getPrivacy() {
+ if (mWifiConfig != null
+ && mWifiConfig.macRandomizationSetting == WifiConfiguration.RANDOMIZATION_NONE) {
return PRIVACY_DEVICE_MAC;
} else {
return PRIVACY_RANDOMIZED_MAC;
@@ -518,23 +547,23 @@ public class StandardWifiEntry extends WifiEntry {
}
@Override
- public synchronized void setPrivacy(int privacy) {
+ public void setPrivacy(int privacy) {
if (!canSetPrivacy()) {
return;
}
- mTargetWifiConfig.macRandomizationSetting = privacy == PRIVACY_RANDOMIZED_MAC
- ? WifiConfiguration.RANDOMIZATION_AUTO : WifiConfiguration.RANDOMIZATION_NONE;
- mWifiManager.save(mTargetWifiConfig, null /* listener */);
+ mWifiConfig.macRandomizationSetting = privacy == PRIVACY_RANDOMIZED_MAC
+ ? WifiConfiguration.RANDOMIZATION_PERSISTENT : WifiConfiguration.RANDOMIZATION_NONE;
+ mWifiManager.save(mWifiConfig, null /* listener */);
}
@Override
- public synchronized boolean isAutoJoinEnabled() {
- if (mTargetWifiConfig == null) {
+ public boolean isAutoJoinEnabled() {
+ if (mWifiConfig == null) {
return false;
}
- return mTargetWifiConfig.allowAutojoin;
+ return mWifiConfig.allowAutojoin;
}
@Override
@@ -543,93 +572,82 @@ public class StandardWifiEntry extends WifiEntry {
}
@Override
- public synchronized void setAutoJoinEnabled(boolean enabled) {
- if (mTargetWifiConfig == null || !canSetAutoJoinEnabled()) {
+ public void setAutoJoinEnabled(boolean enabled) {
+ if (!canSetAutoJoinEnabled()) {
return;
}
- mWifiManager.allowAutojoin(mTargetWifiConfig.networkId, enabled);
+ mWifiManager.allowAutojoin(mWifiConfig.networkId, enabled);
}
@Override
- public synchronized String getSecurityString(boolean concise) {
- if (mTargetSecurityTypes.size() == 0) {
- return concise ? "" : mContext.getString(R.string.wifitrackerlib_wifi_security_none);
- }
- if (mTargetSecurityTypes.size() == 1) {
- final int security = mTargetSecurityTypes.get(0);
- switch(security) {
- case SECURITY_TYPE_EAP:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_eap_wpa_wpa2) :
- mContext.getString(
- R.string.wifitrackerlib_wifi_security_eap_wpa_wpa2);
- case SECURITY_TYPE_EAP_WPA3_ENTERPRISE:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_eap_wpa3) :
- mContext.getString(
- R.string.wifitrackerlib_wifi_security_eap_wpa3);
- case SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_eap_suiteb) :
- mContext.getString(R.string.wifitrackerlib_wifi_security_eap_suiteb);
- case SECURITY_TYPE_PSK:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_wpa_wpa2) :
- mContext.getString(
- R.string.wifitrackerlib_wifi_security_wpa_wpa2);
- case SECURITY_TYPE_WEP:
- return mContext.getString(R.string.wifitrackerlib_wifi_security_wep);
- case SECURITY_TYPE_SAE:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_sae) :
- mContext.getString(R.string.wifitrackerlib_wifi_security_sae);
- case SECURITY_TYPE_OWE:
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_owe) :
- mContext.getString(R.string.wifitrackerlib_wifi_security_owe);
- case SECURITY_TYPE_OPEN:
- return concise ? "" : mContext.getString(
- R.string.wifitrackerlib_wifi_security_none);
- }
- }
- if (mTargetSecurityTypes.size() == 2) {
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_OPEN)
- && mTargetSecurityTypes.contains(SECURITY_TYPE_OWE)) {
- StringJoiner sj = new StringJoiner("/");
- sj.add(mContext.getString(R.string.wifitrackerlib_wifi_security_none));
- sj.add(concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_owe) :
- mContext.getString(R.string.wifitrackerlib_wifi_security_owe));
- return sj.toString();
- }
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_PSK)
- && mTargetSecurityTypes.contains(SECURITY_TYPE_SAE)) {
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_wpa_wpa2_wpa3) :
- mContext.getString(
- R.string.wifitrackerlib_wifi_security_wpa_wpa2_wpa3);
- }
- if (mTargetSecurityTypes.contains(SECURITY_TYPE_EAP)
- && mTargetSecurityTypes.contains(SECURITY_TYPE_EAP_WPA3_ENTERPRISE)) {
- return concise ? mContext.getString(
- R.string.wifitrackerlib_wifi_security_short_eap_wpa_wpa2_wpa3) :
- mContext.getString(
- R.string.wifitrackerlib_wifi_security_eap_wpa_wpa2_wpa3);
- }
+ public String getSecurityString(boolean concise) {
+ switch(mSecurity) {
+ case SECURITY_EAP:
+ switch (mEapType) {
+ case EAP_WPA:
+ return concise ? mContext.getString(R.string.wifi_security_short_eap_wpa) :
+ mContext.getString(R.string.wifi_security_eap_wpa);
+ case EAP_WPA2_WPA3:
+ return concise
+ ? mContext.getString(R.string.wifi_security_short_eap_wpa2_wpa3) :
+ mContext.getString(R.string.wifi_security_eap_wpa2_wpa3);
+ case EAP_UNKNOWN:
+ default:
+ return concise ? mContext.getString(R.string.wifi_security_short_eap) :
+ mContext.getString(R.string.wifi_security_eap);
+ }
+ case SECURITY_EAP_SUITE_B:
+ return concise ? mContext.getString(R.string.wifi_security_short_eap_suiteb) :
+ mContext.getString(R.string.wifi_security_eap_suiteb);
+ case SECURITY_PSK:
+ switch (mPskType) {
+ case PSK_WPA:
+ return concise ? mContext.getString(R.string.wifi_security_short_wpa) :
+ mContext.getString(R.string.wifi_security_wpa);
+ case PSK_WPA2:
+ return concise
+ ? mContext.getString(R.string.wifi_security_short_wpa2_wpa3) :
+ mContext.getString(R.string.wifi_security_wpa2_wpa3);
+ case PSK_WPA_WPA2:
+ case PSK_UNKNOWN:
+ default:
+ return concise
+ ? mContext.getString(R.string.wifi_security_short_wpa_wpa2_wpa3) :
+ mContext.getString(R.string.wifi_security_wpa_wpa2_wpa3);
+ }
+ case SECURITY_WEP:
+ return mContext.getString(R.string.wifi_security_wep);
+ case SECURITY_SAE:
+ return concise ? mContext.getString(R.string.wifi_security_short_sae) :
+ mContext.getString(R.string.wifi_security_sae);
+ case SECURITY_OWE:
+ return concise ? mContext.getString(R.string.wifi_security_short_owe) :
+ mContext.getString(R.string.wifi_security_owe);
+ case SECURITY_NONE:
+ default:
+ return concise ? "" : mContext.getString(R.string.wifi_security_none);
}
- // Unknown security types
- Log.e(TAG, "Couldn't get string for security types: " + mTargetSecurityTypes);
- return concise ? "" : mContext.getString(R.string.wifitrackerlib_wifi_security_none);
}
@Override
- public synchronized boolean shouldEditBeforeConnect() {
+ public boolean isExpired() {
+ return false;
+ }
+
+ @Override
+ public boolean shouldEditBeforeConnect() {
WifiConfiguration wifiConfig = getWifiConfiguration();
if (wifiConfig == null) {
return false;
}
+ // The secured Wi-Fi entry is never connected.
+ if (getSecurity() != SECURITY_NONE && getSecurity() != SECURITY_OWE
+ && !wifiConfig.getNetworkSelectionStatus().hasEverConnected()) {
+ return true;
+ }
+
// The network is disabled because of one of the authentication problems.
NetworkSelectionStatus networkSelectionStatus = wifiConfig.getNetworkSelectionStatus();
if (networkSelectionStatus.getNetworkSelectionStatus() != NETWORK_SELECTION_ENABLED) {
@@ -646,54 +664,44 @@ public class StandardWifiEntry extends WifiEntry {
}
@WorkerThread
- synchronized void updateScanResultInfo(@Nullable List<ScanResult> scanResults)
+ void updateScanResultInfo(@Nullable List<ScanResult> scanResults)
throws IllegalArgumentException {
if (scanResults == null) scanResults = new ArrayList<>();
- final String ssid = mKey.getScanResultKey().getSsid();
- for (ScanResult scan : scanResults) {
- if (!TextUtils.equals(scan.SSID, ssid)) {
+ for (ScanResult result : scanResults) {
+ if (!TextUtils.equals(result.SSID, mSsid)) {
throw new IllegalArgumentException(
"Attempted to update with wrong SSID! Expected: "
- + ssid + ", Actual: " + scan.SSID + ", ScanResult: " + scan);
- }
- }
- // Populate the cached scan result map
- mMatchingScanResults.clear();
- final Set<Integer> keySecurityTypes = mKey.getScanResultKey().getSecurityTypes();
- for (ScanResult scan : scanResults) {
- for (int security : getSecurityTypesFromScanResult(scan)) {
- if (!keySecurityTypes.contains(security) || !isSecurityTypeSupported(security)) {
- continue;
- }
- if (!mMatchingScanResults.containsKey(security)) {
- mMatchingScanResults.put(security, new ArrayList<>());
- }
- mMatchingScanResults.get(security).add(scan);
+ + mSsid + ", Actual: " + result.SSID + ", ScanResult: " + result);
}
}
- updateSecurityTypes();
- updateTargetScanResultInfo();
- notifyOnUpdated();
- }
+ synchronized (mLock) {
+ mCurrentScanResults.clear();
+ mCurrentScanResults.addAll(scanResults);
+ }
- private synchronized void updateTargetScanResultInfo() {
- // Update the level using the scans matching the target security type
- final ScanResult bestScanResult = getBestScanResultByLevel(mTargetScanResults);
+ final ScanResult bestScanResult = getBestScanResultByLevel(scanResults);
+ if (bestScanResult != null) {
+ updateEapType(bestScanResult);
+ updatePskType(bestScanResult);
+ }
if (getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
mLevel = bestScanResult != null
? mWifiManager.calculateSignalLevel(bestScanResult.level)
: WIFI_LEVEL_UNREACHABLE;
- // Average speed is used to prevent speed label flickering from multiple APs.
- mSpeed = getAverageSpeedFromScanResults(mScoreCache, mTargetScanResults);
+ synchronized (mLock) {
+ // Average speed is used to prevent speed label flickering from multiple APs.
+ mSpeed = getAverageSpeedFromScanResults(mScoreCache, mCurrentScanResults);
+ }
}
+ notifyOnUpdated();
}
@WorkerThread
@Override
- synchronized void updateNetworkCapabilities(@Nullable NetworkCapabilities capabilities) {
+ void updateNetworkCapabilities(@Nullable NetworkCapabilities capabilities) {
super.updateNetworkCapabilities(capabilities);
// Auto-open an available captive portal if the user manually connected to this network.
@@ -704,126 +712,77 @@ public class StandardWifiEntry extends WifiEntry {
}
@WorkerThread
- synchronized void onScoreCacheUpdated() {
+ void onScoreCacheUpdated() {
if (mWifiInfo != null) {
mSpeed = getSpeedFromWifiInfo(mScoreCache, mWifiInfo);
} else {
- // Average speed is used to prevent speed label flickering from multiple APs.
- mSpeed = getAverageSpeedFromScanResults(mScoreCache, mTargetScanResults);
+ synchronized (mLock) {
+ // Average speed is used to prevent speed label flickering from multiple APs.
+ mSpeed = getAverageSpeedFromScanResults(mScoreCache, mCurrentScanResults);
+ }
}
notifyOnUpdated();
}
- @WorkerThread
- synchronized void updateConfig(@Nullable List<WifiConfiguration> wifiConfigs)
- throws IllegalArgumentException {
- if (wifiConfigs == null) {
- wifiConfigs = Collections.emptyList();
- }
-
- final ScanResultKey scanResultKey = mKey.getScanResultKey();
- final String ssid = scanResultKey.getSsid();
- final Set<Integer> securityTypes = scanResultKey.getSecurityTypes();
- mMatchingWifiConfigs.clear();
- for (WifiConfiguration config : wifiConfigs) {
- if (!TextUtils.equals(ssid, sanitizeSsid(config.SSID))) {
- throw new IllegalArgumentException(
- "Attempted to update with wrong SSID!"
- + " Expected: " + ssid
- + ", Actual: " + sanitizeSsid(config.SSID)
- + ", Config: " + config);
- }
- for (int securityType : getSecurityTypesFromWifiConfiguration(config)) {
- if (!securityTypes.contains(securityType)) {
- throw new IllegalArgumentException(
- "Attempted to update with wrong security!"
- + " Expected one of: " + securityTypes
- + ", Actual: " + securityType
- + ", Config: " + config);
- }
- if (isSecurityTypeSupported(securityType)) {
- mMatchingWifiConfigs.put(securityType, config);
- }
- }
+ private void updateEapType(ScanResult result) {
+ if (result.capabilities.contains("RSN-EAP")) {
+ // WPA2-Enterprise and WPA3-Enterprise (non 192-bit) advertise RSN-EAP-CCMP
+ mEapType = EAP_WPA2_WPA3;
+ } else if (result.capabilities.contains("WPA-EAP")) {
+ // WPA-Enterprise advertises WPA-EAP-TKIP
+ mEapType = EAP_WPA;
+ } else {
+ mEapType = EAP_UNKNOWN;
}
- updateSecurityTypes();
- updateTargetScanResultInfo();
- notifyOnUpdated();
}
- private boolean isSecurityTypeSupported(int security) {
- switch (security) {
- case SECURITY_TYPE_SAE:
- return mIsWpa3SaeSupported;
- case SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT:
- return mIsWpa3SuiteBSupported;
- case SECURITY_TYPE_OWE:
- return mIsEnhancedOpenSupported;
- default:
- return true;
+ private void updatePskType(ScanResult result) {
+ if (mSecurity != SECURITY_PSK) {
+ mPskType = PSK_UNKNOWN;
+ return;
}
- }
- @Override
- protected synchronized void updateSecurityTypes() {
- mTargetSecurityTypes.clear();
- if (mWifiInfo != null) {
- final int wifiInfoSecurity = mWifiInfo.getCurrentSecurityType();
- if (wifiInfoSecurity != SECURITY_TYPE_UNKNOWN) {
- mTargetSecurityTypes.add(mWifiInfo.getCurrentSecurityType());
- }
+ final boolean wpa = result.capabilities.contains("WPA-PSK");
+ final boolean wpa2 = result.capabilities.contains("RSN-PSK");
+ if (wpa2 && wpa) {
+ mPskType = PSK_WPA_WPA2;
+ } else if (wpa2) {
+ mPskType = PSK_WPA2;
+ } else if (wpa) {
+ mPskType = PSK_WPA;
+ } else {
+ mPskType = PSK_UNKNOWN;
}
+ }
- Set<Integer> configSecurityTypes = mMatchingWifiConfigs.keySet();
- if (mTargetSecurityTypes.isEmpty() && mKey.isTargetingNewNetworks()) {
- // If we are targeting new networks for configuration, then we should select the
- // security type of all visible scan results if we don't have any configs that
- // can connect to them. This will let us configure this entry as a new network.
- boolean configMatchesScans = false;
- Set<Integer> scanSecurityTypes = mMatchingScanResults.keySet();
- for (int configSecurity : configSecurityTypes) {
- if (scanSecurityTypes.contains(configSecurity)) {
- configMatchesScans = true;
- break;
- }
+ @WorkerThread
+ void updateConfig(@Nullable WifiConfiguration wifiConfig) throws IllegalArgumentException {
+ if (wifiConfig != null) {
+ if (!TextUtils.equals(mSsid, sanitizeSsid(wifiConfig.SSID))) {
+ throw new IllegalArgumentException(
+ "Attempted to update with wrong SSID!"
+ + " Expected: " + mSsid
+ + ", Actual: " + sanitizeSsid(wifiConfig.SSID)
+ + ", Config: " + wifiConfig);
}
- if (!configMatchesScans) {
- mTargetSecurityTypes.addAll(scanSecurityTypes);
+ if (mSecurity != getSecurityTypeFromWifiConfiguration(wifiConfig)) {
+ throw new IllegalArgumentException(
+ "Attempted to update with wrong security!"
+ + " Expected: " + mSecurity
+ + ", Actual: " + getSecurityTypeFromWifiConfiguration(wifiConfig)
+ + ", Config: " + wifiConfig);
}
}
- // Use security types of any configs we have
- if (mTargetSecurityTypes.isEmpty()) {
- mTargetSecurityTypes.addAll(configSecurityTypes);
- }
-
- // Default to the key security types. This shouldn't happen since we should always have
- // scans or configs.
- if (mTargetSecurityTypes.isEmpty()) {
- mTargetSecurityTypes.addAll(mKey.getScanResultKey().getSecurityTypes());
- }
-
- // The target wifi config should match the security type we return in getSecurity(), since
- // clients (QR code/DPP, modify network page) may expect them to match.
- mTargetWifiConfig = mMatchingWifiConfigs.get(
- getSingleSecurityTypeFromMultipleSecurityTypes(mTargetSecurityTypes));
- // Collect target scan results in a set to remove duplicates when one scan matches multiple
- // security types.
- Set<ScanResult> targetScanResultSet = new ArraySet<>();
- for (int security : mTargetSecurityTypes) {
- if (mMatchingScanResults.containsKey(security)) {
- targetScanResultSet.addAll(mMatchingScanResults.get(security));
- }
- }
- mTargetScanResults.clear();
- mTargetScanResults.addAll(targetScanResultSet);
+ mWifiConfig = wifiConfig;
+ notifyOnUpdated();
}
/**
* Sets whether the suggested config for this entry is shareable to the user or not.
*/
@WorkerThread
- synchronized void setUserShareable(boolean isUserShareable) {
+ void setUserShareable(boolean isUserShareable) {
mIsUserShareable = isUserShareable;
}
@@ -831,25 +790,26 @@ public class StandardWifiEntry extends WifiEntry {
* Returns whether the suggested config for this entry is shareable to the user or not.
*/
@WorkerThread
- synchronized boolean isUserShareable() {
+ boolean isUserShareable() {
return mIsUserShareable;
}
@WorkerThread
- protected synchronized boolean connectionInfoMatches(@NonNull WifiInfo wifiInfo,
+ protected boolean connectionInfoMatches(@NonNull WifiInfo wifiInfo,
@NonNull NetworkInfo networkInfo) {
if (wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) {
return false;
}
- for (WifiConfiguration config : mMatchingWifiConfigs.values()) {
- if (config.networkId == wifiInfo.getNetworkId()) {
+
+ if (mWifiConfig != null) {
+ if (mWifiConfig.networkId == wifiInfo.getNetworkId()) {
return true;
}
}
return false;
}
- private synchronized void updateRecommendationServiceLabel() {
+ private void updateRecommendationServiceLabel() {
final NetworkScorerAppData scorer = ((NetworkScoreManager) mContext
.getSystemService(Context.NETWORK_SCORE_SERVICE)).getActiveScorer();
if (scorer != null) {
@@ -858,42 +818,45 @@ public class StandardWifiEntry extends WifiEntry {
}
@NonNull
- static StandardWifiEntryKey ssidAndSecurityTypeToStandardWifiEntryKey(
- @NonNull String ssid, int security) {
- return ssidAndSecurityTypeToStandardWifiEntryKey(
- ssid, security, false /* isTargetingNewNetworks */);
+ static String ssidAndSecurityToStandardWifiEntryKey(@NonNull String ssid,
+ @Security int security) {
+ return KEY_PREFIX + ssid + "," + security;
}
@NonNull
- static StandardWifiEntryKey ssidAndSecurityTypeToStandardWifiEntryKey(
- @NonNull String ssid, int security, boolean isTargetingNewNetworks) {
- return new StandardWifiEntryKey(
- new ScanResultKey(ssid, Collections.singletonList(security)),
- isTargetingNewNetworks);
+ static String wifiConfigToStandardWifiEntryKey(@NonNull WifiConfiguration config) {
+ checkNotNull(config, "Cannot create key with null config!");
+ checkNotNull(config.SSID, "Cannot create key with null SSID in config!");
+ return KEY_PREFIX + sanitizeSsid(config.SSID) + ","
+ + getSecurityTypeFromWifiConfiguration(config);
}
@Override
- protected synchronized String getScanResultDescription() {
- if (mTargetScanResults.size() == 0) {
- return "";
+ String getScanResultDescription() {
+ synchronized (mLock) {
+ if (mCurrentScanResults.size() == 0) {
+ return "";
+ }
}
final StringBuilder description = new StringBuilder();
description.append("[");
description.append(getScanResultDescription(MIN_FREQ_24GHZ, MAX_FREQ_24GHZ)).append(";");
description.append(getScanResultDescription(MIN_FREQ_5GHZ, MAX_FREQ_5GHZ)).append(";");
- description.append(getScanResultDescription(MIN_FREQ_6GHZ, MAX_FREQ_6GHZ)).append(";");
- description.append(getScanResultDescription(MIN_FREQ_60GHZ, MAX_FREQ_60GHZ));
+ description.append(getScanResultDescription(MIN_FREQ_6GHZ, MAX_FREQ_6GHZ));
description.append("]");
return description.toString();
}
- private synchronized String getScanResultDescription(int minFrequency, int maxFrequency) {
- final List<ScanResult> scanResults = mTargetScanResults.stream()
- .filter(scanResult -> scanResult.frequency >= minFrequency
- && scanResult.frequency <= maxFrequency)
- .sorted(Comparator.comparingInt(scanResult -> -1 * scanResult.level))
- .collect(Collectors.toList());
+ private String getScanResultDescription(int minFrequency, int maxFrequency) {
+ final List<ScanResult> scanResults;
+ synchronized (mLock) {
+ scanResults = mCurrentScanResults.stream()
+ .filter(scanResult -> scanResult.frequency >= minFrequency
+ && scanResult.frequency <= maxFrequency)
+ .sorted(Comparator.comparingInt(scanResult -> -1 * scanResult.level))
+ .collect(Collectors.toList());
+ }
final int scanResultCount = scanResults.size();
if (scanResultCount == 0) {
@@ -913,7 +876,7 @@ public class StandardWifiEntry extends WifiEntry {
return description.toString();
}
- private synchronized String getScanResultDescription(ScanResult scanResult, long nowMs) {
+ private String getScanResultDescription(ScanResult scanResult, long nowMs) {
final StringBuilder description = new StringBuilder();
description.append(" \n{");
description.append(scanResult.BSSID);
@@ -932,276 +895,4 @@ public class StandardWifiEntry extends WifiEntry {
String getNetworkSelectionDescription() {
return Utils.getNetworkSelectionDescription(getWifiConfiguration());
}
-
- /**
- * Class that identifies a unique StandardWifiEntry by the following identifiers
- * 1) ScanResult key (SSID + grouped security types)
- * 2) Suggestion profile key
- * 3) Is network request or not
- * 4) Should prioritize configuring a new network (i.e. target the security type of an
- * in-range unsaved network, rather than a config that has no scans)
- */
- static class StandardWifiEntryKey {
- private static final String KEY_SCAN_RESULT_KEY = "SCAN_RESULT_KEY";
- private static final String KEY_SUGGESTION_PROFILE_KEY = "SUGGESTION_PROFILE_KEY";
- private static final String KEY_IS_NETWORK_REQUEST = "IS_NETWORK_REQUEST";
- private static final String KEY_IS_TARGETING_NEW_NETWORKS = "IS_TARGETING_NEW_NETWORKS";
-
- @NonNull private ScanResultKey mScanResultKey;
- @Nullable private String mSuggestionProfileKey;
- private boolean mIsNetworkRequest;
- private boolean mIsTargetingNewNetworks = false;
-
- /**
- * Creates a StandardWifiEntryKey matching a ScanResultKey
- */
- StandardWifiEntryKey(@NonNull ScanResultKey scanResultKey) {
- this(scanResultKey, false /* isTargetingNewNetworks */);
- }
-
- /**
- * Creates a StandardWifiEntryKey matching a ScanResultKey and sets whether the entry
- * should target new networks or not.
- */
- StandardWifiEntryKey(@NonNull ScanResultKey scanResultKey, boolean isTargetingNewNetworks) {
- mScanResultKey = scanResultKey;
- mIsTargetingNewNetworks = isTargetingNewNetworks;
- }
-
- /**
- * Creates a StandardWifiEntryKey matching a WifiConfiguration
- */
- StandardWifiEntryKey(@NonNull WifiConfiguration config) {
- this(config, false /* isTargetingNewNetworks */);
- }
-
- /**
- * Creates a StandardWifiEntryKey matching a WifiConfiguration and sets whether the entry
- * should target new networks or not.
- */
- StandardWifiEntryKey(@NonNull WifiConfiguration config, boolean isTargetingNewNetworks) {
- mScanResultKey = new ScanResultKey(config);
- if (config.fromWifiNetworkSuggestion) {
- mSuggestionProfileKey = new StringJoiner(",")
- .add(config.creatorName)
- .add(String.valueOf(config.carrierId))
- .add(String.valueOf(config.subscriptionId))
- .toString();
- } else if (config.fromWifiNetworkSpecifier) {
- mIsNetworkRequest = true;
- }
- mIsTargetingNewNetworks = isTargetingNewNetworks;
- }
-
- /**
- * Creates a StandardWifiEntryKey from its String representation.
- */
- StandardWifiEntryKey(@NonNull String string) {
- mScanResultKey = new ScanResultKey();
- if (!string.startsWith(KEY_PREFIX)) {
- Log.e(TAG, "String key does not start with key prefix!");
- return;
- }
- try {
- final JSONObject keyJson = new JSONObject(string.substring(KEY_PREFIX.length()));
- if (keyJson.has(KEY_SCAN_RESULT_KEY)) {
- mScanResultKey = new ScanResultKey(keyJson.getString(KEY_SCAN_RESULT_KEY));
- }
- if (keyJson.has(KEY_SUGGESTION_PROFILE_KEY)) {
- mSuggestionProfileKey = keyJson.getString(KEY_SUGGESTION_PROFILE_KEY);
- }
- if (keyJson.has(KEY_IS_NETWORK_REQUEST)) {
- mIsNetworkRequest = keyJson.getBoolean(KEY_IS_NETWORK_REQUEST);
- }
- if (keyJson.has(KEY_IS_TARGETING_NEW_NETWORKS)) {
- mIsTargetingNewNetworks = keyJson.getBoolean(
- KEY_IS_TARGETING_NEW_NETWORKS);
- }
- } catch (JSONException e) {
- Log.e(TAG, "JSONException while converting StandardWifiEntryKey to string: " + e);
- }
- }
-
- /**
- * Returns the JSON String representation of this StandardWifiEntryKey.
- */
- @Override
- public String toString() {
- final JSONObject keyJson = new JSONObject();
- try {
- if (mScanResultKey != null) {
- keyJson.put(KEY_SCAN_RESULT_KEY, mScanResultKey.toString());
- }
- if (mSuggestionProfileKey != null) {
- keyJson.put(KEY_SUGGESTION_PROFILE_KEY, mSuggestionProfileKey);
- }
- if (mIsNetworkRequest) {
- keyJson.put(KEY_IS_NETWORK_REQUEST, mIsNetworkRequest);
- }
- if (mIsTargetingNewNetworks) {
- keyJson.put(KEY_IS_TARGETING_NEW_NETWORKS, mIsTargetingNewNetworks);
- }
- } catch (JSONException e) {
- Log.wtf(TAG, "JSONException while converting StandardWifiEntryKey to string: " + e);
- }
- return KEY_PREFIX + keyJson.toString();
- }
-
- /**
- * Returns the ScanResultKey of this StandardWifiEntryKey to match against ScanResults
- */
- @NonNull ScanResultKey getScanResultKey() {
- return mScanResultKey;
- }
-
- @Nullable String getSuggestionProfileKey() {
- return mSuggestionProfileKey;
- }
-
- boolean isNetworkRequest() {
- return mIsNetworkRequest;
- }
-
- boolean isTargetingNewNetworks() {
- return mIsTargetingNewNetworks;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- StandardWifiEntryKey that = (StandardWifiEntryKey) o;
- return Objects.equals(mScanResultKey, that.mScanResultKey)
- && TextUtils.equals(mSuggestionProfileKey, that.mSuggestionProfileKey)
- && mIsNetworkRequest == that.mIsNetworkRequest;
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(mScanResultKey, mSuggestionProfileKey, mIsNetworkRequest);
- }
- }
-
- /**
- * Class for matching ScanResults to StandardWifiEntry by SSID and security type grouping.
- */
- static class ScanResultKey {
- private static final String KEY_SSID = "SSID";
- private static final String KEY_SECURITY_TYPES = "SECURITY_TYPES";
-
- @Nullable private String mSsid;
- @NonNull private Set<Integer> mSecurityTypes = new ArraySet<>();
-
- ScanResultKey() {
- }
-
- ScanResultKey(@Nullable String ssid, List<Integer> securityTypes) {
- mSsid = ssid;
- for (int security : securityTypes) {
- mSecurityTypes.add(security);
- // Add any security types that merge to the same WifiEntry
- switch (security) {
- // Group OPEN and OWE networks together
- case SECURITY_TYPE_OPEN:
- mSecurityTypes.add(SECURITY_TYPE_OWE);
- break;
- case SECURITY_TYPE_OWE:
- mSecurityTypes.add(SECURITY_TYPE_OPEN);
- break;
- // Group PSK and SAE networks together
- case SECURITY_TYPE_PSK:
- mSecurityTypes.add(SECURITY_TYPE_SAE);
- break;
- case SECURITY_TYPE_SAE:
- mSecurityTypes.add(SECURITY_TYPE_PSK);
- break;
- // Group EAP and EAP_WPA3_ENTERPRISE networks together
- case SECURITY_TYPE_EAP:
- mSecurityTypes.add(SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- break;
- case SECURITY_TYPE_EAP_WPA3_ENTERPRISE:
- mSecurityTypes.add(SECURITY_TYPE_EAP);
- break;
- }
- }
- }
-
- /**
- * Creates a ScanResultKey from a ScanResult's SSID and security type grouping.
- * @param scanResult
- */
- ScanResultKey(@NonNull ScanResult scanResult) {
- this(scanResult.SSID, getSecurityTypesFromScanResult(scanResult));
- }
-
- /**
- * Creates a ScanResultKey from a WifiConfiguration's SSID and security type grouping.
- */
- ScanResultKey(@NonNull WifiConfiguration wifiConfiguration) {
- this(sanitizeSsid(wifiConfiguration.SSID),
- getSecurityTypesFromWifiConfiguration(wifiConfiguration));
- }
-
- /**
- * Creates a ScanResultKey from its String representation.
- */
- ScanResultKey(@NonNull String string) {
- try {
- final JSONObject keyJson = new JSONObject(string);
- mSsid = keyJson.getString(KEY_SSID);
- final JSONArray securityTypesJson =
- keyJson.getJSONArray(KEY_SECURITY_TYPES);
- for (int i = 0; i < securityTypesJson.length(); i++) {
- mSecurityTypes.add(securityTypesJson.getInt(i));
- }
- } catch (JSONException e) {
- Log.wtf(TAG, "JSONException while constructing ScanResultKey from string: " + e);
- }
- }
-
- /**
- * Returns the JSON String representation of this ScanResultEntry.
- */
- @Override
- public String toString() {
- final JSONObject keyJson = new JSONObject();
- try {
- if (mSsid != null) {
- keyJson.put(KEY_SSID, mSsid);
- }
- if (!mSecurityTypes.isEmpty()) {
- final JSONArray securityTypesJson = new JSONArray();
- for (int security : mSecurityTypes) {
- securityTypesJson.put(security);
- }
- keyJson.put(KEY_SECURITY_TYPES, securityTypesJson);
- }
- } catch (JSONException e) {
- Log.e(TAG, "JSONException while converting ScanResultKey to string: " + e);
- }
- return keyJson.toString();
- }
-
- @Nullable String getSsid() {
- return mSsid;
- }
-
- @NonNull Set<Integer> getSecurityTypes() {
- return mSecurityTypes;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- ScanResultKey that = (ScanResultKey) o;
- return TextUtils.equals(mSsid, that.mSsid)
- && mSecurityTypes.equals(that.mSecurityTypes);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(mSsid, mSecurityTypes);
- }
- }
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java
index 9c4f376ac..62bbe0f96 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/Utils.java
@@ -19,6 +19,14 @@ package com.android.wifitrackerlib;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_ENABLED;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_PERMANENTLY_DISABLED;
+import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_EAP;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_EAP_SUITE_B;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_NONE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_OWE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_PSK;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_SAE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_WEP;
import static com.android.wifitrackerlib.WifiEntry.SPEED_FAST;
import static com.android.wifitrackerlib.WifiEntry.SPEED_MODERATE;
import static com.android.wifitrackerlib.WifiEntry.SPEED_NONE;
@@ -27,6 +35,7 @@ import static com.android.wifitrackerlib.WifiEntry.SPEED_VERY_FAST;
import static com.android.wifitrackerlib.WifiEntry.Speed;
import static java.util.Comparator.comparingInt;
+import static java.util.stream.Collectors.groupingBy;
import android.content.Context;
import android.content.pm.ApplicationInfo;
@@ -37,13 +46,13 @@ import android.net.NetworkInfo.DetailedState;
import android.net.NetworkKey;
import android.net.NetworkScoreManager;
import android.net.ScoredNetwork;
-import android.net.WifiKey;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiConfiguration.NetworkSelectionStatus;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiNetworkScoreCache;
import android.os.PersistableBundle;
+import android.os.UserHandle;
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import android.telephony.SubscriptionInfo;
@@ -55,37 +64,24 @@ import android.text.SpannableStringBuilder;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.style.ClickableSpan;
-import android.util.FeatureFlagUtils;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.internal.annotations.VisibleForTesting;
import com.android.settingslib.HelpUtils;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.StringJoiner;
/**
* Utility methods for WifiTrackerLib.
*/
-public class Utils {
- /** Copy of the @hide Settings.Global.USE_OPEN_WIFI_PACKAGE constant. */
- static final String SETTINGS_GLOBAL_USE_OPEN_WIFI_PACKAGE = "use_open_wifi_package";
-
- @VisibleForTesting
- static FeatureFlagUtilsWrapper sFeatureFlagUtilsWrapper = new FeatureFlagUtilsWrapper();
-
- static class FeatureFlagUtilsWrapper {
- boolean isProviderModelEnabled(Context context) {
- return FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL);
- }
- }
-
+class Utils {
private static NetworkScoreManager sNetworkScoreManager;
private static String getActiveScorerPackage(@NonNull Context context) {
@@ -97,148 +93,234 @@ public class Utils {
// Returns the ScanResult with the best RSSI from a list of ScanResults.
@Nullable
- public static ScanResult getBestScanResultByLevel(@NonNull List<ScanResult> scanResults) {
+ static ScanResult getBestScanResultByLevel(@NonNull List<ScanResult> scanResults) {
if (scanResults.isEmpty()) return null;
return Collections.max(scanResults, comparingInt(scanResult -> scanResult.level));
}
- // Returns a list of WifiInfo SECURITY_TYPE_* supported by a ScanResult.
- // TODO(b/187755981): Move to shared static utils class
- @NonNull
- static List<Integer> getSecurityTypesFromScanResult(@NonNull ScanResult scanResult) {
- List<Integer> securityTypes = new ArrayList<>();
-
- // Open network & its upgradable types
- if (isScanResultForOweTransitionNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_OPEN);
- securityTypes.add(WifiInfo.SECURITY_TYPE_OWE);
- return securityTypes;
- } else if (isScanResultForOweNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_OWE);
- return securityTypes;
- } else if (isScanResultForOpenNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_OPEN);
- return securityTypes;
- }
-
- // WEP network which has no upgradable type
- if (isScanResultForWepNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_WEP);
- return securityTypes;
- }
-
- // WAPI PSK network which has no upgradable type
- if (isScanResultForWapiPskNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_WAPI_PSK);
- return securityTypes;
- }
-
- // WAPI CERT network which has no upgradable type
- if (isScanResultForWapiCertNetwork(scanResult)) {
- securityTypes.add(
- WifiInfo.SECURITY_TYPE_WAPI_CERT);
- return securityTypes;
- }
-
- // WPA2 personal network & its upgradable types
- if (isScanResultForPskNetwork(scanResult)
- && isScanResultForSaeNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_PSK);
- securityTypes.add(WifiInfo.SECURITY_TYPE_SAE);
- return securityTypes;
- } else if (isScanResultForPskNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_PSK);
- return securityTypes;
- } else if (isScanResultForSaeNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_SAE);
- return securityTypes;
- }
-
- // WPA3 Enterprise 192-bit mode, WPA2/WPA3 enterprise network & its upgradable types
- if (isScanResultForEapSuiteBNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
- } else if (isScanResultForWpa3EnterpriseTransitionNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_EAP);
- securityTypes.add(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- } else if (isScanResultForWpa3EnterpriseOnlyNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- } else if (isScanResultForEapNetwork(scanResult)) {
- securityTypes.add(WifiInfo.SECURITY_TYPE_EAP);
+ // Returns a list of SECURITY types supported by a ScanResult.
+ static List<Integer> getSecurityTypesFromScanResult(@NonNull ScanResult scan) {
+ final List<Integer> securityTypes = new ArrayList<>();
+ if (scan.capabilities == null) {
+ securityTypes.add(SECURITY_NONE);
+ } else if (scan.capabilities.contains("PSK") && scan.capabilities.contains("SAE")) {
+ securityTypes.add(SECURITY_PSK);
+ securityTypes.add(SECURITY_SAE);
+ } else if (scan.capabilities.contains("OWE_TRANSITION")) {
+ securityTypes.add(SECURITY_NONE);
+ securityTypes.add(SECURITY_OWE);
+ } else if (scan.capabilities.contains("OWE")) {
+ securityTypes.add(SECURITY_OWE);
+ } else if (scan.capabilities.contains("WEP")) {
+ securityTypes.add(SECURITY_WEP);
+ } else if (scan.capabilities.contains("SAE")) {
+ securityTypes.add(SECURITY_SAE);
+ } else if (scan.capabilities.contains("PSK")) {
+ securityTypes.add(SECURITY_PSK);
+ } else if (scan.capabilities.contains("EAP_SUITE_B_192")) {
+ securityTypes.add(SECURITY_EAP_SUITE_B);
+ } else if (scan.capabilities.contains("EAP")) {
+ securityTypes.add(SECURITY_EAP);
+ } else {
+ securityTypes.add(SECURITY_NONE);
}
return securityTypes;
}
- // Returns a list of WifiInfo SECURITY_TYPE_* supported by a WifiConfiguration
- // TODO(b/187755473): Use new public APIs to get the security type instead of relying on the
- // legacy allowedKeyManagement bitset.
- static List<Integer> getSecurityTypesFromWifiConfiguration(@NonNull WifiConfiguration config) {
- if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WAPI_CERT)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_WAPI_CERT);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WAPI_PSK)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_WAPI_PSK);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.SUITE_B_192)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.OWE)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_OWE);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.SAE)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_SAE);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA2_PSK)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_PSK);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_EAP)) {
- if (config.requirePmf
- && !config.allowedPairwiseCiphers.get(WifiConfiguration.PairwiseCipher.TKIP)
- && config.allowedProtocols.get(WifiConfiguration.Protocol.RSN)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- } else {
- // WPA2 configs should also be valid for WPA3-Enterprise APs
- return Arrays.asList(
- WifiInfo.SECURITY_TYPE_EAP, WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- }
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_PSK)) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_PSK);
- } else if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.NONE)) {
- if (config.wepKeys != null) {
- for (int i = 0; i < config.wepKeys.length; i++) {
- if (config.wepKeys[i] != null) {
- return Arrays.asList(WifiInfo.SECURITY_TYPE_WEP);
- }
- }
- }
+ // Returns the SECURITY type supported by a WifiConfiguration
+ @WifiEntry.Security
+ static int getSecurityTypeFromWifiConfiguration(@NonNull WifiConfiguration config) {
+ if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.SAE)) {
+ return SECURITY_SAE;
}
- return Arrays.asList(WifiInfo.SECURITY_TYPE_OPEN);
+ if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_PSK)) {
+ return SECURITY_PSK;
+ }
+ if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.SUITE_B_192)) {
+ return SECURITY_EAP_SUITE_B;
+ }
+ if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.WPA_EAP)
+ || config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.IEEE8021X)) {
+ return SECURITY_EAP;
+ }
+ if (config.allowedKeyManagement.get(WifiConfiguration.KeyMgmt.OWE)) {
+ return SECURITY_OWE;
+ }
+ return (config.wepKeys[0] != null) ? SECURITY_WEP : SECURITY_NONE;
}
/**
- * Returns a single WifiInfo security type from the list of multiple WifiInfo security
- * types supported by an entry.
+ * Maps ScanResults into any number of WifiEntry keys each ScanResult matches. If
+ * chooseSingleSecurity is true, then ScanResults with multiple security capabilities will be
+ * matched to a single security type for the purpose of user selection.
*
- * Single security types will have a 1-to-1 mapping.
- * Multiple security type networks will collapse to the lowest security type in the group:
- * - Open/OWE -> Open
- * - PSK/SAE -> PSK
- * - EAP/EAP-WPA3 -> EAP
+ * @param scanResults ScanResults to be mapped.
+ * @param chooseSingleSecurity If this is true, map scan results with multiple security
+ * capabilities to a single security for coalescing into a single
+ * WifiEntry.
+ * @param wifiConfigsByKey Mapping of WifiConfiguration to WifiEntry key. Only used if
+ * chooseSingleSecurity is true.
+ * @param isWpa3SaeSupported If this is false, do not map to SECURITY_SAE
+ * @param isWpa3SuiteBSupported If this is false, do not map to SECURITY_EAP_SUITE_B
+ * @param isEnhancedOpenSupported If this is false, do not map to SECURITY_OWE
+ * @return Map of WifiEntry key to list of corresponding ScanResults.
*/
- static int getSingleSecurityTypeFromMultipleSecurityTypes(
- @NonNull List<Integer> securityTypes) {
- if (securityTypes.size() == 1) {
- return securityTypes.get(0);
- } else if (securityTypes.size() == 2) {
- if (securityTypes.contains(WifiInfo.SECURITY_TYPE_OPEN)) {
- return WifiInfo.SECURITY_TYPE_OPEN;
- }
- if (securityTypes.contains(WifiInfo.SECURITY_TYPE_PSK)) {
- return WifiInfo.SECURITY_TYPE_PSK;
+ static Map<String, List<ScanResult>> mapScanResultsToKey(
+ @NonNull List<ScanResult> scanResults,
+ boolean chooseSingleSecurity,
+ @Nullable Map<String, WifiConfiguration> wifiConfigsByKey,
+ boolean isWpa3SaeSupported,
+ boolean isWpa3SuiteBSupported,
+ boolean isEnhancedOpenSupported) {
+ if (wifiConfigsByKey == null) {
+ wifiConfigsByKey = new HashMap<>();
+ }
+ final Map<String, List<ScanResult>> scanResultsBySsid = scanResults.stream()
+ .filter(scanResult -> !TextUtils.isEmpty(scanResult.SSID))
+ .collect(groupingBy(scanResult -> scanResult.SSID));
+ final Map<String, List<ScanResult>> scanResultsByKey = new HashMap<>();
+
+ for (String ssid : scanResultsBySsid.keySet()) {
+ final boolean pskConfigExists = wifiConfigsByKey.containsKey(
+ ssidAndSecurityToStandardWifiEntryKey(ssid, SECURITY_PSK));
+ final boolean saeConfigExists = wifiConfigsByKey.containsKey(
+ ssidAndSecurityToStandardWifiEntryKey(ssid, SECURITY_SAE));
+ final boolean openConfigExists = wifiConfigsByKey.containsKey(
+ ssidAndSecurityToStandardWifiEntryKey(ssid, SECURITY_NONE));
+ final boolean oweConfigExists = wifiConfigsByKey.containsKey(
+ ssidAndSecurityToStandardWifiEntryKey(ssid, SECURITY_OWE));
+
+ boolean pskInRange = false;
+ boolean saeInRange = false;
+ boolean oweInRange = false;
+ boolean openInRange = false;
+ for (ScanResult scan : scanResultsBySsid.get(ssid)) {
+ final List<Integer> securityTypes = getSecurityTypesFromScanResult(scan);
+ if (securityTypes.contains(SECURITY_PSK)) {
+ pskInRange = true;
+ }
+ if (securityTypes.contains(SECURITY_SAE)) {
+ saeInRange = true;
+ }
+ if (securityTypes.contains(SECURITY_OWE)) {
+ oweInRange = true;
+ }
+ if (securityTypes.contains(SECURITY_NONE)) {
+ openInRange = true;
+ }
}
- if (securityTypes.contains(WifiInfo.SECURITY_TYPE_EAP)) {
- return WifiInfo.SECURITY_TYPE_EAP;
+
+ for (ScanResult scan : scanResultsBySsid.get(ssid)) {
+ List<Integer> securityTypes = getSecurityTypesFromScanResult(scan);
+ List<Integer> chosenSecurityTypes = new ArrayList<>();
+ // Ignore security types that are unsupported
+ if (!isWpa3SaeSupported) {
+ securityTypes.remove((Integer) SECURITY_SAE);
+ }
+ if (!isWpa3SuiteBSupported) {
+ securityTypes.remove((Integer) SECURITY_EAP_SUITE_B);
+ }
+ if (!isEnhancedOpenSupported) {
+ securityTypes.remove((Integer) SECURITY_OWE);
+ }
+
+ final boolean isSae = securityTypes.contains(SECURITY_SAE)
+ && !securityTypes.contains(SECURITY_PSK);
+ final boolean isPsk = securityTypes.contains(SECURITY_PSK)
+ && !securityTypes.contains(SECURITY_SAE);
+ final boolean isPskSaeTransition = securityTypes.contains(SECURITY_PSK)
+ && securityTypes.contains(SECURITY_SAE);
+ final boolean isOwe = securityTypes.contains(SECURITY_OWE)
+ && !securityTypes.contains(SECURITY_NONE);
+ final boolean isOweTransition = securityTypes.contains(SECURITY_NONE)
+ && securityTypes.contains(SECURITY_OWE);
+ final boolean isOpen = securityTypes.contains(SECURITY_NONE)
+ && !securityTypes.contains(SECURITY_OWE);
+
+ if (chooseSingleSecurity) {
+ if (isPsk) {
+ if (!pskConfigExists && saeConfigExists && saeInRange) {
+ // If we don't have a PSK config, but there is an SAE AP in-range and
+ // an SAE config we can use for connection, then ignore the PSK AP so
+ // that the user only has the SAE AP to select.
+ continue;
+ } else {
+ chosenSecurityTypes.add(SECURITY_PSK);
+ }
+ } else if (isPskSaeTransition) {
+ // Map to SAE if we have an SAE config and no PSK config (use SAE config to
+ // connect). Else, map to PSK for wider compatibility.
+ if (!pskConfigExists && saeConfigExists) {
+ chosenSecurityTypes.add(SECURITY_SAE);
+ } else {
+ chosenSecurityTypes.add(SECURITY_PSK);
+ }
+ } else if (isSae) {
+ // Map to SAE if we either
+ // 1) have an SAE config and no PSK config (use SAE config to connect).
+ // 2) have no configs at all, and no PSK APs are in range. (save new
+ // network with SAE security).
+ // Else, map to PSK for wider compatibility.
+ if (!pskConfigExists && (saeConfigExists || !pskInRange)) {
+ chosenSecurityTypes.add(SECURITY_SAE);
+ } else {
+ chosenSecurityTypes.add(SECURITY_PSK);
+ }
+ } else if (isOwe) {
+ // If an open AP is in range, use it instead if we have a config for it and
+ // no OWE config.
+ if (openInRange && openConfigExists && !oweConfigExists) {
+ continue;
+ } else {
+ chosenSecurityTypes.add(SECURITY_OWE);
+ }
+ } else if (isOweTransition) {
+ // Map to OWE if we either
+ // 1) have an OWE config (use OWE config to connect).
+ // 2) have no configs at all (save new network with OWE security).
+ // Otherwise, if we have an open config only, map to open security so that
+ // config is used for connection.
+ if (oweConfigExists || !openConfigExists) {
+ chosenSecurityTypes.add(SECURITY_OWE);
+ } else {
+ chosenSecurityTypes.add(SECURITY_NONE);
+ }
+ } else if (isOpen) {
+ // If an OWE AP is in-range, then use it instead if we have a config for it
+ // or no configs at all.
+ if (oweInRange && (oweConfigExists || !openConfigExists)) {
+ continue;
+ } else {
+ chosenSecurityTypes.add(SECURITY_NONE);
+ }
+ } else {
+ chosenSecurityTypes.addAll(securityTypes);
+ }
+ } else {
+ chosenSecurityTypes.addAll(securityTypes);
+ if (isSae) {
+ // If we don't need to choose a single security type for the user to select,
+ // then SAE scans can also match to PSK configs, which will be dynamically
+ // upgraded to SAE by the framework at connection time.
+ chosenSecurityTypes.add(SECURITY_PSK);
+ }
+ }
+
+ for (int security : chosenSecurityTypes) {
+ final String key = ssidAndSecurityToStandardWifiEntryKey(ssid, security);
+ if (!scanResultsByKey.containsKey(key)) {
+ scanResultsByKey.put(key, new ArrayList<>());
+ }
+ scanResultsByKey.get(key).add(scan);
+ }
}
}
- return WifiInfo.SECURITY_TYPE_UNKNOWN;
+ return scanResultsByKey;
}
@Speed
- public static int getAverageSpeedFromScanResults(@NonNull WifiNetworkScoreCache scoreCache,
+ static int getAverageSpeedFromScanResults(@NonNull WifiNetworkScoreCache scoreCache,
@NonNull List<ScanResult> scanResults) {
int count = 0;
int totalSpeed = 0;
@@ -261,16 +343,10 @@ public class Utils {
}
@Speed
- public static int getSpeedFromWifiInfo(@NonNull WifiNetworkScoreCache scoreCache,
+ static int getSpeedFromWifiInfo(@NonNull WifiNetworkScoreCache scoreCache,
@NonNull WifiInfo wifiInfo) {
- final WifiKey wifiKey;
- try {
- wifiKey = new WifiKey(wifiInfo.getSSID(), wifiInfo.getBSSID());
- } catch (IllegalArgumentException e) {
- return SPEED_NONE;
- }
ScoredNetwork scoredNetwork = scoreCache.getScoredNetwork(
- new NetworkKey(wifiKey));
+ NetworkKey.createFromWifiInfo(wifiInfo));
if (scoredNetwork == null) {
return SPEED_NONE;
}
@@ -298,172 +374,36 @@ public class Utils {
static String getAppLabel(Context context, String packageName) {
try {
String openWifiPackageName = Settings.Global.getString(context.getContentResolver(),
- SETTINGS_GLOBAL_USE_OPEN_WIFI_PACKAGE);
+ Settings.Global.USE_OPEN_WIFI_PACKAGE);
if (!TextUtils.isEmpty(openWifiPackageName) && TextUtils.equals(packageName,
getActiveScorerPackage(context))) {
packageName = openWifiPackageName;
}
- ApplicationInfo appInfo = context.getPackageManager().getApplicationInfo(
+ ApplicationInfo appInfo = context.getPackageManager().getApplicationInfoAsUser(
packageName,
- 0 /* flags */);
+ 0 /* flags */,
+ UserHandle.getUserId(UserHandle.USER_CURRENT));
return appInfo.loadLabel(context.getPackageManager()).toString();
} catch (PackageManager.NameNotFoundException e) {
return "";
}
}
- static String getConnectedDescription(Context context,
- WifiConfiguration wifiConfiguration,
- NetworkCapabilities networkCapabilities,
- String recommendationServiceLabel,
- boolean isDefaultNetwork,
- boolean isLowQuality) {
- final StringJoiner sj = new StringJoiner(context.getString(
- R.string.wifitrackerlib_summary_separator));
- final boolean hideConnected =
- !isDefaultNetwork && sFeatureFlagUtilsWrapper.isProviderModelEnabled(context);
-
- if (wifiConfiguration != null) {
- if (wifiConfiguration.fromWifiNetworkSuggestion
- || wifiConfiguration.fromWifiNetworkSpecifier) {
- // For suggestion or specifier networks to show "Connected via ..."
- final String suggestionOrSpecifierLabel =
- getSuggestionOrSpecifierLabel(context, wifiConfiguration);
- if (!TextUtils.isEmpty(suggestionOrSpecifierLabel)) {
- if (hideConnected) {
- sj.add(context.getString(R.string.wifitrackerlib_available_via_app,
- suggestionOrSpecifierLabel));
- } else {
- sj.add(context.getString(R.string.wifitrackerlib_connected_via_app,
- suggestionOrSpecifierLabel));
- }
- }
- } else if (wifiConfiguration.isEphemeral() && !hideConnected) {
- // For ephemeral networks to show "Automatically connected via ..."
- if (!TextUtils.isEmpty(recommendationServiceLabel)) {
- sj.add(String.format(context.getString(
- R.string.wifitrackerlib_connected_via_network_scorer),
- recommendationServiceLabel));
- } else {
- sj.add(context.getString(
- R.string.wifitrackerlib_connected_via_network_scorer_default));
- }
- }
- }
-
- if (isLowQuality) {
- sj.add(context.getString(R.string.wifi_connected_low_quality));
- }
-
- // For displaying network capability info, such as captive portal or no internet
- String networkCapabilitiesInformation =
- getCurrentNetworkCapabilitiesInformation(context, networkCapabilities);
- if (!TextUtils.isEmpty(networkCapabilitiesInformation)) {
- sj.add(networkCapabilitiesInformation);
- }
-
- // Default to "Connected" if nothing else to display
- if (sj.length() == 0 && !hideConnected) {
- return context.getResources().getStringArray(R.array.wifitrackerlib_wifi_status)
- [DetailedState.CONNECTED.ordinal()];
- }
-
- return sj.toString();
- }
-
- static String getConnectingDescription(Context context, NetworkInfo networkInfo) {
- if (context == null || networkInfo == null) {
- return "";
- }
- DetailedState detailedState = networkInfo.getDetailedState();
- if (detailedState == null) {
- return "";
- }
-
- final String[] wifiStatusArray = context.getResources()
- .getStringArray(R.array.wifitrackerlib_wifi_status);
- final int index = detailedState.ordinal();
- return index >= wifiStatusArray.length ? "" : wifiStatusArray[index];
- }
-
-
- static String getDisconnectedDescription(Context context,
- WifiConfiguration wifiConfiguration,
- boolean forSavedNetworksPage,
- boolean concise) {
- if (context == null) {
- return "";
- }
- final StringJoiner sj = new StringJoiner(context.getString(
- R.string.wifitrackerlib_summary_separator));
-
- // For "Saved", "Saved by ...", and "Available via..."
- if (concise) {
- sj.add(context.getString(R.string.wifitrackerlib_wifi_disconnected));
- } else if (wifiConfiguration != null) {
- if (forSavedNetworksPage && !wifiConfiguration.isPasspoint()) {
- final CharSequence appLabel = getAppLabel(context, wifiConfiguration.creatorName);
- if (!TextUtils.isEmpty(appLabel)) {
- sj.add(context.getString(R.string.wifitrackerlib_saved_network, appLabel));
- }
- } else {
- if (wifiConfiguration.fromWifiNetworkSuggestion) {
- final String suggestionOrSpecifierLabel =
- getSuggestionOrSpecifierLabel(context, wifiConfiguration);
- if (!TextUtils.isEmpty(suggestionOrSpecifierLabel)) {
- sj.add(context.getString(
- R.string.wifitrackerlib_available_via_app,
- suggestionOrSpecifierLabel));
- }
- } else {
- sj.add(context.getString(R.string.wifitrackerlib_wifi_remembered));
- }
- }
- }
-
- // For failure messages and disabled reasons
- final String wifiConfigFailureMessage =
- getWifiConfigurationFailureMessage(context, wifiConfiguration);
- if (!TextUtils.isEmpty(wifiConfigFailureMessage)) {
- sj.add(wifiConfigFailureMessage);
- }
-
- return sj.toString();
- }
-
- private static String getSuggestionOrSpecifierLabel(
- Context context, WifiConfiguration wifiConfiguration) {
- if (context == null || wifiConfiguration == null) {
+ static String getDisconnectedStateDescription(Context context, WifiEntry wifiEntry) {
+ if (context == null || wifiEntry == null) {
return "";
}
-
- final String carrierName = getCarrierNameForSubId(context,
- getSubIdForConfig(context, wifiConfiguration));
- if (!TextUtils.isEmpty(carrierName)) {
- return carrierName;
- }
- final String suggestorLabel = getAppLabel(context, wifiConfiguration.creatorName);
- if (!TextUtils.isEmpty(suggestorLabel)) {
- return suggestorLabel;
- }
- // Fall-back to the package name in case the app label is missing
- return wifiConfiguration.creatorName;
- }
-
- private static String getWifiConfigurationFailureMessage(
- Context context, WifiConfiguration wifiConfiguration) {
- if (context == null || wifiConfiguration == null) {
- return "";
+ WifiConfiguration wifiConfiguration = wifiEntry.getWifiConfiguration();
+ if (wifiConfiguration == null) {
+ return null;
}
- // Check for any failure messages to display
if (wifiConfiguration.hasNoInternetAccess()) {
int messageID =
wifiConfiguration.getNetworkSelectionStatus().getNetworkSelectionStatus()
== NETWORK_SELECTION_PERMANENTLY_DISABLED
- ? R.string.wifitrackerlib_wifi_no_internet_no_reconnect
- : R.string.wifitrackerlib_wifi_no_internet;
+ ? R.string.wifi_no_internet_no_reconnect : R.string.wifi_no_internet;
return context.getString(messageID);
} else if (wifiConfiguration.getNetworkSelectionStatus().getNetworkSelectionStatus()
!= NETWORK_SELECTION_ENABLED) {
@@ -471,47 +411,22 @@ public class Utils {
wifiConfiguration.getNetworkSelectionStatus();
switch (networkStatus.getNetworkSelectionDisableReason()) {
case WifiConfiguration.NetworkSelectionStatus.DISABLED_AUTHENTICATION_FAILURE:
- case WifiConfiguration.NetworkSelectionStatus
- .DISABLED_AUTHENTICATION_NO_SUBSCRIPTION:
- return context.getString(
- R.string.wifitrackerlib_wifi_disabled_password_failure);
+ return context.getString(R.string.wifi_disabled_password_failure);
case WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD:
- return context.getString(R.string.wifitrackerlib_wifi_check_password_try_again);
+ return context.getString(R.string.wifi_check_password_try_again);
case WifiConfiguration.NetworkSelectionStatus.DISABLED_DHCP_FAILURE:
- return context.getString(R.string.wifitrackerlib_wifi_disabled_network_failure);
+ return context.getString(R.string.wifi_disabled_network_failure);
case WifiConfiguration.NetworkSelectionStatus.DISABLED_ASSOCIATION_REJECTION:
- return context.getString(R.string.wifitrackerlib_wifi_disabled_generic);
- case WifiConfiguration.NetworkSelectionStatus.DISABLED_NO_INTERNET_PERMANENT:
- case WifiConfiguration.NetworkSelectionStatus.DISABLED_NO_INTERNET_TEMPORARY:
- return context.getString(R.string.wifitrackerlib_wifi_no_internet_no_reconnect);
+ return context.getString(R.string.wifi_disabled_generic);
default:
break;
}
+ } else if (wifiEntry.getLevel() == WifiEntry.WIFI_LEVEL_UNREACHABLE) {
+ // Do nothing because users know it by signal icon.
} else { // In range, not disabled.
- switch (wifiConfiguration.getRecentFailureReason()) {
- case WifiConfiguration.RECENT_FAILURE_AP_UNABLE_TO_HANDLE_NEW_STA:
- case WifiConfiguration.RECENT_FAILURE_REFUSED_TEMPORARILY:
- case WifiConfiguration.RECENT_FAILURE_DISCONNECTION_AP_BUSY:
- return context.getString(R.string
- .wifitrackerlib_wifi_ap_unable_to_handle_new_sta);
- case WifiConfiguration.RECENT_FAILURE_POOR_CHANNEL_CONDITIONS:
- return context.getString(R.string.wifitrackerlib_wifi_poor_channel_conditions);
- case WifiConfiguration.RECENT_FAILURE_MBO_ASSOC_DISALLOWED_UNSPECIFIED:
- case WifiConfiguration.RECENT_FAILURE_MBO_ASSOC_DISALLOWED_AIR_INTERFACE_OVERLOADED:
- case WifiConfiguration.RECENT_FAILURE_MBO_ASSOC_DISALLOWED_AUTH_SERVER_OVERLOADED:
- return context.getString(R.string
- .wifitrackerlib_wifi_mbo_assoc_disallowed_cannot_connect);
- case WifiConfiguration.RECENT_FAILURE_MBO_ASSOC_DISALLOWED_MAX_NUM_STA_ASSOCIATED:
- return context.getString(R.string
- .wifitrackerlib_wifi_mbo_assoc_disallowed_max_num_sta_associated);
- case WifiConfiguration.RECENT_FAILURE_MBO_ASSOC_DISALLOWED_INSUFFICIENT_RSSI:
- case WifiConfiguration.RECENT_FAILURE_OCE_RSSI_BASED_ASSOCIATION_REJECTION:
- return context.getString(R.string
- .wifitrackerlib_wifi_mbo_oce_assoc_disallowed_insufficient_rssi);
- case WifiConfiguration.RECENT_FAILURE_NETWORK_NOT_FOUND:
- return context.getString(R.string.wifitrackerlib_wifi_network_not_found);
- default:
- // do nothing
+ if (wifiConfiguration.getRecentFailureReason()
+ == WifiConfiguration.RECENT_FAILURE_AP_UNABLE_TO_HANDLE_NEW_STA) {
+ return context.getString(R.string.wifi_ap_unable_to_handle_new_sta);
}
}
return "";
@@ -524,7 +439,7 @@ public class Utils {
}
return wifiEntry.isAutoJoinEnabled()
- ? "" : context.getString(R.string.wifitrackerlib_auto_connect_disable);
+ ? "" : context.getString(R.string.auto_connect_disable);
}
static String getMeteredDescription(@NonNull Context context, @Nullable WifiEntry wifiEntry) {
@@ -538,12 +453,11 @@ public class Utils {
}
if (wifiEntry.getMeteredChoice() == WifiEntry.METERED_CHOICE_METERED) {
- return context.getString(R.string.wifitrackerlib_wifi_metered_label);
+ return context.getString(R.string.wifi_metered_label);
} else if (wifiEntry.getMeteredChoice() == WifiEntry.METERED_CHOICE_UNMETERED) {
- return context.getString(R.string.wifitrackerlib_wifi_unmetered_label);
+ return context.getString(R.string.wifi_unmetered_label);
} else { // METERED_CHOICE_AUTO
- return wifiEntry.isMetered() ? context.getString(
- R.string.wifitrackerlib_wifi_metered_label) : "";
+ return wifiEntry.isMetered() ? context.getString(R.string.wifi_metered_label) : "";
}
}
@@ -555,13 +469,13 @@ public class Utils {
@Speed int speed = wifiEntry.getSpeed();
switch (speed) {
case SPEED_VERY_FAST:
- return context.getString(R.string.wifitrackerlib_speed_label_very_fast);
+ return context.getString(R.string.speed_label_very_fast);
case SPEED_FAST:
- return context.getString(R.string.wifitrackerlib_speed_label_fast);
+ return context.getString(R.string.speed_label_fast);
case SPEED_MODERATE:
- return context.getString(R.string.wifitrackerlib_speed_label_okay);
+ return context.getString(R.string.speed_label_okay);
case SPEED_SLOW:
- return context.getString(R.string.wifitrackerlib_speed_label_slow);
+ return context.getString(R.string.speed_label_slow);
case SPEED_NONE:
default:
return "";
@@ -580,11 +494,6 @@ public class Utils {
sj.add(wifiInfoDescription);
}
- final String networkCapabilityDescription = wifiEntry.getNetworkCapabilityDescription();
- if (!TextUtils.isEmpty(networkCapabilityDescription)) {
- sj.add(networkCapabilityDescription);
- }
-
final String scanResultsDescription = wifiEntry.getScanResultDescription();
if (!TextUtils.isEmpty(scanResultsDescription)) {
sj.add(scanResultsDescription);
@@ -644,34 +553,30 @@ public class Utils {
if (networkCapabilities.hasCapability(
NetworkCapabilities.NET_CAPABILITY_PARTIAL_CONNECTIVITY)) {
- return context.getString(R.string.wifitrackerlib_wifi_limited_connection);
+ return context.getString(R.string.wifi_limited_connection);
}
if (!networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)) {
if (networkCapabilities.isPrivateDnsBroken()) {
- return context.getString(R.string.wifitrackerlib_private_dns_broken);
+ return context.getString(R.string.private_dns_broken);
}
- return context.getString(
- R.string.wifitrackerlib_wifi_connected_cannot_provide_internet);
+ return context.getString(R.string.wifi_connected_no_internet);
}
return "";
}
- /**
- * Returns the display string corresponding to the detailed state of the given NetworkInfo
- */
static String getNetworkDetailedState(Context context, NetworkInfo networkInfo) {
if (context == null || networkInfo == null) {
return "";
}
- DetailedState detailedState = networkInfo.getDetailedState();
- if (detailedState == null) {
+ DetailedState detailState = networkInfo.getDetailedState();
+ if (detailState == null) {
return "";
}
String[] wifiStatusArray = context.getResources()
- .getStringArray(R.array.wifitrackerlib_wifi_status);
- int index = detailedState.ordinal();
+ .getStringArray(R.array.wifi_status);
+ int index = detailState.ordinal();
return index >= wifiStatusArray.length ? "" : wifiStatusArray[index];
}
@@ -784,19 +689,13 @@ public class Utils {
}
// IMSI protection is not provided, return warning message.
- return linkifyAnnotation(context, context.getText(
- R.string.wifitrackerlib_imsi_protection_warning), "url",
- context.getString(R.string.wifitrackerlib_help_url_imsi_protection));
+ return linkifyAnnotation(context, context.getText(R.string.imsi_protection_warning), "url",
+ context.getString(R.string.help_url_imsi_protection));
}
/** Find the annotation of specified id in rawText and linkify it with helpUriString. */
static CharSequence linkifyAnnotation(Context context, CharSequence rawText, String id,
String helpUriString) {
- // Return original string when helpUriString is empty.
- if (TextUtils.isEmpty(helpUriString)) {
- return rawText;
- }
-
SpannableString spannableText = new SpannableString(rawText);
Annotation[] annotations = spannableText.getSpans(0, spannableText.length(),
Annotation.class);
@@ -818,195 +717,4 @@ public class Utils {
}
return rawText;
}
-
- // Various utility methods copied from com.android.server.wifi.util.ScanResultUtils for
- // extracting SecurityType from ScanResult.
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a PSK network or not.
- * This checks if the provided capabilities string contains PSK encryption type or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForPskNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("PSK");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a WAPI-PSK network or not.
- * This checks if the provided capabilities string contains PSK encryption type or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForWapiPskNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("WAPI-PSK");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a WAPI-CERT
- * network or not.
- * This checks if the provided capabilities string contains PSK encryption type or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForWapiCertNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("WAPI-CERT");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a EAP network or not.
- * This checks these conditions:
- * - Enable EAP/SHA1, EAP/SHA256 AKM, FT/EAP, or EAP-FILS.
- * - Not a WPA3 Enterprise only network.
- * - Not a WPA3 Enterprise transition network.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForEapNetwork(ScanResult scanResult) {
- return (scanResult.capabilities.contains("EAP/SHA1")
- || scanResult.capabilities.contains("EAP/SHA256")
- || scanResult.capabilities.contains("FT/EAP")
- || scanResult.capabilities.contains("EAP-FILS"))
- && !isScanResultForWpa3EnterpriseOnlyNetwork(scanResult)
- && !isScanResultForWpa3EnterpriseTransitionNetwork(scanResult);
- }
-
- // TODO(b/187755981): Move to shared static utils class
- private static boolean isScanResultForPmfMandatoryNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("[MFPR]");
- }
-
- // TODO(b/187755981): Move to shared static utils class
- private static boolean isScanResultForPmfCapableNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("[MFPC]");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to
- * a WPA3 Enterprise transition network or not.
- *
- * See Section 3.3 WPA3-Enterprise transition mode in WPA3 Specification
- * - Enable at least EAP/SHA1 and EAP/SHA256 AKM suites.
- * - Not enable WPA1 version 1, WEP, and TKIP.
- * - Management Frame Protection Capable is set.
- * - Management Frame Protection Required is not set.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForWpa3EnterpriseTransitionNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("EAP/SHA1")
- && scanResult.capabilities.contains("EAP/SHA256")
- && scanResult.capabilities.contains("RSN")
- && !scanResult.capabilities.contains("WEP")
- && !scanResult.capabilities.contains("TKIP")
- && !isScanResultForPmfMandatoryNetwork(scanResult)
- && isScanResultForPmfCapableNetwork(scanResult);
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to
- * a WPA3 Enterprise only network or not.
- *
- * See Section 3.2 WPA3-Enterprise only mode in WPA3 Specification
- * - Enable at least EAP/SHA256 AKM suite.
- * - Not enable EAP/SHA1 AKM suite.
- * - Not enable WPA1 version 1, WEP, and TKIP.
- * - Management Frame Protection Capable is set.
- * - Management Frame Protection Required is set.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForWpa3EnterpriseOnlyNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("EAP/SHA256")
- && !scanResult.capabilities.contains("EAP/SHA1")
- && scanResult.capabilities.contains("RSN")
- && !scanResult.capabilities.contains("WEP")
- && !scanResult.capabilities.contains("TKIP")
- && isScanResultForPmfMandatoryNetwork(scanResult)
- && isScanResultForPmfCapableNetwork(scanResult);
- }
-
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a WPA3-Enterprise 192-bit
- * mode network or not.
- * This checks if the provided capabilities comply these conditions:
- * - Enable SUITE-B-192 AKM.
- * - Not enable EAP/SHA1 AKM suite.
- * - Not enable WPA1 version 1, WEP, and TKIP.
- * - Management Frame Protection Required is set.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForEapSuiteBNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("SUITE_B_192")
- && scanResult.capabilities.contains("RSN")
- && !scanResult.capabilities.contains("WEP")
- && !scanResult.capabilities.contains("TKIP")
- && isScanResultForPmfMandatoryNetwork(scanResult);
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to a WEP network or not.
- * This checks if the provided capabilities string contains WEP encryption type or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForWepNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("WEP");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to OWE network.
- * This checks if the provided capabilities string contains OWE or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForOweNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("OWE");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to OWE transition network.
- * This checks if the provided capabilities string contains OWE_TRANSITION or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForOweTransitionNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("OWE_TRANSITION");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to SAE network.
- * This checks if the provided capabilities string contains SAE or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForSaeNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("SAE");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to PSK-SAE transition
- * network. This checks if the provided capabilities string contains both PSK and SAE or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForPskSaeTransitionNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("PSK") && scanResult.capabilities.contains("SAE");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to an unknown amk network.
- * This checks if the provided capabilities string contains ? or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForUnknownAkmNetwork(ScanResult scanResult) {
- return scanResult.capabilities.contains("?");
- }
-
- /**
- * Helper method to check if the provided |scanResult| corresponds to an open network or not.
- * This checks if the provided capabilities string does not contain either of WEP, PSK, SAE
- * EAP, or unknown encryption types or not.
- * TODO(b/187755981): Move to shared static utils class
- */
- public static boolean isScanResultForOpenNetwork(ScanResult scanResult) {
- return (!(isScanResultForWepNetwork(scanResult) || isScanResultForPskNetwork(scanResult)
- || isScanResultForEapNetwork(scanResult) || isScanResultForSaeNetwork(scanResult)
- || isScanResultForWpa3EnterpriseTransitionNetwork(scanResult)
- || isScanResultForWpa3EnterpriseOnlyNetwork(scanResult)
- || isScanResultForWapiPskNetwork(scanResult)
- || isScanResultForWapiCertNetwork(scanResult)
- || isScanResultForEapSuiteBNetwork(scanResult)
- || isScanResultForUnknownAkmNetwork(scanResult)));
- }
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java
index 6ec5d8ba3..c7dc5c4da 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiEntry.java
@@ -20,15 +20,14 @@ import static android.net.wifi.WifiInfo.INVALID_RSSI;
import static androidx.core.util.Preconditions.checkNotNull;
-import static com.android.wifitrackerlib.Utils.getSingleSecurityTypeFromMultipleSecurityTypes;
import static com.android.wifitrackerlib.Utils.getSpeedFromWifiInfo;
import android.net.LinkAddress;
import android.net.LinkProperties;
import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
+import android.net.NetworkUtils;
import android.net.RouteInfo;
-import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
@@ -43,8 +42,6 @@ import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import androidx.annotation.WorkerThread;
-import com.android.net.module.util.NetUtils;
-
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.net.Inet4Address;
@@ -52,21 +49,18 @@ import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
-import java.util.Optional;
import java.util.StringJoiner;
import java.util.stream.Collectors;
/**
- * Base class for an entry representing a Wi-Fi network in a Wi-Fi picker/settings.
- * Subclasses should override the default methods for their own needs.
+ * Abstract base class for an entry representing a Wi-Fi network in a Wi-Fi picker/settings.
*
* Clients implementing a Wi-Fi picker/settings should receive WifiEntry objects from classes
* implementing BaseWifiTracker, and rely on the given API for all user-displayable information and
* actions on the represented network.
*/
-public class WifiEntry implements Comparable<WifiEntry> {
+public abstract class WifiEntry implements Comparable<WifiEntry> {
/**
* Security type based on WifiConfiguration.KeyMgmt
*/
@@ -79,7 +73,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
SECURITY_SAE,
SECURITY_EAP,
SECURITY_EAP_SUITE_B,
- SECURITY_EAP_WPA3_ENTERPRISE,
})
public @interface Security {}
@@ -91,9 +84,8 @@ public class WifiEntry implements Comparable<WifiEntry> {
public static final int SECURITY_OWE = 4;
public static final int SECURITY_SAE = 5;
public static final int SECURITY_EAP_SUITE_B = 6;
- public static final int SECURITY_EAP_WPA3_ENTERPRISE = 7;
- public static final int NUM_SECURITY_TYPES = 8;
+ public static final int NUM_SECURITY_TYPES = 7;
@Retention(RetentionPolicy.SOURCE)
@IntDef(value = {
@@ -162,7 +154,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
FREQUENCY_2_4_GHZ,
FREQUENCY_5_GHZ,
FREQUENCY_6_GHZ,
- FREQUENCY_60_GHZ,
FREQUENCY_UNKNOWN
})
@@ -171,7 +162,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
public static final int FREQUENCY_2_4_GHZ = 2_400;
public static final int FREQUENCY_5_GHZ = 5_000;
public static final int FREQUENCY_6_GHZ = 6_000;
- public static final int FREQUENCY_60_GHZ = 60_000;
public static final int FREQUENCY_UNKNOWN = -1;
/**
@@ -205,16 +195,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
public static final int MAX_FREQ_6GHZ = 7125;
/**
- * Min bound on the 60 GHz (802.11ad) WLAN channels.
- */
- public static final int MIN_FREQ_60GHZ = 58320;
-
- /**
- * Max bound on the 60 GHz (802.11ad) WLAN channels.
- */
- public static final int MAX_FREQ_60GHZ = 70200;
-
- /**
* Max ScanResult information displayed of Wi-Fi Verbose Logging.
*/
protected static final int MAX_VERBOSE_LOG_DISPLAY_SCANRESULT_COUNT = 4;
@@ -226,7 +206,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
// Callback associated with this WifiEntry. Subclasses should call its methods appropriately.
private WifiEntryCallback mListener;
- protected final Handler mCallbackHandler;
+ protected Handler mCallbackHandler;
protected int mLevel = WIFI_LEVEL_UNREACHABLE;
protected int mSpeed = SPEED_NONE;
@@ -243,13 +223,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
protected boolean mCalledConnect = false;
protected boolean mCalledDisconnect = false;
- private boolean mIsValidated;
- protected boolean mIsDefaultNetwork;
- protected boolean mIsLowQuality;
-
- private Optional<ManageSubscriptionAction> mManageSubscriptionAction = Optional.empty();
-
- public WifiEntry(@NonNull Handler callbackHandler, @NonNull WifiManager wifiManager,
+ WifiEntry(@NonNull Handler callbackHandler, @NonNull WifiManager wifiManager,
@NonNull WifiNetworkScoreCache scoreCache,
boolean forSavedNetworksPage) throws IllegalArgumentException {
checkNotNull(callbackHandler, "Cannot construct with null handler!");
@@ -263,14 +237,11 @@ public class WifiEntry implements Comparable<WifiEntry> {
// Info available for all WifiEntries //
/** The unique key defining a WifiEntry */
- @NonNull
- public String getKey() {
- return "";
- };
+ public abstract String getKey();
/** Returns connection state of the network defined by the CONNECTED_STATE constants */
@ConnectedState
- public synchronized int getConnectedState() {
+ public int getConnectedState() {
if (mNetworkInfo == null) {
return CONNECTED_STATE_DISCONNECTED;
}
@@ -292,19 +263,14 @@ public class WifiEntry implements Comparable<WifiEntry> {
/** Returns the display title. This is most commonly the SSID of a network. */
- @NonNull
- public String getTitle() {
- return "";
- }
+ public abstract String getTitle();
/** Returns the display summary, it's a concise summary. */
- @NonNull
public String getSummary() {
return getSummary(true /* concise */);
}
/** Returns the second summary, it's for additional information of the WifiEntry */
- @NonNull
public CharSequence getSecondSummary() {
return "";
}
@@ -313,10 +279,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
* Returns the display summary.
* @param concise Whether to show more information. e.g., verbose logging.
*/
- @NonNull
- public String getSummary(boolean concise) {
- return "";
- };
+ public abstract String getSummary(boolean concise);
/**
* Returns the signal strength level within [WIFI_LEVEL_MIN, WIFI_LEVEL_MAX].
@@ -326,30 +289,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
return mLevel;
};
- /**
- * Returns whether the level icon for this network should show an X or not.
- */
- public boolean shouldShowXLevelIcon() {
- return getConnectedState() != CONNECTED_STATE_DISCONNECTED
- && (!mIsValidated || !mIsDefaultNetwork) && !canSignIn();
- }
-
- /**
- * Returns whether this network has validated internet access or not.
- * Note: This does not necessarily mean the network is the default route.
- */
- public boolean hasInternetAccess() {
- return mIsValidated;
- }
-
- /**
- * Returns whether this network is the default network or not (i.e. this network is the one
- * currently being used to provide internet connection).
- */
- public boolean isDefaultNetwork() {
- return mIsDefaultNetwork;
- }
-
/** Returns the speed value of the network defined by the SPEED constants */
@Speed
public int getSpeed() {
@@ -359,108 +298,53 @@ public class WifiEntry implements Comparable<WifiEntry> {
/**
* Returns the SSID of the entry, if applicable. Null otherwise.
*/
- @Nullable
- public String getSsid() {
- return null;
- }
+ public abstract String getSsid();
- /**
- * Returns the security type defined by the SECURITY constants
- * DEPRECATED: Use getSecurityTypes() which can return multiple security types.
- */
- // TODO(b/187554920): Remove this and move all clients to getSecurityTypes()
+ /** Returns the security type defined by the SECURITY constants */
@Security
- public int getSecurity() {
- switch (getSingleSecurityTypeFromMultipleSecurityTypes(getSecurityTypes())) {
- case WifiInfo.SECURITY_TYPE_OPEN:
- return SECURITY_NONE;
- case WifiInfo.SECURITY_TYPE_OWE:
- return SECURITY_OWE;
- case WifiInfo.SECURITY_TYPE_WEP:
- return SECURITY_WEP;
- case WifiInfo.SECURITY_TYPE_PSK:
- return SECURITY_PSK;
- case WifiInfo.SECURITY_TYPE_SAE:
- return SECURITY_SAE;
- case WifiInfo.SECURITY_TYPE_EAP:
- return SECURITY_EAP;
- case WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE:
- return SECURITY_EAP_WPA3_ENTERPRISE;
- case WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT:
- return SECURITY_EAP_SUITE_B;
- case WifiInfo.SECURITY_TYPE_PASSPOINT_R1_R2:
- case WifiInfo.SECURITY_TYPE_PASSPOINT_R3:
- return SECURITY_EAP;
- default:
- return SECURITY_NONE;
- }
- }
-
- /**
- * Returns security type of the current connection, or the available types for connection
- * in the form of the SECURITY_TYPE_* values in {@link WifiInfo}
- */
- @NonNull
- public List<Integer> getSecurityTypes() {
- return Collections.emptyList();
- }
+ public abstract int getSecurity();
/** Returns the MAC address of the connection */
- @Nullable
- public String getMacAddress() {
- return null;
- }
+ public abstract String getMacAddress();
/**
* Indicates when a network is metered or the user marked the network as metered.
*/
- public boolean isMetered() {
- return false;
- }
+ public abstract boolean isMetered();
/**
* Indicates whether or not an entry is for a saved configuration.
*/
- public boolean isSaved() {
- return false;
- }
+ public abstract boolean isSaved();
/**
* Indicates whether or not an entry is for a saved configuration.
*/
- public boolean isSuggestion() {
- return false;
- }
+ public abstract boolean isSuggestion();
/**
* Indicates whether or not an entry is for a subscription.
*/
- public boolean isSubscription() {
- return false;
- }
+ public abstract boolean isSubscription();
/**
* Returns the WifiConfiguration of an entry or null if unavailable. This should be used when
* information on the WifiConfiguration needs to be modified and saved via
* {@link WifiManager#save(WifiConfiguration, WifiManager.ActionListener)}.
*/
- @Nullable
- public WifiConfiguration getWifiConfiguration() {
- return null;
- }
+ public abstract WifiConfiguration getWifiConfiguration();
/**
* Returns the ConnectedInfo object pertaining to an active connection.
*
* Returns null if getConnectedState() != CONNECTED_STATE_CONNECTED.
*/
- @Nullable
- public synchronized ConnectedInfo getConnectedInfo() {
+ public ConnectedInfo getConnectedInfo() {
if (getConnectedState() != CONNECTED_STATE_CONNECTED) {
return null;
}
- return new ConnectedInfo(mConnectedInfo);
+ return mConnectedInfo;
}
/**
@@ -475,80 +359,34 @@ public class WifiEntry implements Comparable<WifiEntry> {
public List<String> ipv6Addresses = new ArrayList<>();
public String gateway;
public String subnetMask;
- public int wifiStandard = ScanResult.WIFI_STANDARD_UNKNOWN;
-
- /**
- * Creates an empty ConnectedInfo
- */
- public ConnectedInfo() {
- }
-
- /**
- * Creates a ConnectedInfo with all fields copied from an input ConnectedInfo
- */
- public ConnectedInfo(@NonNull ConnectedInfo other) {
- frequencyMhz = other.frequencyMhz;
- dnsServers = new ArrayList<>(dnsServers);
- linkSpeedMbps = other.linkSpeedMbps;
- ipAddress = other.ipAddress;
- ipv6Addresses = new ArrayList<>(other.ipv6Addresses);
- gateway = other.gateway;
- subnetMask = other.subnetMask;
- wifiStandard = other.wifiStandard;
- }
}
// User actions on a network
/** Returns whether the entry should show a connect option */
- public boolean canConnect() {
- return false;
- }
-
+ public abstract boolean canConnect();
/** Connects to the network */
- public void connect(@Nullable ConnectCallback callback) {
- // Do nothing.
- }
+ public abstract void connect(@Nullable ConnectCallback callback);
/** Returns whether the entry should show a disconnect option */
- public boolean canDisconnect() {
- return false;
- }
-
+ public abstract boolean canDisconnect();
/** Disconnects from the network */
- public void disconnect(@Nullable DisconnectCallback callback) {
- // Do nothing.
- }
+ public abstract void disconnect(@Nullable DisconnectCallback callback);
/** Returns whether the entry should show a forget option */
- public boolean canForget() {
- return false;
- }
-
+ public abstract boolean canForget();
/** Forgets the network */
- public void forget(@Nullable ForgetCallback callback) {
- // Do nothing.
- }
+ public abstract void forget(@Nullable ForgetCallback callback);
/** Returns whether the network can be signed-in to */
- public boolean canSignIn() {
- return false;
- }
-
+ public abstract boolean canSignIn();
/** Sign-in to the network. For captive portals. */
- public void signIn(@Nullable SignInCallback callback) {
- // Do nothing.
- }
+ public abstract void signIn(@Nullable SignInCallback callback);
/** Returns whether the network can be shared via QR code */
- public boolean canShare() {
- return false;
- }
-
+ public abstract boolean canShare();
/** Returns whether the user can use Easy Connect to onboard a device to the network */
- public boolean canEasyConnect() {
- return false;
- }
+ public abstract boolean canEasyConnect();
// Modifiable settings
@@ -557,68 +395,38 @@ public class WifiEntry implements Comparable<WifiEntry> {
* defined by the METERED_CHOICE constants
*/
@MeteredChoice
- public int getMeteredChoice() {
- return METERED_CHOICE_AUTO;
- }
-
+ public abstract int getMeteredChoice();
/** Returns whether the entry should let the user choose the metered treatment of a network */
- public boolean canSetMeteredChoice() {
- return false;
- }
-
+ public abstract boolean canSetMeteredChoice();
/**
* Sets the user's choice for treating a network as metered,
* defined by the METERED_CHOICE constants
*/
- public void setMeteredChoice(@MeteredChoice int meteredChoice) {
- // Do nothing.
- }
+ public abstract void setMeteredChoice(@MeteredChoice int meteredChoice);
/** Returns whether the entry should let the user choose the MAC randomization setting */
- public boolean canSetPrivacy() {
- return false;
- }
-
+ public abstract boolean canSetPrivacy();
/** Returns the MAC randomization setting defined by the PRIVACY constants */
@Privacy
- public int getPrivacy() {
- return PRIVACY_UNKNOWN;
- }
-
+ public abstract int getPrivacy();
/** Sets the user's choice for MAC randomization defined by the PRIVACY constants */
- public void setPrivacy(@Privacy int privacy) {
- // Do nothing.
- }
+ public abstract void setPrivacy(@Privacy int privacy);
/** Returns whether the network has auto-join enabled */
- public boolean isAutoJoinEnabled() {
- return false;
- }
-
+ public abstract boolean isAutoJoinEnabled();
/** Returns whether the user can enable/disable auto-join */
- public boolean canSetAutoJoinEnabled() {
- return false;
- }
-
+ public abstract boolean canSetAutoJoinEnabled();
/** Sets whether a network will be auto-joined or not */
- public void setAutoJoinEnabled(boolean enabled) {
- // Do nothing.
- }
-
+ public abstract void setAutoJoinEnabled(boolean enabled);
/** Returns the string displayed for @Security */
- public String getSecurityString(boolean concise) {
- return "";
- }
-
+ public abstract String getSecurityString(boolean concise);
/** Returns whether subscription of the entry is expired */
- public boolean isExpired() {
- return false;
- }
-
+ public abstract boolean isExpired();
/** Returns whether a user can manage their subscription through this WifiEntry */
public boolean canManageSubscription() {
- return mManageSubscriptionAction.isPresent();
+ // Subclasses should implement this method.
+ return false;
};
/**
@@ -633,48 +441,17 @@ public class WifiEntry implements Comparable<WifiEntry> {
/** Allows the user to manage their subscription via an external flow */
public void manageSubscription() {
- mManageSubscriptionAction.ifPresent(ManageSubscriptionAction::onExecute);
+ // Subclasses should implement this method.
};
- /** Set the action to be called on calling WifiEntry#manageSubscription. */
- public void setManageSubscriptionAction(
- @NonNull ManageSubscriptionAction manageSubscriptionAction) {
- // only notify update on 1st time
- boolean notify = !mManageSubscriptionAction.isPresent();
-
- mManageSubscriptionAction = Optional.of(manageSubscriptionAction);
- if (notify) {
- notifyOnUpdated();
- }
- }
-
/** Returns the ScanResult information of a WifiEntry */
- @NonNull
- protected String getScanResultDescription() {
- return "";
- }
+ abstract String getScanResultDescription();
/** Returns the network selection information of a WifiEntry */
- @NonNull
String getNetworkSelectionDescription() {
return "";
}
- /** Returns the network capability information of a WifiEntry */
- @NonNull
- String getNetworkCapabilityDescription() {
- final StringBuilder sb = new StringBuilder();
- if (getConnectedState() == CONNECTED_STATE_CONNECTED) {
- sb.append("isValidated:")
- .append(mIsValidated)
- .append(", isDefaultNetwork:")
- .append(mIsDefaultNetwork)
- .append(", isLowQuality:")
- .append(mIsLowQuality);
- }
- return sb.toString();
- }
-
/**
* In Wi-Fi picker, when users click a saved network, it will connect to the Wi-Fi network.
* However, for some special cases, Wi-Fi picker should show Wi-Fi editor UI for users to edit
@@ -688,7 +465,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
* Sets the callback listener for WifiEntryCallback methods.
* Subsequent calls will overwrite the previous listener.
*/
- public synchronized void setListener(WifiEntryCallback listener) {
+ public void setListener(WifiEntryCallback listener) {
mListener = listener;
}
@@ -708,12 +485,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
@AnyThread
protected void notifyOnUpdated() {
if (mListener != null) {
- mCallbackHandler.post(() -> {
- final WifiEntryCallback listener = mListener;
- if (listener != null) {
- listener.onUpdated();
- }
- });
+ mCallbackHandler.post(() -> mListener.onUpdated());
}
}
@@ -726,8 +498,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
@IntDef(value = {
CONNECT_STATUS_SUCCESS,
CONNECT_STATUS_FAILURE_NO_CONFIG,
- CONNECT_STATUS_FAILURE_UNKNOWN,
- CONNECT_STATUS_FAILURE_SIM_ABSENT
+ CONNECT_STATUS_FAILURE_UNKNOWN
})
public @interface ConnectStatus {}
@@ -735,7 +506,6 @@ public class WifiEntry implements Comparable<WifiEntry> {
int CONNECT_STATUS_SUCCESS = 0;
int CONNECT_STATUS_FAILURE_NO_CONFIG = 1;
int CONNECT_STATUS_FAILURE_UNKNOWN = 2;
- int CONNECT_STATUS_FAILURE_SIM_ABSENT = 3;
/**
* Result of the connect request indicated by the CONNECT_STATUS constants.
@@ -815,10 +585,8 @@ public class WifiEntry implements Comparable<WifiEntry> {
/**
* Returns whether or not the supplied WifiInfo and NetworkInfo represent this WifiEntry
*/
- protected boolean connectionInfoMatches(@NonNull WifiInfo wifiInfo,
- @NonNull NetworkInfo networkInfo) {
- return false;
- }
+ protected abstract boolean connectionInfoMatches(@NonNull WifiInfo wifiInfo,
+ @NonNull NetworkInfo networkInfo);
/**
* Updates information regarding the current network connection. If the supplied WifiInfo and
@@ -826,8 +594,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
* unconnected.
*/
@WorkerThread
- synchronized void updateConnectionInfo(
- @Nullable WifiInfo wifiInfo, @Nullable NetworkInfo networkInfo) {
+ void updateConnectionInfo(@Nullable WifiInfo wifiInfo, @Nullable NetworkInfo networkInfo) {
if (wifiInfo != null && networkInfo != null
&& connectionInfoMatches(wifiInfo, networkInfo)) {
// Connection info matches, so the WifiInfo/NetworkInfo represent this network and
@@ -843,9 +610,8 @@ public class WifiEntry implements Comparable<WifiEntry> {
if (mCalledConnect) {
mCalledConnect = false;
mCallbackHandler.post(() -> {
- final ConnectCallback connectCallback = mConnectCallback;
- if (connectCallback != null) {
- connectCallback.onConnectResult(
+ if (mConnectCallback != null) {
+ mConnectCallback.onConnectResult(
ConnectCallback.CONNECT_STATUS_SUCCESS);
}
});
@@ -856,40 +622,27 @@ public class WifiEntry implements Comparable<WifiEntry> {
}
mConnectedInfo.frequencyMhz = wifiInfo.getFrequency();
mConnectedInfo.linkSpeedMbps = wifiInfo.getLinkSpeed();
- mConnectedInfo.wifiStandard = wifiInfo.getWifiStandard();
}
} else { // Connection info doesn't matched, so this network is disconnected
- mWifiInfo = null;
mNetworkInfo = null;
mNetworkCapabilities = null;
mConnectedInfo = null;
- mIsValidated = false;
- mIsDefaultNetwork = false;
- mIsLowQuality = false;
if (mCalledDisconnect) {
mCalledDisconnect = false;
mCallbackHandler.post(() -> {
- final DisconnectCallback disconnectCallback = mDisconnectCallback;
- if (disconnectCallback != null) {
- disconnectCallback.onDisconnectResult(
+ if (mDisconnectCallback != null) {
+ mDisconnectCallback.onDisconnectResult(
DisconnectCallback.DISCONNECT_STATUS_SUCCESS);
}
});
}
}
- updateSecurityTypes();
notifyOnUpdated();
}
- // Called to indicate the security types should be updated to match new information about the
- // network.
- protected void updateSecurityTypes() {
- // Do nothing;
- }
-
// Method for WifiTracker to update the link properties, which is valid for all WifiEntry types.
@WorkerThread
- synchronized void updateLinkProperties(@Nullable LinkProperties linkProperties) {
+ void updateLinkProperties(@Nullable LinkProperties linkProperties) {
if (linkProperties == null || getConnectedState() != CONNECTED_STATE_CONNECTED) {
mConnectedInfo = null;
notifyOnUpdated();
@@ -907,7 +660,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
try {
InetAddress all = InetAddress.getByAddress(
new byte[]{(byte) 255, (byte) 255, (byte) 255, (byte) 255});
- mConnectedInfo.subnetMask = NetUtils.getNetworkPart(
+ mConnectedInfo.subnetMask = NetworkUtils.getNetworkPart(
all, addr.getPrefixLength()).getHostAddress();
} catch (UnknownHostException e) {
// Leave subnet null;
@@ -920,8 +673,7 @@ public class WifiEntry implements Comparable<WifiEntry> {
// Find IPv4 default gateway.
for (RouteInfo routeInfo : linkProperties.getRoutes()) {
- if (routeInfo.isDefaultRoute() && routeInfo.getDestination().getAddress()
- instanceof Inet4Address && routeInfo.hasGateway()) {
+ if (routeInfo.isIPv4Default() && routeInfo.hasGateway()) {
mConnectedInfo.gateway = routeInfo.getGateway().getHostAddress();
break;
}
@@ -934,30 +686,13 @@ public class WifiEntry implements Comparable<WifiEntry> {
notifyOnUpdated();
}
- @WorkerThread
- synchronized void setIsDefaultNetwork(boolean isDefaultNetwork) {
- mIsDefaultNetwork = isDefaultNetwork;
- notifyOnUpdated();
- }
-
- @WorkerThread
- synchronized void setIsLowQuality(boolean isLowQuality) {
- mIsLowQuality = isLowQuality;
- }
-
// Method for WifiTracker to update a connected WifiEntry's network capabilities.
@WorkerThread
- synchronized void updateNetworkCapabilities(@Nullable NetworkCapabilities capabilities) {
+ void updateNetworkCapabilities(@Nullable NetworkCapabilities capabilities) {
mNetworkCapabilities = capabilities;
- if (mConnectedInfo == null) {
- return;
- }
- mIsValidated = mNetworkCapabilities != null
- && mNetworkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
- notifyOnUpdated();
}
- synchronized String getWifiInfoDescription() {
+ String getWifiInfoDescription() {
final StringJoiner sj = new StringJoiner(" ");
if (getConnectedState() == CONNECTED_STATE_CONNECTED && mWifiInfo != null) {
sj.add("f = " + mWifiInfo.getFrequency());
@@ -979,15 +714,12 @@ public class WifiEntry implements Comparable<WifiEntry> {
protected class ConnectActionListener implements WifiManager.ActionListener {
@Override
public void onSuccess() {
- synchronized (WifiEntry.this) {
- mCalledConnect = true;
- }
+ mCalledConnect = true;
// If we aren't connected to the network after 10 seconds, trigger the failure callback
mCallbackHandler.postDelayed(() -> {
- final ConnectCallback connectCallback = mConnectCallback;
- if (connectCallback != null && mCalledConnect
+ if (mConnectCallback != null && mCalledConnect
&& getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
- connectCallback.onConnectResult(
+ mConnectCallback.onConnectResult(
ConnectCallback.CONNECT_STATUS_FAILURE_UNKNOWN);
mCalledConnect = false;
}
@@ -997,10 +729,9 @@ public class WifiEntry implements Comparable<WifiEntry> {
@Override
public void onFailure(int i) {
mCallbackHandler.post(() -> {
- final ConnectCallback connectCallback = mConnectCallback;
- if (connectCallback != null) {
- connectCallback.onConnectResult(
- ConnectCallback.CONNECT_STATUS_FAILURE_UNKNOWN);
+ if (mConnectCallback != null) {
+ mConnectCallback.onConnectResult(
+ mConnectCallback.CONNECT_STATUS_FAILURE_UNKNOWN);
}
});
}
@@ -1010,9 +741,8 @@ public class WifiEntry implements Comparable<WifiEntry> {
@Override
public void onSuccess() {
mCallbackHandler.post(() -> {
- final ForgetCallback forgetCallback = mForgetCallback;
- if (forgetCallback != null) {
- forgetCallback.onForgetResult(ForgetCallback.FORGET_STATUS_SUCCESS);
+ if (mForgetCallback != null) {
+ mForgetCallback.onForgetResult(ForgetCallback.FORGET_STATUS_SUCCESS);
}
});
}
@@ -1020,9 +750,8 @@ public class WifiEntry implements Comparable<WifiEntry> {
@Override
public void onFailure(int i) {
mCallbackHandler.post(() -> {
- final ForgetCallback forgetCallback = mForgetCallback;
- if (forgetCallback != null) {
- forgetCallback.onForgetResult(ForgetCallback.FORGET_STATUS_FAILURE_UNKNOWN);
+ if (mForgetCallback != null) {
+ mForgetCallback.onForgetResult(ForgetCallback.FORGET_STATUS_FAILURE_UNKNOWN);
}
});
}
@@ -1074,27 +803,12 @@ public class WifiEntry implements Comparable<WifiEntry> {
.append(isSuggestion())
.append(",level:")
.append(getLevel())
- .append(shouldShowXLevelIcon() ? "X" : "")
.append(",security:")
- .append(getSecurityTypes())
+ .append(getSecurity())
.append(",connected:")
.append(getConnectedState() == CONNECTED_STATE_CONNECTED ? "true" : "false")
.append(",connectedInfo:")
.append(getConnectedInfo())
- .append(",isValidated:")
- .append(mIsValidated)
- .append(",isDefaultNetwork:")
- .append(mIsDefaultNetwork)
.toString();
}
-
- /**
- * The action used to execute the calling of WifiEntry#manageSubscription.
- */
- public interface ManageSubscriptionAction {
- /**
- * Execute the action of managing subscription.
- */
- void onExecute();
- }
}
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java
index d76a80a0a..bb3a2246a 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiPickerTracker.java
@@ -18,10 +18,12 @@ package com.android.wifitrackerlib;
import static androidx.core.util.Preconditions.checkNotNull;
+import static com.android.wifitrackerlib.NetworkRequestEntry.wifiConfigToNetworkRequestEntryKey;
import static com.android.wifitrackerlib.OsuWifiEntry.osuProviderToOsuWifiEntryKey;
import static com.android.wifitrackerlib.PasspointWifiEntry.uniqueIdToPasspointWifiEntryKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.ScanResultKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.wifiConfigToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.Utils.getSecurityTypesFromScanResult;
+import static com.android.wifitrackerlib.Utils.mapScanResultsToKey;
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTED;
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTING;
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_DISCONNECTED;
@@ -45,13 +47,9 @@ import android.net.wifi.WifiManager;
import android.net.wifi.hotspot2.OsuProvider;
import android.net.wifi.hotspot2.PasspointConfiguration;
import android.os.Handler;
-import android.telephony.SubscriptionManager;
import android.text.TextUtils;
-import android.util.ArrayMap;
-import android.util.ArraySet;
import android.util.Log;
import android.util.Pair;
-import android.util.SparseArray;
import androidx.annotation.AnyThread;
import androidx.annotation.GuardedBy;
@@ -65,12 +63,14 @@ import java.time.Clock;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import java.util.function.Function;
import java.util.stream.Collectors;
+import java.util.stream.Stream;
/**
* Wi-Fi tracker that provides all Wi-Fi related data to the Wi-Fi picker page.
@@ -98,35 +98,27 @@ public class WifiPickerTracker extends BaseWifiTracker {
private NetworkInfo mCurrentNetworkInfo;
// Cache containing saved WifiConfigurations mapped by StandardWifiEntry key
- private final Map<StandardWifiEntryKey, List<WifiConfiguration>> mStandardWifiConfigCache =
- new ArrayMap<>();
+ private final Map<String, WifiConfiguration> mWifiConfigCache = new HashMap<>();
// Cache containing suggested WifiConfigurations mapped by StandardWifiEntry key
- private final Map<StandardWifiEntryKey, List<WifiConfiguration>> mSuggestedConfigCache =
- new ArrayMap<>();
- // Cache containing network request WifiConfigurations mapped by StandardWifiEntry key.
- private final ArrayMap<StandardWifiEntryKey, List<WifiConfiguration>>
- mNetworkRequestConfigCache = new ArrayMap<>();
+ private final Map<String, WifiConfiguration> mSuggestedConfigCache = new HashMap<>();
// Cache containing visible StandardWifiEntries. Must be accessed only by the worker thread.
- private final List<StandardWifiEntry> mStandardWifiEntryCache = new ArrayList<>();
+ private final Map<String, StandardWifiEntry> mStandardWifiEntryCache = new HashMap<>();
// Cache containing available suggested StandardWifiEntries. These entries may be already
// represented in mStandardWifiEntryCache, so filtering must be done before they are returned in
// getWifiEntry() and getConnectedWifiEntry().
- private final List<StandardWifiEntry> mSuggestedWifiEntryCache = new ArrayList<>();
+ private final Map<String, StandardWifiEntry> mSuggestedWifiEntryCache = new HashMap<>();
// Cache containing saved PasspointConfigurations mapped by PasspointWifiEntry key.
- private final Map<String, PasspointConfiguration> mPasspointConfigCache = new ArrayMap<>();
- // Cache containing Passpoint WifiConfigurations mapped by network id.
- private final SparseArray<WifiConfiguration> mPasspointWifiConfigCache = new SparseArray<>();
+ private final Map<String, PasspointConfiguration> mPasspointConfigCache = new HashMap<>();
// Cache containing visible PasspointWifiEntries. Must be accessed only by the worker thread.
- private final Map<String, PasspointWifiEntry> mPasspointWifiEntryCache = new ArrayMap<>();
+ private final Map<String, PasspointWifiEntry> mPasspointWifiEntryCache = new HashMap<>();
// Cache containing visible OsuWifiEntries. Must be accessed only by the worker thread.
- private final Map<String, OsuWifiEntry> mOsuWifiEntryCache = new ArrayMap<>();
-
- private MergedCarrierEntry mMergedCarrierEntry;
+ private final Map<String, OsuWifiEntry> mOsuWifiEntryCache = new HashMap<>();
private int mNumSavedNetworks;
/**
* Constructor for WifiPickerTracker.
+ *
* @param lifecycle Lifecycle this is tied to for lifecycle callbacks.
* @param context Context for registering broadcast receiver and for resource strings.
* @param wifiManager Provides all Wi-Fi info.
@@ -177,14 +169,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
}
/**
- * Returns the MergedCarrierEntry representing the active carrier subscription.
- */
- @AnyThread
- public @Nullable MergedCarrierEntry getMergedCarrierEntry() {
- return mMergedCarrierEntry;
- }
-
- /**
* Returns the number of saved networks.
*/
@AnyThread
@@ -211,25 +195,16 @@ public class WifiPickerTracker extends BaseWifiTracker {
final Network currentNetwork = mWifiManager.getCurrentNetwork();
mCurrentNetworkInfo = mConnectivityManager.getNetworkInfo(currentNetwork);
updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
+ handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(currentNetwork));
notifyOnNumSavedNetworksChanged();
notifyOnNumSavedSubscriptionsChanged();
- handleDefaultSubscriptionChanged(SubscriptionManager.getDefaultDataSubscriptionId());
updateWifiEntries();
-
- // Populate mConnectedWifiEntry with information from missed callbacks.
- handleNetworkCapabilitiesChanged(
- mConnectivityManager.getNetworkCapabilities(currentNetwork));
- handleLinkPropertiesChanged(mConnectivityManager.getLinkProperties(currentNetwork));
- handleDefaultRouteChanged();
}
@WorkerThread
@Override
protected void handleWifiStateChangedAction() {
conditionallyUpdateScanResults(true /* lastScanSucceeded */);
- if (mWifiManager.getWifiState() != WifiManager.WIFI_STATE_ENABLED) {
- updateConnectionInfo(null, null);
- }
updateWifiEntries();
}
@@ -247,13 +222,14 @@ public class WifiPickerTracker extends BaseWifiTracker {
protected void handleConfiguredNetworksChangedAction(@NonNull Intent intent) {
checkNotNull(intent, "Intent cannot be null!");
- processConfiguredNetworksChanged();
- }
-
- @WorkerThread
- /** All wifi entries and saved entries needs to be updated. */
- protected void processConfiguredNetworksChanged() {
- updateWifiConfigurations(mWifiManager.getPrivilegedConfiguredNetworks());
+ final WifiConfiguration config =
+ (WifiConfiguration) intent.getExtra(WifiManager.EXTRA_WIFI_CONFIGURATION);
+ if (config != null && !config.isPasspoint()) {
+ updateWifiConfiguration(
+ config, (Integer) intent.getExtra(WifiManager.EXTRA_CHANGE_REASON));
+ } else {
+ updateWifiConfigurations(mWifiManager.getPrivilegedConfiguredNetworks());
+ }
updatePasspointConfigurations(mWifiManager.getPasspointConfigurations());
// Update scans since config changes may result in different entries being shown.
final List<ScanResult> scanResults = mScanResultUpdater.getScanResults();
@@ -270,21 +246,19 @@ public class WifiPickerTracker extends BaseWifiTracker {
@Override
protected void handleNetworkStateChangedAction(@NonNull Intent intent) {
checkNotNull(intent, "Intent cannot be null!");
- mCurrentNetworkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
- updateConnectionInfo(mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
+ final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
+ mCurrentNetworkInfo = (NetworkInfo) intent.getExtra(WifiManager.EXTRA_NETWORK_INFO);
+ updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
updateWifiEntries();
}
@WorkerThread
@Override
protected void handleRssiChangedAction() {
- final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
if (mConnectedWifiEntry != null) {
+ final WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
mConnectedWifiEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
}
- if (mMergedCarrierEntry != null) {
- mMergedCarrierEntry.updateConnectionInfo(wifiInfo, mCurrentNetworkInfo);
- }
}
@WorkerThread
@@ -294,9 +268,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
&& mConnectedWifiEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
mConnectedWifiEntry.updateLinkProperties(linkProperties);
}
- if (mMergedCarrierEntry != null) {
- mMergedCarrierEntry.updateLinkProperties(linkProperties);
- }
}
@WorkerThread
@@ -305,34 +276,16 @@ public class WifiPickerTracker extends BaseWifiTracker {
if (mConnectedWifiEntry != null
&& mConnectedWifiEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
mConnectedWifiEntry.updateNetworkCapabilities(capabilities);
- mConnectedWifiEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
- }
- if (mMergedCarrierEntry != null) {
- mMergedCarrierEntry.updateNetworkCapabilities(capabilities);
- }
- }
-
- @WorkerThread
- protected void handleDefaultRouteChanged() {
- if (mConnectedWifiEntry != null) {
- mConnectedWifiEntry.setIsDefaultNetwork(mIsWifiDefaultRoute);
- mConnectedWifiEntry.setIsLowQuality(mIsWifiValidated && mIsCellDefaultRoute);
- }
- if (mMergedCarrierEntry != null) {
- if (mMergedCarrierEntry.getConnectedState() == CONNECTED_STATE_CONNECTED) {
- mMergedCarrierEntry.setIsDefaultNetwork(mIsWifiDefaultRoute);
- }
- mMergedCarrierEntry.updateIsCellDefaultRoute(mIsCellDefaultRoute);
}
}
@WorkerThread
@Override
protected void handleNetworkScoreCacheUpdated() {
- for (StandardWifiEntry entry : mStandardWifiEntryCache) {
+ for (StandardWifiEntry entry : mStandardWifiEntryCache.values()) {
entry.onScoreCacheUpdated();
}
- for (StandardWifiEntry entry : mSuggestedWifiEntryCache) {
+ for (StandardWifiEntry entry : mSuggestedWifiEntryCache.values()) {
entry.onScoreCacheUpdated();
}
for (PasspointWifiEntry entry : mPasspointWifiEntryCache.values()) {
@@ -340,25 +293,19 @@ public class WifiPickerTracker extends BaseWifiTracker {
}
}
- @WorkerThread
- @Override
- protected void handleDefaultSubscriptionChanged(int defaultSubId) {
- updateMergedCarrierEntry(defaultSubId);
- }
-
/**
* Update the list returned by getWifiEntries() with the current states of the entry caches.
*/
@WorkerThread
- protected void updateWifiEntries() {
+ private void updateWifiEntries() {
synchronized (mLock) {
- mConnectedWifiEntry = mStandardWifiEntryCache.stream().filter(entry -> {
+ mConnectedWifiEntry = mStandardWifiEntryCache.values().stream().filter(entry -> {
final @WifiEntry.ConnectedState int connectedState = entry.getConnectedState();
return connectedState == CONNECTED_STATE_CONNECTED
|| connectedState == CONNECTED_STATE_CONNECTING;
}).findAny().orElse(null /* other */);
if (mConnectedWifiEntry == null) {
- mConnectedWifiEntry = mSuggestedWifiEntryCache.stream().filter(entry -> {
+ mConnectedWifiEntry = mSuggestedWifiEntryCache.values().stream().filter(entry -> {
final @WifiEntry.ConnectedState int connectedState = entry.getConnectedState();
return connectedState == CONNECTED_STATE_CONNECTED
|| connectedState == CONNECTED_STATE_CONNECTING;
@@ -376,32 +323,32 @@ public class WifiPickerTracker extends BaseWifiTracker {
mConnectedWifiEntry = mNetworkRequestEntry;
}
mWifiEntries.clear();
- final Set<ScanResultKey> scanResultKeysWithVisibleSuggestions =
- mSuggestedWifiEntryCache.stream()
- .filter(entry -> entry.isUserShareable()
- || entry == mConnectedWifiEntry)
- .map(entry -> entry.getStandardWifiEntryKey().getScanResultKey())
- .collect(Collectors.toSet());
- for (StandardWifiEntry entry : mStandardWifiEntryCache) {
- if (entry == mConnectedWifiEntry) {
+ for (String key : mStandardWifiEntryCache.keySet()) {
+ // Continue if we're connected to this network with a non-user-shareable config.
+ if (mConnectedWifiEntry != null
+ && TextUtils.equals(key, mConnectedWifiEntry.getKey())) {
continue;
}
- if (!entry.isSaved() && scanResultKeysWithVisibleSuggestions
- .contains(entry.getStandardWifiEntryKey().getScanResultKey())) {
- continue;
+ StandardWifiEntry entry = mStandardWifiEntryCache.get(key);
+ StandardWifiEntry suggestedEntry = mSuggestedWifiEntryCache.get(key);
+ // Return a user-shareable suggested network to the user if one exists
+ if (!entry.isSaved()
+ && suggestedEntry != null && suggestedEntry.isUserShareable()) {
+ if (suggestedEntry.getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
+ mWifiEntries.add(suggestedEntry);
+ }
+ } else {
+ if (entry.getConnectedState() == CONNECTED_STATE_DISCONNECTED) {
+ mWifiEntries.add(entry);
+ }
}
- mWifiEntries.add(entry);
+
}
- mWifiEntries.addAll(mSuggestedWifiEntryCache.stream().filter(entry ->
- entry.getConnectedState() == CONNECTED_STATE_DISCONNECTED
- && entry.isUserShareable()).collect(toList()));
mWifiEntries.addAll(mPasspointWifiEntryCache.values().stream().filter(entry ->
entry.getConnectedState() == CONNECTED_STATE_DISCONNECTED).collect(toList()));
mWifiEntries.addAll(mOsuWifiEntryCache.values().stream().filter(entry ->
entry.getConnectedState() == CONNECTED_STATE_DISCONNECTED
&& !entry.isAlreadyProvisioned()).collect(toList()));
- mWifiEntries.addAll(getContextualWifiEntries().stream().filter(entry ->
- entry.getConnectedState() == CONNECTED_STATE_DISCONNECTED).collect(toList()));
Collections.sort(mWifiEntries);
if (isVerboseLoggingEnabled()) {
Log.v(TAG, "Connected WifiEntry: " + mConnectedWifiEntry);
@@ -412,43 +359,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
}
/**
- * Updates the MergedCarrierEntry returned by {@link #getMergedCarrierEntry()) with the current
- * default data subscription ID, or sets it to null if not available.
- */
- @WorkerThread
- private void updateMergedCarrierEntry(int subId) {
- if (subId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
- if (mMergedCarrierEntry == null) {
- return;
- }
- mMergedCarrierEntry = null;
- } else {
- if (mMergedCarrierEntry != null && subId == mMergedCarrierEntry.getSubscriptionId()) {
- return;
- }
- mMergedCarrierEntry = new MergedCarrierEntry(mWorkerHandler, mWifiManager,
- mWifiNetworkScoreCache, /* forSavedNetworksPage */ false, mContext, subId);
- mMergedCarrierEntry.updateConnectionInfo(
- mWifiManager.getConnectionInfo(), mCurrentNetworkInfo);
- }
- notifyOnWifiEntriesChanged();
- }
-
- /**
- * Get the contextual WifiEntries added according to customized conditions.
- */
- protected List<WifiEntry> getContextualWifiEntries() {
- return Collections.emptyList();
- }
-
- /**
- * Update the contextual wifi entry according to customized conditions.
- */
- protected void updateContextualWifiEntryScans(@NonNull List<ScanResult> scanResults) {
- // do nothing
- }
-
- /**
* Updates or removes scan results for the corresponding StandardWifiEntries.
* New entries will be created for scan results without an existing entry.
* Unreachable entries will be removed.
@@ -459,34 +369,34 @@ public class WifiPickerTracker extends BaseWifiTracker {
private void updateStandardWifiEntryScans(@NonNull List<ScanResult> scanResults) {
checkNotNull(scanResults, "Scan Result list should not be null!");
- // Group scans by ScanResultKey key
- final Map<ScanResultKey, List<ScanResult>> scanResultsByKey = scanResults.stream()
- .filter(scan -> !TextUtils.isEmpty(scan.SSID))
- .collect(Collectors.groupingBy(ScanResultKey::new));
- final Set<ScanResultKey> newScanKeys = new ArraySet<>(scanResultsByKey.keySet());
+ // Group scans by StandardWifiEntry key
+ final Map<String, List<ScanResult>> scanResultsByKey = mapScanResultsToKey(
+ scanResults,
+ true /* chooseSingleSecurity */,
+ mWifiConfigCache,
+ mWifiManager.isWpa3SaeSupported(),
+ mWifiManager.isWpa3SuiteBSupported(),
+ mWifiManager.isEnhancedOpenSupported());
// Iterate through current entries and update each entry's scan results
- mStandardWifiEntryCache.forEach(entry -> {
- final ScanResultKey scanKey = entry.getStandardWifiEntryKey().getScanResultKey();
- newScanKeys.remove(scanKey);
+ mStandardWifiEntryCache.entrySet().removeIf(e -> {
+ final String key = e.getKey();
+ final StandardWifiEntry entry = e.getValue();
// Update scan results if available, or set to null.
- entry.updateScanResultInfo(scanResultsByKey.get(scanKey));
+ entry.updateScanResultInfo(scanResultsByKey.remove(key));
+ // Entry is now unreachable, remove it.
+ return entry.getLevel() == WIFI_LEVEL_UNREACHABLE;
});
+
// Create new StandardWifiEntry objects for each leftover group of scan results.
- for (ScanResultKey scanKey: newScanKeys) {
- final StandardWifiEntryKey entryKey =
- new StandardWifiEntryKey(scanKey, true /* isTargetingNewNetworks */);
+ for (Map.Entry<String, List<ScanResult>> e: scanResultsByKey.entrySet()) {
final StandardWifiEntry newEntry = new StandardWifiEntry(mContext, mMainHandler,
- entryKey, mStandardWifiConfigCache.get(entryKey),
- scanResultsByKey.get(scanKey), mWifiManager, mWifiNetworkScoreCache,
+ e.getKey(), e.getValue(), mWifiManager, mWifiNetworkScoreCache,
false /* forSavedNetworksPage */);
- mStandardWifiEntryCache.add(newEntry);
+ // Populate with a saved config, if available
+ newEntry.updateConfig(mWifiConfigCache.get(newEntry.getKey()));
+ mStandardWifiEntryCache.put(newEntry.getKey(), newEntry);
}
-
- // Remove any entry that is now unreachable due to no scans or unsupported
- // security types.
- mStandardWifiEntryCache.removeIf(
- entry -> entry.getLevel() == WIFI_LEVEL_UNREACHABLE);
}
/**
@@ -500,42 +410,46 @@ public class WifiPickerTracker extends BaseWifiTracker {
private void updateSuggestedWifiEntryScans(@NonNull List<ScanResult> scanResults) {
checkNotNull(scanResults, "Scan Result list should not be null!");
- // Group scans by ScanResultKey key
- final Map<ScanResultKey, List<ScanResult>> scanResultsByKey = scanResults.stream()
- .filter(scan -> !TextUtils.isEmpty(scan.SSID))
- .collect(Collectors.groupingBy(ScanResultKey::new));
+ // Group scans by StandardWifiEntry key
+ final Map<String, List<ScanResult>> scanResultsByKey = mapScanResultsToKey(
+ scanResults,
+ true /* chooseSingleSecurity */,
+ mWifiConfigCache,
+ mWifiManager.isWpa3SaeSupported(),
+ mWifiManager.isWpa3SuiteBSupported(),
+ mWifiManager.isEnhancedOpenSupported());
- // Iterate through current entries and update each entry's scan results
- final Set<StandardWifiEntryKey> seenEntryKeys = new ArraySet<>();
- mSuggestedWifiEntryCache.forEach(entry -> {
- final StandardWifiEntryKey entryKey = entry.getStandardWifiEntryKey();
- seenEntryKeys.add(entryKey);
- // Update scan results if available, or set to null.
- entry.updateScanResultInfo(scanResultsByKey.get(entryKey.getScanResultKey()));
- });
- // Create new StandardWifiEntry objects for each leftover config with scan results.
- final Set<StandardWifiEntryKey> userSharedEntryKeys =
+ Map<String, WifiConfiguration> userSharedConfigsByKey =
mWifiManager.getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(scanResults)
.stream()
- .map(StandardWifiEntryKey::new)
- .collect(Collectors.toSet());
- for (StandardWifiEntryKey entryKey : mSuggestedConfigCache.keySet()) {
- final ScanResultKey scanKey = entryKey.getScanResultKey();
- if (seenEntryKeys.contains(entryKey)
- || !scanResultsByKey.containsKey(scanKey)) {
- continue;
+ .collect(Collectors.toMap(
+ StandardWifiEntry::wifiConfigToStandardWifiEntryKey,
+ Function.identity()));
+
+ Set<String> seenKeys = new TreeSet<>();
+ for (String key : userSharedConfigsByKey.keySet()) {
+ seenKeys.add(key);
+ if (!mSuggestedWifiEntryCache.containsKey(key)) {
+ mSuggestedWifiEntryCache.put(key, new StandardWifiEntry(mContext, mMainHandler, key,
+ userSharedConfigsByKey.get(key), mWifiManager,
+ mWifiNetworkScoreCache, false /* forSavedNetworksPage */));
}
- final StandardWifiEntry newEntry = new StandardWifiEntry(mContext, mMainHandler,
- entryKey, mSuggestedConfigCache.get(entryKey),
- scanResultsByKey.get(scanKey), mWifiManager, mWifiNetworkScoreCache,
- false /* forSavedNetworksPage */);
- newEntry.setUserShareable(userSharedEntryKeys.contains(entryKey));
- mSuggestedWifiEntryCache.add(newEntry);
+ final StandardWifiEntry entry = mSuggestedWifiEntryCache.get(key);
+ entry.setUserShareable(true);
+ entry.updateScanResultInfo(scanResultsByKey.get(key));
}
- // Remove any entry that is now unreachable due to no scans or unsupported
- // security types.
- mSuggestedWifiEntryCache.removeIf(entry -> entry.getLevel() == WIFI_LEVEL_UNREACHABLE);
+ // Remove entries without configs
+ mSuggestedWifiEntryCache.entrySet()
+ .removeIf(entry -> {
+ StandardWifiEntry wifiEntry = entry.getValue();
+ String key = entry.getKey();
+ if (!seenKeys.contains(key)) {
+ wifiEntry.updateConfig(mSuggestedConfigCache.get(key));
+ wifiEntry.setUserShareable(false);
+ }
+ return !wifiEntry.isSuggestion();
+ });
}
@WorkerThread
@@ -577,8 +491,7 @@ public class WifiPickerTracker extends BaseWifiTracker {
// Remove entries that are now unreachable
mPasspointWifiEntryCache.entrySet()
.removeIf(entry -> entry.getValue().getLevel() == WIFI_LEVEL_UNREACHABLE
- || (!seenKeys.contains(entry.getKey()))
- && entry.getValue().getConnectedState() == CONNECTED_STATE_DISCONNECTED);
+ || !seenKeys.contains(entry.getKey()));
}
@WorkerThread
@@ -633,10 +546,12 @@ public class WifiPickerTracker extends BaseWifiTracker {
return;
}
- final ScanResultKey scanKey =
- mNetworkRequestEntry.getStandardWifiEntryKey().getScanResultKey();
- List<ScanResult> matchedScans = scanResults.stream()
- .filter(scan -> scanKey.equals(new ScanResultKey(scan)))
+ String ssid = mNetworkRequestEntry.getSsid();
+ @WifiEntry.Security int security = mNetworkRequestEntry.getSecurity();
+
+ List<ScanResult> matchedScans = scanResults.stream().filter(scan ->
+ TextUtils.equals(scan.SSID, ssid)
+ && getSecurityTypesFromScanResult(scan).contains(security))
.collect(toList());
mNetworkRequestEntry.updateScanResultInfo(matchedScans);
}
@@ -653,7 +568,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
updatePasspointWifiEntryScans(Collections.emptyList());
updateOsuWifiEntryScans(Collections.emptyList());
updateNetworkRequestEntryScans(Collections.emptyList());
- updateContextualWifiEntryScans(Collections.emptyList());
return;
}
@@ -673,7 +587,57 @@ public class WifiPickerTracker extends BaseWifiTracker {
updatePasspointWifiEntryScans(scanResults);
updateOsuWifiEntryScans(scanResults);
updateNetworkRequestEntryScans(scanResults);
- updateContextualWifiEntryScans(scanResults);
+ }
+
+ /**
+ * Updates the WifiConfiguration caches for a single saved/ephemeral/suggested network and
+ * updates the corresponding WifiEntry with the new config.
+ *
+ * @param config WifiConfiguration to update
+ * @param changeReason WifiManager.CHANGE_REASON_ADDED, WifiManager.CHANGE_REASON_REMOVED, or
+ * WifiManager.CHANGE_REASON_CONFIG_CHANGE
+ */
+ @WorkerThread
+ private void updateWifiConfiguration(@NonNull WifiConfiguration config,
+ int changeReason) {
+ checkNotNull(config, "Config should not be null!");
+
+ if (config.fromWifiNetworkSpecifier) {
+ if (changeReason == WifiManager.CHANGE_REASON_REMOVED) {
+ updateNetworkRequestConfig(null);
+ } else { // CHANGE_REASON_ADDED || CHANGE_REASON_CONFIG_CHANGE
+ updateNetworkRequestConfig(config);
+ }
+ return;
+ }
+
+ final String key = wifiConfigToStandardWifiEntryKey(config);
+ StandardWifiEntry updatedEntry;
+ WifiConfiguration updatedConfig;
+ if (config.fromWifiNetworkSuggestion) {
+ if (changeReason == WifiManager.CHANGE_REASON_REMOVED) {
+ mSuggestedConfigCache.remove(key);
+ } else { // CHANGE_REASON_ADDED || CHANGE_REASON_CONFIG_CHANGE
+ mSuggestedConfigCache.put(key, config);
+ }
+ updatedConfig = mSuggestedConfigCache.get(key);
+ updatedEntry = mSuggestedWifiEntryCache.get(key);
+ } else {
+ if (changeReason == WifiManager.CHANGE_REASON_REMOVED) {
+ mWifiConfigCache.remove(key);
+ } else { // CHANGE_REASON_ADDED || CHANGE_REASON_CONFIG_CHANGE
+ mWifiConfigCache.put(key, config);
+ }
+ updatedConfig = mWifiConfigCache.get(key);
+ updatedEntry = mStandardWifiEntryCache.get(key);
+ mNumSavedNetworks = (int) mWifiConfigCache.values().stream()
+ .filter(cachedConfig ->
+ !cachedConfig.isEphemeral() && !cachedConfig.isPasspoint()).count();
+ }
+
+ if (updatedEntry != null) {
+ updatedEntry.updateConfig(updatedConfig);
+ }
}
/**
@@ -685,57 +649,65 @@ public class WifiPickerTracker extends BaseWifiTracker {
@WorkerThread
private void updateWifiConfigurations(@NonNull List<WifiConfiguration> configs) {
checkNotNull(configs, "Config list should not be null!");
- mStandardWifiConfigCache.clear();
+ mWifiConfigCache.clear();
mSuggestedConfigCache.clear();
- mNetworkRequestConfigCache.clear();
- final List<WifiConfiguration> networkRequestConfigs = new ArrayList<>();
+ boolean networkRequestConfigAvailable = false;
for (WifiConfiguration config : configs) {
- if (config.carrierMerged) {
- continue;
- }
- StandardWifiEntryKey standardWifiEntryKey =
- new StandardWifiEntryKey(config, true /* isTargetingNewNetworks */);
- if (config.isPasspoint()) {
- mPasspointWifiConfigCache.put(config.networkId, config);
- } else if (config.fromWifiNetworkSuggestion) {
- if (!mSuggestedConfigCache.containsKey(standardWifiEntryKey)) {
- mSuggestedConfigCache.put(standardWifiEntryKey, new ArrayList<>());
- }
- mSuggestedConfigCache.get(standardWifiEntryKey).add(config);
+ if (config.fromWifiNetworkSuggestion) {
+ mSuggestedConfigCache.put(wifiConfigToStandardWifiEntryKey(config), config);
} else if (config.fromWifiNetworkSpecifier) {
- if (!mNetworkRequestConfigCache.containsKey(standardWifiEntryKey)) {
- mNetworkRequestConfigCache.put(standardWifiEntryKey, new ArrayList<>());
- }
- mNetworkRequestConfigCache.get(standardWifiEntryKey).add(config);
+ networkRequestConfigAvailable = true;
+ updateNetworkRequestConfig(config);
} else {
- if (!mStandardWifiConfigCache.containsKey(standardWifiEntryKey)) {
- mStandardWifiConfigCache.put(standardWifiEntryKey, new ArrayList<>());
- }
- mStandardWifiConfigCache.get(standardWifiEntryKey).add(config);
+ mWifiConfigCache.put(wifiConfigToStandardWifiEntryKey(config), config);
}
}
- mNumSavedNetworks = (int) mStandardWifiConfigCache.values().stream()
- .flatMap(List::stream)
- .filter(config -> !config.isEphemeral())
- .map(config -> config.networkId)
- .distinct()
- .count();
+ if (!networkRequestConfigAvailable) {
+ updateNetworkRequestConfig(null);
+ }
+ mNumSavedNetworks = (int) mWifiConfigCache.values().stream()
+ .filter(cachedConfig ->
+ !cachedConfig.isEphemeral() && !cachedConfig.isPasspoint()).count();
// Iterate through current entries and update each entry's config
- mStandardWifiEntryCache.forEach(entry ->
- entry.updateConfig(mStandardWifiConfigCache.get(entry.getStandardWifiEntryKey())));
+ mStandardWifiEntryCache.entrySet().forEach((entry) -> {
+ final StandardWifiEntry wifiEntry = entry.getValue();
+ final String key = wifiEntry.getKey();
+ final WifiConfiguration config = mWifiConfigCache.get(key);
+ if (config != null && config.isPasspoint()) {
+ return;
+ }
+ wifiEntry.updateConfig(config);
+ });
// Iterate through current suggestion entries and update each entry's config
- mSuggestedWifiEntryCache.removeIf(entry -> {
- entry.updateConfig(mSuggestedConfigCache.get(entry.getStandardWifiEntryKey()));
- // Remove if the suggestion does not have a config anymore.
- return !entry.isSuggestion();
+ mSuggestedWifiEntryCache.entrySet().removeIf((entry) -> {
+ final StandardWifiEntry wifiEntry = entry.getValue();
+ final String key = wifiEntry.getKey();
+ final WifiConfiguration config = mSuggestedConfigCache.get(key);
+ if (config != null && !config.isPasspoint()) {
+ wifiEntry.updateConfig(config);
+ return false;
+ } else {
+ return true;
+ }
});
+ }
- if (mNetworkRequestEntry != null) {
- mNetworkRequestEntry.updateConfig(
- mNetworkRequestConfigCache.get(mNetworkRequestEntry.getStandardWifiEntryKey()));
+ @WorkerThread
+ private void updateNetworkRequestConfig(@Nullable WifiConfiguration config) {
+ if (config == null) {
+ mNetworkRequestEntry = null;
+ return;
+ }
+
+ String configKey = wifiConfigToNetworkRequestEntryKey(config);
+ if (mNetworkRequestEntry == null
+ || !TextUtils.equals(configKey, mNetworkRequestEntry.getKey())) {
+ mNetworkRequestEntry = new NetworkRequestEntry(mContext, mMainHandler, configKey,
+ mWifiManager, mWifiNetworkScoreCache, false /* forSavedNetworksPPage */);
}
+ mNetworkRequestEntry.updateConfig(config);
}
@WorkerThread
@@ -764,10 +736,10 @@ public class WifiPickerTracker extends BaseWifiTracker {
@WorkerThread
private void updateConnectionInfo(@Nullable WifiInfo wifiInfo,
@Nullable NetworkInfo networkInfo) {
- for (WifiEntry entry : mStandardWifiEntryCache) {
+ for (WifiEntry entry : mStandardWifiEntryCache.values()) {
entry.updateConnectionInfo(wifiInfo, networkInfo);
}
- for (WifiEntry entry : mSuggestedWifiEntryCache) {
+ for (WifiEntry entry : mSuggestedWifiEntryCache.values()) {
entry.updateConnectionInfo(wifiInfo, networkInfo);
}
for (WifiEntry entry : mPasspointWifiEntryCache.values()) {
@@ -779,10 +751,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
if (mNetworkRequestEntry != null) {
mNetworkRequestEntry.updateConnectionInfo(wifiInfo, networkInfo);
}
- updateNetworkRequestEntryConnectionInfo(wifiInfo, networkInfo);
- if (mMergedCarrierEntry != null) {
- mMergedCarrierEntry.updateConnectionInfo(wifiInfo, networkInfo);
- }
// Create a StandardWifiEntry for the current connection if there are no scan results yet.
conditionallyCreateConnectedStandardWifiEntry(wifiInfo, networkInfo);
conditionallyCreateConnectedSuggestedWifiEntry(wifiInfo, networkInfo);
@@ -790,42 +758,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
}
/**
- * Updates the connection info of the current NetworkRequestEntry. A new NetworkRequestEntry is
- * created if there is no existing entry, or the existing entry doesn't match WifiInfo.
- */
- @WorkerThread
- private void updateNetworkRequestEntryConnectionInfo(
- @Nullable WifiInfo wifiInfo, @Nullable NetworkInfo networkInfo) {
- final List<WifiConfiguration> matchingConfigs = new ArrayList<>();
-
- if (wifiInfo != null) {
- for (int i = 0; i < mNetworkRequestConfigCache.size(); i++) {
- final List<WifiConfiguration> configs = mNetworkRequestConfigCache.valueAt(i);
- if (!configs.isEmpty() && configs.get(0).networkId == wifiInfo.getNetworkId()) {
- matchingConfigs.addAll(configs);
- break;
- }
- }
- }
-
- // WifiInfo isn't for any request configs, remove the NetworkRequestEntry
- if (matchingConfigs.isEmpty()) {
- mNetworkRequestEntry = null;
- return;
- }
-
- // WifiInfo matches a request config, create a NetworkRequestEntry or update the existing.
- final StandardWifiEntryKey entryKey = new StandardWifiEntryKey(matchingConfigs.get(0));
- if (mNetworkRequestEntry == null
- || !mNetworkRequestEntry.getStandardWifiEntryKey().equals(entryKey)) {
- mNetworkRequestEntry = new NetworkRequestEntry(mContext, mMainHandler, entryKey,
- mWifiManager, mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
- mNetworkRequestEntry.updateConfig(matchingConfigs);
- }
- mNetworkRequestEntry.updateConnectionInfo(wifiInfo, networkInfo);
- }
-
- /**
* Creates and caches a StandardWifiEntry representing the current connection using the current
* WifiInfo and NetworkInfo if there are no scans results available for the network yet.
* @param wifiInfo WifiInfo of the current connection
@@ -834,33 +766,23 @@ public class WifiPickerTracker extends BaseWifiTracker {
@WorkerThread
private void conditionallyCreateConnectedStandardWifiEntry(@Nullable WifiInfo wifiInfo,
@Nullable NetworkInfo networkInfo) {
- if (wifiInfo == null || wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) {
+ if (wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) {
return;
}
final int connectedNetId = wifiInfo.getNetworkId();
- for (List<WifiConfiguration> configs : mStandardWifiConfigCache.values()) {
- // List of configs match as long as one of them matches the connected network ID.
- if (configs.stream()
- .map(config -> config.networkId)
- .filter(networkId -> networkId == connectedNetId)
- .count() == 0) {
- continue;
- }
- final StandardWifiEntryKey entryKey =
- new StandardWifiEntryKey(configs.get(0), true /* isTargetingNewNetworks */);
- for (StandardWifiEntry existingEntry : mStandardWifiEntryCache) {
- if (entryKey.equals(existingEntry.getStandardWifiEntryKey())) {
- return;
- }
- }
- final StandardWifiEntry connectedEntry =
- new StandardWifiEntry(mContext, mMainHandler, entryKey, configs, null,
- mWifiManager, mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
- connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
- mStandardWifiEntryCache.add(connectedEntry);
- return;
- }
+ mWifiConfigCache.values().stream()
+ .filter(config ->
+ config.networkId == connectedNetId && !mStandardWifiEntryCache.containsKey(
+ wifiConfigToStandardWifiEntryKey(config)))
+ .findAny().ifPresent(config -> {
+ final StandardWifiEntry connectedEntry =
+ new StandardWifiEntry(mContext, mMainHandler,
+ wifiConfigToStandardWifiEntryKey(config), config, mWifiManager,
+ mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
+ connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
+ mStandardWifiEntryCache.put(connectedEntry.getKey(), connectedEntry);
+ });
}
/**
@@ -873,29 +795,23 @@ public class WifiPickerTracker extends BaseWifiTracker {
@WorkerThread
private void conditionallyCreateConnectedSuggestedWifiEntry(@Nullable WifiInfo wifiInfo,
@Nullable NetworkInfo networkInfo) {
- if (wifiInfo == null || wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) {
+ if (wifiInfo.isPasspointAp() || wifiInfo.isOsuAp()) {
return;
}
final int connectedNetId = wifiInfo.getNetworkId();
- for (List<WifiConfiguration> configs : mSuggestedConfigCache.values()) {
- if (configs.isEmpty() || configs.get(0).networkId != connectedNetId) {
- continue;
- }
- final StandardWifiEntryKey entryKey =
- new StandardWifiEntryKey(configs.get(0), true /* isTargetingNewNetworks */);
- for (StandardWifiEntry existingEntry : mSuggestedWifiEntryCache) {
- if (entryKey.equals(existingEntry.getStandardWifiEntryKey())) {
- return;
- }
- }
- final StandardWifiEntry connectedEntry =
- new StandardWifiEntry(mContext, mMainHandler, entryKey, configs, null,
- mWifiManager, mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
- connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
- mSuggestedWifiEntryCache.add(connectedEntry);
- return;
- }
+ mSuggestedConfigCache.values().stream()
+ .filter(config ->
+ config.networkId == connectedNetId && !mSuggestedWifiEntryCache.containsKey(
+ wifiConfigToStandardWifiEntryKey(config)))
+ .findAny().ifPresent(config -> {
+ final StandardWifiEntry connectedEntry =
+ new StandardWifiEntry(mContext, mMainHandler,
+ wifiConfigToStandardWifiEntryKey(config), config, mWifiManager,
+ mWifiNetworkScoreCache, false /* forSavedNetworksPage */);
+ connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
+ mSuggestedWifiEntryCache.put(connectedEntry.getKey(), connectedEntry);
+ });
}
@@ -908,34 +824,33 @@ public class WifiPickerTracker extends BaseWifiTracker {
@WorkerThread
private void conditionallyCreateConnectedPasspointWifiEntry(@Nullable WifiInfo wifiInfo,
@Nullable NetworkInfo networkInfo) {
- if (wifiInfo == null || !wifiInfo.isPasspointAp()) {
+ if (!wifiInfo.isPasspointAp()) {
return;
}
- WifiConfiguration cachedWifiConfig = mPasspointWifiConfigCache.get(wifiInfo.getNetworkId());
- if (cachedWifiConfig == null) {
- return;
- }
- final String key = uniqueIdToPasspointWifiEntryKey(cachedWifiConfig.getKey());
- if (mPasspointWifiEntryCache.containsKey(key)) {
- // Entry already exists, skip creating a new one.
- return;
- }
- PasspointConfiguration passpointConfig = mPasspointConfigCache.get(
- uniqueIdToPasspointWifiEntryKey(cachedWifiConfig.getKey()));
- PasspointWifiEntry connectedEntry;
- if (passpointConfig != null) {
- connectedEntry = new PasspointWifiEntry(mContext, mMainHandler,
- passpointConfig, mWifiManager, mWifiNetworkScoreCache,
- false /* forSavedNetworksPage */);
- } else {
- // Suggested PasspointWifiEntry without a corresponding PasspointConfiguration
- connectedEntry = new PasspointWifiEntry(mContext, mMainHandler,
- cachedWifiConfig, mWifiManager, mWifiNetworkScoreCache,
- false /* forSavedNetworksPage */);
- }
- connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
- mPasspointWifiEntryCache.put(connectedEntry.getKey(), connectedEntry);
+ final int connectedNetId = wifiInfo.getNetworkId();
+ Stream.concat(mWifiConfigCache.values().stream(), mSuggestedConfigCache.values().stream())
+ .filter(wifiConfig ->
+ wifiConfig.isPasspoint() && wifiConfig.networkId == connectedNetId
+ && !mPasspointWifiEntryCache.containsKey(
+ uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey())))
+ .findAny().ifPresent(wifiConfig -> {
+ PasspointConfiguration passpointConfig = mPasspointConfigCache.get(
+ uniqueIdToPasspointWifiEntryKey(wifiConfig.getKey()));
+ PasspointWifiEntry connectedEntry;
+ if (passpointConfig != null) {
+ connectedEntry = new PasspointWifiEntry(mContext, mMainHandler,
+ passpointConfig, mWifiManager, mWifiNetworkScoreCache,
+ false /* forSavedNetworksPage */);
+ } else {
+ // Suggested PasspointWifiEntry without a corresponding Passpoint config
+ connectedEntry = new PasspointWifiEntry(mContext, mMainHandler,
+ wifiConfig, mWifiManager, mWifiNetworkScoreCache,
+ false /* forSavedNetworksPage */);
+ }
+ connectedEntry.updateConnectionInfo(wifiInfo, networkInfo);
+ mPasspointWifiEntryCache.put(connectedEntry.getKey(), connectedEntry);
+ });
}
/**
@@ -979,7 +894,6 @@ public class WifiPickerTracker extends BaseWifiTracker {
* Called when there are changes to
* {@link #getConnectedWifiEntry()}
* {@link #getWifiEntries()}
- * {@link #getMergedCarrierEntry()}
*/
@MainThread
void onWifiEntriesChanged();
diff --git a/libs/WifiTrackerLib/tests/Android.bp b/libs/WifiTrackerLib/tests/Android.bp
index 50b1cd74b..a9c51e7a8 100644
--- a/libs/WifiTrackerLib/tests/Android.bp
+++ b/libs/WifiTrackerLib/tests/Android.bp
@@ -12,10 +12,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-package {
- default_applicable_licenses: ["Android-Apache-2.0"],
-}
-
android_test {
name: "WifiTrackerLibTests",
srcs: ["src/**/*.java"],
@@ -34,6 +30,4 @@ android_test {
],
platform_apis: true,
-
- test_suites: ["general-tests"],
}
diff --git a/libs/WifiTrackerLib/tests/AndroidManifest.xml b/libs/WifiTrackerLib/tests/AndroidManifest.xml
index 37ffd2f46..fe624d3e3 100644
--- a/libs/WifiTrackerLib/tests/AndroidManifest.xml
+++ b/libs/WifiTrackerLib/tests/AndroidManifest.xml
@@ -20,8 +20,7 @@
<application>
<uses-library android:name="android.test.runner" />
<activity android:label="WifiTrackerTestsDummyLabel"
- android:name="WifiTrackerTestsDummyName"
- android:exported="false">
+ android:name="WifiTrackerTestsDummyName">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"/>
diff --git a/libs/WifiTrackerLib/tests/simulate_wifi.py b/libs/WifiTrackerLib/tests/simulate_wifi.py
deleted file mode 100755
index ed6efdadb..000000000
--- a/libs/WifiTrackerLib/tests/simulate_wifi.py
+++ /dev/null
@@ -1,890 +0,0 @@
-#!/usr/bin/python3
-
-#
-# Copyright 2021, The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-# This script simulates different combinations of scans and config to allow a tester to manually
-# verify behavior in the Wi-Fi picker without setting up an actual test environment with real APs.
-# This is especially useful for verifying interactions between scans and configs of multiple
-# security types from the same security family, along with suggestions for the same networks.
-#
-# INSTRUCTIONS:
-# 1) Connect an adb debuggable test device.
-# 2) Open the test device and navigate to the Wi-Fi picker.
-# 3) In main(), uncomment any test cases that you want to test.
-# 4) If testing suggestions INSTEAD of configs, only set ADD_SUGGESTION_INSTEAD_OF_CONFIG to True.
-# 5) If testing suggestions AND configs, only set ADD_IDENTICAL_SUGGESTION to True.
-# 6) Run this script 'py simulate_wifi.py'
-# 7) Follow the prompts from the script. The prompts will ask you to verify the behavior of the
-# Wi-Fi picker through user interaction and visual confirmation.
-#
-# NOTE: Suggestions may take several seconds to appear. This is expected since it may be some scans
-# cycles until WifiManager#getWifiConfigForMatchedNetworkSuggestionsSharedWithUser() returns
-# the matching suggestion.
-
-import subprocess
-import sys
-import time
-
-OPEN_SSID = "fakeOpen"
-OWE_SSID = "fakeOwe"
-OPEN_OWE_SSID = "fakeOpenOwe"
-WPA2_SSID = "fakeWpa2"
-WPA3_SSID = "fakeWpa3"
-WPA2_WPA3_SSID = "fakeWpa2Wpa3"
-
-# only one of these should be True (possibly none for just adding base configuration)
-ADD_SUGGESTION_INSTEAD_OF_CONFIG = False
-ADD_IDENTICAL_SUGGESTION = False
-
-def main() -> None:
- root()
- time.sleep(5)
-
- # Single Open scan
- # testOpenScanNoConfigs()
- # testOpenScanOpenConfig()
- # testOpenScanOweConfig()
- # testOpenScanOpenOweConfig()
-
- # Single OWE scan
- # testOweScanNoConfigs()
- # testOweScanOpenConfig()
- # testOweScanOweConfig()
- # testOweScanOpenOweConfig()
-
- # Single Open/OWE scan
- # testOpenOweScanNoConfigs()
- # testOpenOweScanOpenConfig()
- # testOpenOweScanOweConfig()
- # testOpenOweScanOpenOweConfig()
-
- # Open scan and OWE scan
- # testOpenScanOweScanNoConfigs()
- # testOpenScanOweScanOpenConfig()
- # testOpenScanOweScanOweConfig()
- # testOpenScanOweScanOpenOweConfig()
-
- # Open scan and Open/OWE scan
- # testOpenScanOpenOweScanNoConfigs()
- # testOpenScanOpenOweScanOpenConfig()
- # testOpenScanOpenOweScanOweConfig()
- # testOpenScanOpenOweScanOpenOweConfig()
-
- # Open/OWE scan and OWE scan
- # testOpenOweScanOweScanNoConfigs()
- # testOpenOweScanOweScanOpenConfig()
- # testOpenOweScanOweScanOweConfig()
- # testOpenOweScanOweScanOpenOweConfig()
-
- # Open, Open/OWE, and OWE scans
- # testOpenScanOpenOweScanOweScanNoConfigs()
- # testOpenScanOpenOweScanOweScanOpenConfig()
- # testOpenScanOpenOweScanOweScanOweConfig()
- # testOpenScanOpenOweScanOweScanOpenOweConfig()
-
- # Single WPA2 scan
- # testWpa2ScanNoConfigs()
- # testWpa2ScanWpa2Config()
- # testWpa2ScanWpa3Config()
- # testWpa2ScanWpa2Wpa3Config()
-
- # Single WPA3 scan
- # testWpa3ScanNoConfigs()
- # testWpa3ScanWpa2Config()
- # testWpa3ScanWpa3Config()
- # testWpa3ScanWpa2Wpa3Config()
-
- # Single WP2/WPA3 scan
- # testWpa2Wpa3ScanNoConfigs()
- # testWpa2Wpa3ScanWpa2Config()
- # testWpa2Wpa3ScanWpa3Config()
- # testWpa2Wpa3ScanWpa2Wpa3Config()
-
- # WPA2 scan and WPA3 scan
- # testWpa2ScanWpa3ScanNoConfigs()
- # testWpa2ScanWpa3ScanWpa2Config()
- # testWpa2ScanWpa3ScanWpa3Config()
- # testWpa2ScanWpa3ScanWpa2Wpa3Config()
-
- # WPA2 scan and WPA2/WPA3 scan
- # testWpa2ScanWpa2Wpa3ScanNoConfigs()
- # testWpa2ScanWpa2Wpa3ScanWpa2Config()
- # testWpa2ScanWpa2Wpa3ScanWpa3Config()
- # testWpa2ScanWpa2Wpa3ScanWpa2Wpa3Config()
-
- # WPA2/WPA3 scan and WPA3 scan
- # testWpa2Wpa3ScanWpa3ScanNoConfigs()
- # testWpa2Wpa3ScanWpa3ScanWpa2Config()
- # testWpa2Wpa3ScanWpa3ScanWpa3Config()
- # testWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config()
-
- # WPA2, WPA2/WPA3, and WPA3 scans
- # testWpa2ScanWpa2Wpa3ScanWpa3ScanNoConfigs()
- # testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Config()
- # testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa3Config()
- # testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config()
-
- return 0
-
-
-def testTemplate(method_name, fake_scans, fake_configs, pre_instructions, post_instructions) -> None:
- print("")
- print("")
- print("****** Test: " + method_name)
- print("** Resetting all scans/configs")
- settings_reset()
- print("** Starting to fake scans")
- fake_scans()
- startFakingScans()
- startScan()
- time.sleep(5)
- print("** Fake scan results:")
- for scan in getScanResults():
- print(scan.decode())
- print("** Inserting fake configurations (and optionally suggestions)")
- fake_configs()
- print("** Pre action saved networks:")
- for config in getSavedConfigs():
- print(config.decode())
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- print("** Pre action suggestions:")
- for sugg in getSuggestions():
- print(sugg.decode())
- print("---> " + pre_instructions)
- input("** Then press Enter to continue ...")
- print("** Post action saved networks:")
- for config in getSavedConfigs():
- print(config.decode())
- print("---> " + post_instructions)
- input("** Press Enter to continue ...")
-
-#
-# Single WPA2 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2ScanNoConfigs() -> None:
- testTemplate(
- testWpa2ScanNoConfigs.__name__,
- lambda : addFakeWpa2Scan(WPA2_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_SSID,
- "Should ask for passphrase, then be WPA2 (+ WPA3^ if device supports auto-upgrade)"
- )
-
-def testWpa2ScanWpa2Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Config.__name__,
- lambda : addFakeWpa2Scan(WPA2_SSID, "80:01:02:03:04:05"),
- lambda : addWpa2Config(WPA2_SSID),
- "Open picker: select " + WPA2_SSID,
- "Should not ask for passphrase, then be WPA2 only if device does not support auto-upgrade (otherwise + WPA3^)"
- )
-
-def testWpa2ScanWpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa3Config.__name__,
- lambda : addFakeWpa2Scan(WPA2_SSID, "80:01:02:03:04:05"),
- lambda : addWpa3Config(WPA2_SSID),
- "Open picker: select " + WPA2_SSID,
- "Should ask for passphrase, then be WPA2+WPA3"
- )
-
-def testWpa2ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3Config.__name__,
- lambda : addFakeWpa2Scan(WPA2_SSID, "80:01:02:03:04:05"),
- lambda : (addWpa2Config(WPA2_SSID),
- addWpa3Config(WPA2_SSID)),
- "Open picker: select " + WPA2_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA3 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa3ScanNoConfigs.__name__,
- lambda : addFakeWpa3Scan(WPA3_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + WPA3_SSID,
- "Should ask for passphrase, then be WPA3"
- )
-
-def testWpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa3ScanWpa2Config.__name__,
- lambda : addFakeWpa3Scan(WPA3_SSID, "80:01:02:03:04:05"),
- lambda : addWpa2Config(WPA3_SSID),
- "Open picker: select " + WPA3_SSID,
- "If no auto-upgrade: Should ask for passphrase, then be WPA2 + WPA3, otherwise should not ask for passphrase and be WPA2+WPA3^"
- )
-
-def testWpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa3ScanWpa3Config.__name__,
- lambda : addFakeWpa3Scan(WPA3_SSID, "80:01:02:03:04:05"),
- lambda : addWpa3Config(WPA3_SSID),
- "Open picker: select " + WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa3ScanWpa2Wpa3Config.__name__,
- lambda : addFakeWpa3Scan(WPA3_SSID, "80:01:02:03:04:05"),
- lambda : (addWpa2Config(WPA3_SSID),
- addWpa3Config(WPA3_SSID)),
- "Open picker: select " + WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA2/WPA3 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2Wpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa2Wpa3ScanNoConfigs.__name__,
- lambda : addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should ask for passphrase, then be WPA2 if no auto-upgrade, WPA2+WPA3^ if auto-upgrade"
- )
-
-def testWpa2Wpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa2Config.__name__,
- lambda : addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- lambda : addWpa2Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2 if no auto-upgrade (otherwise WPA2+WPA3^)"
- )
-
-def testWpa2Wpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa3Config.__name__,
- lambda : addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- lambda : addWpa3Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa2Wpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa2Wpa3Config.__name__,
- lambda : addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- lambda : (addWpa2Config(WPA2_WPA3_SSID),
- addWpa3Config(WPA2_WPA3_SSID)),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA2 scan and single WPA3 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2ScanWpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa2ScanWpa3ScanNoConfigs.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should ask for passphrase, then be WPA2 if no auto-upgrade, WPA2+WPA3^ if auto-upgrade"
- )
-
-def testWpa2ScanWpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa2ScanWpa3ScanWpa2Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa2Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2 if no auto-upgrade (otherwise WPA2+WPA3^)"
- )
-
-def testWpa2ScanWpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa3ScanWpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa3Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa2ScanWpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa3ScanWpa2Wpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : (addWpa2Config(WPA2_WPA3_SSID),
- addWpa3Config(WPA2_WPA3_SSID)),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA2 scan and single WPA2+WPA3 transition scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2ScanWpa2Wpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanNoConfigs.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should ask for passphrase, then be WPA2 if no auto-upgrade, WPA2+WPA3^ if auto-upgrade"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa2Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa2Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2 if no auto-upgrade (otherwise WPA2+WPA3^)"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa3Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa2Wpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : (addWpa2Config(WPA2_WPA3_SSID),
- addWpa3Config(WPA2_WPA3_SSID)),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA2+WPA3 transition scan and single WPA3 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2Wpa3ScanWpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa3ScanNoConfigs.__name__,
- lambda : (addFakeWpa3Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should ask for passphrase, then be WPA2 if no auto-upgrade, WPA2+WPA3^ if auto-upgrade"
- )
-
-def testWpa2Wpa3ScanWpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa3ScanWpa2Config.__name__,
- lambda : (addFakeWpa3Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa2Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2 if no auto-upgrade (otherwise WPA2+WPA3^)"
- )
-
-def testWpa2Wpa3ScanWpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa3ScanWpa3Config.__name__,
- lambda : (addFakeWpa3Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : addWpa3Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config.__name__,
- lambda : (addFakeWpa3Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:02:02:03:04:06")),
- lambda : (addWpa2Config(WPA2_WPA3_SSID),
- addWpa3Config(WPA2_WPA3_SSID)),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single WPA2 scan, single WPA2+WPA3 transition scan, and single WPA3 scan: different WPA2/WPA3 configurations
-#
-
-def testWpa2ScanWpa2Wpa3ScanWpa3ScanNoConfigs() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa3ScanNoConfigs.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:03:02:03:04:07")),
- lambda : print("no configs added"),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should ask for passphrase, then be WPA2 if no auto-upgrade, WPA2+WPA3^ if auto-upgrade"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:03:02:03:04:07")),
- lambda : addWpa2Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2 if no auto-upgrade (otherwise WPA2+WPA3^)"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:03:02:03:04:07")),
- lambda : addWpa3Config(WPA2_WPA3_SSID),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA3"
- )
-
-def testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config() -> None:
- testTemplate(
- testWpa2ScanWpa2Wpa3ScanWpa3ScanWpa2Wpa3Config.__name__,
- lambda : (addFakeWpa2Scan(WPA2_WPA3_SSID, "80:01:02:03:04:05"),
- addFakeWpa3Scan(WPA2_WPA3_SSID, "80:02:02:03:04:06"),
- addFakeWpa2Wpa3TransitionScan(WPA2_WPA3_SSID, "80:03:02:03:04:07")),
- lambda : (addWpa2Config(WPA2_WPA3_SSID),
- addWpa3Config(WPA2_WPA3_SSID)),
- "Open picker: select " + WPA2_WPA3_SSID,
- "Should not ask for passphrase, then be WPA2+WPA3"
- )
-
-#
-# Single open scan: different open/OWE configurations
-#
-
-def testOpenScanNoConfigs() -> None:
- testTemplate(
- testOpenScanNoConfigs.__name__,
- lambda : addFakeOpenScan(OPEN_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_SSID,
- "Should be Open + OWE^ if device supports auto-upgrade"
- )
-
-def testOpenScanOpenConfig() -> None:
- testTemplate(
- testOpenScanOpenConfig.__name__,
- lambda : addFakeOpenScan(OPEN_SSID, "80:01:02:03:04:05"),
- lambda : addOpenConfig(OPEN_SSID),
- "Open picker: select " + OPEN_SSID,
- "Should be Open only if device does not support auto-upgrade (otherwise + OWE^)"
- )
-
-def testOpenScanOweConfig() -> None:
- testTemplate(
- testOpenScanOweConfig.__name__,
- lambda : addFakeOpenScan(OPEN_SSID, "80:01:02:03:04:05"),
- lambda : addOweConfig(OPEN_SSID),
- "Open picker: select " + OPEN_SSID,
- "Should be Open + OWE"
- )
-
-def testOpenScanOpenOweConfig() -> None:
- testTemplate(
- testOpenScanOpenOweConfig.__name__,
- lambda : addFakeOpenScan(OPEN_SSID, "80:01:02:03:04:05"),
- lambda : (addOpenConfig(OPEN_SSID),
- addOweConfig(OPEN_SSID)),
- "Open picker: select " + OPEN_SSID,
- "Should be Open + OWE"
- )
-
-#
-# Single OWE scan: different open/OWE configurations
-#
-
-def testOweScanNoConfigs() -> None:
- testTemplate(
- testOweScanNoConfigs.__name__,
- lambda : addFakeOweScan(OWE_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + OWE_SSID,
- "Should be OWE"
- )
-
-def testOweScanOpenConfig() -> None:
- testTemplate(
- testOweScanOpenConfig.__name__,
- lambda : addFakeOweScan(OWE_SSID, "80:01:02:03:04:05"),
- lambda : addOpenConfig(OWE_SSID),
- "Open picker: select " + OWE_SSID,
- "Should be Open+OWE^"
- )
-
-def testOweScanOweConfig() -> None:
- testTemplate(
- testOweScanOweConfig.__name__,
- lambda : addFakeOweScan(OWE_SSID, "80:01:02:03:04:05"),
- lambda : addOweConfig(OWE_SSID),
- "Open picker: select " + OWE_SSID,
- "Should be OWE"
- )
-
-def testOweScanOpenOweConfig() -> None:
- testTemplate(
- testOweScanOpenOweConfig.__name__,
- lambda : addFakeOweScan(OWE_SSID, "80:01:02:03:04:05"),
- lambda : (addOpenConfig(OWE_SSID),
- addOweConfig(OWE_SSID)),
- "Open picker: select " + OWE_SSID,
- "Should be Open + OWE"
- )
-
-#
-# Single Open/OWE transition mode scan: different open/OWE configurations
-#
-
-def testOpenOweScanNoConfigs() -> None:
- testTemplate(
- testOpenOweScanNoConfigs.__name__,
- lambda : addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def testOpenOweScanOpenConfig() -> None:
- testTemplate(
- testOpenOweScanOpenConfig.__name__,
- lambda : addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- lambda : addOpenConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE^"
- )
-
-def testOpenOweScanOweConfig() -> None:
- testTemplate(
- testOpenOweScanOweConfig.__name__,
- lambda : addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- lambda : addOweConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be OWE"
- )
-
-def testOpenOweScanOpenOweConfig() -> None:
- testTemplate(
- testOpenOweScanOpenOweConfig.__name__,
- lambda : addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- lambda : (addOpenConfig(OPEN_OWE_SSID),
- addOweConfig(OPEN_OWE_SSID)),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open + OWE"
- )
-
-#
-# Single Open scan and single OWE scan: different Open/OWE configurations
-#
-
-def testOpenScanOweScanNoConfigs() -> None:
- testTemplate(
- testOpenScanOweScanNoConfigs.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def testOpenScanOweScanOpenConfig() -> None:
- testTemplate(
- testOpenScanOweScanOpenConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOpenConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open if no auto-upgrade (otherwise Open+OWE^)"
- )
-
-def testOpenScanOweScanOweConfig() -> None:
- testTemplate(
- testOpenScanOweScanOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOweConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be OWE"
- )
-
-def testOpenScanOweScanOpenOweConfig() -> None:
- testTemplate(
- testOpenScanOweScanOpenOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : (addOpenConfig(OPEN_OWE_SSID),
- addOweConfig(OPEN_OWE_SSID)),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-#
-# Single Open scan and single Open+OWE transition scan: different Open/OWE configurations
-#
-
-def testOpenScanOpenOweScanNoConfigs() -> None:
- testTemplate(
- testOpenScanOpenOweScanNoConfigs.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def testOpenScanOpenOweScanOpenConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOpenConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOpenConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open if no auto-upgrade (otherwise Open+OWE^)"
- )
-
-def testOpenScanOpenOweScanOweConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOweConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be OWE"
- )
-
-def testOpenScanOpenOweScanOpenOweConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOpenOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : (addOpenConfig(OPEN_OWE_SSID),
- addOweConfig(OPEN_OWE_SSID)),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-#
-# Single Open+OWE transition scan and single OWE scan: different Open/OWE configurations
-#
-
-def testOpenOweScanOweScanNoConfigs() -> None:
- testTemplate(
- testOpenOweScanOweScanNoConfigs.__name__,
- lambda : (addFakeOweScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def testOpenOweScanOweScanOpenConfig() -> None:
- testTemplate(
- testOpenOweScanOweScanOpenConfig.__name__,
- lambda : (addFakeOweScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOpenConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open if no auto-upgrade (otherwise Open+OWE^)"
- )
-
-def testOpenOweScanOweScanOweConfig() -> None:
- testTemplate(
- testOpenOweScanOweScanOweConfig.__name__,
- lambda : (addFakeOweScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : addOweConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be OWE"
- )
-
-def testOpenOweScanOweScanOpenOweConfig() -> None:
- testTemplate(
- testOpenOweScanOweScanOpenOweConfig.__name__,
- lambda : (addFakeOweScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:02:02:03:04:06")),
- lambda : (addOpenConfig(OPEN_OWE_SSID),
- addOweConfig(OPEN_OWE_SSID)),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-#
-# Single Open scan, single Open+OWE transition scan, and single OWE scan: different Open/OWE configurations
-#
-
-def testOpenScanOpenOweScanOweScanNoConfigs() -> None:
- testTemplate(
- testOpenScanOpenOweScanOweScanNoConfigs.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:03:02:03:04:07")),
- lambda : print("no configs added"),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def testOpenScanOpenOweScanOweScanOpenConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOweScanOpenConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:03:02:03:04:07")),
- lambda : addOpenConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open if no auto-upgrade (otherwise Open+OWE^)"
- )
-
-def testOpenScanOpenOweScanOweScanOweConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOweScanOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:03:02:03:04:07")),
- lambda : addOweConfig(OPEN_OWE_SSID),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be OWE"
- )
-
-def testOpenScanOpenOweScanOweScanOpenOweConfig() -> None:
- testTemplate(
- testOpenScanOpenOweScanOweScanOpenOweConfig.__name__,
- lambda : (addFakeOpenScan(OPEN_OWE_SSID, "80:01:02:03:04:05"),
- addFakeOweScan(OPEN_OWE_SSID, "80:02:02:03:04:06"),
- addFakeOpenOweTransitionScan(OPEN_OWE_SSID, "80:03:02:03:04:07")),
- lambda : (addOpenConfig(OPEN_OWE_SSID),
- addOweConfig(OPEN_OWE_SSID)),
- "Open picker: select " + OPEN_OWE_SSID,
- "Should be Open+OWE"
- )
-
-def root() -> None:
- subprocess.run(["adb", "root"])
-
-def settings_reset() -> None:
- subprocess.run(["adb", "shell", "cmd", "wifi", "settings-reset"])
-
-def getSavedConfigs() -> str:
- return subprocess.check_output(["adb", "shell", "cmd", "wifi", "list-networks"]).splitlines()
-
-def getSuggestions() -> str:
- return subprocess.check_output(["adb", "shell", "cmd", "wifi", "list-suggestions"]).splitlines()
-
-def getScanResults() -> str:
- return subprocess.check_output(["adb", "shell", "cmd", "wifi", "list-scan-results"]).splitlines()
-
-def startScan() -> None:
- subprocess.run(["adb", "shell", "cmd", "wifi", "start-scan"])
-
-def startFakingScans() -> None:
- subprocess.run(["adb", "shell", "cmd", "wifi", "start-faking-scans"])
-
-def resetFakeScans() -> None:
- subprocess.run(["adb", "shell", "cmd", "wifi", "reset-fake-scans"])
-
-#
-# Add fake scans
-#
-
-def addFakeScan(ssid: str, bssid: str, cap: str, freq: int = 2412, dbm: int = -55) -> None:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-fake-scan", ssid, bssid, cap, str(freq), str(dbm)])
-
-def addFakeOpenScan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[ESS]", freq, dbm)
-
-def addFakeWpa2Scan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[WPA2-PSK-CCMP][RSN-PSK-CCMP][ESS]", freq, dbm)
-
-def addFakeWpa3Scan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[RSN-SAE+FT/SAE-CCMP][ESS]", freq, dbm)
-
-def addFakeOweScan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[RSN-OWE-CCMP]", freq, dbm)
-
-def addFakeWpa2Wpa3TransitionScan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[WPA2-PSK-CCMP][RSN-PSK+SAE-CCMP][ESS][MFPC]", freq, dbm)
-
-def addFakeOpenOweTransitionScan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[RSN-OWE_TRANSITION-CCMP][ESS]", freq, dbm)
-
-def addFakePasspointScan(ssid: str, bssid: str, freq: int = 2412, dbm: int = -55) -> None:
- addFakeScan(ssid, bssid, "[WPA2-EAP/SHA1-CCMP][RSN-EAP/SHA1-CCMP][ESS][MFPR][MFPC][PASSPOINT]", freq, dbm)
-
-#
-# Add configs
-#
-
-def addOpenConfig(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "open"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "open"])
-
-def addOweConfig(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "owe"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "owe"])
-
-def addOpenOweConfig(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "open"])
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "owe"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "open"])
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "owe"])
-
-def addWpa2Config(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "wpa2", "SomePassphrase"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "wpa2", "SomePassphrase", "-s"])
-
-def addWpa3Config(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "wpa3", "SomePassphrase"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "wpa3", "SomePassphrase", "-s"])
-
-def addWpa2Wpa3Config(ssid: str) -> None:
- if not ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "wpa2", "SomePassphrase"])
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-network", ssid, "wpa3", "SomePassphrase"])
- if ADD_IDENTICAL_SUGGESTION or ADD_SUGGESTION_INSTEAD_OF_CONFIG:
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "wpa2", "SomePassphrase", "-s"])
- subprocess.run(["adb", "shell", "cmd", "wifi", "add-suggestion", ssid, "wpa3", "SomePassphrase", "-s"])
-
-if __name__ == '__main__':
- exit_code = main()
- sys.exit(exit_code)
-
-
-
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/MergedCarrierEntryTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/MergedCarrierEntryTest.java
deleted file mode 100644
index b13d60be4..000000000
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/MergedCarrierEntryTest.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Copyright (C) 2020 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.wifitrackerlib;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.content.res.Resources;
-import android.net.NetworkInfo;
-import android.net.NetworkKey;
-import android.net.ScoredNetwork;
-import android.net.wifi.ScanResult;
-import android.net.wifi.WifiConfiguration;
-import android.net.wifi.WifiInfo;
-import android.net.wifi.WifiManager;
-import android.net.wifi.WifiNetworkScoreCache;
-import android.os.Handler;
-import android.os.Looper;
-import android.os.test.TestLooper;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-
-public class MergedCarrierEntryTest {
- @Mock private WifiEntry.ConnectCallback mMockConnectCallback;
- @Mock private WifiManager mMockWifiManager;
- @Mock private WifiInfo mMockWifiInfo;
- @Mock private NetworkInfo mMockNetworkInfo;
- @Mock private Context mMockContext;
- @Mock private Resources mMockResources;
- @Mock private WifiNetworkScoreCache mMockScoreCache;
- @Mock private ScoredNetwork mMockScoredNetwork;
-
- private TestLooper mTestLooper;
- private Handler mTestHandler;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- when(mMockWifiInfo.getNetworkId()).thenReturn(WifiConfiguration.INVALID_NETWORK_ID);
- when(mMockWifiInfo.getRssi()).thenReturn(WifiInfo.INVALID_RSSI);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(
- NetworkInfo.DetailedState.DISCONNECTED);
- when(mMockScoreCache.getScoredNetwork((ScanResult) any())).thenReturn(mMockScoredNetwork);
- when(mMockScoreCache.getScoredNetwork((NetworkKey) any())).thenReturn(mMockScoredNetwork);
- mTestLooper = new TestLooper();
- mTestHandler = new Handler(mTestLooper.getLooper());
- when(mMockContext.getMainLooper()).thenReturn(Looper.getMainLooper());
- when(mMockContext.getResources()).thenReturn(mMockResources);
- when(mMockResources.getString(R.string.wifitrackerlib_summary_separator)).thenReturn("/");
- when(mMockResources.getText(R.string.wifitrackerlib_wifi_wont_autoconnect_for_now))
- .thenReturn("Wi-Fi won't auto-connect for now");
- }
-
- @Test
- public void testGetConnectedState_wifiInfoMatches_returnsConnected() {
- final int subId = 1;
- final MergedCarrierEntry entry = new MergedCarrierEntry(mTestHandler, mMockWifiManager,
- mMockScoreCache, false, mMockContext, subId);
- when(mMockWifiInfo.isCarrierMerged()).thenReturn(true);
- when(mMockWifiInfo.getSubscriptionId()).thenReturn(subId);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
-
- entry.updateConnectionInfo(mMockWifiInfo, mMockNetworkInfo);
-
- assertThat(entry.getConnectedState()).isEqualTo(WifiEntry.CONNECTED_STATE_CONNECTED);
- }
-
- @Test
- public void testConnect_disablesNonCarrierMergedWifi() {
- Looper.prepare();
- final int subId = 1;
- final MergedCarrierEntry entry = new MergedCarrierEntry(mTestHandler, mMockWifiManager,
- mMockScoreCache, false, mMockContext, subId);
-
- entry.connect(mMockConnectCallback);
- mTestLooper.dispatchAll();
-
- verify(mMockConnectCallback)
- .onConnectResult(WifiEntry.ConnectCallback.CONNECT_STATUS_SUCCESS);
- verify(mMockWifiManager).startRestrictingAutoJoinToSubscriptionId(subId);
- }
-
- @Test
- public void testDisconnect_enablesNonCarrierMergedWifiAndTriggersScan() {
- final int subId = 1;
- final MergedCarrierEntry entry = new MergedCarrierEntry(mTestHandler, mMockWifiManager,
- mMockScoreCache, false, mMockContext, subId);
-
- entry.disconnect(null);
- mTestLooper.dispatchAll();
- verify(mMockWifiManager).stopRestrictingAutoJoinToSubscriptionId();
- verify(mMockWifiManager).startScan();
- }
-
- @Test
- public void testCanConnect_cellIsDefaultRoute_returnsFalse() {
- final int subId = 1;
- final MergedCarrierEntry entry = new MergedCarrierEntry(mTestHandler, mMockWifiManager,
- mMockScoreCache, false, mMockContext, subId);
- entry.updateIsCellDefaultRoute(false);
-
- assertThat(entry.canConnect()).isTrue();
-
- entry.updateIsCellDefaultRoute(true);
-
- assertThat(entry.canConnect()).isFalse();
- }
-
- @Test
- public void testGetSsid_connected_returnsSanitizedWifiInfoSsid() {
- final int subId = 1;
- final MergedCarrierEntry entry = new MergedCarrierEntry(mTestHandler, mMockWifiManager,
- mMockScoreCache, false, mMockContext, subId);
- when(mMockWifiInfo.isCarrierMerged()).thenReturn(true);
- when(mMockWifiInfo.getSubscriptionId()).thenReturn(subId);
- final String ssid = "ssid";
- when(mMockWifiInfo.getSSID()).thenReturn("\"" + ssid + "\"");
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
-
- entry.updateConnectionInfo(mMockWifiInfo, mMockNetworkInfo);
-
- assertThat(entry.getSsid()).isEqualTo(ssid);
- }
-}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NetworkDetailsTrackerTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NetworkDetailsTrackerTest.java
index ef2c003a2..eedd1a66c 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NetworkDetailsTrackerTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/NetworkDetailsTrackerTest.java
@@ -17,8 +17,6 @@
package com.android.wifitrackerlib;
import static com.android.wifitrackerlib.NetworkDetailsTracker.createNetworkDetailsTracker;
-import static com.android.wifitrackerlib.StandardWifiEntry.ScanResultKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
import static com.google.common.truth.Truth.assertThat;
@@ -41,7 +39,6 @@ import org.mockito.MockitoAnnotations;
import java.time.Clock;
import java.util.ArrayList;
-import java.util.Collections;
public class NetworkDetailsTrackerTest {
@@ -111,11 +108,9 @@ public class NetworkDetailsTrackerTest {
* StandardWifiEntry key is passed in.
*/
@Test
- public void testCreateNetworkDetailsTracker_returnsStandardNetworkDetailsTracker()
- throws Exception {
- final NetworkDetailsTracker tracker = createTestNetworkDetailsTracker(
- new StandardWifiEntryKey(new ScanResultKey("ssid",
- Collections.singletonList(WifiEntry.SECURITY_NONE))).toString());
+ public void testCreateNetworkDetailsTracker_returnsStandardNetworkDetailsTracker() {
+ final NetworkDetailsTracker tracker =
+ createTestNetworkDetailsTracker(StandardWifiEntry.KEY_PREFIX + "ssid,0");
assertThat(tracker).isInstanceOf(StandardNetworkDetailsTracker.class);
}
}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/PasspointWifiEntryTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/PasspointWifiEntryTest.java
index f42b3d22c..80a31e53f 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/PasspointWifiEntryTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/PasspointWifiEntryTest.java
@@ -25,14 +25,11 @@ import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.content.res.Resources;
import android.net.ConnectivityManager;
-import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.NetworkKey;
import android.net.ScoredNetwork;
@@ -52,7 +49,6 @@ import org.junit.Test;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
-import java.util.Arrays;
import java.util.Collections;
public class PasspointWifiEntryTest {
@@ -67,7 +63,6 @@ public class PasspointWifiEntryTest {
@Mock private NetworkInfo mMockNetworkInfo;
@Mock private WifiNetworkScoreCache mMockScoreCache;
@Mock private ScoredNetwork mMockScoredNetwork;
- @Mock private ConnectivityManager mMockConnectivityManager;
private TestLooper mTestLooper;
private Handler mTestHandler;
@@ -76,13 +71,6 @@ public class PasspointWifiEntryTest {
@Before
public void setUp() {
- Utils.sFeatureFlagUtilsWrapper = new Utils.FeatureFlagUtilsWrapper() {
- @Override
- boolean isProviderModelEnabled(Context context) {
- return false;
- }
- };
-
MockitoAnnotations.initMocks(this);
mTestLooper = new TestLooper();
@@ -93,7 +81,7 @@ public class PasspointWifiEntryTest {
when(mMockNetworkInfo.getDetailedState()).thenReturn(
NetworkInfo.DetailedState.DISCONNECTED);
when(mMockContext.getResources()).thenReturn(mMockResources);
- when(mMockResources.getString(R.string.wifitrackerlib_summary_separator)).thenReturn("/");
+ when(mMockResources.getString(R.string.summary_separator)).thenReturn("/");
when(mMockScoreCache.getScoredNetwork((ScanResult) any())).thenReturn(mMockScoredNetwork);
when(mMockScoreCache.getScoredNetwork((NetworkKey) any())).thenReturn(mMockScoredNetwork);
}
@@ -103,8 +91,7 @@ public class PasspointWifiEntryTest {
// default SubscriptionExpirationTimeInMillis is unset
PasspointConfiguration passpointConfiguration = getPasspointConfiguration();
String expired = "Expired";
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_passpoint_expired))
- .thenReturn(expired);
+ when(mMockResources.getString(R.string.wifi_passpoint_expired)).thenReturn(expired);
PasspointWifiEntry passpointWifiEntry = new PasspointWifiEntry(mMockContext, mTestHandler,
passpointConfiguration, mMockWifiManager, mMockScoreCache,
@@ -117,8 +104,7 @@ public class PasspointWifiEntryTest {
public void testGetSummary_expired_showExpired() {
PasspointConfiguration passpointConfiguration = getPasspointConfiguration();
String expired = "Expired";
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_passpoint_expired))
- .thenReturn(expired);
+ when(mMockResources.getString(R.string.wifi_passpoint_expired)).thenReturn(expired);
PasspointWifiEntry passpointWifiEntry = new PasspointWifiEntry(mMockContext, mTestHandler,
passpointConfiguration, mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
@@ -156,55 +142,12 @@ public class PasspointWifiEntryTest {
Resources mockResources = mock(Resources.class);
when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
+ when(mockResources.getString(R.string.summary_separator)).thenReturn(summarySeparator);
+ when(mockResources.getStringArray(R.array.wifi_status)).thenReturn(wifiStatusArray);
ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
.thenReturn(mockConnectivityManager);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
- WifiInfo wifiInfo = mock(WifiInfo.class);
- when(wifiInfo.isPasspointAp()).thenReturn(true);
- when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
- NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
- entry.updateConnectionInfo(wifiInfo, networkInfo);
- entry.updateNetworkCapabilities(networkCapabilities);
- entry.setIsDefaultNetwork(true);
-
- assertThat(entry.getSummary()).isEqualTo("Connected");
- }
-
- @Test
- public void testGetSummary_providerModelConnectedButNotDefault_doesNotShowConnected() {
- Utils.sFeatureFlagUtilsWrapper = new Utils.FeatureFlagUtilsWrapper() {
- @Override
- boolean isProviderModelEnabled(Context context) {
- return true;
- }
- };
- String summarySeparator = " / ";
- String[] wifiStatusArray = new String[]{"", "Scanning", "Connecting",
- "Authenticating", "Obtaining IP address", "Connected"};
-
- Resources mockResources = mock(Resources.class);
- when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
- ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mockConnectivityManager);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
WifiInfo wifiInfo = mock(WifiInfo.class);
when(wifiInfo.isPasspointAp()).thenReturn(true);
when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
@@ -216,95 +159,8 @@ public class PasspointWifiEntryTest {
getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
entry.updateConnectionInfo(wifiInfo, networkInfo);
- entry.updateNetworkCapabilities(networkCapabilities);
- entry.setIsDefaultNetwork(false);
-
- assertThat(entry.getSummary()).isEqualTo("");
- }
-
- @Test
- public void testGetSecurityTypes_connectedWifiNetwork_showsCurrentSecurityType() {
- WifiInfo wifiInfo = mock(WifiInfo.class);
- when(wifiInfo.isPasspointAp()).thenReturn(true);
- when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
- when(wifiInfo.getCurrentSecurityType()).thenReturn(WifiInfo.SECURITY_TYPE_PASSPOINT_R1_R2);
- NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
-
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- assertThat(entry.getSecurityTypes()).containsExactlyElementsIn(Arrays.asList(
- WifiInfo.SECURITY_TYPE_PASSPOINT_R1_R2,
- WifiInfo.SECURITY_TYPE_PASSPOINT_R3));
-
- entry.updateConnectionInfo(wifiInfo, networkInfo);
-
- assertThat(entry.getSecurityTypes())
- .containsExactly(WifiInfo.SECURITY_TYPE_PASSPOINT_R1_R2);
-
- when(wifiInfo.getCurrentSecurityType()).thenReturn(WifiInfo.SECURITY_TYPE_PASSPOINT_R3);
- entry.updateConnectionInfo(wifiInfo, networkInfo);
-
- assertThat(entry.getSecurityTypes()).containsExactly(WifiInfo.SECURITY_TYPE_PASSPOINT_R3);
- }
-
- @Test
- public void testGetSecurityString_showsPasspoint() {
- PasspointConfiguration passpointConfiguration = getPasspointConfiguration();
- String passpointSecurity = "Passpoint";
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_security_passpoint))
- .thenReturn(passpointSecurity);
-
- PasspointWifiEntry passpointWifiEntry = new PasspointWifiEntry(mMockContext, mTestHandler,
- passpointConfiguration, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- assertThat(passpointWifiEntry.getSecurityString(false)).isEqualTo(passpointSecurity);
- }
-
- @Test
- public void testShouldShowXLevelIcon_unvalidatedOrNotDefault_returnsTrue() {
- ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mockConnectivityManager);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
- WifiInfo wifiInfo = mock(WifiInfo.class);
- when(wifiInfo.isPasspointAp()).thenReturn(true);
- when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
- final NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
-
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- // Disconnected should return false;
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(false);
-
- // Not validated, Not Default
- entry.updateConnectionInfo(wifiInfo, networkInfo);
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
-
- // Not Validated, Default
- entry.setIsDefaultNetwork(true);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
-
- // Validated, Default
- entry.updateNetworkCapabilities(networkCapabilities);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(false);
-
- // Validated, Not Default
- entry.setIsDefaultNetwork(false);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
+ assertThat(entry.getSummary()).isEqualTo("Connected");
}
@Test
@@ -332,8 +188,6 @@ public class PasspointWifiEntryTest {
when(mMockWifiInfo.isPasspointAp()).thenReturn(true);
when(mMockWifiInfo.getPasspointFqdn()).thenReturn(FQDN);
when(mMockWifiInfo.getRssi()).thenReturn(BAD_RSSI);
- when(mMockWifiInfo.getSSID()).thenReturn("\"ssid\"");
- when(mMockWifiInfo.getBSSID()).thenReturn("01:23:45:67:89:ab");
PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
@@ -367,112 +221,4 @@ public class PasspointWifiEntryTest {
assertThat(entry.getSpeed()).isEqualTo(SPEED_SLOW);
}
-
- @Test
- public void testGetMacAddress_wifiInfoAvailable_usesWifiInfoMacAddress() {
- final String factoryMac = "01:23:45:67:89:ab";
- final String wifiInfoMac = "11:23:45:67:89:ab";
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.macRandomizationSetting = WifiConfiguration.RANDOMIZATION_NONE;
- config.FQDN = FQDN;
- when(mMockWifiManager.getFactoryMacAddresses()).thenReturn(new String[]{factoryMac});
- WifiInfo wifiInfo = mock(WifiInfo.class);
- when(wifiInfo.isPasspointAp()).thenReturn(true);
- when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
- when(wifiInfo.getMacAddress()).thenReturn(wifiInfoMac);
- NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- entry.updateConnectionInfo(wifiInfo, networkInfo);
-
- assertThat(entry.getMacAddress()).isEqualTo(wifiInfoMac);
- }
-
- @Test
- public void testIsAutoJoinEnabled_nullConfigs_returnsFalse() {
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- entry.updatePasspointConfig(null);
-
- assertThat(entry.isAutoJoinEnabled()).isFalse();
- }
-
- @Test
- public void testCanSignIn_captivePortalCapability_returnsTrue() {
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL).build();
- entry.updateNetworkCapabilities(captivePortalCapabilities);
-
- assertThat(entry.canSignIn()).isTrue();
- }
-
- @Test
- public void testUpdateNetworkCapabilities_userConnect_autoOpenCaptivePortalOnce() {
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mMockConnectivityManager);
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
- NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL).build();
-
- // Simulate user tapping on the network and receiving captive portal capabilities.
- // This should trigger the captive portal app.
- entry.connect(null /* callback */);
- entry.updateNetworkCapabilities(captivePortalCapabilities);
-
- verify(mMockConnectivityManager, times(1)).startCaptivePortalApp(any());
-
- // Update network capabilities again. This should not trigger the captive portal app.
- entry.updateNetworkCapabilities(captivePortalCapabilities);
-
- verify(mMockConnectivityManager, times(1)).startCaptivePortalApp(any());
- }
-
- @Test
- public void testDisconnect_noScansOrWifiConfig_disconnectIsSuccessful() {
- // Setup a connected PasspointWifiEntry
- String summarySeparator = " / ";
- String[] wifiStatusArray = new String[]{"", "Scanning", "Connecting",
- "Authenticating", "Obtaining IP address", "Connected"};
- Resources mockResources = mock(Resources.class);
- when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
- ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mockConnectivityManager);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
- WifiInfo wifiInfo = mock(WifiInfo.class);
- when(wifiInfo.isPasspointAp()).thenReturn(true);
- when(wifiInfo.getPasspointFqdn()).thenReturn(FQDN);
- NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
- PasspointWifiEntry entry = new PasspointWifiEntry(mMockContext, mTestHandler,
- getPasspointConfiguration(), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
- entry.updateConnectionInfo(wifiInfo, networkInfo);
- entry.updateNetworkCapabilities(networkCapabilities);
-
- // Disconnect the entry before it can be updated with scans and a WifiConfiguration
- entry.disconnect(null);
-
- verify(mMockWifiManager).disableEphemeralNetwork(FQDN);
- verify(mMockWifiManager).disconnect();
- }
}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/SavedNetworkTrackerTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/SavedNetworkTrackerTest.java
index 89482b1c2..f78900df0 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/SavedNetworkTrackerTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/SavedNetworkTrackerTest.java
@@ -31,9 +31,7 @@ import android.content.Context;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkScoreManager;
-import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
-import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.hotspot2.PasspointConfiguration;
import android.net.wifi.hotspot2.pps.Credential;
@@ -53,7 +51,6 @@ import java.time.Clock;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
-import java.util.List;
import java.util.stream.Collectors;
public class SavedNetworkTrackerTest {
@@ -105,9 +102,6 @@ public class SavedNetworkTrackerTest {
mTestLooper = new TestLooper();
when(mMockWifiManager.getScanResults()).thenReturn(new ArrayList<>());
- when(mMockWifiManager.isWpa3SaeSupported()).thenReturn(true);
- when(mMockWifiManager.isWpa3SuiteBSupported()).thenReturn(true);
- when(mMockWifiManager.isEnhancedOpenSupported()).thenReturn(true);
when(mMockClock.millis()).thenReturn(START_MILLIS);
when(mMockContext.getSystemService(Context.NETWORK_SCORE_SERVICE))
.thenReturn(mMockNetworkScoreManager);
@@ -220,7 +214,7 @@ public class SavedNetworkTrackerTest {
}
/**
- * Tests that a CONFIGURED_NETWORKS_CHANGED broadcast after adding a config
+ * Tests that a CONFIGURED_NETWORKS_CHANGED broadcast with CHANGE_REASON_ADDED
* adds the corresponding WifiEntry from getSavedWifiEntries().
*/
@Test
@@ -233,11 +227,12 @@ public class SavedNetworkTrackerTest {
assertThat(savedNetworkTracker.getSavedWifiEntries()).isEmpty();
- final WifiConfiguration config = buildWifiConfiguration("ssid");
- when(mMockWifiManager.getConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION,
+ buildWifiConfiguration("ssid"))
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_ADDED));
assertThat(savedNetworkTracker.getSavedWifiEntries().stream()
.filter(entry -> entry.mForSavedNetworksPage)
@@ -246,7 +241,7 @@ public class SavedNetworkTrackerTest {
}
/**
- * Tests that a CONFIGURED_NETWORKS_CHANGED broadcast after removing a config
+ * Tests that a CONFIGURED_NETWORKS_CHANGED broadcast with CHANGE_REASON_REMOVED
* removes the corresponding WifiEntry from getSavedWifiEntries().
*/
@Test
@@ -262,10 +257,11 @@ public class SavedNetworkTrackerTest {
assertThat(savedNetworkTracker.getSavedWifiEntries()).hasSize(1);
- when(mMockWifiManager.getConfiguredNetworks())
- .thenReturn(Collections.emptyList());
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, config)
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_REMOVED));
assertThat(savedNetworkTracker.getSavedWifiEntries()).isEmpty();
}
@@ -340,106 +336,4 @@ public class SavedNetworkTrackerTest {
assertThat(savedNetworkTracker.getSubscriptionWifiEntries().get(0).getTitle())
.isEqualTo("friendlyName");
}
-
- @Test
- public void testGetSavedNetworks_splitConfigs_entriesMergedBySecurityFamily() {
- final String ssid = "ssid";
- WifiConfiguration openConfig = buildWifiConfiguration(ssid);
- openConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- openConfig.networkId = 1;
- WifiConfiguration oweConfig = buildWifiConfiguration(ssid);
- oweConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
- oweConfig.networkId = 1;
- WifiConfiguration wepConfig = buildWifiConfiguration(ssid);
- wepConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_WEP);
- wepConfig.wepKeys = new String[]{"key"};
- wepConfig.networkId = 2;
- WifiConfiguration pskConfig = buildWifiConfiguration(ssid);
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- pskConfig.networkId = 3;
- WifiConfiguration saeConfig = buildWifiConfiguration(ssid);
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
- saeConfig.networkId = 3;
- WifiConfiguration eapConfig = buildWifiConfiguration(ssid);
- eapConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- eapConfig.networkId = 4;
- WifiConfiguration eapWpa3Config = buildWifiConfiguration(ssid);
- eapWpa3Config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- eapWpa3Config.networkId = 4;
- WifiConfiguration eapWpa3SuiteBConfig = buildWifiConfiguration(ssid);
- eapWpa3SuiteBConfig.setSecurityParams(
- WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
- eapWpa3SuiteBConfig.networkId = 5;
- when(mMockWifiManager.getConfiguredNetworks()).thenReturn(Arrays.asList(
- openConfig, oweConfig, wepConfig, pskConfig, saeConfig, eapConfig, eapWpa3Config,
- eapWpa3SuiteBConfig
- ));
- final SavedNetworkTracker savedNetworkTracker = createTestSavedNetworkTracker();
- savedNetworkTracker.onStart();
- mTestLooper.dispatchAll();
-
- final List<WifiEntry> savedWifiEntries = savedNetworkTracker.getSavedWifiEntries();
- assertThat(savedWifiEntries.size()).isEqualTo(5);
- assertThat(savedWifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OPEN, WifiInfo.SECURITY_TYPE_OWE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_WEP),
- Arrays.asList(WifiInfo.SECURITY_TYPE_PSK, WifiInfo.SECURITY_TYPE_SAE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP,
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT));
- }
-
- /**
- * Tests that entries with configs that have scans matching the security family but NOT the
- * actual configs on hand will ignore the scans and be returned as saved with the configs.
- */
- @Test
- public void testGetSavedNetworks_mismatchedScans_returnsCorrectEntries() {
- // Set up scans for Open, PSK, WPA2-Enterprise
- final ArrayList scanList = new ArrayList();
- final String ssid = "ssid";
- final String bssid = "bssid";
- int bssidNum = 0;
- for (String capabilities : Arrays.asList(
- "",
- "[PSK]",
- "[EAP/SHA1]"
- )) {
- final ScanResult scan = buildScanResult(ssid, bssid + bssidNum++, START_MILLIS);
- scan.capabilities = capabilities;
- scanList.add(scan);
- }
- when(mMockWifiManager.getScanResults()).thenReturn(scanList);
- // Set up configs for OWE, SAE, WPA3-Enterprise
- WifiConfiguration oweConfig = buildWifiConfiguration(ssid);
- oweConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
- oweConfig.networkId = 1;
- WifiConfiguration saeConfig = buildWifiConfiguration(ssid);
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
- saeConfig.networkId = 2;
- WifiConfiguration eapWpa3Config = buildWifiConfiguration(ssid);
- eapWpa3Config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- eapWpa3Config.networkId = 3;
- when(mMockWifiManager.getConfiguredNetworks())
- .thenReturn(Arrays.asList(oweConfig, saeConfig, eapWpa3Config));
-
- final SavedNetworkTracker savedNetworkTracker = createTestSavedNetworkTracker();
- savedNetworkTracker.onStart();
- mTestLooper.dispatchAll();
-
- // Entries should appear correctly in the saved entry list with the security type of their
- // configs, ignoring the scans present.
- final List<WifiEntry> savedWifiEntries = savedNetworkTracker.getSavedWifiEntries();
- assertThat(savedWifiEntries.size()).isEqualTo(3);
- assertThat(savedWifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OWE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_SAE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE));
- }
}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardNetworkDetailsTrackerTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardNetworkDetailsTrackerTest.java
index ef124ad06..964a900ca 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardNetworkDetailsTrackerTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardNetworkDetailsTrackerTest.java
@@ -16,12 +16,8 @@
package com.android.wifitrackerlib;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_PSK;
-
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityTypeToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityToStandardWifiEntryKey;
import static com.android.wifitrackerlib.TestUtils.buildScanResult;
-import static com.android.wifitrackerlib.TestUtils.buildWifiConfiguration;
import static com.android.wifitrackerlib.WifiEntry.SECURITY_NONE;
import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_UNREACHABLE;
@@ -38,7 +34,6 @@ import android.net.ConnectivityManager;
import android.net.NetworkScoreManager;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
-import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Handler;
import android.os.test.TestLooper;
@@ -80,8 +75,7 @@ public class StandardNetworkDetailsTrackerTest {
private final ArgumentCaptor<BroadcastReceiver> mBroadcastReceiverCaptor =
ArgumentCaptor.forClass(BroadcastReceiver.class);
- private StandardNetworkDetailsTracker createTestStandardNetworkDetailsTracker(
- String key) {
+ private StandardNetworkDetailsTracker createTestStandardNetworkDetailsTracker(String key) {
final Handler testHandler = new Handler(mTestLooper.getLooper());
return new StandardNetworkDetailsTracker(mMockLifecycle, mMockContext,
@@ -102,9 +96,6 @@ public class StandardNetworkDetailsTrackerTest {
mTestLooper = new TestLooper();
- when(mMockWifiManager.isWpa3SaeSupported()).thenReturn(true);
- when(mMockWifiManager.isWpa3SuiteBSupported()).thenReturn(true);
- when(mMockWifiManager.isEnhancedOpenSupported()).thenReturn(true);
when(mMockWifiManager.getScanResults()).thenReturn(new ArrayList<>());
when(mMockWifiManager.getWifiState()).thenReturn(WifiManager.WIFI_STATE_ENABLED);
when(mMockClock.millis()).thenReturn(START_MILLIS);
@@ -116,26 +107,22 @@ public class StandardNetworkDetailsTrackerTest {
* Tests that the key of the created WifiEntry matches the key passed into the constructor.
*/
@Test
- public void testGetWifiEntry_HasCorrectKey() throws Exception {
- final StandardWifiEntryKey key =
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_NONE);
+ public void testGetWifiEntry_HasCorrectKey() {
+ final String key = ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE);
- final StandardNetworkDetailsTracker tracker =
- createTestStandardNetworkDetailsTracker(key.toString());
+ final StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(key);
- assertThat(tracker.getWifiEntry().getKey()).isEqualTo(key.toString());
+ assertThat(tracker.getWifiEntry().getKey()).isEqualTo(key);
}
/**
* Tests that SCAN_RESULTS_AVAILABLE_ACTION updates the level of the entry.
*/
@Test
- public void testHandleOnStart_scanResultUpdaterUpdateCorrectly() throws Exception {
+ public void testHandleOnStart_scanResultUpdaterUpdateCorrectly() {
final ScanResult chosen = buildScanResult("ssid", "bssid", START_MILLIS);
- final StandardWifiEntryKey key =
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_NONE);
- final StandardNetworkDetailsTracker tracker =
- createTestStandardNetworkDetailsTracker(key.toString());
+ final String key = ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE);
+ final StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(key);
final ScanResult other = buildScanResult("ssid2", "bssid", START_MILLIS, -50 /* rssi */);
when(mMockWifiManager.getScanResults()).thenReturn(Collections.singletonList(other));
@@ -151,13 +138,11 @@ public class StandardNetworkDetailsTrackerTest {
* Tests that SCAN_RESULTS_AVAILABLE_ACTION updates the level of the entry.
*/
@Test
- public void testScanResultsAvailableAction_updates_getLevel() throws Exception {
+ public void testScanResultsAvailableAction_updates_getLevel() {
// Starting without any scans available should make level WIFI_LEVEL_UNREACHABLE
final ScanResult scan = buildScanResult("ssid", "bssid", START_MILLIS, -50 /* rssi */);
- final StandardWifiEntryKey key =
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_NONE);
- final StandardNetworkDetailsTracker tracker =
- createTestStandardNetworkDetailsTracker(key.toString());
+ final String key = ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE);
+ final StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(key);
tracker.onStart();
verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
@@ -191,12 +176,10 @@ public class StandardNetworkDetailsTrackerTest {
* Tests that CONFIGURED_NETWORKS_CHANGED_ACTION updates the isSaved() value of the entry.
*/
@Test
- public void testConfiguredNetworksChangedAction_updates_isSaved() throws Exception {
+ public void testConfiguredNetworksChangedAction_updates_isSaved() {
// Initialize with no config. isSaved() should return false.
- final StandardWifiEntryKey key =
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_NONE);
- final StandardNetworkDetailsTracker tracker =
- createTestStandardNetworkDetailsTracker(key.toString());
+ final String key = ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE);
+ final StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(key);
tracker.onStart();
verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
@@ -206,21 +189,24 @@ public class StandardNetworkDetailsTrackerTest {
assertThat(wifiEntry.isSaved()).isFalse();
- // Add a config and send a broadcast. isSaved() should return true.
+ // Add a config via broadcast. isSaved() should return true.
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"" + "ssid" + "\"";
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
+
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, config)
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_ADDED));
assertThat(wifiEntry.isSaved()).isTrue();
- // Remove the config and send a broadcast. isSaved() should be false.
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.emptyList());
+ // Remove the config via broadcast. isSaved() should be false.
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, config)
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_REMOVED));
assertThat(wifiEntry.isSaved()).isFalse();
}
@@ -230,15 +216,13 @@ public class StandardNetworkDetailsTrackerTest {
* the scan results are still valid.
*/
@Test
- public void testWifiStateChanged_disabled_clearsLevel() throws Exception {
+ public void testWifiStateChanged_disabled_clearsLevel() {
// Start with scan result and wifi state enabled. Level should not be unreachable.
final ScanResult scan = buildScanResult("ssid", "bssid", START_MILLIS, -50 /* rssi */);
- final StandardWifiEntryKey key =
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_NONE);
+ final String key = ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE);
when(mMockWifiManager.getScanResults()).thenReturn(Collections.singletonList(scan));
- final StandardNetworkDetailsTracker tracker =
- createTestStandardNetworkDetailsTracker(key.toString());
+ final StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(key);
tracker.onStart();
verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
any(), any(), any());
@@ -255,42 +239,4 @@ public class StandardNetworkDetailsTrackerTest {
assertThat(wifiEntry.getLevel()).isEqualTo(WIFI_LEVEL_UNREACHABLE);
}
-
- @Test
- public void testSecurityTargeting_pskScansWithSaeConfig_correspondsToNewNetworkTargeting() {
- final String ssid = "ssid";
- final WifiConfiguration config = buildWifiConfiguration(ssid);
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
- final ScanResult scan = buildScanResult(ssid, "bssid", START_MILLIS, -50 /* rssi */);
- scan.capabilities = "[PSK]";
- when(mMockWifiManager.getScanResults()).thenReturn(Collections.singletonList(scan));
-
- // Start without targeting new networks
- StandardNetworkDetailsTracker tracker = createTestStandardNetworkDetailsTracker(
- ssidAndSecurityTypeToStandardWifiEntryKey(ssid, SECURITY_TYPE_PSK).toString());
- tracker.onStart();
- mTestLooper.dispatchAll();
-
- // WifiEntry should correspond to the saved config
- WifiEntry wifiEntry = tracker.getWifiEntry();
-// assertThat(wifiEntry.getSecurityTypes().size()).isEqualTo(1);
- assertThat(wifiEntry.getSecurityTypes().get(0)).isEqualTo(WifiInfo.SECURITY_TYPE_SAE);
- assertThat(wifiEntry.getLevel()).isEqualTo(WIFI_LEVEL_UNREACHABLE);
-
- // Now target new networks as if we got the key from WifiPickerTracker
- tracker = createTestStandardNetworkDetailsTracker(
- ssidAndSecurityTypeToStandardWifiEntryKey(ssid, SECURITY_TYPE_PSK,
- true /* isTargetingNewNetworks */).toString());
- tracker.onStart();
- mTestLooper.dispatchAll();
-
- // WifiEntry should correspond to the unsaved scan
- wifiEntry = tracker.getWifiEntry();
-// assertThat(wifiEntry.getSecurityTypes().size()).isEqualTo(1);
- assertThat(wifiEntry.getSecurityTypes().get(0)).isEqualTo(SECURITY_TYPE_PSK);
- assertThat(wifiEntry.getLevel()).isNotEqualTo(WIFI_LEVEL_UNREACHABLE);
-
- }
}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardWifiEntryTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardWifiEntryTest.java
index 80aad2a8b..b9a0ca12b 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardWifiEntryTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/StandardWifiEntryTest.java
@@ -21,19 +21,17 @@ import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_PERMANENTLY_DISABLED;
import static android.net.wifi.WifiConfiguration.NetworkSelectionStatus.NETWORK_SELECTION_TEMPORARY_DISABLED;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_EAP;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_OPEN;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_OWE;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_PSK;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_SAE;
-import static android.net.wifi.WifiInfo.SECURITY_TYPE_WEP;
-
-import static com.android.wifitrackerlib.StandardWifiEntry.ScanResultKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
-import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityTypeToStandardWifiEntryKey;
+
+import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.wifiConfigToStandardWifiEntryKey;
import static com.android.wifitrackerlib.TestUtils.buildScanResult;
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_CONNECTED;
import static com.android.wifitrackerlib.WifiEntry.CONNECTED_STATE_DISCONNECTED;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_EAP;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_NONE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_OWE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_PSK;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_WEP;
import static com.android.wifitrackerlib.WifiEntry.SPEED_FAST;
import static com.android.wifitrackerlib.WifiEntry.SPEED_SLOW;
import static com.android.wifitrackerlib.WifiEntry.WIFI_LEVEL_UNREACHABLE;
@@ -63,22 +61,18 @@ import android.net.ScoredNetwork;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiConfiguration.NetworkSelectionStatus;
-import android.net.wifi.WifiEnterpriseConfig;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiNetworkScoreCache;
import android.os.Handler;
import android.os.test.TestLooper;
-import android.telephony.SubscriptionInfo;
-import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
import org.junit.Before;
import org.junit.Test;
-import org.mockito.ArgumentCaptor;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -95,7 +89,6 @@ public class StandardWifiEntryTest {
@Mock private WifiEntry.ConnectCallback mMockConnectCallback;
@Mock private WifiManager mMockWifiManager;
@Mock private ConnectivityManager mMockConnectivityManager;
- @Mock private SubscriptionManager mSubscriptionManager;
@Mock private WifiInfo mMockWifiInfo;
@Mock private NetworkInfo mMockNetworkInfo;
@Mock private Context mMockContext;
@@ -108,13 +101,6 @@ public class StandardWifiEntryTest {
@Before
public void setUp() {
- Utils.sFeatureFlagUtilsWrapper = new Utils.FeatureFlagUtilsWrapper() {
- @Override
- boolean isProviderModelEnabled(Context context) {
- return false;
- }
- };
-
MockitoAnnotations.initMocks(this);
mTestLooper = new TestLooper();
@@ -124,9 +110,6 @@ public class StandardWifiEntryTest {
when(mMockWifiInfo.getRssi()).thenReturn(WifiInfo.INVALID_RSSI);
when(mMockNetworkInfo.getDetailedState()).thenReturn(
NetworkInfo.DetailedState.DISCONNECTED);
- when(mMockWifiManager.isWpa3SaeSupported()).thenReturn(true);
- when(mMockWifiManager.isEnhancedOpenSupported()).thenReturn(true);
- when(mMockWifiManager.isWpa3SuiteBSupported()).thenReturn(true);
when(mMockWifiManager.calculateSignalLevel(GOOD_RSSI))
.thenReturn(GOOD_LEVEL);
when(mMockWifiManager.calculateSignalLevel(OKAY_RSSI))
@@ -137,9 +120,22 @@ public class StandardWifiEntryTest {
.thenReturn(mMockNetworkScoreManager);
when(mMockScoreCache.getScoredNetwork((ScanResult) any())).thenReturn(mMockScoredNetwork);
when(mMockScoreCache.getScoredNetwork((NetworkKey) any())).thenReturn(mMockScoredNetwork);
+ }
- when(mMockContext.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE))
- .thenReturn(mSubscriptionManager);
+ /**
+ * Tests that constructing with an empty list of scans throws an exception
+ */
+ @Test
+ public void testConstructor_emptyScanList_throwsException() {
+ try {
+ new StandardWifiEntry(mMockContext, mTestHandler,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ new ArrayList<>(), mMockWifiManager, mMockScoreCache,
+ false /* forSavedNetworksPage */);
+ fail("Empty scan list should have thrown exception");
+ } catch (IllegalArgumentException e) {
+ // Test succeeded
+ }
}
/**
@@ -149,8 +145,8 @@ public class StandardWifiEntryTest {
public void testConstructor_mismatchedSsids_throwsException() {
try {
new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(
buildScanResult("ssid0", "bssid0", 0, GOOD_RSSI),
buildScanResult("ssid1", "bssid1", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
@@ -166,8 +162,8 @@ public class StandardWifiEntryTest {
@Test
public void testConstructor_scanResults_setsBestLevel() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(
buildScanResult("ssid", "bssid0", 0, GOOD_RSSI),
buildScanResult("ssid", "bssid1", 0, OKAY_RSSI),
buildScanResult("ssid", "bssid2", 0, BAD_RSSI)),
@@ -177,24 +173,21 @@ public class StandardWifiEntryTest {
}
/**
- * Tests that the security is set to the security capabilities of the scan results if
- * the entry is targeting new networks.
+ * Tests that the security is set to the security capabilities of the scan
*/
@Test
- public void testConstructor_targetingNewSecurity_scanResultsSetSecurity() {
+ public void testConstructor_scanResults_setsSecurity() {
final ScanResult unsecureScan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
final ScanResult secureScan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
- secureScan.capabilities = "EAP/SHA1";
+ secureScan.capabilities = "EAP";
final StandardWifiEntry unsecureEntry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN,
- true /* isTargetingNewNetworks */),
- null, Arrays.asList(unsecureScan), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(unsecureScan), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
final StandardWifiEntry secureEntry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP,
- true /* isTargetingNewNetworks */),
- null, Arrays.asList(secureScan), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ Arrays.asList(secureScan), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
assertThat(unsecureEntry.getSecurity()).isEqualTo(WifiEntry.SECURITY_NONE);
@@ -207,8 +200,8 @@ public class StandardWifiEntryTest {
@Test
public void testUpdateScanResultInfo_mismatchedSsids_throwsException() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid0", SECURITY_TYPE_EAP),
- null, Arrays.asList(buildScanResult("ssid0", "bssid0", 0, GOOD_RSSI)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid0", SECURITY_EAP),
+ Arrays.asList(buildScanResult("ssid0", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
try {
@@ -226,8 +219,8 @@ public class StandardWifiEntryTest {
@Test
public void testUpdateScanResultInfo_notifiesListener() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(buildScanResult("ssid", "bssid", 0)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(buildScanResult("ssid", "bssid", 0)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
entry.setListener(mMockListener);
@@ -243,8 +236,8 @@ public class StandardWifiEntryTest {
@Test
public void testUpdateScanResultInfo_updatesLevel() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(buildScanResult("ssid", "bssid", 0, BAD_RSSI)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(buildScanResult("ssid", "bssid", 0, BAD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.getLevel()).isEqualTo(BAD_LEVEL);
@@ -260,9 +253,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.getTitle()).isEqualTo("ssid");
}
@@ -273,9 +265,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.getSecurity()).isEqualTo(WifiEntry.SECURITY_EAP);
}
@@ -286,14 +277,13 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
final WifiConfiguration config2 = new WifiConfiguration(config);
config2.SSID = "\"ssid2\"";
try {
- entry.updateConfig(Collections.singletonList(config2));
+ entry.updateConfig(config2);
fail("Updating with wrong SSID config should throw exception");
} catch (IllegalArgumentException e) {
// Test Succeeded
@@ -304,16 +294,15 @@ public class StandardWifiEntryTest {
public void testUpdateConfig_mismatchedSecurity_throwsException() {
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
+ config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_WEP);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_WEP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
final WifiConfiguration config2 = new WifiConfiguration(config);
config2.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
try {
- entry.updateConfig(Collections.singletonList(config2));
+ entry.updateConfig(config2);
fail("Updating with wrong security config should throw exception");
} catch (IllegalArgumentException e) {
// Test Succeeded
@@ -323,10 +312,10 @@ public class StandardWifiEntryTest {
@Test
public void testUpdateConfig_unsavedToSaved() {
final ScanResult scan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
- scan.capabilities = "EAP/SHA1";
+ scan.capabilities = "EAP";
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- null, Arrays.asList(scan), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ Arrays.asList(scan), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
assertThat(entry.isSaved()).isFalse();
@@ -335,7 +324,7 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
config.networkId = 1;
- entry.updateConfig(Collections.singletonList(config));
+ entry.updateConfig(config);
assertThat(entry.isSaved()).isTrue();
}
@@ -347,9 +336,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.networkId = 1;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.isSaved()).isTrue();
@@ -365,9 +353,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.networkId = 1;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
when(mMockWifiInfo.getNetworkId()).thenReturn(1);
when(mMockWifiInfo.getRssi()).thenReturn(GOOD_RSSI);
when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
@@ -385,9 +372,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.networkId = 1;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
when(mMockWifiInfo.getNetworkId()).thenReturn(2);
when(mMockWifiInfo.getRssi()).thenReturn(-50);
when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
@@ -402,13 +388,13 @@ public class StandardWifiEntryTest {
public void testConnect_savedNetwork_usesSavedConfig() {
final ScanResult scan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(scan), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(scan), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
config.networkId = 1;
- entry.updateConfig(Collections.singletonList(config));
+ entry.updateConfig(config);
entry.connect(null /* ConnectCallback */);
@@ -416,33 +402,10 @@ public class StandardWifiEntryTest {
}
@Test
- public void testConnect_savedNetwork_usesSavedConfig_withOutSim() {
- final ScanResult scan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
- final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- null, Arrays.asList(scan), mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = 1;
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- config.enterpriseConfig.setEapMethod(WifiEnterpriseConfig.Eap.SIM);
- config.enterpriseConfig.setPhase2Method(WifiEnterpriseConfig.Phase2.NONE);
- entry.updateConfig(Collections.singletonList(config));
- when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn(null);
-
- entry.setListener(mMockListener);
- entry.connect(mMockConnectCallback);
- mTestLooper.dispatchAll();
- verify(mMockConnectCallback, times(1))
- .onConnectResult(WifiEntry.ConnectCallback.CONNECT_STATUS_FAILURE_SIM_ABSENT);
- }
-
- @Test
public void testConnect_openNetwork_callsConnect() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
entry.connect(null /* ConnectCallback */);
@@ -455,8 +418,8 @@ public class StandardWifiEntryTest {
final ScanResult secureScan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
secureScan.capabilities = "PSK";
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- null, Arrays.asList(secureScan), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_PSK),
+ Arrays.asList(secureScan), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
entry.setListener(mMockListener);
@@ -474,15 +437,14 @@ public class StandardWifiEntryTest {
config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
config.SSID = "\"ssid\"";
config.networkId = 1;
- config.macRandomizationSetting = WifiConfiguration.RANDOMIZATION_AUTO;
+ config.macRandomizationSetting = WifiConfiguration.RANDOMIZATION_PERSISTENT;
WifiConfiguration spyConfig = spy(config);
when(spyConfig.getRandomizedMacAddress())
.thenReturn(MacAddress.fromString(randomizedMac));
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(spyConfig), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ spyConfig, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
final String macAddress = entry.getMacAddress();
@@ -499,9 +461,8 @@ public class StandardWifiEntryTest {
config.macRandomizationSetting = WifiConfiguration.RANDOMIZATION_NONE;
when(mMockWifiManager.getFactoryMacAddresses()).thenReturn(new String[]{factoryMac});
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
final String macAddress = entry.getMacAddress();
@@ -509,33 +470,6 @@ public class StandardWifiEntryTest {
}
@Test
- public void testGetMacAddress_wifiInfoAvailable_usesWifiInfoMacAddress() {
- final int networkId = 1;
- final String factoryMac = "01:23:45:67:89:ab";
- final String wifiInfoMac = "11:23:45:67:89:ab";
-
- final NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
-
- when(mMockWifiInfo.getNetworkId()).thenReturn(networkId);
- when(mMockWifiInfo.getMacAddress()).thenReturn(wifiInfoMac);
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = networkId;
- config.macRandomizationSetting = WifiConfiguration.RANDOMIZATION_NONE;
- when(mMockWifiManager.getFactoryMacAddresses()).thenReturn(new String[]{factoryMac});
- final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- entry.updateConnectionInfo(mMockWifiInfo, networkInfo);
-
- assertThat(entry.getMacAddress()).isEqualTo(wifiInfoMac);
- }
-
- @Test
public void testCanShare_securityCanShare_shouldReturnTrue() {
final StandardWifiEntry pskWifiEntry =
getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_PSK);
@@ -560,8 +494,7 @@ public class StandardWifiEntryTest {
final StandardWifiEntry eapWifiEntry =
getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_EAP);
final StandardWifiEntry eapSuiteBWifiEntry =
- getSavedStandardWifiEntry(
- WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
+ getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_EAP_SUITE_B);
assertThat(eapWifiEntry.canShare()).isFalse();
assertThat(eapSuiteBWifiEntry.canShare()).isFalse();
@@ -574,8 +507,8 @@ public class StandardWifiEntryTest {
pskScanResult.capabilities = "PSK";
final StandardWifiEntry pskWifiEntry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey(pskScanResult.SSID, SECURITY_TYPE_PSK),
- null, Arrays.asList(pskScanResult), mMockWifiManager, mMockScoreCache,
+ ssidAndSecurityToStandardWifiEntryKey(pskScanResult.SSID, SECURITY_PSK),
+ Arrays.asList(pskScanResult), mMockWifiManager, mMockScoreCache,
false /* forSavedNetworksPage */);
assertThat(pskWifiEntry.canEasyConnect()).isFalse();
@@ -603,8 +536,7 @@ public class StandardWifiEntryTest {
final StandardWifiEntry wpa2EnterpriseWifiEntry =
getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_EAP);
final StandardWifiEntry wpa3EnterpriseWifiEntry =
- getSavedStandardWifiEntry(
- WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
+ getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_EAP_SUITE_B);
final StandardWifiEntry oweWifiEntry =
getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_OWE);
@@ -622,9 +554,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.networkId = 1;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
when(mMockWifiInfo.getNetworkId()).thenReturn(1);
when(mMockWifiInfo.getRssi()).thenReturn(GOOD_RSSI);
when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
@@ -640,8 +571,8 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.setSecurityParams(wifiConfigurationSecureType);
return new StandardWifiEntry(mMockContext, mTestHandler,
- new StandardWifiEntryKey(config), Collections.singletonList(config), null,
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ wifiConfigToStandardWifiEntryKey(config),
+ config, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
}
@Test
@@ -653,13 +584,9 @@ public class StandardWifiEntryTest {
final Resources mockResources = mock(Resources.class);
when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
+ when(mockResources.getString(R.string.summary_separator)).thenReturn(summarySeparator);
+ when(mockResources.getStringArray(R.array.wifi_status)).thenReturn(wifiStatusArray);
final ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
.thenReturn(mockConnectivityManager);
@@ -672,211 +599,47 @@ public class StandardWifiEntryTest {
config.SSID = "\"ssid\"";
config.networkId = networkId;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE), config,
+ mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
entry.updateConnectionInfo(wifiInfo, networkInfo);
- entry.updateNetworkCapabilities(networkCapabilities);
- entry.setIsDefaultNetwork(true);
assertThat(entry.getSummary()).isEqualTo("Connected");
}
@Test
- public void testGetSummary_providerModelConnectedButNotDefault_doesNotShowConnected() {
- Utils.sFeatureFlagUtilsWrapper = new Utils.FeatureFlagUtilsWrapper() {
- @Override
- boolean isProviderModelEnabled(Context context) {
- return true;
- }
- };
- final int networkId = 1;
- final String summarySeparator = " / ";
- final String[] wifiStatusArray = new String[]{"", "Scanning", "Connecting",
- "Authenticating", "Obtaining IP address", "Connected"};
-
- final Resources mockResources = mock(Resources.class);
- when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
- final ConnectivityManager mockConnectivityManager = mock(ConnectivityManager.class);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mockConnectivityManager);
-
- final WifiInfo wifiInfo = new WifiInfo.Builder().setNetworkId(networkId).build();
- final NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
-
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = networkId;
- final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- entry.updateConnectionInfo(wifiInfo, networkInfo);
- entry.updateNetworkCapabilities(networkCapabilities);
- entry.setIsDefaultNetwork(false);
-
- assertThat(entry.getSummary()).isEqualTo("");
- }
-
- @Test
- public void testShouldShowXLevelIcon_unvalidatedOrNotDefault_returnsTrue() {
- final int networkId = 1;
- when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
- .thenReturn(mMockConnectivityManager);
- final NetworkCapabilities networkCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED).build();
- final WifiInfo wifiInfo = new WifiInfo.Builder().setNetworkId(networkId).build();
- final NetworkInfo networkInfo =
- new NetworkInfo(ConnectivityManager.TYPE_WIFI, 0 /* subtype */, "WIFI", "");
- networkInfo.setDetailedState(NetworkInfo.DetailedState.CONNECTED, "", "");
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = networkId;
-
- final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(config), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
-
- // Disconnected should return false;
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(false);
-
- // Not validated, Not Default
- entry.updateConnectionInfo(wifiInfo, networkInfo);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
-
- // Not Validated, Default
- entry.setIsDefaultNetwork(true);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
-
- // Validated, Default
- entry.updateNetworkCapabilities(networkCapabilities);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(false);
-
- // Validated, Not Default
- entry.setIsDefaultNetwork(false);
-
- assertThat(entry.shouldShowXLevelIcon()).isEqualTo(true);
- }
-
- @Test
- public void testGetSecurityString_pskAndSae_getWpaWpa2Wpa3Personal() {
- final String wifiSecurityShortWpaWpa2Wpa3 = "WPA/WPA2/WPA3";
+ public void testGetSecurityString_pskTypeWpa2_getWpa2() {
+ final StandardWifiEntry entry =
+ getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_PSK);
+ final ScanResult bestScanResult = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
+ bestScanResult.capabilities = "RSN-PSK";
+ final String wifiSecurityShortWpa2Wpa3 = "WPA2/WPA3";
final Resources mockResources = mock(Resources.class);
when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_wifi_security_short_wpa_wpa2_wpa3))
- .thenReturn(wifiSecurityShortWpaWpa2Wpa3);
-
- WifiConfiguration pskConfig = new WifiConfiguration();
- pskConfig.SSID = "\"ssid\"";
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- WifiConfiguration saeConfig = new WifiConfiguration();
- saeConfig.SSID = "\"ssid\"";
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
-
- ScanResult pskScan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- pskScan.capabilities = "PSK";
- ScanResult saeScan = buildScanResult("ssid", "bssid0", 0, BAD_RSSI);
- saeScan.capabilities = "SAE";
+ when(mockResources.getString(R.string.wifi_security_short_wpa2_wpa3))
+ .thenReturn(wifiSecurityShortWpa2Wpa3);
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- Arrays.asList(pskConfig, saeConfig), Arrays.asList(pskScan, saeScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ entry.updateScanResultInfo(Arrays.asList(bestScanResult));
assertThat(entry.getSecurityString(true /* concise */))
- .isEqualTo(wifiSecurityShortWpaWpa2Wpa3);
+ .isEqualTo(wifiSecurityShortWpa2Wpa3);
}
@Test
- public void testGetSecurityString_connected_getConnectionSecurityType() {
- final String wifiSecurityShortWpaWpa2 = "WPA/WPA2";
- final String wifiSecurityShortWpa3 = "WPA3";
- final Resources mockResources = mock(Resources.class);
- when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_wifi_security_short_wpa_wpa2))
- .thenReturn(wifiSecurityShortWpaWpa2);
- when(mockResources.getString(R.string.wifitrackerlib_wifi_security_short_sae))
- .thenReturn(wifiSecurityShortWpa3);
-
- WifiConfiguration pskConfig = new WifiConfiguration();
- pskConfig.networkId = 1;
- pskConfig.SSID = "\"ssid\"";
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- WifiConfiguration saeConfig = new WifiConfiguration();
- saeConfig.networkId = 1;
- saeConfig.SSID = "\"ssid\"";
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
-
- ScanResult pskScan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- pskScan.capabilities = "PSK";
- ScanResult saeScan = buildScanResult("ssid", "bssid0", 0, BAD_RSSI);
- saeScan.capabilities = "SAE";
-
- when(mMockWifiInfo.getNetworkId()).thenReturn(1);
- when(mMockWifiInfo.getRssi()).thenReturn(GOOD_RSSI);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
-
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- Arrays.asList(pskConfig, saeConfig), Arrays.asList(pskScan, saeScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
-
- when(mMockWifiInfo.getCurrentSecurityType()).thenReturn(SECURITY_TYPE_PSK);
- entry.updateConnectionInfo(mMockWifiInfo, mMockNetworkInfo);
-
- // Both PSK and SAE in range, but connected to PSK so show PSK security string
- assertThat(entry.getSecurityString(true /* concise */))
- .isEqualTo(wifiSecurityShortWpaWpa2);
-
- when(mMockWifiInfo.getCurrentSecurityType()).thenReturn(SECURITY_TYPE_SAE);
- entry.updateConnectionInfo(mMockWifiInfo, mMockNetworkInfo);
-
- // Both PSK and SAE in range, but connected to SAE so show SAE security string
- assertThat(entry.getSecurityString(true /* concise */))
- .isEqualTo(wifiSecurityShortWpa3);
- }
-
- @Test
- public void testGetSecurityString_eapAndEapWpa3_getWpaWpa2Wpa3Enterprise() {
- final String wifiSecurityEapWpaWpa2Wpa3 = "WPA/WPA2/WPA3-Enterprise";
+ public void testGetSecurityString_eapTypeWpa_getWpa() {
+ final StandardWifiEntry entry =
+ getSavedStandardWifiEntry(WifiConfiguration.SECURITY_TYPE_EAP);
+ final ScanResult bestScanResult = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
+ bestScanResult.capabilities = "WPA-EAP";
+ final String wifiSecurityEapWpa = "WPA-Enterprise";
final Resources mockResources = mock(Resources.class);
when(mMockContext.getResources()).thenReturn(mockResources);
- when(mockResources.getString(R.string.wifitrackerlib_wifi_security_short_eap_wpa_wpa2_wpa3))
- .thenReturn(wifiSecurityEapWpaWpa2Wpa3);
+ when(mockResources.getString(R.string.wifi_security_eap_wpa))
+ .thenReturn(wifiSecurityEapWpa);
- WifiConfiguration eapConfig = new WifiConfiguration();
- eapConfig.SSID = "\"ssid\"";
- eapConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- WifiConfiguration eapWpa3Config = new WifiConfiguration();
- eapWpa3Config.SSID = "\"ssid\"";
- eapWpa3Config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
-
- final ScanResult eapScan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
- eapScan.capabilities = "[RSN-EAP/SHA1]";
- final ScanResult eapWpa3Scan = buildScanResult("ssid", "bssid", 0, GOOD_RSSI);
- eapWpa3Scan.capabilities = "[RSN-EAP/SHA256][MFPR][MFPC]";
-
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Arrays.asList(eapConfig, eapWpa3Config), Arrays.asList(eapScan, eapWpa3Scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ entry.updateScanResultInfo(Arrays.asList(bestScanResult));
- assertThat(entry.getSecurityString(true /* concise */))
- .isEqualTo(wifiSecurityEapWpaWpa2Wpa3);
+ assertThat(entry.getSecurityString(false /* concise */)).isEqualTo(wifiSecurityEapWpa);
}
@Test
@@ -892,12 +655,12 @@ public class StandardWifiEntryTest {
@Test
public void testCanSignIn_captivePortalCapability_returnsTrue() {
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(
buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
- NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL).build();
+ NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities();
+ captivePortalCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL);
entry.updateNetworkCapabilities(captivePortalCapabilities);
assertThat(entry.canSignIn()).isTrue();
@@ -908,12 +671,12 @@ public class StandardWifiEntryTest {
when(mMockContext.getSystemService(Context.CONNECTIVITY_SERVICE))
.thenReturn(mMockConnectivityManager);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Arrays.asList(
buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
- NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities.Builder()
- .addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL).build();
+ NetworkCapabilities captivePortalCapabilities = new NetworkCapabilities();
+ captivePortalCapabilities.addCapability(NetworkCapabilities.NET_CAPABILITY_CAPTIVE_PORTAL);
// Simulate user tapping on the network and receiving captive portal capabilities.
// This should trigger the captive portal app.
@@ -931,7 +694,7 @@ public class StandardWifiEntryTest {
@Test
public void testShouldEditBeforeConnect_nullWifiConfig_returnFalse() {
StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_EAP),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.shouldEditBeforeConnect()).isFalse();
@@ -944,18 +707,37 @@ public class StandardWifiEntryTest {
wifiConfig.SSID = "\"ssid\"";
wifiConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(wifiConfig), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ wifiConfig, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
assertThat(entry.shouldEditBeforeConnect()).isFalse();
// Test enhanced open networks.
wifiConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OWE),
- Collections.singletonList(wifiConfig), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_OWE),
+ wifiConfig, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+
+ assertThat(entry.shouldEditBeforeConnect()).isFalse();
+ }
+
+ @Test
+ public void testShouldEditBeforeConnect_securedNetwork_returnTrueIfNeverConnected() {
+ // Test never connected.
+ WifiConfiguration wifiConfig = spy(new WifiConfiguration());
+ wifiConfig.SSID = "\"ssid\"";
+ wifiConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
+ StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_PSK),
+ wifiConfig, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ NetworkSelectionStatus networkSelectionStatus =
+ spy(new NetworkSelectionStatus.Builder().build());
+ doReturn(networkSelectionStatus).when(wifiConfig).getNetworkSelectionStatus();
+
+ assertThat(entry.shouldEditBeforeConnect()).isTrue();
+
+ // Test ever connected.
+ doReturn(true).when(networkSelectionStatus).hasEverConnected();
assertThat(entry.shouldEditBeforeConnect()).isFalse();
}
@@ -967,9 +749,8 @@ public class StandardWifiEntryTest {
wifiConfig.SSID = "\"ssid\"";
wifiConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- Collections.singletonList(wifiConfig), null, mMockWifiManager, mMockScoreCache,
- false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_PSK),
+ wifiConfig, mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
NetworkSelectionStatus.Builder statusBuilder = new NetworkSelectionStatus.Builder();
NetworkSelectionStatus networkSelectionStatus = spy(statusBuilder.setNetworkSelectionStatus(
NETWORK_SELECTION_TEMPORARY_DISABLED)
@@ -1008,8 +789,8 @@ public class StandardWifiEntryTest {
public void testGetSpeed_cacheUpdated_speedValueChanges() {
when(mMockScoredNetwork.calculateBadge(GOOD_RSSI)).thenReturn(SPEED_FAST);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Collections.singletonList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Collections.singletonList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
when(mMockScoredNetwork.calculateBadge(GOOD_RSSI)).thenReturn(SPEED_SLOW);
@@ -1024,16 +805,14 @@ public class StandardWifiEntryTest {
when(mMockScoredNetwork.calculateBadge(GOOD_RSSI)).thenReturn(SPEED_FAST);
when(mMockWifiInfo.getNetworkId()).thenReturn(1);
when(mMockWifiInfo.getRssi()).thenReturn(BAD_RSSI);
- when(mMockWifiInfo.getSSID()).thenReturn("\"ssid\"");
- when(mMockWifiInfo.getBSSID()).thenReturn("01:23:45:67:89:ab");
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
config.networkId = 1;
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- Collections.singletonList(config), Collections.singletonList(
- buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)), mMockWifiManager,
- mMockScoreCache, false /* forSavedNetworksPage */);
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE), config,
+ mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ entry.updateScanResultInfo(Collections.singletonList(
+ buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)));
entry.updateConnectionInfo(mMockWifiInfo, mMockNetworkInfo);
@@ -1045,8 +824,8 @@ public class StandardWifiEntryTest {
when(mMockScoredNetwork.calculateBadge(BAD_RSSI)).thenReturn(SPEED_SLOW);
when(mMockScoredNetwork.calculateBadge(GOOD_RSSI)).thenReturn(SPEED_FAST);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Collections.singletonList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
+ ssidAndSecurityToStandardWifiEntryKey("ssid", SECURITY_NONE),
+ Collections.singletonList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
entry.updateScanResultInfo(Collections.singletonList(
@@ -1054,322 +833,4 @@ public class StandardWifiEntryTest {
assertThat(entry.getSpeed()).isEqualTo(SPEED_SLOW);
}
-
- @Test
- public void testCanConnect_nonEapMethod_returnTrueIfReachable() {
- ScanResult scan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- StandardWifiEntry spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN),
- null, Arrays.asList(buildScanResult("ssid", "bssid0", 0, GOOD_RSSI)),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
-
- scan.capabilities = "OWE";
- spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OWE),
- null, Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
-
- scan.capabilities = "WEP";
- spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_WEP),
- null, Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
-
- scan.capabilities = "PSK";
- spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK),
- null, Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
-
- scan.capabilities = "SAE";
- spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_SAE),
- null, Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
- }
-
- @Test
- public void testCanConnect_nonSimMethod_returnTrueIfReachable() {
- WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- WifiEnterpriseConfig mockWifiEnterpriseConfig = mock(WifiEnterpriseConfig.class);
- when(mockWifiEnterpriseConfig.isAuthenticationSimBased()).thenReturn(false);
- config.enterpriseConfig = mockWifiEnterpriseConfig;
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- ScanResult scan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- scan.capabilities = "EAP/SHA1";
- StandardWifiEntry spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
- }
-
- @Test
- public void testCanConnect_unknownCarrierId_returnTrueIfActiveSubscriptionAvailable() {
- WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.carrierId = TelephonyManager.UNKNOWN_CARRIER_ID;
- WifiEnterpriseConfig mockWifiEnterpriseConfig = mock(WifiEnterpriseConfig.class);
- when(mockWifiEnterpriseConfig.isAuthenticationSimBased()).thenReturn(true);
- config.enterpriseConfig = mockWifiEnterpriseConfig;
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- ScanResult scan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- scan.capabilities = "EAP/SHA1";
- StandardWifiEntry spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
- when(mSubscriptionManager.getActiveSubscriptionInfoList())
- .thenReturn(Arrays.asList(mock(SubscriptionInfo.class)));
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
- }
-
- @Test
- public void testCanConnect_specifiedCarrierIdMatched_returnTrue() {
- WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- int carrierId = 6;
- config.carrierId = carrierId;
- WifiEnterpriseConfig mockWifiEnterpriseConfig = mock(WifiEnterpriseConfig.class);
- when(mockWifiEnterpriseConfig.isAuthenticationSimBased()).thenReturn(true);
- config.enterpriseConfig = mockWifiEnterpriseConfig;
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- ScanResult scan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- scan.capabilities = "EAP/SHA1";
- StandardWifiEntry spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
- SubscriptionInfo mockSubscriptionInfo = mock(SubscriptionInfo.class);
- when(mockSubscriptionInfo.getCarrierId()).thenReturn(carrierId);
- when(mSubscriptionManager.getActiveSubscriptionInfoList())
- .thenReturn(Arrays.asList(mockSubscriptionInfo));
-
- assertThat(spyEntry.canConnect()).isEqualTo(true);
- }
-
- @Test
- public void testCanConnect_specifiedCarrierIdNotMatched_returnFalse() {
- WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- int specifiedCarrierId = 6;
- int simCarrierId = 7;
- config.carrierId = specifiedCarrierId;
- WifiEnterpriseConfig mockWifiEnterpriseConfig = mock(WifiEnterpriseConfig.class);
- when(mockWifiEnterpriseConfig.isAuthenticationSimBased()).thenReturn(true);
- config.enterpriseConfig = mockWifiEnterpriseConfig;
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- ScanResult scan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- scan.capabilities = "EAP/SHA1";
- StandardWifiEntry spyEntry = spy(new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP),
- Collections.singletonList(config), Collections.singletonList(scan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */));
- when(spyEntry.getConnectedState()).thenReturn(CONNECTED_STATE_DISCONNECTED);
- SubscriptionInfo mockSubscriptionInfo = mock(SubscriptionInfo.class);
- when(mockSubscriptionInfo.getCarrierId()).thenReturn(simCarrierId);
- when(mSubscriptionManager.getActiveSubscriptionInfoList())
- .thenReturn(Arrays.asList(mockSubscriptionInfo));
-
- assertThat(spyEntry.canConnect()).isEqualTo(false);
- }
-
-
- @Test
- public void testStandardWifiEntryKeyConstructor_fromConfig_matchesFromScanResultKey() {
- WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- assertThat(new StandardWifiEntryKey(config, true /* isTargetingNewNetworks */))
- .isEqualTo(new StandardWifiEntryKey(
- new ScanResultKey(config), true /* isTargetingNewNetworks */));
- }
-
- @Test
- public void testStandardWifiEntryKey_toAndFromJson_matches() throws Exception {
- WifiConfiguration mockConfig = spy(new WifiConfiguration());
- mockConfig.SSID = "\"ssid\"";
- when(mockConfig.getProfileKey()).thenReturn("profileKey");
- mockConfig.fromWifiNetworkSpecifier = true;
- final StandardWifiEntryKey entryKey = new StandardWifiEntryKey(
- mockConfig, true /* isTargetingNewNetworks */);
-
- assertThat(new StandardWifiEntryKey(entryKey.toString())).isEqualTo(entryKey);
- }
-
- @Test
- public void testGetLevel_multipleSecurities_configAndScansMatch() {
- WifiConfiguration pskConfig = new WifiConfiguration();
- pskConfig.SSID = "\"ssid\"";
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- WifiConfiguration saeConfig = new WifiConfiguration();
- saeConfig.SSID = "\"ssid\"";
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
-
- ScanResult pskScan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- pskScan.capabilities = "PSK";
- ScanResult saeScan = buildScanResult("ssid", "bssid0", 0, BAD_RSSI);
- saeScan.capabilities = "SAE";
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK,
- true /* isTargetingNewNetwork */),
- Collections.singletonList(pskConfig), Arrays.asList(pskScan, saeScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
-
- // Only PSK config, so use PSK scan level
- assertThat(entry.getLevel()).isEqualTo(GOOD_LEVEL);
- assertThat(entry.isSaved()).isTrue();
-
- entry.updateConfig(Collections.singletonList(saeConfig));
-
- // Only SAE config, so use SAE scan level
- assertThat(entry.getLevel()).isEqualTo(BAD_LEVEL);
- assertThat(entry.isSaved()).isTrue();
-
- entry.updateScanResultInfo(Collections.singletonList(pskScan));
-
- // SAE config and PSK scan do not match, so entry is unsaved with PSK scan level
- assertThat(entry.getLevel()).isEqualTo(GOOD_LEVEL);
- assertThat(entry.isSaved()).isFalse();
- }
-
- @Test
- public void testConnect_unsavedOpen_configuresOpenNetwork() {
- ScanResult openScan = buildScanResult("ssid", "bssid0", 0, GOOD_RSSI);
- openScan.capabilities = "";
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN,
- true /* isTargetingNewNetworks */),
- null, Collections.singletonList(openScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
- ArgumentCaptor<WifiConfiguration> connectConfigCaptor =
- ArgumentCaptor.forClass(WifiConfiguration.class);
-
- entry.connect(null);
- verify(mMockWifiManager).connect(connectConfigCaptor.capture(), any());
-
- assertThat(Utils.getSecurityTypesFromWifiConfiguration(connectConfigCaptor.getValue()))
- .isEqualTo(Collections.singletonList(SECURITY_TYPE_OPEN));
- }
-
- @Test
- public void testConnect_unsavedOwe_configuresOweNetwork() {
- ScanResult oweScan = buildScanResult("ssid", "bssid0", 0, BAD_RSSI);
- oweScan.capabilities = "OWE";
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OWE,
- true /* isTargetingNewNetworks */),
- null, Collections.singletonList(oweScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
- ArgumentCaptor<WifiConfiguration> connectConfigCaptor =
- ArgumentCaptor.forClass(WifiConfiguration.class);
-
- entry.connect(null);
- verify(mMockWifiManager).connect(connectConfigCaptor.capture(), any());
-
- assertThat(Utils.getSecurityTypesFromWifiConfiguration(connectConfigCaptor.getValue()))
- .isEqualTo(Collections.singletonList(SECURITY_TYPE_OWE));
- }
-
- @Test
- public void testConnect_unsavedOpenOwe_configuresOweAndOpenNetwork() {
- ScanResult oweTransitionScan = buildScanResult("ssid", "bssid0", 0, BAD_RSSI);
- oweTransitionScan.capabilities = "OWE_TRANSITION";
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN,
- true /* isTargetingNewNetworks */),
- null, Collections.singletonList(oweTransitionScan),
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
- ArgumentCaptor<WifiConfiguration> connectConfigCaptor =
- ArgumentCaptor.forClass(WifiConfiguration.class);
- ArgumentCaptor<WifiConfiguration> savedConfigCaptor =
- ArgumentCaptor.forClass(WifiConfiguration.class);
-
- entry.connect(null);
- verify(mMockWifiManager).connect(connectConfigCaptor.capture(), any());
- verify(mMockWifiManager).save(savedConfigCaptor.capture(), any());
-
- assertThat(Utils.getSecurityTypesFromWifiConfiguration(connectConfigCaptor.getValue()))
- .isEqualTo(Collections.singletonList(SECURITY_TYPE_OWE));
- assertThat(Utils.getSecurityTypesFromWifiConfiguration(savedConfigCaptor.getValue()))
- .isEqualTo(Collections.singletonList(SECURITY_TYPE_OPEN));
- }
-
- @Test
- public void testGetSecurity_openAndOwe_returnsOpen() {
- WifiConfiguration openConfig = new WifiConfiguration();
- openConfig.SSID = "\"ssid\"";
- openConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- WifiConfiguration oweConfig = new WifiConfiguration();
- oweConfig.SSID = "\"ssid\"";
- oweConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
-
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_OPEN,
- true /* isTargetingNewNetwork */),
- Arrays.asList(openConfig, oweConfig), null,
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
-
- assertThat(entry.getSecurity()).isEqualTo(WifiEntry.SECURITY_NONE);
- assertThat(entry.getWifiConfiguration()).isEqualTo(openConfig);
- }
-
- @Test
- public void testGetSecurity_pskAndSae_returnsPsk() {
- WifiConfiguration pskConfig = new WifiConfiguration();
- pskConfig.SSID = "\"ssid\"";
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- WifiConfiguration saeConfig = new WifiConfiguration();
- saeConfig.SSID = "\"ssid\"";
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
-
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_PSK,
- true /* isTargetingNewNetwork */),
- Arrays.asList(pskConfig, saeConfig), null,
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
-
- assertThat(entry.getSecurity()).isEqualTo(WifiEntry.SECURITY_PSK);
- assertThat(entry.getWifiConfiguration()).isEqualTo(pskConfig);
- }
-
- @Test
- public void testGetSecurity_eapAndEapWpa3_returnsEap() {
- WifiConfiguration eapConfig = new WifiConfiguration();
- eapConfig.SSID = "\"ssid\"";
- eapConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- WifiConfiguration eapWpa3Config = new WifiConfiguration();
- eapWpa3Config.SSID = "\"ssid\"";
- eapWpa3Config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
-
- StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- ssidAndSecurityTypeToStandardWifiEntryKey("ssid", SECURITY_TYPE_EAP,
- true /* isTargetingNewNetwork */),
- Arrays.asList(eapConfig, eapWpa3Config), null,
- mMockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
-
- assertThat(entry.getSecurity()).isEqualTo(WifiEntry.SECURITY_EAP);
- assertThat(entry.getWifiConfiguration()).isEqualTo(eapConfig);
- }
}
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java
index 73137feb2..5532a2304 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/UtilsTest.java
@@ -16,7 +16,8 @@
package com.android.wifitrackerlib;
-import static com.android.wifitrackerlib.StandardWifiEntry.StandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.ssidAndSecurityToStandardWifiEntryKey;
+import static com.android.wifitrackerlib.StandardWifiEntry.wifiConfigToStandardWifiEntryKey;
import static com.android.wifitrackerlib.TestUtils.buildScanResult;
import static com.android.wifitrackerlib.Utils.getAutoConnectDescription;
import static com.android.wifitrackerlib.Utils.getBestScanResultByLevel;
@@ -24,19 +25,17 @@ import static com.android.wifitrackerlib.Utils.getCarrierNameForSubId;
import static com.android.wifitrackerlib.Utils.getImsiProtectionDescription;
import static com.android.wifitrackerlib.Utils.getMeteredDescription;
import static com.android.wifitrackerlib.Utils.getNetworkSelectionDescription;
-import static com.android.wifitrackerlib.Utils.getSecurityTypesFromScanResult;
-import static com.android.wifitrackerlib.Utils.getSecurityTypesFromWifiConfiguration;
import static com.android.wifitrackerlib.Utils.getSubIdForConfig;
import static com.android.wifitrackerlib.Utils.isImsiPrivacyProtectionProvided;
import static com.android.wifitrackerlib.Utils.isSimPresent;
import static com.android.wifitrackerlib.Utils.linkifyAnnotation;
+import static com.android.wifitrackerlib.Utils.mapScanResultsToKey;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_NONE;
+import static com.android.wifitrackerlib.WifiEntry.SECURITY_PSK;
import static com.google.common.truth.Truth.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
@@ -77,8 +76,8 @@ import org.robolectric.annotation.Config;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
+import java.util.Map;
@Config(shadows = {ShadowSystem.class})
public class UtilsTest {
@@ -146,12 +145,57 @@ public class UtilsTest {
}
@Test
+ public void testMapScanResultsToKey_filtersUnsupportedCapabilities() {
+ final ScanResult wpa3SaeScan = new ScanResult();
+ final ScanResult wpa3SuiteBScan = new ScanResult();
+ final ScanResult oweScan = new ScanResult();
+ wpa3SaeScan.SSID = "wpa3Sae";
+ wpa3SaeScan.capabilities = "[SAE]";
+ wpa3SuiteBScan.SSID = "wpa3SuiteB";
+ wpa3SuiteBScan.capabilities = "[EAP_SUITE_B_192]";
+ oweScan.SSID = "owe";
+ oweScan.capabilities = "[OWE]";
+
+ final Map<String, List<ScanResult>> scanResultsByKey = mapScanResultsToKey(
+ Arrays.asList(wpa3SaeScan, wpa3SuiteBScan, oweScan),
+ false /* chooseSingleSecurity */,
+ null /* wifiConfigsByKey */,
+ false /* isWpa3SaeSupported */,
+ false /* isWpa3SuiteBSupported */,
+ false /* isEnhancedOpenSupported */);
+
+ assertThat(scanResultsByKey).isEmpty();
+ }
+
+ @Test
+ public void testMapScanResultsToKey_convertsTransitionModeScansToSupportedSecurity() {
+ final ScanResult wpa3TransitionScan = new ScanResult();
+ final ScanResult oweTransitionScan = new ScanResult();
+ wpa3TransitionScan.SSID = "wpa3Transition";
+ wpa3TransitionScan.capabilities = "[PSK+SAE]";
+ oweTransitionScan.SSID = "owe";
+ oweTransitionScan.capabilities = "[OWE_TRANSITION]";
+
+ final Map<String, List<ScanResult>> scanResultsByKey = mapScanResultsToKey(
+ Arrays.asList(wpa3TransitionScan, oweTransitionScan),
+ false /* chooseSingleSecurity */,
+ null /* wifiConfigsByKey */,
+ false /* isWpa3SaeSupported */,
+ false /* isWpa3SuiteBSupported */,
+ false /* isEnhancedOpenSupported */);
+
+ assertThat(scanResultsByKey.keySet()).containsExactly(
+ ssidAndSecurityToStandardWifiEntryKey(wpa3TransitionScan.SSID, SECURITY_PSK),
+ ssidAndSecurityToStandardWifiEntryKey(oweTransitionScan.SSID, SECURITY_NONE));
+ }
+
+ @Test
public void testGetAutoConnectDescription_autoJoinEnabled_returnEmptyString() {
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
config.allowAutojoin = true;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_auto_connect_disable))
+ when(mMockResources.getString(R.string.auto_connect_disable))
.thenReturn(LABEL_AUTO_CONNECTION_DISABLED);
final String autoConnectDescription = getAutoConnectDescription(mMockContext, entry);
@@ -165,7 +209,7 @@ public class UtilsTest {
config.SSID = "\"ssid\"";
config.allowAutojoin = false;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_auto_connect_disable))
+ when(mMockResources.getString(R.string.auto_connect_disable))
.thenReturn(LABEL_AUTO_CONNECTION_DISABLED);
final String autoConnectDescription = getAutoConnectDescription(mMockContext, entry);
@@ -192,8 +236,7 @@ public class UtilsTest {
config.SSID = "\"ssid\"";
config.meteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_metered_label))
- .thenReturn(LABEL_METERED);
+ when(mMockResources.getString(R.string.wifi_metered_label)).thenReturn(LABEL_METERED);
final String meteredDescription = getMeteredDescription(mMockContext, entry);
@@ -208,8 +251,7 @@ public class UtilsTest {
config.meteredHint = true;
config.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NONE;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_metered_label))
- .thenReturn(LABEL_METERED);
+ when(mMockResources.getString(R.string.wifi_metered_label)).thenReturn(LABEL_METERED);
final String meteredDescription = getMeteredDescription(mMockContext, entry);
@@ -223,8 +265,7 @@ public class UtilsTest {
config.meteredHint = true;
config.meteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_metered_label))
- .thenReturn(LABEL_METERED);
+ when(mMockResources.getString(R.string.wifi_metered_label)).thenReturn(LABEL_METERED);
final String meteredDescription = getMeteredDescription(mMockContext, entry);
@@ -238,8 +279,7 @@ public class UtilsTest {
config.meteredHint = true;
config.meteredOverride = WifiConfiguration.METERED_OVERRIDE_NOT_METERED;
final StandardWifiEntry entry = getStandardWifiEntry(config);
- when(mMockResources.getString(R.string.wifitrackerlib_wifi_unmetered_label))
- .thenReturn(LABEL_UNMETERED);
+ when(mMockResources.getString(R.string.wifi_unmetered_label)).thenReturn(LABEL_UNMETERED);
final String meteredDescription = getMeteredDescription(mMockContext, entry);
@@ -375,24 +415,6 @@ public class UtilsTest {
}
@Test
- public void testLinkifyAnnotation_annotationWithEmptyUriString_returnOriginalText() {
- final String annotationId = "url";
- final CharSequence testText = "test text ";
- final CharSequence testLink = "Learn More";
- final CharSequence expectedText = "test text Learn More";
- final SpannableStringBuilder builder = new SpannableStringBuilder(testText);
- builder.append(testLink, new Annotation("key", annotationId),
- Spanned.SPAN_INCLUSIVE_INCLUSIVE);
-
- final CharSequence output = linkifyAnnotation(mMockContext, builder, annotationId, "");
-
- final SpannableString outputSpannableString = new SpannableString(output);
- assertEquals(output.toString(), expectedText.toString());
- assertEquals(outputSpannableString.getSpans(0, outputSpannableString.length(),
- ClickableSpan.class).length, 0);
- }
-
- @Test
public void testGetNetworkSelectionDescription_disabledWrongPassword_showsWrongPasswordLabel() {
String expected = " (NETWORK_SELECTION_TEMPORARY_DISABLED 1:02:03) "
+ "NETWORK_SELECTION_DISABLED_BY_WRONG_PASSWORD=2";
@@ -412,90 +434,11 @@ public class UtilsTest {
assertThat(getNetworkSelectionDescription(wifiConfig)).isEqualTo(expected);
}
- @Test
- public void testGetSecurityTypeFromWifiConfiguration_returnsCorrectSecurityTypes() {
- for (int securityType = WifiInfo.SECURITY_TYPE_OPEN;
- securityType <= WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE; securityType++) {
- WifiConfiguration config = new WifiConfiguration();
- config.setSecurityParams(securityType);
- if (securityType == WifiInfo.SECURITY_TYPE_WEP) {
- config.wepKeys = new String[]{"key"};
- }
- if (securityType == WifiInfo.SECURITY_TYPE_EAP) {
- assertThat(getSecurityTypesFromWifiConfiguration(config))
- .containsExactly(
- WifiInfo.SECURITY_TYPE_EAP,
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- } else {
- assertThat(getSecurityTypesFromWifiConfiguration(config))
- .containsExactly(securityType);
- }
- }
- }
-
- @Test
- public void testGetSecurityTypesFromScanResult_returnsCorrectSecurityTypes() {
- ScanResult scanResult = new ScanResult();
-
- scanResult.capabilities = "";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_OPEN);
-
- scanResult.capabilities = "OWE";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_OWE);
-
- scanResult.capabilities = "OWE_TRANSITION";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_OPEN, WifiInfo.SECURITY_TYPE_OWE);
-
- scanResult.capabilities = "WEP";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_WEP);
-
- scanResult.capabilities = "PSK";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_PSK);
-
- scanResult.capabilities = "SAE";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_SAE);
-
- scanResult.capabilities = "[PSK][SAE]";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_PSK, WifiInfo.SECURITY_TYPE_SAE);
-
- scanResult.capabilities = "[EAP/SHA1]";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_EAP);
-
- scanResult.capabilities = "[RSN-EAP/SHA1+EAP/SHA256][MFPC]";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_EAP, WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
-
- scanResult.capabilities = "[RSN-EAP/SHA256][MFPC][MFPR]";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
-
- scanResult.capabilities = "[RSN-SUITE_B_192][MFPR]";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT);
-
- scanResult.capabilities = "WAPI-PSK";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_WAPI_PSK);
-
- scanResult.capabilities = "WAPI-CERT";
- assertThat(getSecurityTypesFromScanResult(scanResult)).containsExactly(
- WifiInfo.SECURITY_TYPE_WAPI_CERT);
- }
-
-
private StandardWifiEntry getStandardWifiEntry(WifiConfiguration config) {
final WifiManager mockWifiManager = mock(WifiManager.class);
final StandardWifiEntry entry = new StandardWifiEntry(mMockContext, mTestHandler,
- new StandardWifiEntryKey(config), Collections.singletonList(config),
- null, mockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
+ wifiConfigToStandardWifiEntryKey(config), config,
+ mockWifiManager, mMockScoreCache, false /* forSavedNetworksPage */);
final WifiInfo mockWifiInfo = mock(WifiInfo.class);
final NetworkInfo mockNetworkInfo = mock(NetworkInfo.class);
diff --git a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java
index 858075e1c..feec984bf 100644
--- a/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java
+++ b/libs/WifiTrackerLib/tests/src/com/android/wifitrackerlib/WifiPickerTrackerTest.java
@@ -17,13 +17,10 @@
package com.android.wifitrackerlib;
import static com.android.wifitrackerlib.TestUtils.buildScanResult;
-import static com.android.wifitrackerlib.TestUtils.buildWifiConfiguration;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyInt;
-import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
@@ -32,10 +29,7 @@ import static org.mockito.Mockito.when;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
-import android.content.res.Resources;
import android.net.ConnectivityManager;
-import android.net.Network;
-import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.NetworkScoreManager;
import android.net.wifi.ScanResult;
@@ -47,8 +41,6 @@ import android.net.wifi.hotspot2.pps.Credential;
import android.net.wifi.hotspot2.pps.HomeSp;
import android.os.Handler;
import android.os.test.TestLooper;
-import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
import android.util.Pair;
import androidx.lifecycle.Lifecycle;
@@ -68,7 +60,6 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.stream.Collectors;
public class WifiPickerTrackerTest {
@@ -82,16 +73,12 @@ public class WifiPickerTrackerTest {
@Mock
private Context mMockContext;
@Mock
- private Resources mMockResources;
- @Mock
private WifiManager mMockWifiManager;
@Mock
private ConnectivityManager mMockConnectivityManager;
@Mock
private NetworkScoreManager mMockNetworkScoreManager;
@Mock
- private TelephonyManager mMockTelephonyManager;
- @Mock
private Clock mMockClock;
@Mock
private WifiPickerTracker.WifiPickerTrackerCallback mMockCallback;
@@ -99,19 +86,11 @@ public class WifiPickerTrackerTest {
private WifiInfo mMockWifiInfo;
@Mock
private NetworkInfo mMockNetworkInfo;
- @Mock
- private Network mMockNetwork;
private TestLooper mTestLooper;
private final ArgumentCaptor<BroadcastReceiver> mBroadcastReceiverCaptor =
ArgumentCaptor.forClass(BroadcastReceiver.class);
- private final ArgumentCaptor<ConnectivityManager.NetworkCallback>
- mNetworkCallbackCaptor =
- ArgumentCaptor.forClass(ConnectivityManager.NetworkCallback.class);
- private final ArgumentCaptor<ConnectivityManager.NetworkCallback>
- mDefaultNetworkCallbackCaptor =
- ArgumentCaptor.forClass(ConnectivityManager.NetworkCallback.class);
private WifiPickerTracker createTestWifiPickerTracker() {
final Handler testHandler = new Handler(mTestLooper.getLooper());
@@ -130,35 +109,20 @@ public class WifiPickerTrackerTest {
@Before
public void setUp() {
- Utils.sFeatureFlagUtilsWrapper = new Utils.FeatureFlagUtilsWrapper() {
- @Override
- boolean isProviderModelEnabled(Context context) {
- return false;
- }
- };
-
MockitoAnnotations.initMocks(this);
mTestLooper = new TestLooper();
when(mMockWifiManager.getScanResults()).thenReturn(new ArrayList<>());
when(mMockWifiManager.getConnectionInfo()).thenReturn(mMockWifiInfo);
- when(mMockWifiManager.getWifiState()).thenReturn(WifiManager.WIFI_STATE_ENABLED);
- when(mMockWifiManager.isWpa3SaeSupported()).thenReturn(true);
- when(mMockWifiManager.isWpa3SuiteBSupported()).thenReturn(true);
- when(mMockWifiManager.isEnhancedOpenSupported()).thenReturn(true);
when(mMockConnectivityManager.getNetworkInfo(any())).thenReturn(mMockNetworkInfo);
when(mMockClock.millis()).thenReturn(START_MILLIS);
when(mMockWifiInfo.getNetworkId()).thenReturn(WifiConfiguration.INVALID_NETWORK_ID);
when(mMockWifiInfo.getRssi()).thenReturn(WifiInfo.INVALID_RSSI);
when(mMockNetworkInfo.getDetailedState()).thenReturn(
NetworkInfo.DetailedState.DISCONNECTED);
- when(mMockContext.getResources()).thenReturn(mMockResources);
when(mMockContext.getSystemService(Context.NETWORK_SCORE_SERVICE))
.thenReturn(mMockNetworkScoreManager);
- when(mMockContext.getSystemService(Context.TELEPHONY_SERVICE))
- .thenReturn(mMockTelephonyManager);
- when(mMockResources.getString(anyInt())).thenReturn("");
}
/**
@@ -391,35 +355,6 @@ public class WifiPickerTrackerTest {
assertThat(wifiPickerTracker.getWifiEntries()).isEmpty();
}
- @Test
- public void testGetWifiEntries_differentSsidSameBssid_returnsDifferentEntries() {
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
-
- when(mMockWifiManager.getScanResults()).thenReturn(Arrays.asList(
- // Identical BSSID for 4 different SSIDs should return 4 entries.
- buildScanResult("ssid0", "bssid0", START_MILLIS),
- buildScanResult("ssid1", "bssid0", START_MILLIS),
- buildScanResult("ssid2", "bssid0", START_MILLIS),
- buildScanResult("ssid3", "bssid0", START_MILLIS),
- // Another identical BSSID for 4 different SSIDs should return 4 more entries.
- buildScanResult("ssid4", "bssid1", START_MILLIS),
- buildScanResult("ssid5", "bssid1", START_MILLIS),
- buildScanResult("ssid6", "bssid1", START_MILLIS),
- buildScanResult("ssid7", "bssid1", START_MILLIS),
- // Same SSID as the last for 2 different BSSIDs should not increase entries.
- buildScanResult("ssid7", "bssid2", START_MILLIS),
- buildScanResult("ssid7", "bssid3", START_MILLIS)));
-
-
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
-
- assertThat(wifiPickerTracker.getWifiEntries()).hasSize(8);
- }
-
/**
* Tests that a CONFIGURED_NETWORKS_CHANGED broadcast updates the correct WifiEntry from
* unsaved to saved.
@@ -441,11 +376,11 @@ public class WifiPickerTrackerTest {
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
- mTestLooper.dispatchAll();
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, config)
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_ADDED));
assertThat(entry.isSaved()).isTrue();
}
@@ -459,7 +394,6 @@ public class WifiPickerTrackerTest {
final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
final WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"ssid\"";
- config.networkId = 1;
when(mMockWifiManager.getPrivilegedConfiguredNetworks())
.thenReturn(Collections.singletonList(config));
wifiPickerTracker.onStart();
@@ -475,10 +409,11 @@ public class WifiPickerTrackerTest {
assertThat(entry.isSaved()).isTrue();
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.emptyList());
mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
+ new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION)
+ .putExtra(WifiManager.EXTRA_WIFI_CONFIGURATION, config)
+ .putExtra(WifiManager.EXTRA_CHANGE_REASON,
+ WifiManager.CHANGE_REASON_REMOVED));
assertThat(entry.isSaved()).isFalse();
}
@@ -569,105 +504,6 @@ public class WifiPickerTrackerTest {
}
/**
- * Tests that the wifi state changing to something other than WIFI_STATE_ENABLED will update
- * getConnectedEntry() to return null.
- */
- @Test
- public void testGetConnectedEntry_wifiStateDisabled_returnsNull() {
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = 1;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
- when(mMockWifiManager.getScanResults()).thenReturn(Arrays.asList(
- buildScanResult("ssid", "bssid", START_MILLIS)));
- when(mMockWifiInfo.getNetworkId()).thenReturn(1);
- when(mMockWifiInfo.getRssi()).thenReturn(-50);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- mTestLooper.dispatchAll();
-
- when(mMockWifiManager.getWifiState()).thenReturn(WifiManager.WIFI_STATE_DISABLED);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.WIFI_STATE_CHANGED_ACTION));
-
- verify(mMockCallback, atLeastOnce()).onWifiEntriesChanged();
- assertThat(wifiPickerTracker.getConnectedWifiEntry()).isNull();
- }
-
- /**
- * Tests that a connected WifiEntry will return "Low quality" as the summary if Wifi is
- * validated but cell is the default route.
- */
- @Test
- public void testGetConnectedEntry_wifiValidatedCellDefault_isLowQuality() {
- final String summarySeparator = " / ";
- final String lowQuality = "Low quality";
- final String[] wifiStatusArray = new String[]{"", "Scanning", "Connecting",
- "Authenticating", "Obtaining IP address", "Connected"};
- when(mMockResources.getString(R.string.wifitrackerlib_summary_separator))
- .thenReturn(summarySeparator);
- when(mMockResources.getString(R.string.wifi_connected_low_quality)).thenReturn(lowQuality);
- when(mMockResources.getStringArray(R.array.wifitrackerlib_wifi_status))
- .thenReturn(wifiStatusArray);
-
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- final WifiConfiguration config = new WifiConfiguration();
- config.SSID = "\"ssid\"";
- config.networkId = 1;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
- when(mMockWifiManager.getScanResults()).thenReturn(Arrays.asList(
- buildScanResult("ssid", "bssid", START_MILLIS)));
- when(mMockWifiInfo.getNetworkId()).thenReturn(1);
- when(mMockWifiInfo.getRssi()).thenReturn(-50);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- when(mMockConnectivityManager.getNetworkInfo(any())).thenReturn(mMockNetworkInfo);
- wifiPickerTracker.onStart();
- verify(mMockConnectivityManager)
- .registerNetworkCallback(any(), mNetworkCallbackCaptor.capture(), any());
- verify(mMockConnectivityManager)
- .registerDefaultNetworkCallback(mDefaultNetworkCallbackCaptor.capture(), any());
- mTestLooper.dispatchAll();
-
- // Set cellular to be the default network
- mDefaultNetworkCallbackCaptor.getValue().onCapabilitiesChanged(mMockNetwork,
- new NetworkCapabilities.Builder()
- .addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR).build());
-
- // Trigger a validation callback for the non-primary Wifi network.
- WifiInfo nonPrimaryWifiInfo = Mockito.mock(WifiInfo.class);
- when(nonPrimaryWifiInfo.isPrimary()).thenReturn(false);
- when(nonPrimaryWifiInfo.makeCopy(anyLong())).thenReturn(nonPrimaryWifiInfo);
- NetworkCapabilities nonPrimaryCap = new NetworkCapabilities.Builder()
- .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
- .setTransportInfo(nonPrimaryWifiInfo)
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
- .build();
- mNetworkCallbackCaptor.getValue().onCapabilitiesChanged(mMockNetwork, nonPrimaryCap);
-
- // Non-primary Wifi network validation should be ignored.
- assertThat(wifiPickerTracker.getConnectedWifiEntry().getSummary()).isNotEqualTo(lowQuality);
-
- // Trigger a validation callback for the primary Wifi network.
- WifiInfo primaryWifiInfo = Mockito.mock(WifiInfo.class);
- when(primaryWifiInfo.isPrimary()).thenReturn(true);
- when(primaryWifiInfo.makeCopy(anyLong())).thenReturn(primaryWifiInfo);
- NetworkCapabilities primaryCap = new NetworkCapabilities.Builder()
- .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
- .setTransportInfo(primaryWifiInfo)
- .addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED)
- .build();
- mNetworkCallbackCaptor.getValue().onCapabilitiesChanged(mMockNetwork, primaryCap);
-
- // Cell default + primary network validation should trigger low quality
- assertThat(wifiPickerTracker.getConnectedWifiEntry().getSummary()).isEqualTo(lowQuality);
- }
-
- /**
* Tests that a PasspointWifiEntry is returned when Passpoint scans are visible.
*/
@Test
@@ -702,54 +538,6 @@ public class WifiPickerTrackerTest {
}
/**
- * Tests that the same PasspointWifiEntry from getWifiEntries() is returned when it becomes the
- * connected entry
- */
- @Test
- public void testGetWifiEntries_connectToPasspoint_returnsSamePasspointWifiEntry() {
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- final PasspointConfiguration passpointConfig = new PasspointConfiguration();
- final HomeSp homeSp = new HomeSp();
- homeSp.setFqdn("fqdn");
- homeSp.setFriendlyName("friendlyName");
- passpointConfig.setHomeSp(homeSp);
- passpointConfig.setCredential(new Credential());
- when(mMockWifiManager.getPasspointConfigurations())
- .thenReturn(Collections.singletonList(passpointConfig));
- final WifiConfiguration wifiConfig = spy(new WifiConfiguration());
- when(wifiConfig.getKey()).thenReturn(passpointConfig.getUniqueId());
- when(wifiConfig.isPasspoint()).thenReturn(true);
- wifiConfig.networkId = 1;
- final Map<Integer, List<ScanResult>> mapping = new HashMap<>();
- mapping.put(WifiManager.PASSPOINT_HOME_NETWORK, Collections.singletonList(
- buildScanResult("ssid", "bssid", START_MILLIS)));
- List<Pair<WifiConfiguration, Map<Integer, List<ScanResult>>>> allMatchingWifiConfigs =
- Collections.singletonList(new Pair<>(wifiConfig, mapping));
- when(mMockWifiManager.getAllMatchingWifiConfigs(any())).thenReturn(allMatchingWifiConfigs);
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(wifiConfig));
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- mTestLooper.dispatchAll();
- assertThat(wifiPickerTracker.getWifiEntries()).isNotEmpty();
- final WifiEntry entry = wifiPickerTracker.getWifiEntries().get(0);
-
- when(mMockWifiInfo.isPasspointAp()).thenReturn(true);
- when(mMockWifiInfo.getPasspointFqdn()).thenReturn("fqdn");
- when(mMockWifiInfo.getNetworkId()).thenReturn(1);
- when(mMockWifiInfo.getRssi()).thenReturn(-50);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION)
- .putExtra(WifiManager.EXTRA_NETWORK_INFO, mMockNetworkInfo));
-
- assertThat(wifiPickerTracker.getWifiEntries()).isEmpty();
- assertThat(wifiPickerTracker.getConnectedWifiEntry() == entry).isTrue();
-
- }
-
- /**
* Tests that a PasspointWifiEntry will disappear from getWifiEntries() once it is out of range.
*/
@Test
@@ -785,69 +573,7 @@ public class WifiPickerTrackerTest {
// getWifiEntries() should be empty now
assertThat(wifiPickerTracker.getWifiEntries()).isEmpty();
- }
-
- /**
- * Tests that multiple wifi entries are returned for multiple suggestions for the same network.
- */
- @Test
- public void testGetWifiEntries_multipleSuggestions_returnsMultipleEntries() {
- WifiConfiguration savedConfig = new WifiConfiguration();
- savedConfig.fromWifiNetworkSuggestion = false;
- savedConfig.SSID = "\"ssid\"";
- savedConfig.networkId = 1;
- WifiConfiguration suggestionConfig1 = new WifiConfiguration(savedConfig);
- suggestionConfig1.networkId = 2;
- suggestionConfig1.creatorName = "creator1";
- suggestionConfig1.carrierId = 1;
- suggestionConfig1.subscriptionId = 1;
- suggestionConfig1.fromWifiNetworkSuggestion = true;
- WifiConfiguration suggestionConfig2 = new WifiConfiguration(savedConfig);
- suggestionConfig2.networkId = 3;
- suggestionConfig1.creatorName = "creator2";
- suggestionConfig1.carrierId = 2;
- suggestionConfig1.subscriptionId = 2;
- suggestionConfig2.fromWifiNetworkSuggestion = true;
- // Initial entries
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(suggestionConfig1, suggestionConfig2));
- when(mMockWifiManager.getScanResults()).thenReturn(Collections.singletonList(
- buildScanResult("ssid", "bssid", START_MILLIS)));
- when(mMockWifiManager.getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(any()))
- .thenReturn(Arrays.asList(suggestionConfig1, suggestionConfig2));
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- mTestLooper.dispatchAll();
- // 2 suggestion entries, no unsaved entry
- assertThat(wifiPickerTracker.getWifiEntries().size()).isEqualTo(2);
- for (WifiEntry entry : wifiPickerTracker.getWifiEntries()) {
- assertThat(entry.getTitle()).isEqualTo("ssid");
- }
- assertThat(wifiPickerTracker.getWifiEntries().stream()
- .filter(WifiEntry::isSuggestion)
- .count()).isEqualTo(2);
-
- // Add a saved entry
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(savedConfig, suggestionConfig1, suggestionConfig2));
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
-
- // Saved entry should appear alongside suggestions
- assertThat(wifiPickerTracker.getWifiEntries().size()).isEqualTo(3);
- for (WifiEntry entry : wifiPickerTracker.getWifiEntries()) {
- assertThat(entry.getTitle()).isEqualTo("ssid");
- }
- assertThat(wifiPickerTracker.getWifiEntries().stream()
- .filter(WifiEntry::isSuggestion)
- .count())
- .isEqualTo(2);
- assertThat(wifiPickerTracker.getWifiEntries().stream()
- .filter(WifiEntry::isSaved)
- .count()).isEqualTo(1);
}
@Test
@@ -870,48 +596,7 @@ public class WifiPickerTrackerTest {
config.networkId = networkId;
config.allowedKeyManagement = new BitSet();
config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.SUITE_B_192);
- config.subscriptionId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
- when(config.isPasspoint()).thenReturn(true);
- when(config.getKey()).thenReturn(passpointConfig.getUniqueId());
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Collections.singletonList(config));
- when(mMockWifiInfo.isPasspointAp()).thenReturn(true);
- when(mMockWifiInfo.getNetworkId()).thenReturn(networkId);
- when(mMockWifiInfo.getPasspointFqdn()).thenReturn(fqdn);
- when(mMockWifiInfo.getRssi()).thenReturn(-50);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- mTestLooper.dispatchAll();
-
- verify(mMockCallback, atLeastOnce()).onWifiEntriesChanged();
- assertThat(wifiPickerTracker.getConnectedWifiEntry().getTitle()).isEqualTo(friendlyName);
- }
-
- @Test
- public void testGetConnectedEntry_passpointWithoutScans_returnsPasspointEntry() {
- final String fqdn = "fqdn";
- final String friendlyName = "friendlyName";
- final int networkId = 1;
- // Create a passpoint configuration to match with the current network
- final PasspointConfiguration passpointConfig = new PasspointConfiguration();
- final HomeSp homeSp = new HomeSp();
- homeSp.setFqdn(fqdn);
- homeSp.setFriendlyName(friendlyName);
- passpointConfig.setHomeSp(homeSp);
- passpointConfig.setCredential(new Credential());
- when(mMockWifiManager.getPasspointConfigurations())
- .thenReturn(Collections.singletonList(passpointConfig));
- // Create a wifi config to match the WifiInfo netId and unique id of the passpoint config
- final WifiConfiguration config = Mockito.mock(WifiConfiguration.class);
- config.SSID = "\"ssid\"";
- config.networkId = networkId;
- config.allowedKeyManagement = new BitSet();
- config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.SUITE_B_192);
- config.subscriptionId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
when(config.isPasspoint()).thenReturn(true);
when(config.getKey()).thenReturn(passpointConfig.getUniqueId());
when(mMockWifiManager.getPrivilegedConfiguredNetworks())
@@ -922,68 +607,17 @@ public class WifiPickerTrackerTest {
when(mMockWifiInfo.getRssi()).thenReturn(-50);
when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
+
wifiPickerTracker.onStart();
verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
any(), any(), any());
mTestLooper.dispatchAll();
- // Update with SCAN_RESULTS_AVAILABLE action while there are no scan results available yet.
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
- mTestLooper.dispatchAll();
-
verify(mMockCallback, atLeastOnce()).onWifiEntriesChanged();
- assertThat(wifiPickerTracker.getConnectedWifiEntry()).isNotNull();
assertThat(wifiPickerTracker.getConnectedWifiEntry().getTitle()).isEqualTo(friendlyName);
}
/**
- * Tests that getConnectedEntry will return the correct network request if there are multiple
- * active requests
- */
- @Test
- public void testGetConnectedEntry_multipleNetworkRequests_returnsConnectedRequest() {
- final WifiConfiguration requestConfig1 = new WifiConfiguration();
- requestConfig1.SSID = "\"ssid1\"";
- requestConfig1.networkId = 1;
- requestConfig1.fromWifiNetworkSpecifier = true;
- final WifiConfiguration requestConfig2 = new WifiConfiguration();
- requestConfig2.SSID = "\"ssid2\"";
- requestConfig2.networkId = 2;
- requestConfig2.fromWifiNetworkSpecifier = true;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(requestConfig1, requestConfig2));
- when(mMockWifiInfo.getNetworkId()).thenReturn(1);
- when(mMockWifiInfo.getRssi()).thenReturn(-50);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
-
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- mTestLooper.dispatchAll();
-
- // WifiInfo has network id 1, so the connected entry should correspond to request 1
- assertThat(wifiPickerTracker.getConnectedWifiEntry().getSsid()).isEqualTo("ssid1");
-
- when(mMockWifiInfo.getNetworkId()).thenReturn(2);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION)
- .putExtra(WifiManager.EXTRA_NETWORK_INFO, mMockNetworkInfo));
-
- // WifiInfo has network id 2, so the connected entry should correspond to request 2
- assertThat(wifiPickerTracker.getConnectedWifiEntry().getSsid()).isEqualTo("ssid2");
-
- when(mMockWifiInfo.getNetworkId()).thenReturn(-1);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.NETWORK_STATE_CHANGED_ACTION)
- .putExtra(WifiManager.EXTRA_NETWORK_INFO, mMockNetworkInfo));
-
- // WifiInfo matches no request configs, so the connected entry should be null
- assertThat(wifiPickerTracker.getConnectedWifiEntry()).isNull();
- }
-
- /**
* Tests that SCAN_RESULTS_AVAILABLE_ACTION calls WifiManager#getMatchingOsuProviders()
*/
@Test
@@ -1000,248 +634,4 @@ public class WifiPickerTrackerTest {
verify(mMockWifiManager, atLeastOnce()).getMatchingOsuProviders(any());
}
-
- /**
- * Tests that a connected MergedCarrierEntry is returned if the current WifiInfo has a matching
- * subscription id.
- */
- @Test
- public void testGetMergedCarrierEntry_wifiInfoHasMatchingSubId_entryIsConnected() {
- final int subId = 1;
- when(mMockWifiInfo.isCarrierMerged()).thenReturn(true);
- when(mMockWifiInfo.getSubscriptionId()).thenReturn(subId);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- mTestLooper.dispatchAll();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
-
- final Intent intent = new Intent(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
- intent.putExtra("subscription", subId);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext, intent);
-
- assertThat(wifiPickerTracker.getMergedCarrierEntry().getConnectedState())
- .isEqualTo(WifiEntry.CONNECTED_STATE_CONNECTED);
- }
-
- /**
- * Tests that getMergedCarrierEntry returns a new MergedCarrierEntry with the correct
- * subscription ID if the default subscription ID changes.
- */
- @Test
- public void testGetMergedCarrierEntry_subscriptionIdChanges_entryChanges() {
- final int subId1 = 1;
- final int subId2 = 2;
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- mTestLooper.dispatchAll();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- final Intent intent1 =
- new Intent(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
- intent1.putExtra("subscription", subId1);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext, intent1);
-
- final Intent intent2 =
- new Intent(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
- intent2.putExtra("subscription", subId2);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext, intent2);
-
- assertThat(wifiPickerTracker.getMergedCarrierEntry().getSubscriptionId())
- .isEqualTo(subId2);
- }
-
- /**
- * Tests that getWifiEntries returns separate WifiEntries for each security family for scans
- * with the same SSID
- */
- @Test
- public void testGetWifiEntries_sameSsidDifferentSecurity_entriesMergedBySecurityFamily() {
- final ArrayList scanList = new ArrayList();
- final String ssid = "ssid";
- final String bssid = "bssid";
- int bssidNum = 0;
- for (String capabilities : Arrays.asList(
- "",
- "[OWE]",
- "[OWE_TRANSITION]",
- "[WEP]",
- "[PSK]",
- "[SAE]",
- "[PSK][SAE]",
- "[EAP/SHA1]",
- "[RSN-EAP/SHA1+EAP/SHA256][MFPC]",
- "[RSN-EAP/SHA256][MFPC][MFPR]",
- "[RSN-SUITE_B_192][MFPR]"
- )) {
- final ScanResult scan = buildScanResult(ssid, bssid + bssidNum++, START_MILLIS);
- scan.capabilities = capabilities;
- scanList.add(scan);
- }
- when(mMockWifiManager.getScanResults()).thenReturn(scanList);
-
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- mTestLooper.dispatchAll();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
-
- // Open/OWE, PSK/SAE, EAP/EAP-WPA3 should be merged to a single entry
- List<WifiEntry> wifiEntries = wifiPickerTracker.getWifiEntries();
- assertThat(wifiEntries.size()).isEqualTo(5);
- assertThat(wifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OPEN, WifiInfo.SECURITY_TYPE_OWE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_WEP),
- Arrays.asList(WifiInfo.SECURITY_TYPE_PSK, WifiInfo.SECURITY_TYPE_SAE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP,
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT));
-
- // Use a PSK config, EAP config, and Open config, and see that the security types returned
- // for those grouped entries change to reflect the available configs.
- WifiConfiguration openConfig = buildWifiConfiguration(ssid);
- openConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OPEN);
- openConfig.networkId = 1;
- WifiConfiguration pskConfig = buildWifiConfiguration(ssid);
- pskConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_PSK);
- pskConfig.networkId = 2;
- WifiConfiguration eapConfig = buildWifiConfiguration(ssid);
- eapConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP);
- eapConfig.networkId = 3;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(openConfig, pskConfig, eapConfig));
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
- mTestLooper.dispatchAll();
-
- // Open/OWE becomes Open, PSK/SAE becomes PSK, EAP/EAP-WPA3 does not change since EAP config
- // also works for EAP-WPA3.
- wifiEntries = wifiPickerTracker.getWifiEntries();
- assertThat(wifiEntries.size()).isEqualTo(5);
- assertThat(wifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OPEN),
- Arrays.asList(WifiInfo.SECURITY_TYPE_WEP),
- Arrays.asList(WifiInfo.SECURITY_TYPE_PSK),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP,
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT));
-
- // Use SAE config, EAP-WPA3 config, and OWE config
- WifiConfiguration oweConfig = buildWifiConfiguration(ssid);
- oweConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_OWE);
- oweConfig.networkId = 1;
- WifiConfiguration saeConfig = buildWifiConfiguration(ssid);
- saeConfig.setSecurityParams(WifiConfiguration.SECURITY_TYPE_SAE);
- saeConfig.networkId = 2;
- WifiConfiguration eapWpa3Config = buildWifiConfiguration(ssid);
- eapWpa3Config.setSecurityParams(WifiConfiguration.SECURITY_TYPE_EAP_WPA3_ENTERPRISE);
- eapWpa3Config.networkId = 3;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(oweConfig, saeConfig, eapWpa3Config));
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
- mTestLooper.dispatchAll();
-
- // Open/OWE becomes OWE, PSK/SAE becomes SAE, EAP/EAP-WPA3 becomes EAP-WPA3
- wifiEntries = wifiPickerTracker.getWifiEntries();
- assertThat(wifiEntries.size()).isEqualTo(5);
- assertThat(wifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OWE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_WEP),
- Arrays.asList(WifiInfo.SECURITY_TYPE_SAE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT));
-
- // Now use configs for all the security types in the family
- when(mMockWifiManager.getPrivilegedConfiguredNetworks()).thenReturn(
- Arrays.asList(openConfig, oweConfig, pskConfig, saeConfig, eapConfig,
- eapWpa3Config));
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext,
- new Intent(WifiManager.CONFIGURED_NETWORKS_CHANGED_ACTION));
- mTestLooper.dispatchAll();
-
- // All of the security types in the family should be returned.
- wifiEntries = wifiPickerTracker.getWifiEntries();
- assertThat(wifiEntries.size()).isEqualTo(5);
- assertThat(wifiEntries.stream()
- .map(entry -> entry.getSecurityTypes())
- .collect(Collectors.toList()))
- .containsExactly(
- Arrays.asList(WifiInfo.SECURITY_TYPE_OPEN, WifiInfo.SECURITY_TYPE_OWE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_WEP),
- Arrays.asList(WifiInfo.SECURITY_TYPE_PSK, WifiInfo.SECURITY_TYPE_SAE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP,
- WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE),
- Arrays.asList(WifiInfo.SECURITY_TYPE_EAP_WPA3_ENTERPRISE_192_BIT));
- }
-
- /**
- * Tests that getNumSavedNetworks() returns the correct number of networks based on number of
- * unique network IDs even for split configs which may have the same network ID but different
- * security types.
- */
- @Test
- public void testGetNumSavedNetworks_splitConfigs_returnsNetworkIdCount() {
- WifiConfiguration openConfig = buildWifiConfiguration("ssid");
- openConfig.networkId = 1;
- // PSK + SAE split config with the same network ID
- WifiConfiguration pskConfig = buildWifiConfiguration("ssid");
- pskConfig.setSecurityParams(WifiInfo.SECURITY_TYPE_PSK);
- pskConfig.networkId = 2;
- WifiConfiguration saeConfig = buildWifiConfiguration("ssid");
- saeConfig.setSecurityParams(WifiInfo.SECURITY_TYPE_SAE);
- saeConfig.networkId = 2;
- when(mMockWifiManager.getPrivilegedConfiguredNetworks())
- .thenReturn(Arrays.asList(openConfig, pskConfig, saeConfig));
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- mTestLooper.dispatchAll();
-
- // 1 open config + 2 split configs with same network ID should be treated as 2 networks.
- assertThat(wifiPickerTracker.getNumSavedNetworks()).isEqualTo(2);
- }
-
- /**
- * Tests that the MergedCarrierEntry is the default network when it is connected and Wifi is
- * the default network.
- */
- @Test
- public void testGetMergedCarrierEntry_wifiIsDefault_entryIsDefaultNetwork() {
- final int subId = 1;
- when(mMockWifiInfo.isCarrierMerged()).thenReturn(true);
- when(mMockWifiInfo.getSubscriptionId()).thenReturn(subId);
- when(mMockNetworkInfo.getDetailedState()).thenReturn(NetworkInfo.DetailedState.CONNECTED);
- final WifiPickerTracker wifiPickerTracker = createTestWifiPickerTracker();
- wifiPickerTracker.onStart();
- mTestLooper.dispatchAll();
- verify(mMockContext).registerReceiver(mBroadcastReceiverCaptor.capture(),
- any(), any(), any());
- final Intent intent = new Intent(TelephonyManager.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED);
- intent.putExtra("subscription", subId);
- mBroadcastReceiverCaptor.getValue().onReceive(mMockContext, intent);
- verify(mMockConnectivityManager)
- .registerDefaultNetworkCallback(mDefaultNetworkCallbackCaptor.capture(), any());
- MergedCarrierEntry mergedCarrierEntry = wifiPickerTracker.getMergedCarrierEntry();
- assertThat(mergedCarrierEntry.getConnectedState())
- .isEqualTo(WifiEntry.CONNECTED_STATE_CONNECTED);
- // Wifi isn't default yet, so isDefaultNetwork returns false
- assertThat(mergedCarrierEntry.isDefaultNetwork()).isFalse();
-
- mDefaultNetworkCallbackCaptor.getValue().onCapabilitiesChanged(mMockNetwork,
- new NetworkCapabilities.Builder()
- .addTransportType(NetworkCapabilities.TRANSPORT_WIFI).build());
-
- // Now Wifi is default, so isDefaultNetwork returns true
- assertThat(mergedCarrierEntry.isDefaultNetwork()).isTrue();
- }
}
diff --git a/libwifi_hal/Android.mk b/libwifi_hal/Android.mk
index 8df53b56e..7bdbc3259 100644
--- a/libwifi_hal/Android.mk
+++ b/libwifi_hal/Android.mk
@@ -59,16 +59,11 @@ endif
ifdef WIFI_DRIVER_STATE_OFF
wifi_hal_cflags += -DWIFI_DRIVER_STATE_OFF=\"$(WIFI_DRIVER_STATE_OFF)\"
endif
-ifeq ($(WIFI_MULTIPLE_VENDOR_HALS), true)
-wifi_hal_cflags += -DWIFI_MULTIPLE_VENDOR_HALS
-endif
# Common code shared between the HALs.
# ============================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libwifi-hal-common
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
-LOCAL_LICENSE_CONDITIONS := notice
LOCAL_VENDOR_MODULE := true
LOCAL_CFLAGS := $(wifi_hal_cflags)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
@@ -82,8 +77,6 @@ include $(BUILD_STATIC_LIBRARY)
# ============================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libwifi-hal-fallback
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
-LOCAL_LICENSE_CONDITIONS := notice
LOCAL_VENDOR_MODULE := true
LOCAL_CFLAGS := $(wifi_hal_cflags)
LOCAL_SRC_FILES := wifi_hal_fallback.cpp
@@ -92,45 +85,32 @@ include $(BUILD_STATIC_LIBRARY)
# Pick a vendor provided HAL implementation library.
# ============================================================
-ifeq ($(WIFI_MULTIPLE_VENDOR_HALS), true)
- # vendor HALs are loaded dynamically and not linked here
- LIB_WIFI_HAL :=
-else
- LIB_WIFI_HAL ?= libwifi-hal-fallback
- VENDOR_LOCAL_SHARED_LIBRARIES :=
- ifeq ($(BOARD_WLAN_DEVICE), bcmdhd)
- LIB_WIFI_HAL := libwifi-hal-bcm
- VENDOR_LOCAL_SHARED_LIBRARIES := libcrypto
-ifneq ($(wildcard vendor/google/libraries/GoogleWifiConfigLib),)
- VENDOR_LOCAL_SHARED_LIBRARIES += \
- google_wifi_firmware_config_version_c_wrapper
-endif
- else ifeq ($(BOARD_WLAN_DEVICE), qcwcn)
- LIB_WIFI_HAL := libwifi-hal-qcom
- VENDOR_LOCAL_SHARED_LIBRARIES := libcld80211
- else ifeq ($(BOARD_WLAN_DEVICE), mrvl)
- # this is commented because none of the nexus devices
- # that sport Marvell's wifi have support for HAL
- # LIB_WIFI_HAL := libwifi-hal-mrvl
- else ifeq ($(BOARD_WLAN_DEVICE), MediaTek)
- # support MTK WIFI HAL
- LIB_WIFI_HAL := libwifi-hal-mt66xx
- else ifeq ($(BOARD_WLAN_DEVICE), realtek)
- # support Realtek WIFI HAL
- LIB_WIFI_HAL := libwifi-hal-rtk
- else ifeq ($(BOARD_WLAN_DEVICE), emulator)
- LIB_WIFI_HAL := libwifi-hal-emu
- else ifeq ($(BOARD_WLAN_DEVICE), slsi)
- LIB_WIFI_HAL := libwifi-hal-slsi
- endif
+LIB_WIFI_HAL := libwifi-hal-fallback
+VENDOR_LOCAL_SHARED_LIBRARIES :=
+ifeq ($(BOARD_WLAN_DEVICE), bcmdhd)
+ LIB_WIFI_HAL := libwifi-hal-bcm
+ VENDOR_LOCAL_SHARED_LIBRARIES := libcrypto
+else ifeq ($(BOARD_WLAN_DEVICE), qcwcn)
+ LIB_WIFI_HAL := libwifi-hal-qcom
+ VENDOR_LOCAL_SHARED_LIBRARIES := libcld80211
+else ifeq ($(BOARD_WLAN_DEVICE), mrvl)
+ # this is commented because none of the nexus devices
+ # that sport Marvell's wifi have support for HAL
+ # LIB_WIFI_HAL := libwifi-hal-mrvl
+else ifeq ($(BOARD_WLAN_DEVICE), MediaTek)
+ # support MTK WIFI HAL
+ LIB_WIFI_HAL := libwifi-hal-mt66xx
+else ifeq ($(BOARD_WLAN_DEVICE), realtek)
+ # support Realtek WIFI HAL
+ LIB_WIFI_HAL := libwifi-hal-rtk
+else ifeq ($(BOARD_WLAN_DEVICE), emulator)
+ LIB_WIFI_HAL := libwifi-hal-emu
endif
# The WiFi HAL that you should be linking.
# ============================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libwifi-hal
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
-LOCAL_LICENSE_CONDITIONS := notice
LOCAL_PROPRIETARY_MODULE := true
LOCAL_CFLAGS := $(wifi_hal_cflags)
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
@@ -155,8 +135,6 @@ include $(BUILD_SHARED_LIBRARY)
# ============================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libwifi-hal-test
-LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
-LOCAL_LICENSE_CONDITIONS := notice
LOCAL_CFLAGS := $(wifi_hal_cflags)
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/include \
diff --git a/libwifi_hal/hal_tool.cpp b/libwifi_hal/hal_tool.cpp
index 49652554c..aa319476d 100644
--- a/libwifi_hal/hal_tool.cpp
+++ b/libwifi_hal/hal_tool.cpp
@@ -562,7 +562,6 @@ bool init_wifi_stub_hal_func_table(wifi_hal_fn* hal_fn) {
} // namespace
bool HalTool::InitFunctionTable(wifi_hal_fn* hal_fn) {
-#ifndef WIFI_MULTIPLE_VENDOR_HALS
if (!init_wifi_stub_hal_func_table(hal_fn)) {
LOG(ERROR) << "Can not initialize the basic function pointer table";
return false;
@@ -574,11 +573,6 @@ bool HalTool::InitFunctionTable(wifi_hal_fn* hal_fn) {
}
return true;
-#else
- // vendor HAL library are dynamically loaded from the WIFI HAL.
- LOG(ERROR) << "InitFunctionTable no longer supported.";
- return false;
-#endif
}
bool HalTool::CanGetValidChannels(wifi_hal_fn* hal_fn) {
diff --git a/libwifi_hal/wifi_hal_common.cpp b/libwifi_hal/wifi_hal_common.cpp
index 5c956f2ff..0d8e0fbe0 100644
--- a/libwifi_hal/wifi_hal_common.cpp
+++ b/libwifi_hal/wifi_hal_common.cpp
@@ -19,7 +19,6 @@
#include <fcntl.h>
#include <stdlib.h>
#include <unistd.h>
-#include <time.h>
#include <android-base/logging.h>
#include <cutils/misc.h>
@@ -53,10 +52,6 @@ static const char DRIVER_MODULE_ARG[] = WIFI_DRIVER_MODULE_ARG;
static const char MODULE_FILE[] = "/proc/modules";
#endif
-#ifdef WIFI_DRIVER_STATE_CTRL_PARAM
-int kDriverStateAccessRetrySleepMillis = 200;
-#endif
-
static int insmod(const char *filename, const char *args) {
int ret;
int fd;
@@ -99,22 +94,8 @@ int wifi_change_driver_state(const char *state) {
int len;
int fd;
int ret = 0;
- struct timespec req;
- req.tv_sec = 0;
- req.tv_nsec = kDriverStateAccessRetrySleepMillis * 1000000L;
- int count = 5; /* wait at most 1 second for completion. */
if (!state) return -1;
- do {
- if (access(WIFI_DRIVER_STATE_CTRL_PARAM, W_OK) == 0)
- break;
- nanosleep(&req, (struct timespec *)NULL);
- } while (--count > 0);
- if (count == 0) {
- PLOG(ERROR) << "Failed to access driver state control param "
- << strerror(errno) << ", " << errno;
- return -1;
- }
fd = TEMP_FAILURE_RETRY(open(WIFI_DRIVER_STATE_CTRL_PARAM, O_WRONLY));
if (fd < 0) {
PLOG(ERROR) << "Failed to open driver state control param";
diff --git a/libwifi_system/Android.bp b/libwifi_system/Android.bp
index ec0201248..a3aa7034a 100644
--- a/libwifi_system/Android.bp
+++ b/libwifi_system/Android.bp
@@ -12,10 +12,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-package {
- default_applicable_licenses: ["Android-Apache-2.0"],
-}
-
cc_defaults {
name: "libwifi-system-defaults",
cflags: [
diff --git a/libwifi_system_iface/Android.bp b/libwifi_system_iface/Android.bp
index 0ea30f4de..80249ef3c 100644
--- a/libwifi_system_iface/Android.bp
+++ b/libwifi_system_iface/Android.bp
@@ -12,10 +12,6 @@
// See the License for the specific language governing permissions and
// limitations under the License.
-package {
- default_applicable_licenses: ["Android-Apache-2.0"],
-}
-
wifi_system_iface_cflags = [
"-Wall",
"-Werror",
@@ -33,7 +29,6 @@ wifi_system_iface_cflags = [
cc_library {
name: "libwifi-system-iface",
vendor_available: true,
- product_available: true,
vndk: {
enabled: true,
},
diff --git a/libwifi_system_iface/include/wifi_system/interface_tool.h b/libwifi_system_iface/include/wifi_system/interface_tool.h
index f31e4e56c..a22c5280e 100644
--- a/libwifi_system_iface/include/wifi_system/interface_tool.h
+++ b/libwifi_system_iface/include/wifi_system/interface_tool.h
@@ -50,20 +50,6 @@ class InterfaceTool {
// Get the factory MAC address of the |if_name| interface.
// Returns all-zero address on error.
virtual std::array<uint8_t, ETH_ALEN> GetFactoryMacAddress(const char* if_name);
-
- // Create a bridge
- virtual bool createBridge(const std::string& br_name);
-
- // Delete a bridge
- virtual bool deleteBridge(const std::string& br_name);
-
- // Add interface to bridge
- virtual bool addIfaceToBridge(const std::string& br_name,
- const std::string& if_name);
-
- // Remove interface from bridge
- virtual bool removeIfaceFromBridge(const std::string& br_name,
- const std::string& if_name);
}; // class InterfaceTool
} // namespace wifi_system
diff --git a/libwifi_system_iface/interface_tool.cpp b/libwifi_system_iface/interface_tool.cpp
index f7158cd64..17895d6ef 100644
--- a/libwifi_system_iface/interface_tool.cpp
+++ b/libwifi_system_iface/interface_tool.cpp
@@ -16,14 +16,10 @@
#include "wifi_system/interface_tool.h"
-#include <net/if.h>
#include <net/if_arp.h>
#include <netinet/in.h>
#include <sys/socket.h>
-#include <linux/if_bridge.h>
-#include <string.h>
-
#include <linux/ethtool.h>
/* We need linux/if.h for flags like IFF_UP. Sadly, it forward declares
struct sockaddr and must be included after sys/socket.h. */
@@ -32,8 +28,6 @@
#include <android-base/logging.h>
#include <android-base/unique_fd.h>
-#define IFNAMSIZ 16
-
namespace android {
namespace wifi_system {
namespace {
@@ -175,70 +169,5 @@ std::array<uint8_t, ETH_ALEN> InterfaceTool::GetFactoryMacAddress(const char* if
return paddr;
}
-bool InterfaceTool::createBridge(const std::string& br_name) {
- base::unique_fd sock(socket(PF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0));
-
- if (TEMP_FAILURE_RETRY(ioctl(sock, SIOCBRADDBR, br_name.c_str())) != 0) {
- LOG(ERROR) << "Could not add bridge " << br_name.c_str()
- << " (" << strerror(errno) << ")";
- return false;
- }
-
- return true;
-}
-
-bool InterfaceTool::deleteBridge(const std::string& br_name) {
- base::unique_fd sock(socket(PF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0));
-
- if (TEMP_FAILURE_RETRY(ioctl(sock, SIOCBRDELBR, br_name.c_str())) != 0) {
- LOG(ERROR) << "Could not remove bridge " << br_name.c_str()
- << " (" << strerror(errno) << ")";
- return false;
- }
- return true;
-}
-
-bool InterfaceTool::addIfaceToBridge(const std::string& br_name, const std::string& if_name) {
- struct ifreq ifr;
- memset(&ifr, 0, sizeof(ifr));
-
- ifr.ifr_ifindex = if_nametoindex(if_name.c_str());
- if (ifr.ifr_ifindex == 0) {
- LOG(ERROR) << "Interface is not exist: " << if_name.c_str();
- return false;
- }
- strlcpy(ifr.ifr_name, br_name.c_str(), IFNAMSIZ);
-
- base::unique_fd sock(socket(PF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0));
- if (TEMP_FAILURE_RETRY(ioctl(sock, SIOCBRADDIF, &ifr)) != 0) {
- LOG(ERROR) << "Could not add interface " << if_name.c_str()
- << " into bridge " << ifr.ifr_name
- << " (" << strerror(errno) << ")";
- return false;
- }
- return true;
-}
-
-bool InterfaceTool::removeIfaceFromBridge(const std::string& br_name, const std::string& if_name) {
- struct ifreq ifr;
- memset(&ifr, 0, sizeof(ifr));
-
- ifr.ifr_ifindex = if_nametoindex(if_name.c_str());
- if (ifr.ifr_ifindex == 0) {
- LOG(ERROR) << "Interface is not exist: " << if_name.c_str();
- return false;
- }
- strlcpy(ifr.ifr_name, br_name.c_str(), IFNAMSIZ);
-
- base::unique_fd sock(socket(PF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0));
- if (TEMP_FAILURE_RETRY(ioctl(sock, SIOCBRDELIF, &ifr)) != 0) {
- LOG(ERROR) << "Could not remove interface " << if_name.c_str()
- << " from bridge " << ifr.ifr_name
- << " (" << strerror(errno) << ")";
- return false;
- }
-
- return true;
-}
} // namespace wifi_system
} // namespace android