Merge "Use 24-hour settings for time formatting"
diff --git a/Android.mk b/Android.mk
index b9121ec..df85bbc 100644
--- a/Android.mk
+++ b/Android.mk
@@ -37,8 +37,8 @@
ims-common
LOCAL_STATIC_JAVA_LIBRARIES := \
- apptoolkit-arch-core-runtime \
- apptoolkit-lifecycle-extensions \
+ android-arch-lifecycle-runtime \
+ android-arch-lifecycle-extensions \
jsr305 \
settings-logtags \
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 6eb52ef..f5c368f 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -109,7 +109,7 @@
<!-- Settings -->
<activity android:name="Settings"
- android:taskAffinity="com.android.settings"
+ android:taskAffinity="com.android.settings.root"
android:label="@string/settings_label_launcher"
android:launchMode="singleTask">
<intent-filter android:priority="1">
@@ -122,7 +122,7 @@
<!-- Alias for launcher activity only, as this belongs to each profile. -->
<activity-alias android:name="Settings"
- android:taskAffinity="com.android.settings"
+ android:taskAffinity="com.android.settings.root"
android:label="@string/settings_label_launcher"
android:launchMode="singleTask"
android:targetActivity="Settings">
@@ -143,10 +143,9 @@
<activity android:name=".SubSettings"
android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
- </activity>
+ android:parentActivityName="Settings" />
- <activity android:name="CreateShortcut"
+ <activity android:name=".shortcut.CreateShortcut"
android:label="@string/settings_shortcut">
<intent-filter>
<action android:name="android.intent.action.CREATE_SHORTCUT"/>
@@ -155,11 +154,12 @@
</activity>
<!-- Wireless Controls -->
- <activity android:name=".Settings$NetworkDashboardActivity"
- android:taskAffinity="com.android.settings"
+ <activity
+ android:name=".Settings$NetworkDashboardActivity"
android:label="@string/network_dashboard_title"
android:icon="@drawable/ic_homepage_network"
- android:parentActivityName="Settings">
+ android:parentActivityName="Settings"
+ android:taskAffinity="com.android.settings">
<intent-filter android:priority="1">
<action android:name="android.settings.WIRELESS_SETTINGS" />
<action android:name="android.settings.AIRPLANE_MODE_SETTINGS" />
@@ -181,15 +181,20 @@
android:value="true" />
</activity>
- <activity android:name=".Settings$ConnectedDeviceDashboardActivity"
- android:taskAffinity="com.android.settings"
+ <activity
+ android:name=".Settings$ConnectedDeviceDashboardActivity"
android:label="@string/connected_devices_dashboard_title"
android:icon="@drawable/ic_homepage_connected_device"
+ android:taskAffinity="com.android.settings"
android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NFC_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
+ <intent-filter android:priority="1">
+ <action android:name="android.settings.BLUETOOTH_SETTINGS" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -206,12 +211,13 @@
android:value="true" />
</activity>
- <activity android:name=".Settings$ConnectedDeviceDashboardActivityOld"
- android:enabled="false"
- android:taskAffinity="com.android.settings"
- android:label="@string/connected_devices_dashboard_title"
- android:icon="@drawable/ic_homepage_connected_device"
- android:parentActivityName="Settings">
+ <activity
+ android:name=".Settings$ConnectedDeviceDashboardActivityOld"
+ android:enabled="false"
+ android:label="@string/connected_devices_dashboard_title"
+ android:icon="@drawable/ic_homepage_connected_device"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NFC_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -253,13 +259,13 @@
</intent-filter>
</activity>
- <!-- Top-level settings -->
-
- <activity android:name="Settings$WifiSettingsActivity"
- android:taskAffinity=""
- android:label="@string/wifi_settings"
- android:icon="@drawable/ic_settings_wireless"
- android:configChanges="orientation|keyboardHidden|screenSize">
+ <activity
+ android:name="Settings$WifiSettingsActivity"
+ android:label="@string/wifi_settings"
+ android:icon="@drawable/ic_settings_wireless"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.WIFI_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -278,21 +284,10 @@
android:value="content://com.android.settings.slices/wifi" />
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name=".wifi.WifiSettings"
- android:taskAffinity="com.android.settings"
- android:label="@string/wifi_settings"
- android:icon="@drawable/ic_settings_wireless"
- android:targetActivity="Settings$WifiSettingsActivity"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:exported="true">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.wifi.WifiSettings" />
- </activity-alias>
-
- <activity android:name=".wifi.WifiPickerActivity"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
+ <activity
+ android:name=".wifi.WifiPickerActivity"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.net.wifi.PICK_WIFI_NETWORK" />
<category android:name="android.intent.category.DEFAULT" />
@@ -305,12 +300,13 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ConfigureWifiSettingsActivity"
- android:taskAffinity="com.android.settings"
- android:label="@string/wifi_configure_settings_preference_title"
- android:icon="@drawable/ic_settings_wireless"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:parentActivityName="Settings$WifiSettingsActivity">
+ <activity
+ android:name="Settings$ConfigureWifiSettingsActivity"
+ android:label="@string/wifi_configure_settings_preference_title"
+ android:icon="@drawable/ic_settings_wireless"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.WIFI_IP_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -326,12 +322,13 @@
android:value="true" />
</activity>
- <activity android:name="Settings$SavedAccessPointsSettingsActivity"
- android:taskAffinity="com.android.settings"
- android:label="@string/wifi_saved_access_points_label"
- android:icon="@drawable/ic_settings_wireless"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:parentActivityName="Settings$WifiSettingsActivity">
+ <activity
+ android:name="Settings$SavedAccessPointsSettingsActivity"
+ android:label="@string/wifi_saved_access_points_label"
+ android:icon="@drawable/ic_settings_wireless"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.WIFI_SAVED_NETWORK_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -346,9 +343,7 @@
android:value="true" />
</activity>
- <activity android:name=".Settings$WifiInfoActivity"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$WifiSettingsActivity">
+ <activity android:name=".Settings$WifiInfoActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
@@ -358,9 +353,7 @@
android:value="com.android.settings.wifi.WifiInfo" />
</activity>
- <activity android:name=".wifi.WifiConfigInfo"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$WifiSettingsActivity">
+ <activity android:name=".wifi.WifiConfigInfo">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
@@ -428,14 +421,13 @@
android:value="com.android.settings.ApnSettings" />
</activity>
- <activity android:name="Settings$BluetoothSettingsActivity"
- android:label="@string/bluetooth_settings_title"
- android:icon="@drawable/ic_settings_bluetooth"
- android:taskAffinity="">
- <intent-filter android:priority="1">
- <action android:name="android.settings.BLUETOOTH_SETTINGS" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
+ <activity
+ android:name="Settings$BluetoothSettingsActivity"
+ android:label="@string/bluetooth_settings_title"
+ android:icon="@drawable/ic_settings_bluetooth"
+ android:enabled="false"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
@@ -446,10 +438,19 @@
android:value="com.android.settings.bluetooth.BluetoothSettings" />
</activity>
+ <!-- Keep compatibility with old shortcuts. -->
+ <activity-alias android:name=".bluetooth.BluetoothSettings"
+ android:label="@string/bluetooth_settings_title"
+ android:targetActivity="Settings$BluetoothSettingsActivity"
+ android:exported="true"
+ android:clearTaskOnLaunch="true">
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.bluetooth.BluetoothSettings" />
+ </activity-alias>
+
<activity android:name="Settings$AssistGestureSettingsActivity"
android:label="@string/assist_gesture_title"
- android:icon="@drawable/ic_settings_gestures"
- android:taskAffinity="">
+ android:icon="@drawable/ic_settings_gestures">
<intent-filter>
<action android:name="android.settings.ASSIST_GESTURE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -458,16 +459,6 @@
android:value="com.android.settings.gestures.AssistGestureSettings" />
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name=".bluetooth.BluetoothSettings"
- android:label="@string/bluetooth_settings_title"
- android:targetActivity="Settings$BluetoothSettingsActivity"
- android:exported="true"
- android:clearTaskOnLaunch="true">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.bluetooth.BluetoothSettings" />
- </activity-alias>
-
<activity android:name=".bluetooth.DevicePickerActivity"
android:label="@string/device_picker"
android:clearTaskOnLaunch="true">
@@ -492,10 +483,12 @@
</intent-filter>
</activity>
- <activity android:name="Settings$TetherSettingsActivity"
- android:label="@string/tether_settings_title_all"
- android:icon="@drawable/ic_settings_wireless"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$TetherSettingsActivity"
+ android:label="@string/tether_settings_title_all"
+ android:icon="@drawable/ic_settings_wireless"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -517,8 +510,8 @@
</activity-alias>
<activity android:name="Settings$WifiP2pSettingsActivity"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$WifiSettingsActivity">
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -528,11 +521,12 @@
android:value="com.android.settings.wifi.p2p.WifiP2pSettings" />
</activity>
-
- <activity android:name="Settings$VpnSettingsActivity"
- android:label="@string/vpn_settings_title"
- android:icon="@drawable/ic_settings_wireless"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$VpnSettingsActivity"
+ android:label="@string/vpn_settings_title"
+ android:icon="@drawable/ic_settings_wireless"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.VPN_SETTINGS" />
<action android:name="android.net.vpn.SETTINGS" />
@@ -550,10 +544,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$DateTimeSettingsActivity"
- android:label="@string/date_and_time"
- android:icon="@drawable/ic_settings_date_time"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$DateTimeSettingsActivity"
+ android:label="@string/date_and_time"
+ android:icon="@drawable/ic_settings_date_time"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.DATE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -575,11 +571,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$LocalePickerActivity"
- android:label="@string/language_picker_title"
- android:icon="@drawable/ic_settings_language"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$LanguageAndInputSettingsActivity">
+ <activity
+ android:name="Settings$LocalePickerActivity"
+ android:label="@string/language_picker_title"
+ android:icon="@drawable/ic_settings_language"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings$LanguageAndInputSettingsActivity">
<intent-filter android:priority="1">
<action android:name="android.settings.LOCALE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -595,11 +592,12 @@
android:value="true" />
</activity>
- <activity android:name=".Settings$LanguageAndInputSettingsActivity"
+ <activity
+ android:name=".Settings$LanguageAndInputSettingsActivity"
android:label="@string/language_settings"
android:icon="@drawable/ic_settings_language"
android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$SystemDashboardActivity">
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
@@ -628,10 +626,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ManageAssistActivity"
- android:label="@string/assist_and_voice_input_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$ManageApplicationsActivity">
+ <activity
+ android:name="Settings$ManageAssistActivity"
+ android:label="@string/assist_and_voice_input_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.VOICE_INPUT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -680,10 +679,11 @@
android:value="com.android.settings.language.LanguageAndInputSettings" />
</activity-alias>
- <activity android:name="Settings$SpellCheckersSettingsActivity"
- android:label="@string/spellcheckers_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$LanguageAndInputSettingsActivity">
+ <activity
+ android:name="Settings$SpellCheckersSettingsActivity"
+ android:label="@string/spellcheckers_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
@@ -709,10 +709,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$UserDictionarySettingsActivity"
- android:label="@string/user_dict_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$LanguageAndInputSettingsActivity">
+ <activity
+ android:name="Settings$UserDictionarySettingsActivity"
+ android:label="@string/user_dict_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.USER_DICTIONARY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -751,11 +752,13 @@
android:value="com.android.settings.UserDictionarySettings" />
</activity-alias>
- <activity android:name="Settings$ZenModeSettingsActivity"
- android:label="@string/zen_mode_settings_title"
- android:icon="@drawable/ic_settings_notifications"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeSettingsActivity"
+ android:label="@string/zen_mode_settings_title"
+ android:icon="@drawable/ic_settings_notifications"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -771,11 +774,13 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ZenModeBehaviorSettingsActivity"
- android:label="@string/zen_mode_behavior_settings_title"
- android:icon="@drawable/ic_settings_notifications"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeBehaviorSettingsActivity"
+ android:label="@string/zen_mode_behavior_settings_title"
+ android:icon="@drawable/ic_settings_notifications"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_PRIORITY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -786,11 +791,13 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ZenModeAutomationSettingsActivity"
- android:label="@string/zen_mode_automation_settings_title"
- android:icon="@drawable/ic_settings_notifications"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeAutomationSettingsActivity"
+ android:label="@string/zen_mode_automation_settings_title"
+ android:icon="@drawable/ic_settings_notifications"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_AUTOMATION_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -807,8 +814,7 @@
<activity android:name="Settings$WallpaperSettingsActivity"
android:label="@string/wallpaper_settings_fragment_title"
- android:icon="@drawable/ic_wallpaper"
- android:taskAffinity="">
+ android:icon="@drawable/ic_wallpaper">
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.wallpaper.WallpaperTypeSettings" />
</activity>
@@ -850,9 +856,11 @@
android:resource="@string/new_device_suggestion_summary" />
</activity>
- <activity android:name="Settings$ZenModeScheduleRuleSettingsActivity"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeScheduleRuleSettingsActivity"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_SCHEDULE_RULE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -867,9 +875,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ZenModeEventRuleSettingsActivity"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeEventRuleSettingsActivity"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_EVENT_RULE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -884,9 +894,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ZenModeExternalRuleSettingsActivity"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenModeExternalRuleSettingsActivity"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ZEN_MODE_EXTERNAL_RULE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -901,10 +913,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$DisplaySettingsActivity"
- android:label="@string/display_settings"
- android:icon="@drawable/ic_homepage_display"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$DisplaySettingsActivity"
+ android:label="@string/display_settings"
+ android:icon="@drawable/ic_homepage_display"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.DISPLAY_SETTINGS" />
<action android:name="android.settings.DISPLAY_SETTINGS" />
@@ -938,11 +952,13 @@
android:value="com.android.settings.DisplaySettings" />
</activity-alias>
- <activity android:name="Settings$NightDisplaySettingsActivity"
- android:label="@string/night_display_title"
- android:enabled="@*android:bool/config_nightDisplayAvailable"
- android:icon="@drawable/ic_settings_night_display"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$NightDisplaySettingsActivity"
+ android:label="@string/night_display_title"
+ android:enabled="@*android:bool/config_nightDisplayAvailable"
+ android:icon="@drawable/ic_settings_night_display"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -958,9 +974,9 @@
android:value="true" />
</activity>
- <activity android:name="Settings$NightDisplaySuggestionActivity"
+ <activity
+ android:name="Settings$NightDisplaySuggestionActivity"
android:enabled="@*android:bool/config_nightDisplayAvailable"
- android:taskAffinity=""
android:icon="@drawable/ic_settings_night_display">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -978,11 +994,13 @@
android:value="com.android.settings.display.NightDisplaySettings" />
</activity>
- <activity android:name="Settings$DeviceInfoSettingsActivity"
- android:label="@string/device_info_settings"
- android:icon="@drawable/ic_settings_about"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
+ <activity
+ android:name="Settings$DeviceInfoSettingsActivity"
+ android:label="@string/device_info_settings"
+ android:icon="@drawable/ic_settings_about"
+ android:taskAffinity="com.android.settings"
+ android:enabled="false"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.DEVICE_INFO_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1005,14 +1023,14 @@
android:value="true" />
</activity>
-
- <activity android:name="Settings$MeCardActivity"
+ <activity android:name=".Settings$MyDeviceInfoActivity"
android:label="@string/device_info_settings"
android:icon="@drawable/ic_settings_about"
android:taskAffinity="com.android.settings"
android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.DEVICE_INFO_SETTINGS" />
+ <action android:name="android.settings.DEVICE_NAME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
@@ -1020,7 +1038,7 @@
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
- <intent-filter android:priority="10">
+ <intent-filter android:priority="270">
<action android:name="com.android.settings.action.SETTINGS" />
</intent-filter>
<meta-data android:name="com.android.settings.category"
@@ -1033,10 +1051,12 @@
android:value="true" />
</activity>
- <activity android:name="SettingsLicenseActivity"
- android:label="@string/settings_license_activity_title"
- android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
- android:configChanges="orientation|screenSize">
+ <activity
+ android:name="SettingsLicenseActivity"
+ android:label="@string/settings_license_activity_title"
+ android:configChanges="orientation|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.LICENSE" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1045,9 +1065,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ManageApplicationsActivity"
- android:label="@string/applications_settings"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ManageApplicationsActivity"
+ android:label="@string/applications_settings"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.APPLICATION_SETTINGS" />
<action android:name="android.settings.MANAGE_APPLICATIONS_SETTINGS" />
@@ -1066,10 +1088,20 @@
android:value="true" />
</activity>
- <activity android:name="Settings$ManageDomainUrlsActivity"
- android:taskAffinity="com.android.settings"
- android:label="@string/domain_urls_title"
- android:icon="@drawable/ic_settings_memory">
+ <!-- Keep compatibility with old shortcuts. -->
+ <activity-alias android:name=".applications.ManageApplications"
+ android:label="@string/applications_settings"
+ android:exported="true"
+ android:targetActivity="Settings$ManageApplicationsActivity">
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.applications.manageapplications.ManageApplications" />
+ </activity-alias>
+
+ <activity
+ android:name="Settings$ManageDomainUrlsActivity"
+ android:label="@string/domain_urls_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.settings.MANAGE_DOMAIN_URLS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1080,8 +1112,7 @@
<activity android:name="Settings$MemorySettingsActivity"
android:label="@string/memory_settings_title"
- android:icon="@drawable/ic_settings_memory"
- android:taskAffinity="">
+ android:icon="@drawable/ic_settings_memory">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="com.android.settings.SHORTCUT" />
@@ -1101,9 +1132,11 @@
android:value="com.android.settings.applications.ProcessStatsUi" />
</activity>
- <activity android:name="Settings$HighPowerApplicationsActivity"
- android:label="@string/high_power_apps"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$HighPowerApplicationsActivity"
+ android:label="@string/high_power_apps"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1114,9 +1147,9 @@
android:value="true" />
</activity>
- <activity android:name=".datausage.AppDataUsageActivity"
- android:taskAffinity=""
- android:noHistory="true">
+ <activity
+ android:name=".datausage.AppDataUsageActivity"
+ android:noHistory="true">
<intent-filter android:priority="1">
<action android:name="android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1124,10 +1157,10 @@
</intent-filter>
</activity>
- <activity android:name=".fuelgauge.RequestIgnoreBatteryOptimizations"
- android:label="@string/high_power_apps"
- android:taskAffinity=""
- android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert">
+ <activity
+ android:name=".fuelgauge.RequestIgnoreBatteryOptimizations"
+ android:label="@string/high_power_apps"
+ android:theme="@*android:style/Theme.DeviceDefault.Light.Dialog.Alert">
<intent-filter android:priority="1">
<action android:name="android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1135,15 +1168,6 @@
</intent-filter>
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name=".applications.ManageApplications"
- android:label="@string/applications_settings"
- android:exported="true"
- android:targetActivity="Settings$ManageApplicationsActivity">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.applications.manageapplications.ManageApplications" />
- </activity-alias>
-
<!-- Provide direct entry into manage apps showing running services.
This is for compatibility with old shortcuts. -->
<activity-alias android:name=".RunningServices"
@@ -1169,10 +1193,7 @@
InstalledAppDetails. -->
<activity android:name=".applications.InstalledAppDetailsTop"
android:label="@string/application_info_label"
- android:exported="true"
- android:taskAffinity=""
- android:parentActivityName="Settings$ManageApplicationsActivity">
- </activity>
+ android:exported="true" />
<!-- Keep compatibility with old shortcuts. -->
<activity-alias android:name=".applications.InstalledAppDetails"
@@ -1204,10 +1225,11 @@
</activity>
<!-- Provide direct entry into manage apps showing storage usage of apps. -->
- <activity android:name="Settings$StorageUseActivity"
- android:label="@string/storageuse_settings_title"
- android:taskAffinity=""
- android:parentActivityName="Settings">
+ <activity
+ android:name="Settings$StorageUseActivity"
+ android:label="@string/storageuse_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.intent.action.MANAGE_PACKAGE_STORAGE" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1224,9 +1246,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$NotificationStationActivity"
- android:label="@string/notification_log_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$NotificationStationActivity"
+ android:label="@string/notification_log_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1248,7 +1272,6 @@
<activity android:name="Settings$BackgroundCheckSummaryActivity"
android:label="@string/background_check_title"
- android:taskAffinity=""
android:enabled="false">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -1258,11 +1281,13 @@
android:value="com.android.settings.applications.BackgroundCheckSummary" />
</activity>
- <activity android:name="Settings$LocationSettingsActivity"
- android:label="@string/location_settings_title"
- android:icon="@drawable/ic_settings_location"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$LocationSettingsActivity"
+ android:label="@string/location_settings_title"
+ android:icon="@drawable/ic_settings_location"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.LOCATION_SOURCE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1279,12 +1304,13 @@
android:value="true" />
</activity>
- <activity android:name="Settings$SecuritySettingsActivity"
- android:label="@string/security_settings_title"
- android:icon="@drawable/ic_homepage_security"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:taskAffinity=""
- android:parentActivityName="Settings">
+ <activity
+ android:name=".Settings$SecurityDashboardActivity"
+ android:label="@string/security_settings_title"
+ android:icon="@drawable/ic_homepage_security"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.SECURITY_SETTINGS" />
<action android:name="android.credentials.UNLOCK" />
@@ -1306,28 +1332,6 @@
android:value="true" />
</activity>
- <!-- TODO(32953042) Merge with Settings$SecuritySettingsActivity -->
- <activity android:name="Settings$SecuritySettingsActivityV2"
- android:label="@string/security_settings_title"
- android:icon="@drawable/ic_homepage_security"
- android:enabled="false"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:taskAffinity=""
- android:parentActivityName="Settings">
- <intent-filter android:priority="-1">
- <action android:name="android.settings.SECURITY_SETTINGS" />
- <action android:name="android.credentials.UNLOCK" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- <intent-filter android:priority="4">
- <action android:name="com.android.settings.action.SETTINGS" />
- </intent-filter>
- <meta-data android:name="com.android.settings.category"
- android:value="com.android.settings.category.ia.homepage" />
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.security.SecuritySettingsV2" />
- </activity>
-
<activity android:name="MonitoringCertInfoActivity"
android:label=""
android:theme="@style/Transparent"
@@ -1343,10 +1347,12 @@
</intent-filter>
</activity>
- <activity android:name="Settings$TrustedCredentialsSettingsActivity"
- android:label="@string/trusted_credentials"
- android:icon="@drawable/ic_settings_security"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$TrustedCredentialsSettingsActivity"
+ android:label="@string/trusted_credentials"
+ android:icon="@drawable/ic_settings_security"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.TRUSTED_CREDENTIALS" />
<action android:name="com.android.settings.TRUSTED_CREDENTIALS_USER" />
@@ -1358,16 +1364,6 @@
android:value="true" />
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name="SecuritySettings"
- android:label="@string/security_settings_title"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:exported="true"
- android:targetActivity="Settings$SecuritySettingsActivity">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.security.SecuritySettings" />
- </activity-alias>
-
<activity android:name="Settings$PrivacySettingsActivity"
android:label="@string/privacy_settings_title"
android:icon="@drawable/ic_settings_backup"
@@ -1387,8 +1383,7 @@
<activity android:name="SetFullBackupPassword"
android:label="@string/local_backup_password_title"
- android:exported="false">
- </activity>
+ android:exported="false" />
<activity android:name="CredentialStorage"
android:theme="@style/Transparent"
@@ -1402,10 +1397,11 @@
</intent-filter>
</activity>
- <activity android:name="Settings$DeviceAdminSettingsActivity"
- android:label="@string/device_admin_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$SecuritySettingsActivity">
+ <activity
+ android:name="Settings$DeviceAdminSettingsActivity"
+ android:label="@string/device_admin_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1433,10 +1429,20 @@
</intent-filter>
</activity>
- <activity android:name="Settings$UsageAccessSettingsActivity"
- android:label="@string/usage_access_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$SecuritySettingsActivity">
+ <activity-alias android:name="SetProfileOwner"
+ android:label="@string/profile_owner_add_title"
+ android:targetActivity="DeviceAdminAdd">
+ <intent-filter android:priority="1000">
+ <action android:name="android.app.action.SET_PROFILE_OWNER" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity-alias>
+
+ <activity
+ android:name="Settings$UsageAccessSettingsActivity"
+ android:label="@string/usage_access_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.USAGE_ACCESS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1449,15 +1455,6 @@
android:value="com.android.settings.applications.manageapplications.ManageApplications" />
</activity>
- <activity-alias android:name="SetProfileOwner"
- android:label="@string/profile_owner_add_title"
- android:targetActivity="DeviceAdminAdd">
- <intent-filter android:priority="1000">
- <action android:name="android.app.action.SET_PROFILE_OWNER" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- </activity-alias>
-
<activity android:name="Settings$IccLockSettingsActivity"
android:label="@string/sim_lock_settings"
android:process="com.android.phone">
@@ -1470,11 +1467,13 @@
android:value="com.android.settings.IccLockSettings" />
</activity>
- <activity android:name="Settings$AccessibilitySettingsActivity"
- android:label="@string/accessibility_settings"
- android:icon="@drawable/ic_homepage_accessibility"
- android:configChanges="orientation|keyboardHidden|screenSize"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$AccessibilitySettingsActivity"
+ android:label="@string/accessibility_settings"
+ android:icon="@drawable/ic_homepage_accessibility"
+ android:configChanges="orientation|keyboardHidden|screenSize"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ACCESSIBILITY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1521,10 +1520,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$AccessibilityDaltonizerSettingsActivity"
- android:label="@string/accessibility_display_daltonizer_preference_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$AccessibilitySettingsActivity">
+ <activity
+ android:name="Settings$AccessibilityDaltonizerSettingsActivity"
+ android:label="@string/accessibility_display_daltonizer_preference_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.ACCESSIBILITY_COLOR_SPACE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1539,10 +1539,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$CaptioningSettingsActivity"
- android:label="@string/accessibility_captioning_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$AccessibilitySettingsActivity">
+ <activity
+ android:name="Settings$CaptioningSettingsActivity"
+ android:label="@string/accessibility_captioning_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.CAPTIONING_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1557,10 +1558,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$TextToSpeechSettingsActivity"
- android:label="@string/tts_settings"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$LanguageAndInputSettingsActivity">
+ <activity
+ android:name="Settings$TextToSpeechSettingsActivity"
+ android:label="@string/tts_settings"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.TTS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1571,10 +1573,11 @@
android:value="true" />
</activity>
- <activity android:name="Settings$EnterprisePrivacySettingsActivity"
- android:label="@string/enterprise_privacy_settings"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$SecuritySettingsActivity">
+ <activity
+ android:name="Settings$EnterprisePrivacySettingsActivity"
+ android:label="@string/enterprise_privacy_settings"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.settings.ENTERPRISE_PRIVACY_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1583,8 +1586,6 @@
android:value="com.android.settings.enterprise.EnterprisePrivacySettings" />
</activity>
- <!-- Second and third-level settings -->
-
<!-- Lock screen settings -->
<activity android:name=".password.ConfirmDeviceCredentialActivity"
android:exported="true"
@@ -1800,11 +1801,12 @@
<activity android:name=".EncryptionInterstitial"
android:theme="@style/GlifTheme.Light" />
- <activity android:name=".Settings$StorageDashboardActivity"
- android:label="@string/storage_settings"
- android:icon="@drawable/ic_homepage_storage"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
+ <activity
+ android:name=".Settings$StorageDashboardActivity"
+ android:label="@string/storage_settings"
+ android:icon="@drawable/ic_homepage_storage"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.INTERNAL_STORAGE_SETTINGS" />
<action android:name="android.settings.MEMORY_CARD_SETTINGS" />
@@ -1828,18 +1830,18 @@
android:value="true" />
</activity>
- <activity android:name="Settings$PrivateVolumeSettingsActivity"
- android:label="@string/storage_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$StorageDashboardActivity">
+ <activity
+ android:name="Settings$PrivateVolumeSettingsActivity"
+ android:label="@string/storage_settings_title">
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.deviceinfo.PrivateVolumeSettings" />
+ android:value="com.android.settings.deviceinfo.PrivateVolumeSettings" />
</activity>
- <activity android:name="Settings$PublicVolumeSettingsActivity"
- android:label="@string/storage_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$StorageDashboardActivity">
+ <activity
+ android:name="Settings$PublicVolumeSettingsActivity"
+ android:label="@string/storage_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.provider.action.DOCUMENT_ROOT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -1852,12 +1854,11 @@
android:value="com.android.settings.deviceinfo.PublicVolumeSettings" />
</activity>
- <activity android:name="Settings$PrivateVolumeForgetActivity"
- android:label="@string/storage_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$StorageDashboardActivity"
- android:exported="true"
- android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS">
+ <activity
+ android:name="Settings$PrivateVolumeForgetActivity"
+ android:label="@string/storage_settings_title"
+ android:exported="true"
+ android:permission="android.permission.MOUNT_UNMOUNT_FILESYSTEMS">
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.deviceinfo.PrivateVolumeForget" />
</activity>
@@ -1929,12 +1930,13 @@
android:value="com.android.settings.ApnEditor" />
</activity>
- <activity android:name="Settings$DevelopmentSettingsDashboardActivity"
- android:label="@string/development_settings_title"
- android:icon="@drawable/ic_settings_development"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings"
- android:enabled="false">
+ <activity
+ android:name="Settings$DevelopmentSettingsDashboardActivity"
+ android:label="@string/development_settings_title"
+ android:icon="@drawable/ic_settings_development"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings"
+ android:enabled="false">
<intent-filter android:priority="1">
<action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
<action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
@@ -1967,11 +1969,12 @@
</intent-filter>
</activity>
- <activity android:name="Settings$PrintSettingsActivity"
- android:label="@string/print_settings"
- android:icon="@drawable/ic_settings_print"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
+ <activity
+ android:name="Settings$PrintSettingsActivity"
+ android:label="@string/print_settings"
+ android:icon="@drawable/ic_settings_print"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ACTION_PRINT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2008,10 +2011,7 @@
android:theme="@android:style/Theme.DeviceDefault.Light.Dialog" />
<activity android:name="Settings$WebViewAppPickerActivity"
- android:label="@string/select_webview_provider_dialog_title">
- </activity>
-
- <!-- Bluetooth stuff -->
+ android:label="@string/select_webview_provider_dialog_title" />
<activity android:name=".bluetooth.BluetoothPairingDialog"
android:excludeFromRecents="true"
@@ -2044,13 +2044,21 @@
</intent-filter>
</activity>
- <activity android:name=".deviceinfo.UsbModeChooserActivity"
+ <activity android:name=".connecteddevice.usb.UsbModeChooserActivity"
android:excludeFromRecents="true"
android:exported="true"
android:permission="android.permission.MANAGE_USB"
android:theme="@*android:style/Theme.DeviceDefault.Settings.Dialog.NoActionBar">
</activity>
+ <activity android:name=".Settings$UsbDetailsActivity"
+ android:excludeFromRecents="true"
+ android:permission="android.permission.MANAGE_USB"
+ android:exported="true">
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.connecteddevice.usb.UsbDetailsFragment"/>
+ </activity>
+
<activity android:name=".RemoteBugreportActivity"
android:excludeFromRecents="true"
android:exported="true"
@@ -2108,10 +2116,11 @@
</activity>
<!-- NFC settings -->
- <activity android:name="Settings$AndroidBeamSettingsActivity"
- android:label="@string/android_beam_settings_title"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$ConnectedDeviceDashboardActivity">
+ <activity
+ android:name="Settings$AndroidBeamSettingsActivity"
+ android:label="@string/android_beam_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NFCSHARING_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2126,10 +2135,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$WifiDisplaySettingsActivity"
- android:label="@string/wifi_display_settings_title"
- android:icon="@drawable/ic_cast_24dp"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$WifiDisplaySettingsActivity"
+ android:label="@string/wifi_display_settings_title"
+ android:icon="@drawable/ic_cast_24dp"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.CAST_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2147,17 +2158,9 @@
android:value="com.android.settings.wfd.WifiDisplaySettings" />
</activity>
- <activity android:name="Display" android:label="@string/display_label"
- android:configChanges="fontScale"
- android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
- </intent-filter>
- </activity>
-
- <activity android:name="RadioInfo" android:label="@string/phone_info_label"
+ <activity
+ android:name="RadioInfo"
+ android:label="@string/phone_info_label"
android:process="com.android.phone">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
@@ -2213,7 +2216,8 @@
</intent-filter>
</activity>
- <activity android:name="UsageStatsActivity" android:label="@string/usage_stats_label"
+ <activity android:name="UsageStatsActivity"
+ android:label="@string/usage_stats_label"
android:taskAffinity="com.android.settings"
android:parentActivityName="Settings">
<intent-filter>
@@ -2222,10 +2226,13 @@
</intent-filter>
</activity>
- <activity android:name="Settings$PowerUsageSummaryActivity"
- android:label="@string/power_usage_summary_title"
- android:icon="@drawable/ic_homepage_battery"
- android:enabled="false">
+ <activity
+ android:name="Settings$PowerUsageSummaryActivity"
+ android:label="@string/power_usage_summary_title"
+ android:icon="@drawable/ic_homepage_battery"
+ android:enabled="false"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.intent.action.POWER_USAGE_SUMMARY" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2244,18 +2251,11 @@
android:value="com.android.settings.fuelgauge.PowerUsageSummary" />
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name=".fuelgauge.PowerUsageSummary"
- android:label="@string/power_usage_summary_title"
- android:exported="true"
- android:targetActivity="Settings$PowerUsageSummaryActivity">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.fuelgauge.PowerUsageSummary" />
- </activity-alias>
-
<activity android:name=".Settings$PowerUsageSummaryLegacyActivity"
android:label="@string/power_usage_summary_title"
- android:icon="@drawable/ic_homepage_battery">
+ android:icon="@drawable/ic_homepage_battery"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.POWER_USAGE_SUMMARY" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2269,10 +2269,12 @@
android:value="com.android.settings.fuelgauge.PowerUsageSummaryLegacy" />
</activity>
- <activity android:name="Settings$BatterySaverSettingsActivity"
- android:label="@string/battery_saver"
- android:icon="@drawable/ic_settings_battery"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$BatterySaverSettingsActivity"
+ android:label="@string/battery_saver"
+ android:icon="@drawable/ic_settings_battery"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.BATTERY_SAVER_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2294,9 +2296,10 @@
</intent-filter>
</activity>
- <activity android:name="Settings$AccountSyncSettingsActivity"
+ <activity
+ android:name="Settings$AccountSyncSettingsActivity"
android:label="@string/account_sync_settings_title"
- android:taskAffinity=""
+ android:taskAffinity="com.android.settings"
android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ACCOUNT_SYNC_SETTINGS" />
@@ -2311,9 +2314,10 @@
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
android:value="true" />
</activity>
- <activity android:name="Settings$ManagedProfileSettingsActivity"
+ <activity
+ android:name="Settings$ManagedProfileSettingsActivity"
android:label="@string/managed_profile_settings_title"
- android:taskAffinity=""
+ android:taskAffinity="com.android.settings"
android:parentActivityName="Settings"
android:permission="android.permission.MANAGE_USERS">
<intent-filter android:priority="1">
@@ -2324,12 +2328,13 @@
android:value="com.android.settings.accounts.ManagedProfileSettings" />
</activity>
- <activity android:name="com.android.settings.accounts.AddAccountSettings"
+ <activity
+ android:name="com.android.settings.accounts.AddAccountSettings"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/header_add_an_account"
android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$UserAndAccountDashboardActivity">
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ADD_ACCOUNT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2406,33 +2411,14 @@
android:value="com.android.settings.security.CryptKeeperSettings" />
</activity>
- <activity android:name="Settings$DataPlanUsageSummaryActivity"
- android:label="@string/data_usage_summary_title"
- android:icon="@drawable/ic_settings_data_usage"
- android:taskAffinity="">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="com.android.settings.SHORTCUT" />
- </intent-filter>
- <intent-filter android:priority="10">
- <action android:name="com.android.settings.action.SETTINGS" />
- </intent-filter>
- <meta-data android:name="com.android.settings.category"
- android:value="com.android.settings.category.ia.wireless" />
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.datausage.DataPlanUsageSummary" />
- </activity>
-
- <activity android:name="Settings$DataUsageSummaryActivity"
- android:label="@string/data_usage_summary_title"
- android:icon="@drawable/ic_settings_data_usage"
- android:taskAffinity="">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="com.android.settings.SHORTCUT" />
- </intent-filter>
+ <activity
+ android:name="Settings$DataUsageSummaryActivity"
+ android:label="@string/data_usage_summary_title"
+ android:icon="@drawable/ic_settings_data_usage"
+ android:enabled="false"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
+ <!-- TODO(b/70950124): add shortcut intent-filter -->
<intent-filter android:priority="10">
<action android:name="com.android.settings.action.SETTINGS" />
</intent-filter>
@@ -2442,9 +2428,31 @@
android:value="com.android.settings.datausage.DataUsageSummary" />
</activity>
- <activity android:name="Settings$MobileDataUsageListActivity"
- android:label="@string/cellular_data_usage"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$DataUsageSummaryLegacyActivity"
+ android:label="@string/data_usage_summary_title"
+ android:icon="@drawable/ic_settings_data_usage"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="com.android.settings.SHORTCUT" />
+ </intent-filter>
+ <intent-filter android:priority="10">
+ <action android:name="com.android.settings.action.SETTINGS" />
+ </intent-filter>
+ <meta-data android:name="com.android.settings.category"
+ android:value="com.android.settings.category.ia.wireless" />
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.datausage.DataUsageSummaryLegacy" />
+ </activity>
+
+ <activity
+ android:name="Settings$MobileDataUsageListActivity"
+ android:label="@string/cellular_data_usage"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.MOBILE_DATA_USAGE" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2453,10 +2461,12 @@
android:value="com.android.settings.datausage.DataUsageList" />
</activity>
- <activity android:name="Settings$DreamSettingsActivity"
- android:label="@string/screensaver_settings_title"
- android:icon="@drawable/ic_settings_display"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$DreamSettingsActivity"
+ android:label="@string/screensaver_settings_title"
+ android:icon="@drawable/ic_settings_display"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.DREAM_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2472,10 +2482,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$UserSettingsActivity"
- android:label="@string/user_settings_title"
- android:icon="@drawable/ic_settings_multiuser"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$UserSettingsActivity"
+ android:label="@string/user_settings_title"
+ android:icon="@drawable/ic_settings_multiuser"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.USER_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2495,10 +2507,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$PaymentSettingsActivity"
- android:label="@string/nfc_payment_settings_title"
- android:icon="@drawable/ic_settings_nfc_payment"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$PaymentSettingsActivity"
+ android:label="@string/nfc_payment_settings_title"
+ android:icon="@drawable/ic_settings_nfc_payment"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NFC_PAYMENT_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2527,7 +2541,7 @@
<activity android:name=".nfc.HowItWorks"
android:label="@string/nfc_payment_settings_title"
- android:parentActivityName="Settings$PaymentSettingsActivity">
+ android:parentActivityName="Settings$PaymentSettingsActivity"
android:excludeFromRecents="true">
</activity>
@@ -2541,9 +2555,11 @@
</intent-filter>
</activity>
- <activity android:name="Settings$NotificationAccessSettingsActivity"
- android:label="@string/manage_notification_access_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$NotificationAccessSettingsActivity"
+ android:label="@string/manage_notification_access_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2556,9 +2572,11 @@
android:value="com.android.settings.notification.NotificationAccessSettings" />
</activity>
- <activity android:name="Settings$VrListenersSettingsActivity"
- android:label="@string/vr_listeners_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$VrListenersSettingsActivity"
+ android:label="@string/vr_listeners_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.VR_LISTENER_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2571,9 +2589,11 @@
android:value="com.android.settings.applications.VrListenerSettings" />
</activity>
- <activity android:name="Settings$PictureInPictureSettingsActivity"
+ <activity
+ android:name="Settings$PictureInPictureSettingsActivity"
android:label="@string/picture_in_picture_title"
- android:taskAffinity="">
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.PICTURE_IN_PICTURE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2586,9 +2606,11 @@
android:value="com.android.settings.applications.appinfo.PictureInPictureSettings" />
</activity>
- <activity android:name="Settings$AppPictureInPictureSettingsActivity"
+ <activity
+ android:name="Settings$AppPictureInPictureSettingsActivity"
android:label="@string/picture_in_picture_title"
- android:taskAffinity="">
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.settings.PICTURE_IN_PICTURE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2598,9 +2620,11 @@
android:value="com.android.settings.applications.appinfo.PictureInPictureDetails" />
</activity>
- <activity android:name="Settings$ZenAccessSettingsActivity"
- android:label="@string/manage_zen_access_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ZenAccessSettingsActivity"
+ android:label="@string/manage_zen_access_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NOTIFICATION_POLICY_ACCESS_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2613,10 +2637,12 @@
android:value="com.android.settings.notification.ZenAccessSettings" />
</activity>
- <activity android:name="Settings$ConfigureNotificationSettingsActivity"
- android:label="@string/configure_notification_settings"
- android:exported="true"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ConfigureNotificationSettingsActivity"
+ android:label="@string/configure_notification_settings"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.NOTIFICATION_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2638,11 +2664,13 @@
</activity>
<!-- Keep compatibility with old shortcuts. -->
- <activity android:name="Settings$SoundSettingsActivity"
- android:label="@string/sound_settings"
- android:icon="@drawable/ic_homepage_sound"
- android:taskAffinity=""
- android:exported="true">
+ <activity
+ android:name="Settings$SoundSettingsActivity"
+ android:label="@string/sound_settings"
+ android:icon="@drawable/ic_homepage_sound"
+ android:exported="true"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.SOUND_SETTINGS" />
<action android:name="android.settings.SOUND_SETTINGS" />
@@ -2668,28 +2696,6 @@
android:resource="@string/sound_dashboard_summary"/>
</activity>
- <!-- Keep compatibility with old shortcuts. -->
- <activity-alias android:name="SoundSettings"
- android:label="@string/sound_settings"
- android:exported="true"
- android:targetActivity="Settings$SoundSettingsActivity">
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.notification.SoundSettings" />
- </activity-alias>
-
- <!-- Show apps for which application-level notification settings are applicable -->
- <activity android:name="Settings$NotificationAppListActivity"
- android:label="@string/app_notifications_title"
- android:icon="@drawable/ic_notifications"
- android:exported="true"
- android:taskAffinity="">
- <intent-filter android:priority="150">
- <action android:name="com.android.settings.action.SETTINGS" />
- </intent-filter>
- <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.applications.NotificationApps" />
- </activity>
-
<!-- Show application-level notification settings (app passed in as extras) -->
<activity android:name="Settings$AppNotificationSettingsActivity"
android:exported="true">
@@ -2716,7 +2722,6 @@
android:value="com.android.settings.notification.ChannelGroupNotificationSettings" />
</activity>
-
<!-- Show channel-level notification settings (channel passed in as extras) -->
<activity android:name="Settings$ChannelNotificationSettingsActivity"
android:exported="true">
@@ -2733,10 +2738,12 @@
</activity>
<!-- Show Manual (from settings item) -->
- <activity android:name="ManualDisplayActivity"
- android:label="@string/manual"
- android:taskAffinity=""
- android:enabled="@bool/config_show_manual">
+ <activity
+ android:name="ManualDisplayActivity"
+ android:label="@string/manual"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings"
+ android:enabled="@bool/config_show_manual">
<intent-filter>
<action android:name="android.settings.SHOW_MANUAL" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2746,10 +2753,12 @@
</activity>
<!-- Show regulatory info (from settings item or dialing "*#07#") -->
- <activity android:name="RegulatoryInfoDisplayActivity"
- android:label="@string/regulatory_labels"
- android:taskAffinity=""
- android:enabled="@bool/config_show_regulatory_info">
+ <activity
+ android:name="RegulatoryInfoDisplayActivity"
+ android:label="@string/regulatory_labels"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings"
+ android:enabled="@bool/config_show_regulatory_info">
<intent-filter>
<action android:name="android.settings.SHOW_REGULATORY_INFO" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2808,10 +2817,12 @@
android:resource="@xml/file_paths" />
</provider>
- <activity android:name="Settings$SimSettingsActivity"
- android:label="@string/sim_settings_title"
- android:icon="@drawable/ic_settings_sim"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$SimSettingsActivity"
+ android:label="@string/sim_settings_title"
+ android:icon="@drawable/ic_settings_sim"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="com.android.settings.sim.SIM_SUB_INFO_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2833,11 +2844,11 @@
<activity android:name=".sim.SimPreferenceDialog"
android:theme="@*android:style/Theme.DeviceDefault.Settings.Dialog.NoActionBar"
- android:excludeFromRecents="true">
- </activity>
+ android:excludeFromRecents="true" />
- <activity android:name=".wifi.RequestToggleWiFiActivity"
- android:theme="@android:style/Theme.DeviceDefault.Light.Dialog.Alert"
+ <activity
+ android:name=".wifi.RequestToggleWiFiActivity"
+ android:theme="@android:style/Theme.DeviceDefault.Light.Dialog.Alert"
android:excludeFromRecents="true"
android:permission="android.permission.CHANGE_WIFI_STATE">
<intent-filter>
@@ -2847,7 +2858,8 @@
</intent-filter>
</activity>
- <activity android:name=".wifi.WifiDialogActivity"
+ <activity
+ android:name=".wifi.WifiDialogActivity"
android:label=""
android:theme="@style/Transparent"
android:excludeFromRecents="true"
@@ -2869,9 +2881,11 @@
</intent-filter>
</activity>
- <activity android:name="Settings$WifiCallingSettingsActivity"
- android:label="@string/wifi_calling_settings_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$WifiCallingSettingsActivity"
+ android:label="@string/wifi_calling_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.WIFI_CALLING_SETTINGS" />
@@ -2879,21 +2893,20 @@
<category android:name="android.intent.category.VOICE_LAUNCH" />
</intent-filter>
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.WifiCallingSettings" />
+ android:value="com.android.settings.wifi.calling.WifiCallingSettings" />
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
android:value="true" />
</activity>
- <activity android:name=".wifi.WifiCallingSuggestionActivity"
+ <activity android:name=".wifi.calling.WifiCallingSuggestionActivity"
android:label="@string/wifi_calling_settings_title"
- android:icon="@drawable/ic_settings_wireless"
- android:taskAffinity="">
+ android:icon="@drawable/ic_settings_wireless">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="com.android.settings.suggested.category.FIRST_IMPRESSION" />
</intent-filter>
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.WifiCallingSettings" />
+ android:value="com.android.settings.wifi.calling.WifiCallingSettings" />
<meta-data android:name="com.android.settings.dismiss"
android:value="10,14,30" />
<meta-data android:name="com.android.settings.title"
@@ -2923,9 +2936,11 @@
</intent-filter>
</provider>
- <activity android:name="Settings$OverlaySettingsActivity"
- android:label="@string/draw_overlay"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$OverlaySettingsActivity"
+ android:label="@string/draw_overlay"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.action.MANAGE_OVERLAY_PERMISSION" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2934,9 +2949,11 @@
android:value="com.android.settings.applications.manageapplications.ManageApplications" />
</activity>
- <activity android:name="Settings$AppDrawOverlaySettingsActivity"
- android:label="@string/draw_overlay"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$AppDrawOverlaySettingsActivity"
+ android:label="@string/draw_overlay"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.action.MANAGE_OVERLAY_PERMISSION" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2946,9 +2963,11 @@
android:value="com.android.settings.applications.appinfo.DrawOverlayDetails" />
</activity>
- <activity android:name="Settings$WriteSettingsActivity"
- android:label="@string/write_settings_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$WriteSettingsActivity"
+ android:label="@string/write_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.action.MANAGE_WRITE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2957,10 +2976,11 @@
android:value="com.android.settings.applications.manageapplications.ManageApplications" />
</activity>
-
- <activity android:name="Settings$AppWriteSettingsActivity"
- android:label="@string/write_settings_title"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$AppWriteSettingsActivity"
+ android:label="@string/write_settings_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.action.MANAGE_WRITE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -2970,9 +2990,11 @@
android:value="com.android.settings.applications.appinfo.WriteSettingsDetails" />
</activity>
- <activity android:name="Settings$ManageExternalSourcesActivity"
- android:label="@string/install_other_apps"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$ManageExternalSourcesActivity"
+ android:label="@string/install_other_apps"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.MANAGE_UNKNOWN_APP_SOURCES" />
<category android:name="android.intent.category.DEFAULT" />
@@ -3003,10 +3025,12 @@
</intent-filter>
</activity>
- <activity android:name="Settings$AdvancedAppsActivity"
- android:taskAffinity=""
- android:exported="true"
- android:label="@string/app_default_dashboard_title">
+ <activity
+ android:name="Settings$AdvancedAppsActivity"
+ android:exported="true"
+ android:label="@string/app_default_dashboard_title"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.MANAGE_DEFAULT_APPS_SETTINGS" />
<action android:name="android.settings.HOME_SETTINGS" />
@@ -3062,10 +3086,12 @@
android:value="true" />
</activity>
- <activity android:name="Settings$AutomaticStorageManagerSettingsActivity"
- android:exported="@bool/config_storage_manager_settings_enabled"
- android:label="@string/automatic_storage_manager_settings"
- android:taskAffinity="">
+ <activity
+ android:name="Settings$AutomaticStorageManagerSettingsActivity"
+ android:exported="@bool/config_storage_manager_settings_enabled"
+ android:label="@string/automatic_storage_manager_settings"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="1">
<action android:name="android.settings.STORAGE_MANAGER_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
@@ -3073,12 +3099,13 @@
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.deletionhelper.AutomaticStorageManagerSettings" />
</activity>
- <!-- Information architecture host activities -->
- <!-- Alias for battery settings in new IA. Remove and merge metadata into TargetActivity -->
- <activity android:name=".Settings$AppAndNotificationDashboardActivity"
- android:label="@string/app_and_notification_dashboard_title"
- android:icon="@drawable/ic_homepage_apps">
+ <activity
+ android:name=".Settings$AppAndNotificationDashboardActivity"
+ android:label="@string/app_and_notification_dashboard_title"
+ android:icon="@drawable/ic_homepage_apps"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="9">
<action android:name="com.android.settings.action.SETTINGS"/>
</intent-filter>
@@ -3090,9 +3117,12 @@
android:resource="@string/app_and_notification_dashboard_summary"/>
</activity>
- <activity android:name=".Settings$UserAndAccountDashboardActivity"
- android:label="@string/account_dashboard_title"
- android:icon="@drawable/ic_homepage_accounts">
+ <activity
+ android:name=".Settings$AccountDashboardActivity"
+ android:label="@string/account_dashboard_title"
+ android:icon="@drawable/ic_homepage_accounts"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="3">
<action android:name="com.android.settings.action.SETTINGS"/>
</intent-filter>
@@ -3101,16 +3131,17 @@
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
- android:value="com.android.settings.accounts.UserAndAccountDashboardFragment"/>
+ android:value="com.android.settings.accounts.AccountDashboardFragment"/>
<meta-data android:name="com.android.settings.category"
android:value="com.android.settings.category.ia.homepage"/>
- <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
- android:value="true" />
</activity>
- <activity android:name=".Settings$SystemDashboardActivity"
- android:label="@string/header_category_system"
- android:icon="@drawable/ic_homepage_system_dashboard">
+ <activity
+ android:name=".Settings$SystemDashboardActivity"
+ android:label="@string/header_category_system"
+ android:icon="@drawable/ic_homepage_system_dashboard"
+ android:taskAffinity="com.android.settings"
+ android:parentActivityName="Settings">
<intent-filter android:priority="-1">
<action android:name="com.android.settings.action.SETTINGS"/>
</intent-filter>
@@ -3140,8 +3171,6 @@
android:resource="@string/support_summary"/>
</activity>
- <!-- End of information architecture host activities -->
-
<service
android:name=".SettingsDumpService"
android:exported="true"
@@ -3236,16 +3265,11 @@
<activity android:name="Settings$AdvancedConnectedDeviceActivity"
android:label="@string/connected_device_connections_title"
android:taskAffinity="com.android.settings"
- android:parentActivityName="Settings$ConnectedDeviceDashboardActivity"
- android:enabled="false">
+ android:parentActivityName="Settings$ConnectedDeviceDashboardActivity">
<intent-filter android:priority="1">
<action android:name="com.android.settings.ADVANCED_CONNECTED_DEVICE_SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
<meta-data android:name="com.android.settings.FRAGMENT_CLASS"
android:value="com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment" />
<meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
diff --git a/color-check-baseline.xml b/color-check-baseline.xml
index f3050c4..21b9a09 100644
--- a/color-check-baseline.xml
+++ b/color-check-baseline.xml
@@ -265,43 +265,11 @@
priority="4"
summary="Using hardcoded color"
explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <color name="setup_divider_color_dark">#33ffffff</color>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="res/values/colors.xml"
- line="33"
- column="5"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <color name="setup_divider_color_light">#33000000</color>"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="res/values/colors.xml"
- line="34"
- column="5"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
errorLine1=" <color name="setup_lock_pattern_view_regular_color_dark">#ffbdbdbd</color>"
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="35"
+ line="33"
column="5"/>
</issue>
@@ -317,7 +285,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="37"
+ line="35"
column="5"/>
</issue>
@@ -333,7 +301,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="39"
+ line="37"
column="5"/>
</issue>
@@ -349,7 +317,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="40"
+ line="38"
column="5"/>
</issue>
@@ -365,7 +333,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="41"
+ line="39"
column="5"/>
</issue>
@@ -381,7 +349,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="43"
+ line="41"
column="5"/>
</issue>
@@ -397,7 +365,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="44"
+ line="42"
column="5"/>
</issue>
@@ -413,7 +381,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="46"
+ line="44"
column="5"/>
</issue>
@@ -429,7 +397,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="51"
+ line="49"
column="5"/>
</issue>
@@ -445,7 +413,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="52"
+ line="50"
column="5"/>
</issue>
@@ -461,7 +429,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="53"
+ line="51"
column="5"/>
</issue>
@@ -477,7 +445,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="55"
+ line="53"
column="5"/>
</issue>
@@ -493,7 +461,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="56"
+ line="54"
column="5"/>
</issue>
@@ -509,7 +477,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="58"
+ line="56"
column="5"/>
</issue>
@@ -525,7 +493,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="61"
+ line="59"
column="5"/>
</issue>
@@ -541,7 +509,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="62"
+ line="60"
column="5"/>
</issue>
@@ -557,7 +525,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="66"
+ line="64"
column="5"/>
</issue>
@@ -573,7 +541,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="67"
+ line="65"
column="5"/>
</issue>
@@ -589,7 +557,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="68"
+ line="66"
column="5"/>
</issue>
@@ -605,7 +573,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="69"
+ line="67"
column="5"/>
</issue>
@@ -621,7 +589,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="71"
+ line="69"
column="5"/>
</issue>
@@ -637,7 +605,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="74"
+ line="72"
column="5"/>
</issue>
@@ -653,7 +621,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="76"
+ line="74"
column="5"/>
</issue>
@@ -669,7 +637,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="77"
+ line="75"
column="5"/>
</issue>
@@ -685,7 +653,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="80"
+ line="78"
column="5"/>
</issue>
@@ -701,7 +669,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="81"
+ line="79"
column="5"/>
</issue>
@@ -717,7 +685,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="82"
+ line="80"
column="5"/>
</issue>
@@ -733,7 +701,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="83"
+ line="81"
column="5"/>
</issue>
@@ -749,7 +717,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="84"
+ line="82"
column="5"/>
</issue>
@@ -765,7 +733,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="87"
+ line="85"
column="5"/>
</issue>
@@ -781,7 +749,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="88"
+ line="86"
column="5"/>
</issue>
@@ -797,7 +765,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="89"
+ line="87"
column="5"/>
</issue>
@@ -813,7 +781,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="90"
+ line="88"
column="5"/>
</issue>
@@ -829,7 +797,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="91"
+ line="89"
column="5"/>
</issue>
@@ -845,7 +813,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="92"
+ line="90"
column="5"/>
</issue>
@@ -861,7 +829,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="93"
+ line="91"
column="5"/>
</issue>
@@ -877,7 +845,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="94"
+ line="92"
column="5"/>
</issue>
@@ -893,7 +861,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="95"
+ line="93"
column="5"/>
</issue>
@@ -909,7 +877,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="96"
+ line="94"
column="5"/>
</issue>
@@ -925,7 +893,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="97"
+ line="95"
column="5"/>
</issue>
@@ -941,7 +909,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="100"
+ line="98"
column="5"/>
</issue>
@@ -957,7 +925,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="102"
+ line="100"
column="5"/>
</issue>
@@ -973,7 +941,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="105"
+ line="103"
column="5"/>
</issue>
@@ -989,7 +957,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="107"
+ line="105"
column="5"/>
</issue>
@@ -1005,7 +973,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="110"
+ line="108"
column="5"/>
</issue>
@@ -1021,7 +989,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="113"
+ line="111"
column="5"/>
</issue>
@@ -1037,7 +1005,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="116"
+ line="114"
column="5"/>
</issue>
@@ -1053,7 +1021,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="119"
+ line="117"
column="5"/>
</issue>
@@ -1069,7 +1037,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="120"
+ line="118"
column="5"/>
</issue>
@@ -1085,7 +1053,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="123"
+ line="121"
column="5"/>
</issue>
@@ -1101,7 +1069,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="124"
+ line="122"
column="5"/>
</issue>
@@ -1117,7 +1085,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="125"
+ line="123"
column="5"/>
</issue>
@@ -1133,7 +1101,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="126"
+ line="124"
column="5"/>
</issue>
@@ -1149,7 +1117,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="127"
+ line="125"
column="5"/>
</issue>
@@ -1165,7 +1133,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="128"
+ line="126"
column="5"/>
</issue>
@@ -1181,7 +1149,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="129"
+ line="127"
column="5"/>
</issue>
@@ -1197,7 +1165,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="130"
+ line="128"
column="5"/>
</issue>
@@ -1213,7 +1181,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="131"
+ line="129"
column="5"/>
</issue>
@@ -1229,7 +1197,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="132"
+ line="130"
column="5"/>
</issue>
@@ -1245,7 +1213,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="133"
+ line="131"
column="5"/>
</issue>
@@ -1261,7 +1229,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="134"
+ line="132"
column="5"/>
</issue>
@@ -1277,7 +1245,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/colors.xml"
- line="135"
+ line="133"
column="5"/>
</issue>
@@ -2493,7 +2461,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="res/values-en-rAU/strings.xml"
- line="2354"
+ line="2395"
column="64"/>
</issue>
@@ -2509,7 +2477,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="res/values-en-rCA/strings.xml"
- line="2354"
+ line="2395"
column="64"/>
</issue>
@@ -2525,7 +2493,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="res/values-en-rGB/strings.xml"
- line="2354"
+ line="2395"
column="64"/>
</issue>
@@ -2541,7 +2509,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="res/values-en-rIN/strings.xml"
- line="2354"
+ line="2395"
column="64"/>
</issue>
@@ -2573,7 +2541,7 @@
errorLine2=" ~~~~~~~~~~~~~~~~~~~">
<location
file="res/values/strings.xml"
- line="5651"
+ line="5638"
column="36"/>
</issue>
@@ -2665,27 +2633,11 @@
priority="4"
summary="Using hardcoded color"
explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <item name="setup_divider_color">@color/setup_divider_color_dark</item>"
- errorLine2=" ^">
+ errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>"
+ errorLine2=" ^">
<location
file="res/values/themes.xml"
line="33"
- column="42"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>"
- errorLine2=" ^">
- <location
- file="res/values/themes.xml"
- line="35"
column="40"/>
</issue>
@@ -2697,27 +2649,11 @@
priority="4"
summary="Using hardcoded color"
explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <item name="setup_divider_color">@color/setup_divider_color_light</item>"
- errorLine2=" ^">
- <location
- file="res/values/themes.xml"
- line="53"
- column="42"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>"
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="55"
+ line="52"
column="40"/>
</issue>
@@ -2729,27 +2665,11 @@
priority="4"
summary="Using hardcoded color"
explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <item name="setup_divider_color">@color/setup_divider_color_dark</item>"
- errorLine2=" ^">
- <location
- file="res/values/themes.xml"
- line="72"
- column="42"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>"
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="74"
+ line="70"
column="40"/>
</issue>
@@ -2761,27 +2681,43 @@
priority="4"
summary="Using hardcoded color"
explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
- errorLine1=" <item name="setup_divider_color">@color/setup_divider_color_light</item>"
- errorLine2=" ^">
- <location
- file="res/values/themes.xml"
- line="92"
- column="42"/>
- </issue>
-
- <issue
- id="HardCodedColor"
- severity="Error"
- message="Avoid using hardcoded color"
- category="Correctness"
- priority="4"
- summary="Using hardcoded color"
- explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>"
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="94"
+ line="89"
+ column="40"/>
+ </issue>
+
+ <issue
+ id="HardCodedColor"
+ severity="Error"
+ message="Avoid using hardcoded color"
+ category="Correctness"
+ priority="4"
+ summary="Using hardcoded color"
+ explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
+ errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>"
+ errorLine2=" ^">
+ <location
+ file="res/values/themes.xml"
+ line="107"
+ column="40"/>
+ </issue>
+
+ <issue
+ id="HardCodedColor"
+ severity="Error"
+ message="Avoid using hardcoded color"
+ category="Correctness"
+ priority="4"
+ summary="Using hardcoded color"
+ explanation="Hardcoded color values are bad because theme changes cannot be uniformly applied.Instead use the theme specific colors such as `?android:attr/textColorPrimary` in attributes.
This ensures that a theme change from a light to a dark theme can be uniformlyapplied across the app."
+ errorLine1=" <item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>"
+ errorLine2=" ^">
+ <location
+ file="res/values/themes.xml"
+ line="126"
column="40"/>
</issue>
@@ -2797,7 +2733,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="154"
+ line="200"
column="43"/>
</issue>
@@ -2813,7 +2749,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="155"
+ line="201"
column="42"/>
</issue>
@@ -2829,7 +2765,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="156"
+ line="202"
column="45"/>
</issue>
@@ -2845,7 +2781,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="233"
+ line="279"
column="47"/>
</issue>
@@ -2861,7 +2797,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="308"
+ line="347"
column="45"/>
</issue>
@@ -2877,7 +2813,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="309"
+ line="348"
column="49"/>
</issue>
@@ -2893,7 +2829,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="317"
+ line="356"
column="45"/>
</issue>
@@ -2909,7 +2845,7 @@
errorLine2=" ^">
<location
file="res/values/themes.xml"
- line="318"
+ line="357"
column="49"/>
</issue>
diff --git a/res/color/preference_highligh_color.xml b/res/color/preference_highligh_color.xml
new file mode 100644
index 0000000..0a8f770
--- /dev/null
+++ b/res/color/preference_highligh_color.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2018 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.
+ -->
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:alpha="0.1" android:color="?android:attr/colorAccent" />
+</selector>
\ No newline at end of file
diff --git a/res/drawable-hdpi/ic_wps_dark.png b/res/drawable-hdpi/ic_wps_dark.png
deleted file mode 100644
index 918b0cc..0000000
--- a/res/drawable-hdpi/ic_wps_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_wps_light.png b/res/drawable-hdpi/ic_wps_light.png
deleted file mode 100644
index 5ad9f3e..0000000
--- a/res/drawable-hdpi/ic_wps_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_wps_dark.png b/res/drawable-mdpi/ic_wps_dark.png
deleted file mode 100644
index 77d73a8..0000000
--- a/res/drawable-mdpi/ic_wps_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_wps_light.png b/res/drawable-mdpi/ic_wps_light.png
deleted file mode 100644
index ef560fa..0000000
--- a/res/drawable-mdpi/ic_wps_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_wps_dark.png b/res/drawable-xhdpi/ic_wps_dark.png
deleted file mode 100644
index 3ea4a3b..0000000
--- a/res/drawable-xhdpi/ic_wps_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/ic_wps_light.png b/res/drawable-xhdpi/ic_wps_light.png
deleted file mode 100644
index f913d2c..0000000
--- a/res/drawable-xhdpi/ic_wps_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_wps_dark.png b/res/drawable-xxhdpi/ic_wps_dark.png
deleted file mode 100644
index 8b38db8..0000000
--- a/res/drawable-xxhdpi/ic_wps_dark.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_wps_light.png b/res/drawable-xxhdpi/ic_wps_light.png
deleted file mode 100644
index 0084175..0000000
--- a/res/drawable-xxhdpi/ic_wps_light.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable/ic_event.xml b/res/drawable/ic_event.xml
new file mode 100644
index 0000000..a82d754
--- /dev/null
+++ b/res/drawable/ic_event.xml
@@ -0,0 +1,34 @@
+<!--
+Copyright (C) 2018 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.
+-->
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item>
+ <shape android:shape="oval">
+ <solid
+ android:color="?android:attr/colorAccent" />
+ <size
+ android:width="@dimen/dashboard_tile_image_size"
+ android:height="@dimen/dashboard_tile_image_size" />
+ </shape>
+ </item>
+
+ <item
+ android:width="@dimen/dashboard_tile_foreground_image_size"
+ android:height="@dimen/dashboard_tile_foreground_image_size"
+ android:start="@dimen/dashboard_tile_foreground_image_inset"
+ android:top="@dimen/dashboard_tile_foreground_image_inset"
+ android:drawable="@drawable/ic_event_white" />
+</layer-list>
diff --git a/res/drawable/ic_event_white.xml b/res/drawable/ic_event_white.xml
new file mode 100644
index 0000000..d80429b
--- /dev/null
+++ b/res/drawable/ic_event_white.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2018 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24.0dp"
+ android:height="24.0dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+
+ <path
+ android:fillColor="#FFFFFFFF"
+ android:pathData="M17.0,12.0l-5.0,0.0l0.0,5.0l5.0,0.0l0.0,-5.0zM16.0,1.0l0.0,2.0L8.0,3.0L8.0,1.0L6.0,1.0l0.0,2.0L5.0,3.0c-1.11,0.0 -1.9,0.9 -1.99,2.0L3.0,19.0c0.0,1.0 0.89,2.0 2.0,2.0l14.0,0.0c1.1,0.0 2.0,-0.9 2.0,-2.0L21.0,5.0c0.0,-1.1 -0.9,-2.0 -2.0,-2.0l-1.0,0.0L18.0,1.0l-2.0,0.0zm3.0,18.0L5.0,19.0L5.0,8.0l14.0,0.0l0.0,11.0z"/>
+</vector>
diff --git a/res/drawable/ic_timelapse.xml b/res/drawable/ic_timelapse.xml
new file mode 100644
index 0000000..ba97bae
--- /dev/null
+++ b/res/drawable/ic_timelapse.xml
@@ -0,0 +1,34 @@
+<!--
+Copyright (C) 2018 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.
+-->
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <item>
+ <shape android:shape="oval">
+ <solid
+ android:color="?android:attr/colorAccent" />
+ <size
+ android:width="@dimen/dashboard_tile_image_size"
+ android:height="@dimen/dashboard_tile_image_size" />
+ </shape>
+ </item>
+
+ <item
+ android:width="@dimen/dashboard_tile_foreground_image_size"
+ android:height="@dimen/dashboard_tile_foreground_image_size"
+ android:start="@dimen/dashboard_tile_foreground_image_inset"
+ android:top="@dimen/dashboard_tile_foreground_image_inset"
+ android:drawable="@drawable/ic_timelapse_white" />
+</layer-list>
diff --git a/res/drawable/ic_timelapse_white.xml b/res/drawable/ic_timelapse_white.xml
new file mode 100644
index 0000000..f287747
--- /dev/null
+++ b/res/drawable/ic_timelapse_white.xml
@@ -0,0 +1,25 @@
+<!--
+Copyright (C) 2018 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.
+-->
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24.0dp"
+ android:height="24.0dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0">
+
+ <path
+ android:fillColor="#FFFFFFFF"
+ android:pathData="M16.24,7.76C15.07,6.59 13.54,6.0 12.0,6.0l0.0,6.0l-4.24,4.24c2.34,2.34 6.14,2.34 8.49,0.0 2.34,-2.34 2.34,-6.14 -0.01,-8.48zM12.0,2.0C6.48,2.0 2.0,6.48 2.0,12.0s4.48,10.0 10.0,10.0 10.0,-4.48 10.0,-10.0S17.52,2.0 12.0,2.0zm0.0,18.0c-4.42,0.0 -8.0,-3.58 -8.0,-8.0s3.58,-8.0 8.0,-8.0 8.0,3.58 8.0,8.0 -3.58,8.0 -8.0,8.0z"/>
+</vector>
diff --git a/res/layout/suggestion_condition_footer.xml b/res/layout/condition_footer.xml
similarity index 100%
rename from res/layout/suggestion_condition_footer.xml
rename to res/layout/condition_footer.xml
diff --git a/res/layout/suggestion_condition_header.xml b/res/layout/condition_header.xml
similarity index 100%
rename from res/layout/suggestion_condition_header.xml
rename to res/layout/condition_header.xml
diff --git a/res/layout/data_plans_sync_time_preference.xml b/res/layout/data_plans_sync_time_preference.xml
deleted file mode 100644
index bb9da90..0000000
--- a/res/layout/data_plans_sync_time_preference.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2017 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.
--->
-
-<!-- Shows the data plans sync time -->
-<TextView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@android:id/title"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="@dimen/preference_no_icon_padding_start"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:gravity="end"
- android:textColor="?android:attr/textColorSecondary"/>
diff --git a/res/layout/data_usage_summary_preference.xml b/res/layout/data_usage_summary_preference.xml
new file mode 100644
index 0000000..445e7cd
--- /dev/null
+++ b/res/layout/data_usage_summary_preference.xml
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2018 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.
+-->
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingStart="@dimen/preference_no_icon_padding_start"
+ android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
+ android:orientation="vertical"
+ android:background="@drawable/selectable_card_grey"
+ android:selectable="false"
+ style="@style/EntityHeader">
+
+ <TextView
+ android:id="@+id/usage_title"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+ android:textColor="?android:attr/textColorSecondary"
+ android:paddingBottom="5dp"
+ android:text="@string/data_usage_title" />
+
+ <TextView
+ android:id="@android:id/title"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="5dp"
+ android:fontFamily="@*android:string/config_headlineFontFamily"
+ android:textColor="?android:attr/colorAccent"
+ android:textAppearance="@android:style/TextAppearance.Material.Large" />
+
+ <TextView
+ android:id="@android:id/summary"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+ android:textColor="?android:attr/textColorSecondary"
+ android:paddingBottom="5dp" />
+
+ <com.android.settings.widget.LinearColorBar
+ android:id="@+id/color_bar"
+ android:layout_width="match_parent"
+ android:layout_height="28dp" />
+
+ <LinearLayout
+ android:id="@+id/label_bar"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingTop="2dp"
+ android:orientation="horizontal">
+
+ <TextView android:id="@android:id/text1"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+ android:textColor="?android:attr/textColorSecondary" />
+
+ <Space
+ android:layout_width="0dp"
+ android:layout_height="wrap_content"
+ android:layout_weight="1" />
+
+ <TextView android:id="@android:id/text2"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textAppearance="?android:attr/textAppearanceListItemSecondary"
+ android:textColor="?android:attr/textColorSecondary" />
+
+ </LinearLayout>
+
+ <TextView
+ android:id="@+id/cycle_left_time"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingBottom="5dp" />
+
+ <TextView
+ android:id="@+id/carrier_and_update"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingBottom="5dp" />
+
+ <Button
+ android:id="@+id/launch_mdp_app_button"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="left"
+ android:text="@string/launch_mdp_app_text"
+ style="@style/ActionPrimaryButton" />
+
+ <TextView
+ android:id="@+id/data_limits"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:paddingBottom="5dp" />
+
+</LinearLayout>
+
diff --git a/res/layout/manage_data_plans_preference.xml b/res/layout/manage_data_plans_preference.xml
deleted file mode 100644
index 0db5698..0000000
--- a/res/layout/manage_data_plans_preference.xml
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2017 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.
--->
-
-<FrameLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="@dimen/preference_no_icon_padding_start"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:paddingTop="8dp"
- android:paddingBottom="16dp">
- <Button
- android:id="@+id/manage_data_plans"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/data_plan_usage_manage_plans_button_text"
- android:textAllCaps="true"
- style="@style/ActionPrimaryButton" />
-</FrameLayout>
diff --git a/res/layout/search_feedback.xml b/res/layout/preference_widget_gear_no_bg.xml
similarity index 64%
rename from res/layout/search_feedback.xml
rename to res/layout/preference_widget_gear_no_bg.xml
index cdb0545..89d34d4 100644
--- a/res/layout/search_feedback.xml
+++ b/res/layout/preference_widget_gear_no_bg.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
+<!-- Copyright (C) 2018 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.
@@ -14,10 +14,14 @@
limitations under the License.
-->
-<View
+<!-- Settings button -->
+<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/feedback_popup"
- android:layout_width="0dp"
- android:layout_height="0dp"
- android:visibility="gone">
-</View>
+ android:id="@+id/settings_button"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_gravity="center"
+ android:scaleType="center"
+ android:src="@drawable/ic_settings"
+ android:contentDescription="@string/settings_button" />
+
diff --git a/res/layout/search_icon_view.xml b/res/layout/search_icon_view.xml
index ef99bee..aa0bf02 100644
--- a/res/layout/search_icon_view.xml
+++ b/res/layout/search_icon_view.xml
@@ -18,7 +18,7 @@
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/icon"
- android:layout_width="@dimen/dashboard_tile_image_size"
+ android:layout_width="@dimen/dashboard_tile_foreground_image_size"
android:layout_height="match_parent"
android:scaleType="centerInside"
android:layout_marginStart="@dimen/dashboard_tile_image_margin"
diff --git a/res/layout/search_inline_switch_item.xml b/res/layout/search_inline_switch_item.xml
deleted file mode 100644
index 8f050a3..0000000
--- a/res/layout/search_inline_switch_item.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:paddingTop="16dp"
- android:paddingBottom="16dp"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:background="?android:attr/selectableItemBackground"
- android:clipToPadding="false">
-
- <include layout="@layout/search_icon_view"/>
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical">
-
- <TextView
- android:id="@android:id/title"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:textAppearance="?android:attr/textAppearanceListItem"
- android:ellipsize="marquee"/>
-
- <TextView
- android:id="@android:id/summary"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:textAppearance="?android:attr/textAppearanceListItemSecondary"/>
-
- <include layout="@layout/search_breadcrumb_view"/>
- </LinearLayout>
-
- <Switch
- android:id="@+id/switchView"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:gravity="top"
- android:paddingStart="16dp"/>
-</LinearLayout>
diff --git a/res/layout/search_intent_item.xml b/res/layout/search_intent_item.xml
deleted file mode 100644
index 6bc00ad..0000000
--- a/res/layout/search_intent_item.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:paddingTop="16dp"
- android:paddingBottom="16dp"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:background="?android:attr/selectableItemBackground"
- android:clipToPadding="false">
-
- <include layout="@layout/search_icon_view"/>
-
- <LinearLayout
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:orientation="vertical">
-
- <TextView
- android:id="@android:id/title"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:textAppearance="?android:attr/textAppearanceListItem"
- android:ellipsize="marquee"/>
-
- <TextView
- android:id="@android:id/summary"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:textAppearance="?android:attr/textAppearanceListItemSecondary"
- android:ellipsize="marquee"/>
-
- <include layout="@layout/search_breadcrumb_view"/>
- </LinearLayout>
-</LinearLayout>
diff --git a/res/layout/search_panel.xml b/res/layout/search_panel.xml
deleted file mode 100644
index 10c2a00..0000000
--- a/res/layout/search_panel.xml
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- android:id="@+id/search_panel"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:orientation="vertical">
-
- <FrameLayout
- android:id="@+id/search_bar_container"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:background="@color/suggestion_condition_background">
- <android.support.v7.widget.CardView
- android:id="@+id/search_bar"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_margin="@dimen/search_bar_margin"
- app:cardCornerRadius="2dp"
- app:cardBackgroundColor="?android:attr/colorBackground"
- app:cardElevation="2dp">
- <Toolbar
- android:id="@+id/search_toolbar"
- android:layout_width="match_parent"
- android:layout_height="@dimen/search_bar_height"
- android:background="?android:attr/selectableItemBackground"
- android:contentInsetStart="0dp"
- android:contentInsetStartWithNavigation="0dp"
- android:theme="?android:attr/actionBarTheme">
- <SearchView
- android:id="@+id/search_view"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:iconifiedByDefault="false"
- android:imeOptions="actionSearch|flagNoExtractUi"
- android:searchIcon="@null"/>
- </Toolbar>
- </android.support.v7.widget.CardView>
- </FrameLayout>
-
- <FrameLayout
- android:id="@+id/layout_results"
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- android:orientation="vertical">
-
- <!-- Padding is included in the background -->
- <android.support.v7.widget.RecyclerView
- android:id="@+id/list_results"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="@dimen/dashboard_padding_start"
- android:paddingEnd="@dimen/dashboard_padding_end"
- android:paddingTop="@dimen/dashboard_padding_top"
- android:paddingBottom="@dimen/dashboard_padding_bottom"
- android:scrollbarStyle="outsideOverlay"
- android:scrollbars="vertical"/>
-
- <LinearLayout
- android:id="@+id/no_results_layout"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingTop="35dp"
- android:orientation="vertical"
- android:visibility="gone">
-
- <Space
- android:layout_width="match_parent"
- android:layout_height="?android:attr/actionBarSize"/>
-
- <ImageView
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_gravity="center_horizontal"
- android:src="@drawable/empty_search_results"/>
-
- <TextView
- android:layout_height="wrap_content"
- android:layout_width="match_parent"
- android:paddingTop="24dp"
- android:textSize="18sp"
- android:text="@string/search_settings_no_results"
- android:gravity="center"/>
-
- </LinearLayout>
-
- </FrameLayout>
-
- <include layout="@layout/search_feedback"/>
-
-</LinearLayout>
diff --git a/res/layout/search_saved_query_item.xml b/res/layout/search_saved_query_item.xml
deleted file mode 100644
index f8c239a..0000000
--- a/res/layout/search_saved_query_item.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2017 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.
- -->
-
-<LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="horizontal"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
- android:background="?android:attr/selectableItemBackground"
- android:minHeight="?android:attr/listPreferredItemHeight"
- android:gravity="center_vertical">
-
- <ImageView
- android:id="@android:id/icon"
- android:layout_width="@dimen/dashboard_tile_image_size"
- android:layout_height="@dimen/dashboard_tile_image_size"
- android:scaleType="centerInside"
- android:layout_marginStart="@dimen/dashboard_tile_image_margin"
- android:layout_marginEnd="@dimen/dashboard_tile_image_margin"
- android:src="@drawable/ic_restore" />
-
- <TextView
- android:id="@android:id/title"
- android:layout_height="match_parent"
- android:layout_width="match_parent"
- android:gravity="center_vertical"
- android:textAppearance="?android:attr/textAppearanceListItem" />
-
-</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/settings_main_dashboard.xml b/res/layout/settings_main_dashboard.xml
index 4f8c308..10ff2ee 100644
--- a/res/layout/settings_main_dashboard.xml
+++ b/res/layout/settings_main_dashboard.xml
@@ -43,7 +43,6 @@
android:background="?android:attr/selectableItemBackground"
android:contentInsetStartWithNavigation="64dp"
android:navigationIcon="@drawable/ic_search_24dp"
- android:navigationContentDescription="@string/search_menu"
android:theme="?android:attr/actionBarTheme">
<TextView
android:id="@+id/search_action_bar_title"
diff --git a/res/layout/styled_switch_bar.xml b/res/layout/styled_switch_bar.xml
index 1777c0f..3baaac3 100644
--- a/res/layout/styled_switch_bar.xml
+++ b/res/layout/styled_switch_bar.xml
@@ -16,13 +16,13 @@
<!-- For use in a LayoutPreference -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_height="0px"
- android:layout_width="match_parent"
- android:layout_weight="1" >
+ android:layout_height="wrap_content"
+ android:layout_width="match_parent" >
<com.android.settings.widget.SwitchBar
android:id="@+id/switch_bar"
- android:layout_height="?android:attr/actionBarSize"
+ android:minHeight="?android:attr/actionBarSize"
+ android:layout_height="wrap_content"
android:layout_width="match_parent"
android:paddingStart="0dp"
android:theme="?attr/switchBarTheme" />
diff --git a/res/layout/suggestion_condition_container.xml b/res/layout/suggestion_condition_container.xml
deleted file mode 100644
index a4c60ad..0000000
--- a/res/layout/suggestion_condition_container.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- Copyright (C) 2017 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.
--->
-
-<FrameLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- style="@style/SuggestionConditionStyle"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="5dp"
- android:paddingEnd="5dp"
- android:paddingBottom="@dimen/dashboard_padding_bottom">
-
- <android.support.v7.widget.CardView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- app:cardUseCompatPadding="true"
- app:cardElevation="2dp">
-
- <android.support.v7.widget.RecyclerView
- android:id="@+id/data"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:background="@color/material_grey_300"
- android:scrollbars="none"/>
-
- </android.support.v7.widget.CardView>
-
-</FrameLayout>
diff --git a/res/layout/suggestion_container.xml b/res/layout/suggestion_container.xml
index 9110c58..409f39e 100644
--- a/res/layout/suggestion_container.xml
+++ b/res/layout/suggestion_container.xml
@@ -20,7 +20,7 @@
style="@style/SuggestionConditionStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:paddingTop="12dp"
+ android:paddingTop="10dp"
android:orientation="vertical">
<LinearLayout
@@ -55,8 +55,8 @@
android:id="@+id/suggestion_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:paddingTop="18dp"
- android:paddingBottom="16dp"
+ android:paddingTop="12dp"
+ android:paddingBottom="13dp"
android:scrollbars="none"/>
</LinearLayout>
diff --git a/res/layout/suggestion_tile.xml b/res/layout/suggestion_tile.xml
index b947452..fa3f3af 100644
--- a/res/layout/suggestion_tile.xml
+++ b/res/layout/suggestion_tile.xml
@@ -14,51 +14,69 @@
limitations under the License.
-->
-<LinearLayout
+<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/suggestion_card"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ app:cardPreventCornerOverlap="false"
+ app:cardUseCompatPadding="true"
+ app:cardElevation="2dp"
+ app:cardCornerRadius="@dimen/suggestion_card_corner_radius">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:background="@android:color/white"
- android:gravity="center_vertical"
- android:orientation="horizontal"
- android:minHeight="@dimen/dashboard_tile_minimum_height">
+ android:minHeight="112dp"
+ android:orientation="vertical">
- <ImageView
- android:id="@android:id/icon"
- android:layout_width="@dimen/suggestion_card_icon_size"
- android:layout_height="@dimen/suggestion_card_icon_size"
- android:layout_marginStart="14dp"
- android:layout_marginEnd="24dp" />
-
- <LinearLayout
- android:layout_width="wrap_content"
+ <RelativeLayout
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical">
+ android:orientation="horizontal">
- <TextView
- android:id="@android:id/title"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:singleLine="true"
- android:textAppearance="@style/TextAppearance.TileTitle"
- android:ellipsize="marquee"
- android:fadingEdge="horizontal" />
+ <ImageView
+ android:id="@android:id/icon"
+ android:layout_width="@dimen/suggestion_card_icon_size"
+ android:layout_height="@dimen/suggestion_card_icon_size"
+ style="@style/SuggestionCardIcon"
+ android:layout_marginTop="16dp"
+ android:layout_marginBottom="8dp" />
- <TextView
- android:id="@android:id/summary"
- android:textAppearance="@style/TextAppearance.SuggestionSummary"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content" />
+ <ImageView
+ android:id="@+id/close_button"
+ android:layout_width="18dp"
+ android:layout_height="18dp"
+ android:alpha="0.54"
+ android:layout_alignParentEnd="true"
+ android:layout_marginTop="8dp"
+ android:layout_marginEnd="8dp"
+ android:src="@drawable/ic_suggestion_close_button"/>
- </LinearLayout>
+ </RelativeLayout>
+
+ <TextView
+ android:id="@android:id/title"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ style="@style/SuggestionCardText"
+ android:layout_marginStart="12dp"
+ android:layout_marginEnd="12dp"
+ android:singleLine="true"
+ android:textAppearance="@style/TextAppearance.SuggestionTitle"
+ android:ellipsize="end"
+ android:fadingEdge="horizontal" />
+
+ <TextView
+ android:id="@android:id/summary"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ style="@style/SuggestionCardText"
+ android:layout_marginStart="12dp"
+ android:layout_marginEnd="12dp"
+ android:textAppearance="@style/TextAppearance.SuggestionSummary" />
</LinearLayout>
- <include layout="@layout/horizontal_divider" />
-
-</LinearLayout>
\ No newline at end of file
+</android.support.v7.widget.CardView>
diff --git a/res/layout/suggestion_tile_v2.xml b/res/layout/suggestion_tile_v2.xml
deleted file mode 100644
index e04febb..0000000
--- a/res/layout/suggestion_tile_v2.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 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.
--->
-
-<android.support.v7.widget.CardView
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- android:id="@+id/suggestion_card"
- android:layout_width="328dp"
- android:layout_height="wrap_content"
- app:cardPreventCornerOverlap="false"
- app:cardUseCompatPadding="true"
- app:cardElevation="2dp"
- app:cardCornerRadius="@dimen/suggestion_card_corner_radius">
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="112dp"
- android:orientation="vertical">
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal">
-
- <ImageView
- android:id="@android:id/icon"
- android:layout_width="@dimen/suggestion_card_icon_size"
- android:layout_height="@dimen/suggestion_card_icon_size"
- style="@style/SuggestionCardIcon"
- android:layout_marginTop="16dp"
- android:layout_marginBottom="8dp" />
-
- <ImageView
- android:id="@+id/close_button"
- android:layout_width="18dp"
- android:layout_height="18dp"
- android:alpha="0.54"
- android:layout_alignParentEnd="true"
- android:layout_marginTop="8dp"
- android:layout_marginEnd="8dp"
- android:src="@drawable/ic_suggestion_close_button"/>
-
- </RelativeLayout>
-
- <TextView
- android:id="@android:id/title"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="@style/SuggestionCardText"
- android:layout_marginStart="12dp"
- android:layout_marginEnd="12dp"
- android:singleLine="true"
- android:textAppearance="@style/TextAppearance.SuggestionTitleV2"
- android:ellipsize="marquee"
- android:fadingEdge="horizontal" />
-
- <TextView
- android:id="@android:id/summary"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="@style/SuggestionCardText"
- android:layout_marginStart="12dp"
- android:layout_marginEnd="12dp"
- android:textAppearance="@style/TextAppearance.SuggestionSummary" />
-
- </LinearLayout>
-
-</android.support.v7.widget.CardView>
diff --git a/res/layout/suggestion_tile_with_button.xml b/res/layout/suggestion_tile_with_button.xml
index 081df5b..de3494a 100644
--- a/res/layout/suggestion_tile_with_button.xml
+++ b/res/layout/suggestion_tile_with_button.xml
@@ -14,58 +14,79 @@
limitations under the License.
-->
-<LinearLayout
+<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:id="@+id/suggestion_card"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:background="@android:color/white"
- android:clipChildren="false"
- android:clipToPadding="false"
- android:paddingStart="16dp"
- android:paddingEnd="12dp"
- android:paddingBottom="20dp"
- android:paddingTop="16dp"
- android:orientation="horizontal"
- android:minHeight="@dimen/dashboard_tile_minimum_height">
-
- <ImageView
- android:id="@android:id/icon"
- android:layout_width="@dimen/dashboard_tile_image_size"
- android:layout_height="@dimen/dashboard_tile_image_size" />
+ app:cardPreventCornerOverlap="false"
+ app:cardUseCompatPadding="true"
+ app:cardElevation="2dp"
+ app:cardCornerRadius="@dimen/suggestion_card_corner_radius">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_gravity="start"
- android:layout_marginStart="18dp"
- android:layout_marginTop="2dp"
- android:clipChildren="false"
- android:clipToPadding="false"
+ android:minHeight="112dp"
android:orientation="vertical">
+ <RelativeLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="horizontal">
+
+ <ImageView
+ android:id="@android:id/icon"
+ android:layout_width="@dimen/suggestion_card_icon_size"
+ android:layout_height="@dimen/suggestion_card_icon_size"
+ style="@style/SuggestionCardIcon"
+ android:layout_marginTop="16dp"
+ android:layout_marginBottom="8dp" />
+
+ <ImageView
+ android:id="@+id/close_button"
+ android:layout_width="18dp"
+ android:layout_height="18dp"
+ android:alpha="0.54"
+ android:layout_alignParentEnd="true"
+ android:layout_marginTop="8dp"
+ android:layout_marginEnd="8dp"
+ android:src="@drawable/ic_suggestion_close_button"/>
+
+ </RelativeLayout>
+
<TextView
android:id="@android:id/title"
- android:layout_width="wrap_content"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginStart="6dp"
- android:textAppearance="@style/TextAppearance.TileTitle" />
+ style="@style/SuggestionCardText"
+ android:layout_marginStart="12dp"
+ android:layout_marginEnd="12dp"
+ android:singleLine="true"
+ android:textAppearance="@style/TextAppearance.SuggestionTitle"
+ android:ellipsize="end"
+ android:fadingEdge="horizontal" />
<TextView
android:id="@android:id/summary"
- android:layout_width="wrap_content"
+ android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:layout_marginStart="6dp"
- android:layout_marginEnd="50dp"
+ style="@style/SuggestionCardText"
+ android:layout_marginStart="12dp"
+ android:layout_marginEnd="12dp"
android:textAppearance="@style/TextAppearance.SuggestionSummary" />
<Button
android:id="@android:id/primary"
style="@style/ActionPrimaryButton"
+ android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
+ android:layout_marginBottom="18dp"
android:text="@string/suggestion_button_text" />
+
</LinearLayout>
-</LinearLayout>
\ No newline at end of file
+</android.support.v7.widget.CardView>
diff --git a/res/layout/suggestion_tile_with_button_v2.xml b/res/layout/suggestion_tile_with_button_v2.xml
deleted file mode 100644
index 5f4ed18..0000000
--- a/res/layout/suggestion_tile_with_button_v2.xml
+++ /dev/null
@@ -1,88 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2018 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.
--->
-
-<android.support.v7.widget.CardView
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- android:id="@+id/suggestion_card"
- android:layout_width="328dp"
- android:layout_height="wrap_content"
- app:cardUseCompatPadding="true"
- app:cardElevation="2dp"
- app:cardCornerRadius="@dimen/suggestion_card_corner_radius">
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="112dp"
- android:orientation="vertical">
-
- <RelativeLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:orientation="horizontal">
-
- <ImageView
- android:id="@android:id/icon"
- android:layout_width="@dimen/dashboard_tile_image_size"
- android:layout_height="@dimen/dashboard_tile_image_size"
- style="@style/SuggestionCardIcon"
- android:layout_marginTop="16dp"
- android:layout_marginBottom="8dp" />
-
- <ImageView
- android:id="@+id/close_button"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_alignParentEnd="true"
- android:layout_marginTop="8dp"
- android:layout_marginEnd="8dp"
- android:src="@drawable/ic_suggestion_close_button"/>
-
- </RelativeLayout>
-
- <TextView
- android:id="@android:id/title"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="@style/SuggestionCardText"
- android:layout_marginStart="12dp"
- android:layout_marginEnd="12dp"
- android:singleLine="true"
- android:textAppearance="@style/TextAppearance.TileTitle"
- android:ellipsize="marquee"
- android:fadingEdge="horizontal" />
-
- <TextView
- android:id="@android:id/summary"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- style="@style/SuggestionCardText"
- android:layout_marginStart="12dp"
- android:layout_marginEnd="12dp"
- android:textAppearance="@style/TextAppearance.SuggestionSummary" />
-
- <Button
- android:id="@android:id/primary"
- style="@style/ActionPrimaryButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginTop="12dp"
- android:text="@string/suggestion_button_text" />
-
- </LinearLayout>
-
-</android.support.v7.widget.CardView>
diff --git a/res/layout/two_state_button.xml b/res/layout/two_state_button.xml
new file mode 100644
index 0000000..22bf2bd
--- /dev/null
+++ b/res/layout/two_state_button.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2018 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.
+ -->
+
+<LinearLayout
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:orientation="horizontal"
+ android:gravity="bottom"
+ android:paddingStart="72dp"
+ android:paddingEnd="72dp"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <Button
+ android:id="@+id/state_on_button"
+ style="@style/ActionPrimaryButton"
+ android:layout_width="0dp"
+ android:layout_weight="1"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:paddingEnd="8dp" />
+
+ <Button
+ android:id="@+id/state_off_button"
+ style="@style/ActionSecondaryButton"
+ android:layout_width="0dp"
+ android:layout_weight="1"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center"
+ android:paddingEnd="8dp" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/wifi_wps_dialog.xml b/res/layout/wifi_wps_dialog.xml
deleted file mode 100644
index a86823d..0000000
--- a/res/layout/wifi_wps_dialog.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2012 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.
--->
-
-<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="300sp"
- android:layout_height="wrap_content">
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:padding="8dip"
- android:orientation="vertical">
-
- <TextView
- android:id="@+id/wps_dialog_txt"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="8dip" />
-
- <ImageView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center"
- android:layout_marginTop="8dip"
- android:src="?attr/ic_wps" />
-
- <ProgressBar
- android:id="@+id/wps_timeout_bar"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="20dip"
- style="?android:attr/progressBarStyleHorizontal" />
-
- <ProgressBar
- android:id="@+id/wps_progress_bar"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="20dip"
- style="?android:attr/progressBarStyle" />
-
- <RelativeLayout
- android:gravity="center"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content">
-
- <Button
- android:id="@+id/wps_dialog_btn"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/cancel" />
- </RelativeLayout>
- </LinearLayout>
-</ScrollView>
diff --git a/res/layout/zen_mode_settings_button.xml b/res/layout/zen_mode_settings_button.xml
index 4fe522d7..7db52a2 100644
--- a/res/layout/zen_mode_settings_button.xml
+++ b/res/layout/zen_mode_settings_button.xml
@@ -17,31 +17,25 @@
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="horizontal"
- android:gravity="bottom"
- android:paddingStart="72dp"
- android:paddingEnd="72dp"
android:layout_width="match_parent"
- android:layout_height="match_parent">
+ android:layout_height="wrap_content">
<Button
android:id="@+id/zen_mode_settings_turn_on_button"
style="@style/ActionPrimaryButton"
- android:layout_width="0dp"
- android:layout_weight="1"
+ android:layout_marginStart="@dimen/screen_margin_sides"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
- android:text="@string/zen_mode_button_turn_on"
- android:paddingEnd="8dp" />
+ android:text="@string/zen_mode_button_turn_on"/>
<Button
android:id="@+id/zen_mode_settings_turn_off_button"
style="@style/ActionSecondaryButton"
- android:layout_width="0dp"
- android:layout_weight="1"
+ android:layout_marginStart="@dimen/screen_margin_sides"
+ android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
- android:text="@string/zen_mode_button_turn_off"
- android:paddingEnd="8dp" />
+ android:text="@string/zen_mode_button_turn_off" />
</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/zen_rule_type.xml b/res/layout/zen_rule_type.xml
index a6675c9..dea39ed 100644
--- a/res/layout/zen_rule_type.xml
+++ b/res/layout/zen_rule_type.xml
@@ -23,10 +23,9 @@
<ImageView
android:id="@+id/icon"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center"
- />
+ android:layout_width="@dimen/app_icon_size"
+ android:layout_height="@dimen/app_icon_size"
+ android:layout_gravity="center"/>
<RelativeLayout
android:layout_width="wrap_content"
diff --git a/res/values-af/arrays.xml b/res/values-af/arrays.xml
index b031e5e..f4659df 100644
--- a/res/values-af/arrays.xml
+++ b/res/values-af/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Druk knoppie"</item>
<item msgid="1624323946324499595">"PIN van eweknietoestel"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 uur"</item>
<item msgid="5198271470953124739">"Moenie uittel nie"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Verstek)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Swak"</item>
<item msgid="2042505933058940139">"Swak"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Meer as 60 dae oud"</item>
<item msgid="5692284879054004388">"Meer as 90 dae oud"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Gebruik netwerkvoorkeur"</item>
+ <item msgid="8745603368609022803">"Hanteer as beperk"</item>
+ <item msgid="2266114985518865625">"Hanteer as onbeperk"</item>
+ </string-array>
</resources>
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 572a346..4a2ce90 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Jou toestelle"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Bind nuwe toestel saam"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Laat toestel toe om saam te bind met en te koppel aan Bluetooth-toestelle"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Deaktiveer inband-luitoon"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Moenie gepasmaakte foon-luitone op Bluetooth-kopstukke speel nie"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Tans gekoppel"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Gestoorde toestelle"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Voeg toestel by"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Stel datum"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Rangskik alfabeties"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Rangskik volgens tydsone"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> begin op <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Dagligbesparingstyd"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standaardtyd"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Tydsone volgens streek"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Tydsones met vasgestelde tydaanpassings"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Datum"</string>
<string name="time_picker_title" msgid="483460752287255019">"Tyd"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Sluit outomaties"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Sluitskermboodskap"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Aktiveer legstukke"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Gedeaktiveer deur administrateur"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Wys snelsluit-opsie"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Wys kragknoppie-opsie wat verlengde toegang en vingerafdrukontsluiting afskakel."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Geen"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Bv. Joe se Android."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profiel-inligting"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Rekeninge"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Ligging"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Gebruik ligging"</string>
<string name="account_settings_title" msgid="626177544686329806">"Rekeninge"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Sekuriteit en ligging"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Enkripsie en eiebewyse"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Die wagwoord wat jy ingevoer het, is korrek, maar ongelukkig is jou data korrup. \n\nJy moet \'n fabriekterugstelling doen om die tablet weer te kan gebruik. Wanneer jy jou tablet na die terugstelling opstel, sal jy die geleentheid hê om enige data te herwin wat in jou Google-rekening gerugsteun is."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Die wagwoord wat jy ingevoer het, is korrek, maar ongelukkig is jou data korrup. \n\nJy moet \'n fabriekterugstelling doen om die foon weer te kan gebruik. Wanneer jy jou foon na die terugstelling opstel, sal jy die geleentheid hê om enige data te herwin wat in jou Google-rekening gerugsteun is."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Wissel invoermetode"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Stel skermslot"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Beskerm jou toestel"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Gebruik vingerafdruk"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Ontsluit met jou vingerafdruk"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Stel skermslot vir sekuriteit"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Verhoed dat iemand anders jou tablet gebruik"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Verhoed dat iemand anders jou toestel gebruik"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Verhoed dat iemand anders jou foon gebruik"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Ontsluit met vingerafdruk"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Ontsluit met jou vingerafdruk"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Ontsluit met jou vingerafdruk"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Ontsluit met jou vingerafdruk"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Kies skermslot"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Kies werkslot"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Beskerm jou tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"As luidsprekerfoon"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Vir musiek en media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Onthou instellings"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maksimum aantal gekoppelde Bluetooth-oudiotoestelle"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Kies maksimum aantal gekoppelde Bluetooth-oudiotoestelle"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Saai uit"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Aktiveer draadlose skermdeling"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Geen nabygeleë toestelle is gekry nie."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Naam"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Meld aan"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> wil Wi-Fi aanskakel"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> wil Wi-Fi afskakel"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Skakel Wi-Fi aan"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Gebruik Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi-instellings"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Stel en beheer draadlose toegangspunte"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Wagwoord"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Wys wagwoord"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Kies toegangspuntband"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Outo"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 GHz-band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz-band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP-instellings"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS beskikbaar)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Voer jou netwerkwagwoord in"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Diensverskaffer-Wi‑Fi-netwerk"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Gekoppel via <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Gekoppel via <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Om liggingsakkuraatheid te verbeter en vir ander doele, wil <xliff:g id="APP_NAME">%1$s</xliff:g> netwerkskandering aanskakel, selfs wanneer Wi-Fi af is.\n\n Laat dit toe vir alle programme wat wil skandeer?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Gaan in die oorloopkieslys na Gevorderd om dit af te skakel."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Laat toe"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP-band"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Gebruik warmkol om \'n Wi-Fi-netwerk vir jou ander toestelle te skep. Warmkol verskaf internet deur jou mobiele dataverbinding te gebruik. Bykomende dataheffings kan dalk geld."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Programme kan \'n warmkol skep om inhoud met nabygeleë toestelle te deel."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Skakel warmkol outomaties af"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Wi-Fi-warmkol sal afskakel as geen toestelle gekoppel is nie"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Skakel tans Wi-Fi-warmkol aan..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Skakel tans Wi-Fi-warmkol af..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> is aktief"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi-oproepe"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Skakel Wi-Fi-oproepe aan"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Gebruik Wi-Fi in plaas van mobiele netwerk"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Brei dekking uit deur oproepe oor Wi-Fi te maak"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Oproepvoorkeur"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi-oproepmodus"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Swerfvoorkeur"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Noodadres"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Word as jou ligging gebruik wanneer jy \'n noodoproep oor Wi-Fi maak"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Kom meer te wete"</annotation>" oor Private DNS-kenmerke"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Skerm"</string>
<string name="sound_settings" msgid="5534671337768745343">"Klank"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobielenetwerk-tipe"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operateurinligting"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobielenetwerk-status"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Diensstatus"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Seinsterkte"</string>
<string name="status_roaming" msgid="2638800467430913403">"Swerwing"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Jou nuwe <xliff:g id="NAME">^1</xliff:g> werk nou. \n\nOm foto\'s, lêers en programdata na hierdie toestel te skuif, gaan na Instellings > Berging."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Skuif <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Dit sal \'n kort rukkie vat om <xliff:g id="APP">^1</xliff:g> en sy data na <xliff:g id="NAME_0">^2</xliff:g> te skuif. Jy sal nie die program kan gebruik voordat dit klaar geskuif is nie. \n\nMoenie die <xliff:g id="NAME_1">^2</xliff:g> verwyder terwyl daar geskuif word nie."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Jy moet gebruiker <xliff:g id="APP">^1</xliff:g> ontsluit om data te skuif."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Skuif tans <xliff:g id="APP">^1</xliff:g> …"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Moenie die <xliff:g id="NAME">^1</xliff:g> verwyder terwyl daar geskuif word nie. \n\nDie <xliff:g id="APP">^2</xliff:g>-program in hierdie toestel sal nie beskikbaar wees voordat dit klaar geskuif is nie."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Kanselleer skuif"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Netwerk, programme of toestel kan teruggestel word"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Stel Wi-Fi, mobiel en Bluetooth terug"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Dit sal alle netwerkinstellings terugstel, insluitend:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobiele data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Stel ook e-SIM\'e terug"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Vee alle e-SIM\'e op die foon uit. Jy sal jou diensverskaffer moet kontak om jou e-SIM\'e weer af te laai. Dit sal nie jou selfoondiensplan kanselleer nie."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Stel instellings terug"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Stel alle netwerkinstellings terug? Jy kan nie hierdie handeling ontdoen nie!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Stel instellings terug"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Stel terug?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Netwerkterugstelling is nie vir hierdie gebruiker beskikbaar nie"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Netwerkinstellings is teruggestel"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Kan nie e-SIM\'e terugstel nie"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Die e-SIM\'e kan weens \'n fout nie teruggestel word nie."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Vee alle data uit (fabriekterugstelling)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Dit sal al die data uit jou tablet se "<b>"interne geheue"</b>" uitvee, insluitend: \n\n"<li>"jou Google-rekening"</li>\n" "<li>"stelsel- en programdata-instellings"</li>\n<li>"afgelaaide programme"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Dit sal al die data uit jou tablet se "<b>"interne geheue"</b>" uitvee, insluitend: \n\n"<li>"jou Google-rekening"</li>\n" "<li>"stelsel- en programdata-instellings"</li>\n<li>"afgelaaide programme"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Jy is tans aangemeld by die volgende rekeninge:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Daar is ander gebruikers op hierdie toestel teenwoordig.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musiek"</li>\n<li>"Foto\'s"</li>\n<li>"Ander gebruikerdata"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Diensverskaffers op e-SIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"e-SIM\'e"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Dit sal nie jou mobiele diensplan kanselleer nie."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Om musiek, prente en ander gebruikersdata uit te vee, moet die "<b>"USB-berging"</b>" uitgevee word."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Om musiek, prente en ander gebruikersdata uit te vee, moet die "<b>"SD-kaart"</b>" uitgevee word."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Koppel asseblief aan die internet"</string>
<string name="location_title" msgid="1029961368397484576">"My ligging"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Ligging vir werkprofiel"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modus"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Hoë akkuraatheid"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Batterybesparing"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Net toestel"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Ligging af"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Programvlak-toestemmings"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Onlangse liggingversoeke"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Geen programme het onlangs ligging versoek nie"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Liggingdienste"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Hoë batterygebruik"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Lae batterygebruik"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Liggingmodus"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Gebruik GPS, Wi‑Fi, Bluetooth of mobiele netwerke om ligging te bepaal"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Gebruik Wi-Fi, Bluetooth of mobiele netwerke om ligging te bepaal"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Gebruik GPS en toestelsensors om ligging te bepaal"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Skandeer"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi-opsporing"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Verbeter ligging deur stelselprogramme en -dienste toe te laat om Wi-Fi-netwerke enige tyd te bespeur."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Liggingsbronne"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Meer oor tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Meer oor foon"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Oor toestel"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Meer oor nagebootste toestel"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Sien regsinligting, status, sagteware-weergawe"</string>
<string name="legal_information" msgid="5769301644270604095">"Regsinligting"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Sien al <xliff:g id="COUNT">%1$d</xliff:g> programme"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Jou tablet en persoonlike data is meer kwesbaar vir aanvalle deur onbekende programme. Deur programme van hierdie bron af te installeer, stem jy in dat jy verantwoordelik is vir enige skade aan jou tablet of verlies van data wat uit hul gebruik kan spruit."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Jou foon en persoonlike data is meer kwesbaar vir aanvalle deur onbekende programme. Deur programme van hierdie bron af te installeer, stem jy in dat jy verantwoordelik is vir enige skade aan jou foon of verlies van data wat uit hul gebruik kan spruit."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Jou toestel en persoonlike data is meer kwesbaar vir aanvalle deur onbekende programme. Deur programme van hierdie bron af te installeer, stem jy in dat jy verantwoordelikheid aanvaar vir enige skade aan jou toestel of verlies van data wat uit die gebruik van hierdie programme kan spruit."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Gevorderde instellings"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Aktiveer meer instellingsopsies"</string>
<string name="application_info_label" msgid="5736524913065714880">"Programinligting"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Kan prestasie beïnvloed"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Klik ná wyser ophou beweeg"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Vertraging voor klik"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Gebruik diens"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Gebruik kleurregstelling"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Gebruik onderskrifte"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"AAN"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"AF"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Wys in Vinnige instellings"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> oor"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> tot gelaai"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Agtergrondaktiwiteit"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Beperk"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Laat die program toe om in die agtergrond te loop"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Program kan in die agtergrond loop wanneer dit nie gebruik word nie"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Program se agtergrondaktiwiteit word beperk wanneer dit nie gebruik word nie"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Maak toestel in agtergrond wakker"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Vra gereeld vir ligging"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> programme wat tans vreemd optree"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Battery is in \'n goeie toestand"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Programme tree normaal op"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Lae batterykapasiteit"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Batterylewe van die battery is nie goed nie"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Skakel slimbatterybestuurder aan"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Skakel aan om batterygebruik te optimeer"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Skakel laebattery-modus af"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Verleng toestel se batterylewe"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Laebattery-modus is aan"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Sommige kenmerke is beperk"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Foon is baie gebruik"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet is baie gebruik"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Toestel is baie gebruik"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Omtrent <xliff:g id="HOUR">%1$s</xliff:g> lank gebruik sedert dit laas vol gelaai is"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Jou foon is baie gebruik en dit het baie batterykrag gebruik. Jou battery tree normaal op.\n\n Jou foon is omtrent <xliff:g id="HOUR">%1$s</xliff:g> lank gebruik sedert dit laas vol gelaai is.\n\n Totale gebruik:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Jou tablet is baie gebruik en dit het baie batterykrag gebruik. Jou battery tree normaal op.\n\n Jou tablet is omtrent <xliff:g id="HOUR">%1$s</xliff:g> lank gebruik sedert dit laas vol gelaai is.\n\n Totale gebruik:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Jou toestel is baie gebruik en dit het baie batterykrag gebruik. Jou battery tree normaal op.\n\n Jou toestel is omtrent <xliff:g id="HOUR">%1$s</xliff:g> lank gebruik sedert dit laas vol gelaai is.\n\n Totale gebruik:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Slimbatterybestuurder"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Bestuur battery outomaties"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Pas kraggebruik deur programme outomaties aan op grond van gebruik"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Beperkte programme"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d programme</item>
+ <item quantity="one">%1$d program</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Stop program?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Jou foon kan nie die battery op normale wyse bestuur nie omdat <xliff:g id="APP">%1$s</xliff:g> jou foon wakker hou.\n\nOm te probeer om hierdie kwessie op te los, kan jy die program stop.\n\nAs dit aanhou gebeur, sal jy dalk die program moet deïnstalleer om die batterywerkverrigting te verbeter."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Jou tablet kan nie die battery op normale wyse bestuur nie omdat <xliff:g id="APP">%1$s</xliff:g> jou tablet wakker hou.\n\nOm te probeer om hierdie kwessie op te los, kan jy die program stop.\n\nAs dit aanhou gebeur, sal jy dalk die program moet deïnstalleer om die batterywerkverrigting te verbeter."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediabediener"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Programoptimering"</string>
<string name="battery_saver" msgid="8172485772238572153">"Batterybespaarder"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Gebruik Batterybespaarder"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Skakel outomaties aan"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nooit"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"met battery <xliff:g id="PERCENT">%1$s</xliff:g> vol"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sinkronisering ondervind tans probleme. Dit sal binnekort terug wees."</string>
<string name="add_account_label" msgid="7811707265834013767">"Voeg rekening by"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Werkprofiel is nog nie beskikbaar nie"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Werkmodus"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Stel werkprofiel in staat om te werk, insluitend programme, agtergrondsinkronisering en verwante kenmerke"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Werkprofiel"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Bestuur deur jou organisasie"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Programme en kennisgewings is af"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Verwyder werkprofiel"</string>
<string name="background_data" msgid="5779592891375473817">"Agtergronddata"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Programme kan te enige tyd data sinkroniseer, stuur en ontvang"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Verwyder rekening?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Verwydering van hierdie rekening sal ook al sy boodskappe, kontakte en ander data van die tablet uitvee."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Verwydering van hierdie rekening sal ook al sy boodskappe, kontakte en ander data van die foon uitvee."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"As hierdie rekening verwyder word, sal al sy boodskappe, kontakte en ander data van die toestel af uitgevee word!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Hierdie verandering word nie deur jou administrateur toegelaat nie"</string>
<string name="provider_label" msgid="7724593781904508866">"Stootpos-intekeninge"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">Kontroleer sertifikate</item>
<item quantity="one">Kontroleer sertifikaat</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Gebruikers"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Veelvuldige gebruikers"</string>
<string name="user_list_title" msgid="7937158411137563543">"Gebruikers en profiele"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Voeg gebruiker of profiel by"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Voeg gebruiker by"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Programme en kennisgewings"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Toestemmings, verstekprogramme"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Gebruikers en rekeninge"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Rekeninge"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Verstekprogramme"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Tale, tyd, rugsteun, opdaterings"</string>
<string name="search_results_title" msgid="1796252422574886932">"Instellings"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"moenie moenie pla nie, onderbreek, onderbreking, pouse"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"naby, ligging, geskiedenis, verslaggewing"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"akkuraatheid"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"rekening"</string>
<string name="keywords_users" msgid="3434190133131387942">"beperking, beperk, is beperk"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"teksregstelling, korrek, klank, vibreer, outomaties, taal, gebaar, stel voor, voorstel, tema, aanstootlik, woord, tik, emosiekoon, internasionaal"</string>
@@ -2829,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"netwerk, selnetwerktoestand, dienstoestand, seinsterkte, selnetwerktipe, swerf, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"reeksnommer, hardewareweergawe"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android-sekuriteitregstellingvlak, basisband-weergawe, kernweergawe"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Stemmingvertoning, sluitskermvertoning"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Stel Wi-Fi-NFC-merker op"</string>
<string name="write_tag" msgid="8571858602896222537">"Skryf"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tik \'n merker om te skryf …"</string>
@@ -2872,6 +2914,7 @@
<item quantity="one">1 reël</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Moenie Steur Nie"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Skakel Moenie steur nie aan"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Gedrag"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Laat klanke en vibrasies toe vanaf"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Geen klank nie"</string>
@@ -2881,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Skakel outomaties aan"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Outomatiese reëls"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Outomatiese reël"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Stel Moenie Steur Nie-reëls"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Beperk klanke en vibrasies op sekere tye"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Maak foon op sekere tye stil"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Stel Moenie Steur Nie-reëls"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Gebruik reël"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Net prioriteit"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Net wekkers"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Volkome stilte"</string>
@@ -2890,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokkeer visuele steurings"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Laat visuele tekens toe"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Voeg by"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"SKAKEL NOU AAN"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"SKAKEL NOU AF"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Skakel aan"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Skakel nou aan"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Skakel nou af"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Moenie Steur Nie bly aan tot <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Moenie Steur Nie sal aanbly totdat jy dit afskakel"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"\'n Reël <xliff:g id="RULE_NAME">%s</xliff:g> het Moenie Steur Nie outomaties aangeskakel"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"\'n Program <xliff:g id="APP_NAME">%s</xliff:g> het Moenie Steur Nie outomaties aangeskakel"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Net prioriteit"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Werkprofielklanke"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gebruik persoonlike profiel se klanke"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Klanke is dieselfde vir werk- en persoonlike profiele"</string>
@@ -2911,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Luitone"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Ander klanke en vibrasies"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Kennisgewings"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Onlangs gestuur"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Gevorderd"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Werkkennisgewings"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Laat kennisgewingkolle toe"</string>
@@ -2930,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Programkennisgewings"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Kennisgewingkategorie"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Kennisgewingkategoriegroep"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Belangrikheid"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Gedrag"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Laat klank toe"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Moet nooit kennisgewings wys nie"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Geen klank of visuele onderbreking nie"</string>
@@ -2948,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Middelmatige belang"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Groot belang"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Dringende belang"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Wys kennisgewings"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Kennisgewingassistent"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Kennisgewingtoegang"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Toegang tot werkprofielkennisgewings is geblokkeer"</string>
@@ -2978,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Toegang tot Moenie Steur Nie"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Geen geïnstalleerde programme het toegang tot Moenie Steur Nie versoek nie"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Laai tans programme …"</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android blokkeer tans hierdie program se kennisgewings om op hierdie toestel te verskyn"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android blokkeer tans hierdie kategorie kennisgewings om op hierdie toestel te verskyn"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android keer tans dat hierdie groep kennisgewings op hierdie toestel verskyn"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Android keer tans op jou versoek dat hierdie program se kennisgewings op hierdie toestel verskyn"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Android keer tans op jou versoek dat hierdie kategorie kennisgewings op hierdie toestel verskyn"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Android keer tans op jou versoek dat hierdie groep kennisgewings op hierdie toestel verskyn"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kategorieë"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Ander"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Jy kan naas die gebruik van jou vingerafdruk om jou toestel te ontsluit, hierdie toestel verder beskerm deur jou wagwoord te vereis voordat dit begin. Die toestel kan nie oproepe, boodskappe of kennisgewings, insluitend wekkers, ontvang voordat dit begin nie.\n\nDit help om data op verlore of gesteelde toestelle te beskerm. Wil jy die wagwoord vereis om jou toestel te begin?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ja"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Nee"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ja"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Nee"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Vereis PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Vereis patroon?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Vereis wagwoord?"</string>
@@ -3271,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Weier"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Hierdie toestel te laai"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Laai net hierdie toestel"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Krag te verskaf"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Laai die gekoppelde toestel. Dit werk net met toestelle wat USB-batterylaai steun."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Lêers oor te dra"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Dra lêers na \'n ander toestel oor"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Dra foto\'s oor (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Dra foto\'s of lêers oor as MTP nie gesteun word nie (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Toestel as MIDI te gebruik"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Hierdie toestel as MIDI te gebruik"</string>
- <string name="usb_use" msgid="3256040963685055320">"Gebruik USB om"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Gebruik USB vir"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Laai tans hierdie toestel"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Verskaf tans krag"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Dra tans lêers oor"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Dra tans foto\'s oor (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Gebruik toestel as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS-weerspieëling"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Agtergrondkontrolering"</string>
<string name="background_check_title" msgid="4534254315824525593">"Volle agtergrondtoegang"</string>
@@ -3394,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Muurpapier, slaap, lettergrootte"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Slaap ná 10 minute se onaktiwiteit"</string>
<string name="memory_summary" msgid="8080825904671961872">"Gemiddeld <xliff:g id="USED_MEMORY">%1$s</xliff:g> van <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> berging gebruik"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Huidige gebruiker: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Aangemeld as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is die verstek"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"AAN / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"AAN"</string>
<string name="location_off_summary" msgid="6474350053215707957">"AF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Rugsteun is gedeaktiveer"</string>
- <string name="about_summary" msgid="924181828102801010">"Opgedateer na Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Handeling word nie toegelaat nie"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Kan nie volume verander nie"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Oproepe word nie toegelaat nie"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS word nie toegelaat nie"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kamera word nie toegelaat nie"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Skermkiekie word nie toegelaat nie"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Kan nie rugsteun afskakel nie"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Hierdie handeling is gedeaktiveer. Kontak jou organisasie se administrateur om meer te wete te kom."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Meer besonderhede"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Jou administrateur kan programme en data wat met jou werkprofiel geassosieer word, insluitend instellings, toestemmings, korporatiewe toegang, netwerkaktiwiteit en die toestel se ligginginligting, monitor en bestuur."</string>
@@ -3420,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Draagbare Wi-Fi-warmkol <xliff:g id="ID_1">%1$s</xliff:g> is aktief, Wi-Fi vir hierdie toestel is afgeskakel."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Vliegtuigmodus is aan"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth en mobiele netwerk is afgeskakel. Jy kan nie foonoproepe maak of aan die internet koppel nie."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Moenie Steur Nie is aan (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Batterybespaarder is aan"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Werkverrigting is verswak. Liggingdienste en agtergronddata is afgeskakel."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobiele data is af"</string>
@@ -3430,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Werkprofiel is af"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Programme, agtergrondsinkronisering en ander kenmerke wat met jou werkprofiel verband hou, is afgeskakel."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Stel Aandbeligting-skedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint skerm geelbruin om jou te help om aan die slaap te raak"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Tint outomaties skerm elke nag"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Aandbeligting is aan"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Skerm is geelbruin getint. Dit kan jou help om aan die slaap te raak."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Voorgestel vir jou"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Voorstelle"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> meer"</string>
@@ -3537,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"geen"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Graderingvoorwerp ontbreek."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Graderingvoorwerp bevat nie hierdie sleutel nie."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simuleer \'n skerm met \'n knipmodel"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Geen"</string>
<string name="special_access" msgid="3458780842491881155">"Spesiale programtoegang"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> programme kan onbeperkte data gebruik</item>
@@ -3559,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Gekoppel aan veelvuldige toestelle"</string>
<string name="demo_mode" msgid="2798762752209330277">"Stelsel-UI-demonstrasiemodus"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Kitsinstellings-ontwikkelaarteëls"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Ons is hier om te help"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Ons is dag en nag hier vir jou"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Ons is dag en nag hier vir jou"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Ons steundiensspan is hier om enige kwessie te help aanspreek"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Ons steundienste is elke dag heeldag beskikbaar"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Deursoek hulp of kom terug tydens steundiensure (plaaslike tyd):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Foon-steundiensure (plaaslike tyd)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Deursoek hulp of verken wenke en truuks"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Steun vir:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Vensterspoor"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Oppervlakspoor"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Reis jy oorsee?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Internasionale heffings kan geld"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Foon"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Klets"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Verken wenke en truuks"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Deursoek hulp en stuur terugvoer"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontak steundienste"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Meld aan"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Kan jy nie aanmeld nie?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Stuur stelselinligting"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Moenie weer wys nie"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Versoek tans as"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Voeg rekening by"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Stelselinligting"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Werkprofielinstellings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontaksoektog"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Laat kontaksoektogte deur jou organisasie toe om bellers en kontakte te identifiseer"</string>
@@ -3599,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekondes</item>
<item quantity="one">1 sekonde</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Wagtydperk van ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Bestuur berging"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Bergingbestuurder verwyder gerugsteunde foto\'s en video\'s van jou toestel af om te help om berginspasie beskikbaar te maak."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Verwyder foto\'s en video\'s"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Bergingbestuurder"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Gebruik Bergingbestuurder"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Outomaties"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Handmatig"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Maak nou spasie beskikbaar"</string>
@@ -3614,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Spring na kamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Druk die aan/af-skakelaar twee keer om die kamera vinnig oop te maak. Dit werk op enige skerm."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Maak kamera vinnig oop"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Druk aan/af-skakelaar twee keer om kamera oop te maak"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Draai kamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Neem selfies vinniger"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Dubbeldraai foon vir selfiemodus"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Dubbeldraai tablet vir selfiemodus"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Dubbeldraai toestel vir selfiemodus"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Dubbeltik om na foon te kyk"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Dubbeltik om na tablet te kyk"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Dubbeltik om na toestel te kyk"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Dubbelklik jou skerm om tyd, kennisgewingikone en ander inligting na te gaan."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Gaan kennisgewings na wanneer skerm af is"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Tel foon op om te kyk"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Tel op om na tablet te kyk"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Tel op om na toestel te kyk"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Tel jou foon op om na tyd, kennisgewingikone en ander inligting te kyk."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Tel jou tablet op om tyd, kennisgewingikone en ander inligting na te gaan."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Tel jou toestel op om tyd, kennisgewingikone en ander inligting na te gaan."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Gaan kennisgewings na wanneer skerm af is"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swiep vingerafdruk vir kennisgewings"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swiep vingerafdruk"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Swiep na onder op die vingerafdruksensor aan die agterkant van jou foon om jou kennisgewings na te gaan."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Swiep na onder op die vingerafdruksensor aan die agterkant van jou tablet om jou kennisgewings na te gaan."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Swiep na onder op die vingerafdruksensor aan die agterkant van jou toestel om jou kennisgewings na te gaan."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Sien kennisgewings vinnig"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swiep na onder op vingerafdruksensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Aan"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Af"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Selflaaiprogram is reeds ontsluit"</string>
@@ -3769,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Kry \'n kykie van jou nuwe tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Kry \'n kykie van jou nuwe toestel"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Hierdie kenmerk is nie op hierdie toestel beskikbaar nie"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Dwing vol GNSS-metings af"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Spoor alle GNSS-konstellasies en -frekwensies na sonder enige dienssiklussering"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Wys altyd omvaldialoog"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Wys dialoog elke keer as \'n program omval"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Gidstoegang"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"gidstoegang"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Foon"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Toestel"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Rekening"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Toestelnaam"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Gebruik Bluetooth terwyl jy bestuur"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Skakel Bluetooth outomaties aan terwyl jy bestuur"</string>
</resources>
diff --git a/res/values-am/arrays.xml b/res/values-am/arrays.xml
index e69abc4..e632ea2 100644
--- a/res/values-am/arrays.xml
+++ b/res/values-am/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"አዝራር ተጫን"</item>
<item msgid="1624323946324499595">"ፒን ከአቻ መሣሪያ"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 ሰዓት"</item>
<item msgid="5198271470953124739">"በጭራሽ አታቋርጥ"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (ነባሪ)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"ደካማ"</item>
<item msgid="2042505933058940139">"ደካማ"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"ከ60 ቀኖች በላይ የሆናቸው"</item>
<item msgid="5692284879054004388">"ከ90 ቀኖች በላይ የሆናቸው"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"የአውታረ መረብ ምርጫን ተጠቀም"</item>
+ <item msgid="8745603368609022803">"እንደ ተለካ አስተናግድ"</item>
+ <item msgid="2266114985518865625">"እንደ ያልተለካ አስተናግድ"</item>
+ </string-array>
</resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 94164b3..aedd40a 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"የእርስዎ መሣሪያዎች"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"አዲስ መሣሪያ ያጣምሩ"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"ወደ ብሉቱዝ መሣሪያዎች ለማጣመር እና ለማገናኘት መሣሪያን ይፍቀዱ"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"የውስጠ-ሞገድ ማስጮህን አሰናክል"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"በብሉቱዝ ጆሮ ማዳመጫዎች ላይ ብጁ የስልክ የጥሪ ቅላጼዎችን አታጫውት"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"አሁን ላይ ተገናኝቷል"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"የተቀመጡ መሣሪያዎች"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"መሣሪያ ያክሉ"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"ውሂብ አዘጋጅ"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"በፊደል ተራ ለይ"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"በሰዓት ሰቅ ለይ"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> በ<xliff:g id="TRANSITION_DATE">%2$s</xliff:g> ላይ ይጀምራል።"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"የቀን ብርሃን ቁጠባዎች ጊዜ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"መደበኛ ሰዓት"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"የሰዓት ሰቅ በክልል"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"ቋሚ የጅምር ሰዓት ሰቆች"</string>
<string name="date_picker_title" msgid="1338210036394128512">"ቀን"</string>
<string name="time_picker_title" msgid="483460752287255019">"ጊዜ"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"በራስ ሰር ቆልፍ"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"የቁልፍ ገጽ መልዕክት"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ንዑስ ፕሮግራሞችን አንቃ"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"በአስተዳዳሪ ተሰናክሏል"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"የመቆለፊያ አማራጭን አሳይ"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"የተቀጠለ መዳረሻን እና በጣት አሻራን መክፈት የሚያሳይ የኃይል አዝራር አማራጭ አሳይ።"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ምንም"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ለምሳሌ፦ የአበበ Android።"</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"የመገለጫ መረጃ"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"መለያዎች"</string>
<string name="location_settings_title" msgid="1369675479310751735">"አካባቢ"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"አካባቢን ተጠቀም"</string>
<string name="account_settings_title" msgid="626177544686329806">"መለያዎች"</string>
<string name="security_settings_title" msgid="4918904614964215087">"ደህንነት እና ሥፍራ"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ምስጠራ እና ምስክርነቶች"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ያስገቡት የይለፍ ቃል ትክክል ነው፣ ይሁንና ውሂብዎ የተበላሸ ነው። \n\nጡባዊዎን መጠቀሙን ለመቀጠል የፋብሪካ ዳግም ማስጀመር ማከናወን ያስፈልግዎታል። ከዳግም ማስጀመሩ በኋላ ጡባዊዎን ሲያዋቅሩት በGoogle መለያዎ ላይ ምትኬ የተቀመጠለት ማንኛውም ውሂብ ወደነበረበት የመመለስ አጋጣሚ ይኖርዎታል።"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ያስገቡት የይለፍ ቃል ትክክል ነው፣ ይሁንና ውሂብዎ የተበላሸ ነው። \n\nስልክዎን መጠቀሙን ለመቀጠል የፋብሪካ ዳግም ማስጀመር ማከናወን ያስፈልግዎታል። ከዳግም ማስጀመሩ በኋላ ስልክዎን ሲያዋቅሩት በGoogle መለያዎ ላይ ምትኬ የተቀመጠለት ማንኛውም ውሂብ ወደነበረበት የመመለስ አጋጣሚ ይኖርዎታል።"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"የግቤት ስልት ቀይር"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"ማያ ገጽ መቆለፊያውን ያዘጋጁ"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"መሣሪያዎን ይጠብቁ"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"የጣት አሻራን ይጠቀሙ"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"በእርስዎ የጣት አሻራ ይክፈቱ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"ለደህንነት የማያ ገጽ ቁልፍን ያቀናብሩ"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"ሌሎች የእርስዎን ጡባዊ እንዳይጠቀሙ ይከልክሉ"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"ሌሎች የእርስዎን መሣሪያ እንዳይጠቀሙ ይከልክሉ"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"ሌሎች የእርስዎን ስልክ እንዳይጠቀሙ ይከልክሉ"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"በጣት አሻራ ይክፈቱ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"በእርስዎ የጣት አሻራ ይክፈቱ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"በእርስዎ የጣት አሻራ ይክፈቱ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"በእርስዎ የጣት አሻራ ይክፈቱ"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"ማሳያ ቆልፍ ምረጥ"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"የስራ ቁልፍ ይምረጡ"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ለጡባዊዎ ጥበቃ ያድርጉ"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"እንደ ተናጋሪ ስልክ"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"ለሙዚቃ እና ማህደረ መረጃ"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"ቅንብሮች አስታውስ"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"ከፍተኛው የተገናኙ የብሉቱዝ ኦዲዮ መሣሪያዎች ብዛት"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"ከፍተኛው የተገናኙ የብሉቱዝ ኦዲዮ መሣሪያዎች ብዛትን ይምረጡ"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"ውሰድ"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"ገመድ-አልባ ማሳየትን ያንቁ"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"በአቅራቢያ ምንም መሳሪያዎች አልተገኙም።"</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"ስም"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 ጊኸ"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 ጊኸ"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"ግባ"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d ሜቢ/ሴ"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fiን ማብራት ይፈልጋል"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fiን ማጥፋት ይፈልጋል"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi-Fi ያብሩ"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fiን ተጠቀም"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"የWi-Fi ቅንብሮች"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"አዘጋጅ& የገመድ አልባ ድረስ ነጥብ አደራጅ"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">" የይለፍ ቃል፡"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"የይለፍ ቃል አሳይ"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"የመዳረሻ ነጥብ ባንድ ይምረጡ"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ራስ-ሰር"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 ጊሄዝ ባንድ"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 ጊሄዝ ባንድ"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ቅንብሮች"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" WPS አለ"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"የአውታረ መረብ ይለፍ ቃልዎን ያስገቡ"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"የአገልግሎት አቅራቢ የWi‑Fi አውታረ መረብ"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"በ<xliff:g id="NAME">%1%s</xliff:g> በኩል አገናኝ"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"በ<xliff:g id="NAME">%1$s</xliff:g> በኩል አገናኝ"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> የአካባቢ ትክክለኛነትን ለማሻሻል እና ለሌሎች ዓላማዎች የአውታረ መረብ መቃኘትን ማብራት ይፈልጋል፣ Wi-Fi ጠፍቶ ቢሆንም እንኳ።\n\nይሄ ለሁሉም መቃኘት ለሚፈልጉ መተግበሪያዎች ይፈቀድ?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"ይህንን ለማጥፋት በትርፍ ፍሰት ምናሌው ውስጥ ወደ የላቁ ይሂዱ።"</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"ፍቀድ"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"የኤፒ ባንድ"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"ለሌሎች መሣሪያዎችዎ የWi‑Fi አውታረ መረብን ለመፍጠር መገናኛ ነጥብብ ይጠቀሙ። መገናኛ ነጥብ የእርስዎን የሞባይል ውሂብ ግንኙነት በመጠቀም በይነመረብን ያቀርባል። ተጨማሪ የሞባይል ውሂብ ክፍያዎች ሊከፈልባቸው ይችላል።"</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"መተግበሪያዎች በአቅራቢያ ካሉ መሣሪያዎች ጋር ይዘትን ለመጋራት መገናኛ ነጥብ ሊፈጥሩ ይችላሉ።"</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"መገናኛ ነጥብን በራስሰር አጥፋ"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Wi‑Fi መገናኛ ነጥብ ምንም መሣሪያዎች ካልተገናኙ ይጠፋል"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"የመገናኛ ነጥብን በማብራት ላይ…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"የመገናኛ ነጥብን በማጥፋት ላይ…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> ገቢር ነው"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android ድረስ ነጥብ"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"የWi-Fi ጥሪ ማድረጊያ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi Callingን ያብሩ"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"በሞባይል አውታረ መረብ ፈንታ Wi-Fi ይጠቀሙ"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"በWi-Fi ላይ በመደወል ሽፋንን ያስረዝሙ"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"የጥሪ ምርጫ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi ጥሪ ሁነታ"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ውጫዊ አገልግሎት ምርጫ"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"የአስቸኳይ አደጋ አድራሻ"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"በWi-Fi ላይ የአስቸኳይ አደጋ ጥሪ ሲያደርጉ እንደ የእርስዎ አካባቢ ሆኖ ስራ ላይ ይውላል"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958">"ስለግል ዲኤንኤስ ባህሪያት "<annotation id="url">"የበለጠ ይረዱ"</annotation></string>
<string name="display_settings_title" msgid="1708697328627382561">"አሳይ"</string>
<string name="sound_settings" msgid="5534671337768745343">"ድምፅ"</string>
<string name="all_volume_title" msgid="4296957391257836961">"ድምፆች"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"የተንቀሳቃሽ አውታረ መረብ አይነት"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"የድምጸ ተያያዥ ሞደም መረጃ"</string>
<string name="status_data_state" msgid="5503181397066522950">"የተንቀሳቃሽ አውታረ መረብክልል"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"የአገልግሎት ሁኔታ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"የሲግናል ጥንካሬ"</string>
<string name="status_roaming" msgid="2638800467430913403">"በመንቀሳቀስ ላይ"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"የእርስዎ አዲስ <xliff:g id="NAME">^1</xliff:g> እየሰራ ነው። \n\nፎቶዎችን፣ ፋይሎችን እና የመተግበሪያ ውሂብን ወደዚህ መሣሪያ ለመውሰድ ወደ ቅንብሮች > ማከማቻ ይሂዱ።"</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"<xliff:g id="APP">^1</xliff:g>ን ይውሰዱ"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"<xliff:g id="APP">^1</xliff:g>ን እና ውሂቡን ወደ <xliff:g id="NAME_0">^2</xliff:g> መውሰድ ጥቂት ጊዜ ብቻ ነው የሚወስደው። መውሰዱ እስኪጠናቀቅ ድረስ መተግበሪያውን መጠቀም አይችሉም። \n\nበሚወሰድበት ጊዜ <xliff:g id="NAME_1">^2</xliff:g>ን አያስወግዱት።"</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"ውሂብን ለመውሰድ ተጠቃሚ <xliff:g id="APP">^1</xliff:g>ን መክፈት ይኖርብዎታል።"</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"<xliff:g id="APP">^1</xliff:g>ን በመውሰድ ላይ…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"በሚወሰድበት ጊዜ <xliff:g id="NAME">^1</xliff:g>ን አያስወግዱት። \n\nመውሰዱ እስኪጠናቀቅ ድረስ በዚህ መሣሪያ ላይ ያለው የ<xliff:g id="APP">^2</xliff:g> የሚገኝ አይሆንም።"</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"መውሰድን ሰርዝ"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"አውታረ መረብ፣ መተግበሪያዎች ወይም መሣሪያ ዳግም ሊዋቀሩ ይችላሉ"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi፣ ተንቀሳቃሽ ስልክ እና ብሉቱዝን ዳግም አስጀምር"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"የሚከተሉትን ጨምሮ ይህ ሁሉንም የአውታረ መረብ ቅንብሮችን ዳግም ያቀናብራል፦\n\n"<li>"Wi‑Fi"</li>\n<li>"የተንቀሳቃሽ ስልክ ውሂብ"</li>\n<li>"ብሉቱዝ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"እንዲሁም eSIMዎችን ዳግም አስጀምር"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"በስልኩ ላይ ያሉ ሁሉንም eSIMዎች ይደምስሱ። የእርስዎን eSIMዎች ዳግም ለማውረድ የአገልግሎት አቅራቢዎን ማነጋገር ይኖርብዎታል። ይሄ የእርስዎን የተንቀሳቃሽ ስልክ አገልግሎት ዕቅድ አይሰርዘውም።"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ቅንብሮችን ዳግም ያቀናብሩ"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"ሁሉም አውታረ መረብ ቅንብሮች ዳግም ይጀምሩ? ይህን እርምጃ መቀልበስ አይችሉም!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ቅንብሮችን ዳግም ያቀናብሩ"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ዳግም ይቀናበር?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"የአውታረመረብ ዳግም ማስጀመር ለዚህ ተጠቃሚ አይገኝም"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"የአውታረ መረብ ቅንብሮች ዳግም ጀምረዋል።"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIMዎችን ዳግም ማስጀመር አልተቻለም"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"በስህተት ምክንያት eSIMዎቹን ዳግም ማስጀመር አልተቻለም።"</string>
<string name="master_clear_title" msgid="3531267871084279512">"ሁሉንም ውሂብ ደምስስ (የፋብሪካ ዳግም ማስጀመር)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ይህ ከእርስዎ ጡባዊ "<b>"ውስጣዊ ማከማቻ"</b>" የሚከተሉትን ጨምሮ:\n\n"<li>"የእርስዎ Google መለያ"</li>\n<li>"ሥርዓት እና መተግበሪያ ውሂብ እና ቅንብሮች"</li>\n<li>"የወረዱ መተግበሪያዎች"</li>" ላይ ያሉ ሁሉንም ውሂብ ይሰርዛል።"</string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ይህ ከእርስዎ ጡባዊ "<b>"ውስጣዊ ማከማቻ"</b>" የሚከተሉትን ጨምሮ:\n\n"<li>"የእርስዎ Google መለያ"</li>\n<li>"ሥርዓት እና መተግበሪያ ውሂብ እና ቅንብሮች"</li>\n<li>"የወረዱ መተግበሪያዎች"</li>" ላይ ያሉ ሁሉንም ውሂብ ይሰርዛል።"</string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n" እርስዎ በአሁን ጊዜ የሚከተለው መለያዎች ውስጥ ገብተዋል፡\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"በዚህ መሣሪያ ላይ ያሉ ሌሎች ተጠቃሚዎች አሉ።\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"ሙዚቃ"</li>\n<li>"ፎቶዎች"</li>\n<li>"ሌላ የተጠቃሚ ውሂብ"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"በeSIM ላይ ያሉ የአገልግሎት አቅራቢዎች"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMዎች"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"ይሄ የተንቀሳቃሽ ስልክ አገልግሎት እቅድዎን አይሰርዘውም።"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">"ሙዚቃ፣ ምስሎች፣ እና ሌላ ተጠቃሚ ውሂብ \n\nለማጥራት፣"<b>"USBማከማቻ"</b>" መጥፋት ያስፈልገዋል።"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n" ሙዚቃ፣ ምስሎች፣ እና ሌላ ተጠቃሚ ውሂብ ለማጥራት፣"<b>" የSD ካርድ "</b>"መጥፋት ያስፈልገዋል።"</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"እባክዎ ከበይነ መረብ ጋር ያገናኙ"</string>
<string name="location_title" msgid="1029961368397484576">"የእኔ ሥፍራ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"የስራ መገለጫ አካባቢ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"ሁነታ"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ከፍተኛ ትክክለኝነት"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"የባትሪ ኃይል ቁጠባ"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"መሣሪያ ብቻ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"አካባቢ ጠፍቷል"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"የመተግበሪያ ደረጃ ፈቃዶች"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"የቅርብ ጊዜ የአካባቢ ጥያቄዎች"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"ምንም መተግበሪያዎች በቅርብ ጊዜ አካባቢ አልጠየቁም"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"የአካባቢ አገልግሎቶች"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ከፍተኛ የባትሪ አጠቃቀም"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ዝቅተኛ የባትሪ አጠቃቀም"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"የአካባቢ ሁነታ"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"አካባቢን ለማወቅ ጂፒኤስ፣ Wi‑Fi ፣ ብሉቱዝ ወይም የተንቀሳቃሽ ስልክ አውታረ መረቦችን ይጠቀሙ"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"አካባቢን ለመወሰን Wi‑Fi፣ ብሉቱዝ ወይም የተንቀሳቃሽ ስልክ አውታረ መረቦችን ይጠቀሙ"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"አካባቢን ለማወቅ ጂፒኤስን እና የመሣሪያ ዳሳሾችን ይጠቀሙ"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"በመቃኘት ላይ"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi ቅኝት"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"የስርስዓት መተግበሪያዎች እና አገልግሎቶች በማንኛውም ሰዓት የWi‑Fi መሳሪያዎችን እንዲያገኙ በመፍቀድ አካባቢን ያሻሽሉ"</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"የአካባቢ ምንጮች"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ስለጡባዊ"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ስለስልክ"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ስለመሣሪያ"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ስለ ተገመተ መሣሪያ"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"የሕግ መረጃ፣ኹነታ፣ የሶፍትዌር ሥሪት እይ"</string>
<string name="legal_information" msgid="5769301644270604095">"የህግ መረጃ"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"ሁሉንም <xliff:g id="COUNT">%1$d</xliff:g> መተግበሪያዎች ይመልከቱ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"የእርስዎ ጡባዊ እና የግል ውሂብ ባልታወቁ መተግበሪያዎች ለሚፈጸም ጥቃት ይበልጥ ተጋላጭ ናቸው። ከዚህ ምንጭ የመጡ መተግበሪያዎችን በመጫን እነሱን በመጠቀምዎ በጡባዊዎ ላይ ለሚከሰት ማንኛውም ጉዳት ወይም ለውሂብ መጥፋት ኃላፊነቱን የሚወስዱት እርስዎ መሆኑን ተስማምተዋል።"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"የእርስዎ ስልክ እና የግል ውሂብ ባልታወቁ መተግበሪያዎች ለሚፈጸም ጥቃት ይበልጥ ተጋላጭ ናቸው። ከዚህ ምንጭ የመጡ መተግበሪያዎችን በመጫን እነሱን በመጠቀምዎ በስልክዎ ላይ ለሚከሰት ማንኛውም ጉዳት ወይም ለውሂብ መጥፋት ኃላፊነቱን የሚወስዱት እርስዎ መሆኑን ተስማምተዋል።"</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"የእርስዎ መሣሪያ እና የግል ውሂብ ባልታወቁ መተግበሪያዎች ለሚፈጸም ጥቃት ይበልጥ ተጋላጭ ናቸው። ከዚህ ምንጭ የመጡ መተግበሪያዎችን በመጫን እነሱን በመጠቀምዎ በመሣሪያዎ ላይ ለሚከሰት ማንኛውም ጉዳት ወይም የውሂብ መጥፋት ኃላፊነቱን የሚወስዱት እርስዎ መሆኑን ተስማምተዋል።"</string>
<string name="advanced_settings" msgid="1777249286757067969">"የላቁ ቅንብሮች"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"ተጨማሪ የቅንብሮች አማራጮች ያንቁ"</string>
<string name="application_info_label" msgid="5736524913065714880">"የመተግበሪያ መረጃ"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"በአፈጻጸም ላይ ተጽዕኖ ሊኖረው ይችላል"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"ጠቋሚ መንቀሳቀስ ካቆመ በኋላ ጠቅ ማድረግ"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ጠቅ ከማድረግ በፊት መዘግየት"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"አገልግሎትን ተጠቀም"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"የቀለም ማስተካከያን ተጠቀም"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"መግለጫ ጽሑፎችን ተጠቀም"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"በርቷል"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ጠፍቷል"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"በፈጣን ቅንብሮች ውስጥ አሳይ"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ይቀራል"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"ለመሙላት <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> ይቀረዋል"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"የበስተጀርባ እንቅስቃሴ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ተገድቧል"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"መተግበሪያው በበስተጀርባ እንዲሄድ ይፍቀዱለት።"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"መተግበሪያው ስራ ላይ ባልሆነበት ጊዜ የጀርባ እንቅስቃሴ ማሄድ ይችላል"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"መተግበሪያው ስራ ላይ ባልሆነበት ጊዜ የጀርባ እንቅስቃሴው የተገደበ ነው"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"በበስተጀርባ መሣሪያውን እንዲነቃ በማድረግ ላይ"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"የመገኛ አካባቢ በተደጋጋሚ በመጠየቅ ላይ"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> መተግበሪያዎች ጥሩ ባህሪ እያሳዩ አይደሉም"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"ባትሪ በጥሩ አቋም ላይ ነው"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"መተግበሪያዎች በጤናማነት እየሠሩ ነው"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"ዝቅተኛ የባትሪ አቅም"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ባትሪ ጥሩ የባትሪ ዕድሜን ሊሰጥ አይችልም"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ዘመናዊ የባትሪ አስተዳዳሪን ያብሩ"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"የባትሪ አጠቃቀምን ለማትባት ያብሩ"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"የባትሪ ሁነታን አብራ"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"የእርስዎን የባትሪ ዕድሜ ያራዝሙ"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ዝቅተኛ ባትሪ ሁነታ በርቷል"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"አንዳንድ ባህሪያት የተገደቡ ናቸው"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ስልክ በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏል"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ጡባዊ በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏል"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"መሣሪያው በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏል"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"ከመጨረሻው ሙሉ ኃይል ከተሞላለት ወዲህ <xliff:g id="HOUR">%1$s</xliff:g> ሥራ ላይ ውሏል"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"የእርስዎ ስልክ በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏላ እና ይሄ ብዙ ባትሪ ፈጅቷል። የእርስዎ ባትሪ መደበኛ የሆነ ሥራ ነው እየሠራ ያለው።\n\n የእርስዎ መሣሪያ ሙሉ ኃይል ከተሞላለት ወዲህ ለ<xliff:g id="HOUR">%1$s</xliff:g> ሥራ ላይ ውሏል።\n\n ጠቅላላ አጠቃቀም፦"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"የእርስዎ ጡባዊ በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏላ እና ይሄ ብዙ ባትሪ ፈጅቷል። የእርስዎ ባትሪ መደበኛ የሆነ ሥራ ነው እየሠራ ያለው።\n\n የእርስዎ መሣሪያ ሙሉ ኃይል ከተሞላለት ወዲህ ለ<xliff:g id="HOUR">%1$s</xliff:g> ሥራ ላይ ውሏል።\n\n ጠቅላላ አጠቃቀም፦"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"የእርስዎ መሣሪያ በጣም ጫን ባለ መልኩ ሥራ ላይ ውሏላ እና ይሄ ብዙ ባትሪ ፈጅቷል። የእርስዎ ባትሪ መደበኛ የሆነ ሥራ ነው እየሠራ ያለው።\n\n የእርስዎ መሣሪያ ሙሉ ኃይል ከተሞላለት ወዲህ ለ<xliff:g id="HOUR">%1$s</xliff:g> ሥራ ላይ ውሏል።\n\n ጠቅላላ አጠቃቀም፦"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"የዘመናዊ ባትሪ አስተዳዳሪ"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"ባትሪን በራስ-ሰር አስተዳድር"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"በመተግበሪያዎች አጠቃቀም ላይ በመመስረት የኃይል አጠቃቀምን በራስ-ሰር አስተካክል"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"የተገደቡ መተግበሪያዎች"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="one">%1$d መተግበሪያዎች</item>
+ <item quantity="other">%1$d መተግበሪያዎች</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"መተግበሪያ ይቁም?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"<xliff:g id="APP">%1$s</xliff:g> ስልክዎን እንደነቃ እያቆየው ስለሆነ ስልክዎ ባትሪውን በጤናማ ሁኔታ ማስተዳደር አልቻለም።\n\nይህን ችግር ለመፍታት መተግበሪያውን ማቆም ይችላሉ።\n\nይህ ሁኔታ ከቀጠለ የባትሪ አፈጻጸም ብቃትን ለማሻሻል ሲባል መተግበሪያውን ማራገፍ ሊኖርብዎት ይችላል።"</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"<xliff:g id="APP">%1$s</xliff:g> ጡባዊዎን እንደነቃ እያቆየው ስለሆነ ጡባዊዎ ባትሪውን በጤናማ ሁኔታ ማስተዳደር አልቻለም።\n\nይህን ችግር ለመፍታት መተግበሪያውን ማቆም ይችላሉ።\n\nይህ ሁኔታ ከቀጠለ የባትሪ አፈጻጸም ብቃትን ለማሻሻል ሲባል መተግበሪያውን ማራገፍ ሊኖርብዎት ይችላል።"</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"ማህደረ መረጃ አገልጋይ"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"የመተግበሪያ ማትባት"</string>
<string name="battery_saver" msgid="8172485772238572153">"ባትሪ ቆጣቢ"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"የባትሪ ቆጣቢን ተጠቀም"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"በራስ ሰር አብራ"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"በፍፁም"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> ባትሪ ላይ"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"አስምር በአሁኑጊዜ ችግር እየገጠመው ነው። ከአፍታ ቆይታ በኋላ ይመለሳል።"</string>
<string name="add_account_label" msgid="7811707265834013767">"መለያ አክል"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"የስራ መገለጫ ገና አይገኝም"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"የሥራ ሁነታ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"የሥራ መገለጫ፣ መተግበሪያዎችን፣ የበስተጀርባ ሥምረት እና ተዛማጅ ባህሪዎችን ጨምሮ ይፍቀዱ"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"የሥራ መገለጫ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"በእርስዎ ድርጅት የሚተዳደር"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"መተግበሪያዎች እና ማሳወቂያዎች ጠፍተዋል"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"የስራ መገለጫ አስወግድ"</string>
<string name="background_data" msgid="5779592891375473817">"ዳራ ውሂብ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"መተግበሪያዎች በማንኛውም ሰዓት ማመሳሰል፣ መላክ፣ እና ውሂብ መቀበል ይችላሉ።"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"መለያ አስወግድ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ይህን መለያ ማስወገድ ሁሉንም መልዕክቶቹን፣ እውቂያዎቹን፣ እና ከጡባዊው ውስጥ ሌላ ውሂብ ይሰርዛል!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ይህን መለያ ማስወገድ ሁሉንም መልዕክቶቹን፣ እውቂያዎቹን፣ እና ከስልኩ ውስጥ ያለ ሌላ ውሂብን ይሰርዛል!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ይህን መለያ ማስወገድ ሁሉንም መልዕክቶቹ፣ እውቂያዎቹ እና ሌላ ውሂቡ ከስልኩ ላይ ይሰርዛቸዋል!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ይህ ለውጥ በአስተዳዳሪዎ አይፈቀድም"</string>
<string name="provider_label" msgid="7724593781904508866">"ምዝገባዎችላይ ተጫን"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="one">የእውቅና ማረጋገጫዎችን ይፈትሹ</item>
<item quantity="other">የእውቅና ማረጋገጫዎችን ይፈትሹ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ተጠቃሚዎች"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"በርካታ ተጠቃሚዎች"</string>
<string name="user_list_title" msgid="7937158411137563543">"ተጠቃሚዎች እና መገለጫዎች"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ተጠቃሚ ወይም መገለጫ አክል"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ተጠቃሚ አክል"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ብሉቱዝ፣ Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"መተግበሪያዎች እና ማሳወቂያዎች"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ፈቃዶች፣ ነባሪ መተግበሪያዎች"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ተጠቃሚዎች እና መለያዎች"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"መለያዎች"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ነባሪ መተግበሪያዎች"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ቋንቋዎች፣ ጊዜ፣ ምትኬ፣ ዝማኔዎች"</string>
<string name="search_results_title" msgid="1796252422574886932">"ቅንብሮች"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"አትረብሽ፣ አቋርጥ፣ ማቋረጥ፣ እረፍት"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"አቅራቢያ፣ አካባቢ፣ ታሪክ፣ ሪፖርት ማድረግ"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ትክክለኝነት"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"መለያ"</string>
<string name="keywords_users" msgid="3434190133131387942">"ገደብ፣ ገድብ፣ የተገደበ"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"የጽሑፍ እርማት፣ ትክክል፣ ድምፅ፣ ንዘር፣ ራስ-ሰር፣ ቋንቋ፣ የጣት ምልክት፣ ጠቁም፣ የአስተያየት ጥቆማ፣ ገጽታ፣ የሚያስከፋ፣ ቃል፣ ተይብ፣ ስሜት ገላጭ ምስል፣ አለምአቀፍ"</string>
@@ -2829,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"አውታረ መረብ፣ የተንቀሳቃሽ ስልክ አውታረ መረብ ሁኔታ፣ አገልግሎት ሁኔታ፣ የሲግናል ጥንካሬ፣ የተንቀሳቃሽ ስልክ አውታረ መረብ ዓይነት፣ ከአገልግሎት መስጫ ክልል ውጭ፣ iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"ተከታታይ ቁጥር፣ የሃርድዌር ስሪት"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"የandroid ደህንነት መጠገኛ ደረጃ፣ የመሰረተ-ድግ ስሪት፣ የአውራ ከዋኝ ስሪት"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"ድባባዊ ማሳያ፣ የማያ ገጽ ቁልፍ ማሳያ"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"የWi-Fi NFC መለያ ያዋቅሩ"</string>
<string name="write_tag" msgid="8571858602896222537">"ጻፍ"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ለመጻፍ አንድ መለያ መታ ያድርጉ..."</string>
@@ -2872,6 +2914,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> ደንቦች</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"አይረብሹ"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"አትረብሽን አብራ"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"ባህሪ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ከዚህ የመጡ ድምጾችን እና ንዝረቶችን ፍቀድ፦"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ምንም ድምፅ የለም"</string>
@@ -2881,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"በራስ-ሰር አብራ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ራስ-ሰር ደንቦች"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ራስ-ሰር ደንብ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"የአትረብሽ ደንቦችን ያቀናብሩ"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"በተወሰኑ ጊዜዎች ላይ ድምጾችን እና ንዝረቶችን ገድብ"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"በተወሰኑ ሰዓታት ላይ የስልክ ድምጽ አጥፋ"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"የአትረብሽ ደንቦችን ያቀናብሩ"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"ደንብ ተጠቀም"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ቅድሚያ የሚሰጠው ብቻ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ማንቂያዎች ብቻ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ሙሉ ለሙሉ ጸጥታ"</string>
@@ -2890,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ምስላዊ ረብሻዎችን አግድ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ምስላዊ ምልክቶችን ፍቀድ"</string>
<string name="zen_mode_add" msgid="90014394953272517">"አክል"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"አሁን አብራ"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"አሁን አጥፋ"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"አብራ"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"አሁን አብራ"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"አሁን አጥፋ"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"አትረብሽ እስከ <xliff:g id="FORMATTED_TIME">%s</xliff:g> ድረስ በርቷል"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"አትረብሽ እርስዎ እስከሚያጠፉት ድረስ እንደበራ ይቆያል"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"አትረብሽ በደንብ <xliff:g id="RULE_NAME">%s</xliff:g> በራስ-ሰር በርቷል"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"አትረብሽ በአንድ መተግበሪያ (<xliff:g id="APP_NAME">%s</xliff:g>) በራስ-ሰር በርቷል"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ቅድሚያ የሚሰጠው ብቻ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>። <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"የስራ መገለጫ ድምጾች"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"የግል መገለጫ ድምጾችን ይጠቀሙ"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"ድምጾች ለስራ እና የግል መገለጫዎች ተመሳሳይ ናቸው"</string>
@@ -2911,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"የስልክ ጥሪ ድምፆች"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ሌሎች ድምጾች እና ንዝረቶች"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"ማሳወቂያዎች"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"በቅርቡ የተላኩ"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"የላቀ"</string>
<string name="profile_section_header" msgid="2320848161066912001">"የስራ ማሳወቂያዎች"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"የማሳወቂያ ነጥቦችን ፍቀድ"</string>
@@ -2930,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"የመተግበሪያ ማሳወቂያዎች"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"የማሳወቂያ ምድብ"</string>
<string name="notification_group_title" msgid="7180506440133859601">"የማሳወቂያ ምድብ ቡድን"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"አስፈላጊነት"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"ባህሪ"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"ድምፅ ይፍቀዱ"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"ማሳወቂያዎችን በጭራሽ አታሳይ"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"ምንም ድምፅ ወይም የሚታይ ትርጉም የለም"</string>
@@ -2948,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"መካከለኛ አስፈላጊነት"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"ከፍተኛ አስፈላጊነት"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"አስቸኳይ አስፈላጊነት"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"ማሳወቂያዎችን አሳይ"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"የማሳወቂያ ረዳት"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"የማሳወቂያ መዳረሻ"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"የስራ መገለጫ ማሳወቂያዎች መዳረሻ ታግዷል"</string>
@@ -2978,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"የአትረብሽ መዳረሻ"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"ምንም የተጫኑ መተግበሪያዎች የተጠየቀው አትረብሽ መዳረሻ የላቸውም"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"መተግበሪያዎችን በመጫን ላይ..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android የዚህ መተግበሪያ ማሳወቂያዎች በዚህ መሣሪያ ላይ እንዳይታይ እያገደ ነው"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android የዚህ መተግበሪያ ምድብ በዚህ መሣሪያ ላይ እንዳይታይ እያገደ ነው"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android ይህን የማሳወቂያዎች ቡድን በዚህ መሣሪያ ላይ እንዳይታይ እያገደ ነው"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"በጥያቄዎ መሠረት Android የዚህ መተግበሪያ ማሳወቂያዎች በዚህ መሣሪያ ላይ እንዳይታዩ እያገደ ነው"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"በጥያቄዎ መሠረት Android ይህ የማሳወቂያዎች ምድብ በዚህ መሣሪያ ላይ እንዳይታይ እያገደ ነው"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"በጥያቄዎ መሠረት Android ይህን የማሳወቂያዎች ስብስብ በዚህ መሣሪያ ላይ እንዳይታይ እያገደ ነው"</string>
<string name="notification_channels" msgid="5346841743182627500">"ምድቦች"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"ሌላ"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"መሣሪያዎን ለመክፈት የጣት አሻራዎን ከመጠቀም ባሻገር ይህ መሣሪያ ከመጀመሩ በፊት የእርስዎን ይለፍ ቃል እንዲጠይቅ በማድረግ ደህንነቱን ይበልጥ ሊያስጠብቁለት ይችላሉ። መሣሪያው እስከሚጀምር ድረስ ጥሪዎችን፣ መልእክቶችን ወይም ማንቂያዎችን ጨምሮ ማሳወቂያዎችን መቀበል አይችልም።\n\nይህ በጠፉ ወይም በተሰረቁ መሣሪያዎች ላይ ያለ የውሂብ ለመጠበቅ ያግዛል። መሣሪያዎን ለማስጀመር የይለፍ ኮድ ይጠየቅ?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"አዎ"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"የለም"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"አዎ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"አይ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"ፒን ይጠየቅ?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ስርዓተ-ጥለት ይጠየቅ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"የይለፍ ቃል ይጠየቅ?"</string>
@@ -3254,8 +3307,8 @@
<string name="high_power_off" msgid="3393904131961263278">"የባትሪ አጠቃቀምን አትባ"</string>
<string name="high_power_system" msgid="7362862974428225301">"የባትሪ ማትባት አይገኝም"</string>
<string name="high_power_desc" msgid="6283926163708585760">"የባትሪ ማትባትን አትተግብር። ባትሪዎን በበለጠ ፍጥነት ሊጨርሰው ይችላል።"</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"መተግበሪያው ሁልጊዜ በጀርባ ውስጥ ያሄድ?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"<xliff:g id="APP_NAME">%1$s</xliff:g> ሁልጊዜ በጀርባ ውስጥ እንዲያሄድ መፍቀድ የባትሪ ህይወት ሊቀንስ ይችላል። \n\nይህን በኋላ ላይ በቅንብሮች > መተግበሪያዎች & ማሳወቂያዎች ውስጥ መቀየር ይችላሉ።"</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"መተግበሪያው ሁልጊዜ በጀርባ ውስጥ ይሂድ?"</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"<xliff:g id="APP_NAME">%1$s</xliff:g> ሁልጊዜ በጀርባ ውስጥ እንዲያሄድ መፍቀድ የባትሪ ህይወት ሊቀንስ ይችላል። \n\nይህን በኋላ ላይ በቅንብሮች ፤ መተግበሪያዎች እና ማሳወቂያዎች ውስጥ መቀየር ይችላሉ።"</string>
<string name="battery_summary" msgid="8044042095190688654">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> ከመጨረሻው ሙሉ ኃይል መሙላት በኋላ አጠቃቀም"</string>
<string name="battery_power_management" msgid="5571519699679107523">"የኃይል አስተዳደር"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"ከመጨረሻው ሙሉ ኃይል መሙላት በኋላ ምንም የባትሪ አጠቃቀም የለም"</string>
@@ -3271,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"አትቀበል"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"የዚህን መሣሪያ ኃይል ሙላ"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ይህን መሣሪያ ብቻ ኃይል ይሙሉበት"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"ኃይል አቅርብ"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"የተገናኘውን መሣሪያ ኃይል ይሙሉ። የUSB ኃይል መሙላትን ከሚደግፉ መሣሪያዎች ጋር ብቻ ይሠራል።"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ፋይሎችን አዛውር"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ወደ ሌላ መሣሪያ ፋይሎችን ያስተላልፉ"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ፎቶዎችን ያሸጋግራል (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP የማይደገፍ ከሆነ ፎቶዎችን ወይም ፋይሎችን ማዛወር (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"መሣሪያን እንደ MIDI ይጠቀሙ"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ይህን መሣሪያ እንደ MIDI ይጠቀሙበት"</string>
- <string name="usb_use" msgid="3256040963685055320">"ዩኤስቢ ይጠቀሙ ለ"</string>
+ <string name="usb_use" msgid="3372728031108932425">"ዩኤስቢ ተጠቀም ለ"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"ዩ ኤስ ቢ"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"የዚህን መሣሪያ ኃይል በመሙላት ላይ"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"ኃይል አቅራቢ"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ፋይሎችን በማዛወር ላይ"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ፎቶዎችን በማዛወር ላይ (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"መሣሪያን እንደ MIDI በመጠቀም ላይ"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"የኤስኤምኤስ ግልባጭ"</string>
<string name="background_check_pref" msgid="7550258400138010979">"የዳራ ፍተሻ"</string>
<string name="background_check_title" msgid="4534254315824525593">"ሙሉ የዳራ መዳረሻ"</string>
@@ -3394,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"ልጣፍ፣ እንቅልፍ፣ የቅርጸ-ቁምፊ መጠን"</string>
<string name="display_summary_example" msgid="9102633726811090523">"ከ10 ደቂቃዎች እንቅስቃሴ-አልባነት በኋላ ተኛ"</string>
<string name="memory_summary" msgid="8080825904671961872">"በአማካይ <xliff:g id="USED_MEMORY">%1$s</xliff:g> ከ<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> ማህደረ ትውስጥ ስራ ላይ ውሏል"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"የአሁኑ ተጠቃሚ፦ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"እንደ <xliff:g id="USER_NAME">%1$s</xliff:g> ሆነው ገብተዋል።"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ነባሪ ነው"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"በርቷል / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"በርቷል"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ጠፍቷል"</string>
<string name="backup_disabled" msgid="485189128759595412">"ምትኬ ተሰናክሏል"</string>
- <string name="about_summary" msgid="924181828102801010">"ወደ Android <xliff:g id="VERSION">%1$s</xliff:g> ተዘምኗል"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"እርምጃ አይፈቀድም"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"የድምፅን መጠን መለወጥ አይቻልም"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"መደወል አልተፈቀደም"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"ኤስኤምኤስ አልተፈቀደም"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ካሜራ አልተፈቀደም"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ቅጽበታዊ ገጽ እይታ አልተፈቀደም"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ምትኬዎችን ማጥፋት አይቻልም"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ይህ እርምጃ ተሰናክሏል። ተጨማሪ ለማወቅ የድርጅትዎን አስተዳዳሪ ያነጋግሩ።"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"ተጨማሪ ዝርዝሮች"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"የእርስዎ አስተዳዳሪ ቅንብሮችን፣ ፈቃዶችን፣ የኮርፖሬት መዳረሻን፣ የአውታረ መረብ እንቅስቃሴን እና የመሣሪያዎ አካባቢያዊ መረጃን ጨምሮ ከእርስዎ የስራ መገለጫ ጋር የተጎዳኙ መተግበሪያዎችን እና ውሂብን መከታተል እና ማቀናበር ይችላል።"</string>
@@ -3420,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"ተንቀሳቃሽ የWi-Fi መገናኛ ነጥብ <xliff:g id="ID_1">%1$s</xliff:g> ገቢር ነው፣ ለዚህ መሣሪያ Wi-Fi ጠፍቷል።"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"የአውሮፕላን ሁነታ በርቷል"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi፣ ብሉቱዝ እና የተንቀሳቃሽ ስልክ አውታረ መረብ ጠፍተዋል። የስልክ ጥሪዎችን ማድረግ ወይም ከበይነመረብ ጋር መገናኘት አይችሉም።"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"አትረብሽ በርቷል (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"የባትሪ ኃይል ቆጣቢ በርቷል"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"አፈጻጸም ቀንሷል። የአካባቢ አገልግሎቶች እና የጀርባ ውሂብ ጠፍተዋል።"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"የተንቀሳቃሽ ስልክ ውሂብ ጠፍቷል"</string>
@@ -3430,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"የሥራ መገለጫ ጠፍቷል"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"መተግበሪያዎች፣ የበስተጀርባ ሥምረት፣ እና ሌሎች ከእርስዎ የሥራ መገለጫ ጋር የተገናኙ ባህሪዎች ጠፍተዋል።"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"የማታ ብርሃት መርሐግብርን ያዘጋጁ"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"እንዲተኙ ለማገዝ ለማያ ገጹ ብርቱካናማ ቅልም ይስጡት።"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ማታ ማታ ሁልጊዜ ማያ ገጽ ላይ በራስ-ሰር ቅልም አድርግ"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"የምሽት ብርሃን በርቷል"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"ማያ ገጽ ብርቱካናማ ቅልም አለው። ይሄ እንዲተኙ ሊያግዘዎት ይችላል።"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ለእርስዎ የተጠቆሙ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"የአስተያየት ጥቆማዎች"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ተጨማሪ"</string>
@@ -3537,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ምንም"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ደረጃ ያለው ነገር ይጎድላል።"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ደረጃ ያለው ነገር ይህን ቁልፍ አይዝም።"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"አንድ ማሳያን በእሱ በተሰራ ቅርጽ አስመስል"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ምንም"</string>
<string name="special_access" msgid="3458780842491881155">"ልዩ የመተግበሪያ መዳረሻ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> መተግበሪያዎች ያልተገደበ ውሂብ ሊጠቀሙ ይችላሉ</item>
@@ -3559,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"ከበርካታ መሣሪያዎች ጋር ተገናኝቷል"</string>
<string name="demo_mode" msgid="2798762752209330277">"የስርዓት ተጠቃሚ በይነገጽ ማሳያ ሁነታ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"የፈጣን ቅንብሮች ገንቢ ሰድሮች"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"እርስዎን ለመርዳት እዚህ እንገኛለን"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"እዚህ ላይ 24/7 ለእርስዎ እንገኛለን"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"እዚህ 24/7 ለእርስዎ እንገኛለን"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"ማንኛውም ችግር ለመፍታት ለማገዝ የድጋፍ ቡድናችን እዚህ አለ"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"የድጋፍ ቡድናችን ሙሉ ቀን፣ በየቀኑ እዚህ ነው"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"እገዛ ውስጥ ይፈልጉ ወይም በድጋፍ ሰዓቶች (አካባቢያዊ ሰዓት) ጊዜ ተመልሰው ይምጡ፦<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"የስልክ ድጋፍ ሰዓቶች (አካባቢያዊ ሰዓት)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"እርዳታ ይፈልጉ ወይም ጠቃሚ ምክሮችን እና ዘዴዎችን ያስሱ"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"ድጋፍ ለ፦"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"መስኮት መከታተያ"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"የላይ ሽፋን መከታተያ"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"ወደ ውጭ አገር ሊጓዙ ነው?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"አለምአቀፍ ክፍያዎች ተፈጻሚ ሊሆኑ ይችላሉ"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"ስልክ"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"ውይይት"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"ጠቃሚ ምክሮችን እና ዘዴዎችን አስስ"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"እገዛን ፈልግ እና ግብረመልስ ላክ"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"የእውቂያ ድጋፍ"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"ግባ"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"መግባት አልቻሉም?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"የሥርዓት መረጃን ላክ"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"ዳግም አታሳይ"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"እንደሚከተለው በመጠየቅ ላይ"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"መለያ ያክሉ"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"የሥርዓት መረጃ"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"የስራ መገለጫ ቅንብሮች"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"የእውቂያ ፍለጋ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"በእርስዎ ድርጅት የሚደረጉ የእውቂያ ፍለጋዎች ደዋዮችን እና እውቂያዎችን እንዲለዩ ፍቀድ"</string>
@@ -3599,11 +3659,11 @@
<item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> ሰከንዶች</item>
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> ሰከንዶች</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> ይጠብቁ"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"ማከማቻን ያስተዳድሩ"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"የማከማቻ ባዶ ቦታን ነጻ ለማድረግ እንዲያግዝ የማከማቻ አስተዳዳሪ ከእርስዎ መሣሪያ ላይ በምትኬት የተቀመጡ ፎቶዎችን እና ቪዲዮዎችን አስወግዷል።"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ፎቶዎች እና ቪዲዮዎች አስወግድ"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"የማከማቻ አስተዳዳሪ"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"የማከማቻ አስተዳዳሪን ተጠቀም"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"ራስ-ሰር"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"በራስ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"አሁኑኑ ባዶ ቦታ ያስለቅቁ"</string>
@@ -3614,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ወደ ካሜራ ዝለል"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ካሜራውን በፍጥነት ለመክፈት በቀላሉ የኃይል አዝራሩን ይጫኑት። ከማንኛውም ማያ ገጽ ላይ ይሠራል"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ካሜራ በፍጥነት ክፈት"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ለካሜራ የኃይል አዝራሩን ሁለቴ ይጫኑ"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ካሜራ ወርወር ያድርጉ"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"የራስ ፎቶዎችን በፍጥነት ያንሱ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"ለራስ ፎቶ ሁነታ ስልክን ሁለቴ ጠምዘዝ ያድርጉ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"ለራስ ፎቶ ሁነታ ጡባዊን ሁለቴ ጠምዘዝ ያድርጉ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"ለራስ ፎቶ ሁነታ መሣሪያን ሁለቴ ጠምዘዝ ያድርጉ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ስልኩን ለመመልከት ሁለቴ መታ ያድርጉ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ጡባዊውን ለመመልከት ሁለቴ መታ ያድርጉ"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"መሣሪያውን ለመመልከት ሁለቴ መታ ያድርጉ"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"ጊዜን፣ የማሳወቂያ አዶዎችን፣ እና ሌላ መረጃን ለመፈተሽ የእርስዎን ማያ ገጽ ሁለቴ መታ ያድርጉት።"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ማያ ገጽ በሚጠፋበት ጊዜ ማሳወቂያዎችን ይፈትሹ"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ስልኩን ለማረጋገጥ ያንሱ"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ጡባዊውን ለማረጋገጥ ያንሱ"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"መሣሪያውን ለማረጋገጥ ያንሱ"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"ጊዜን፣ የማሳወቂያ አዶዎችን፣ እና ሌላ መረጃን ለመፈተሽ የእርስዎን ስልክ ያንሱት።"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"ጊዜን፣ የማሳወቂያ አዶዎችን፣ እና ሌላ መረጃን ለመፈተሽ የእርስዎን ጡባዊ ያንሱት።"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"ጊዜን፣ የማሳወቂያ አዶዎችን፣ እና ሌላ መረጃን ለመፈተሽ የእርስዎን መሣሪያ ያንሱት።"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ማያ ገጽ በሚጠፋበት ጊዜ ማሳወቂያዎችን ይፈትሹ"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"ማሳወቂያዎችን ለማግኘት የጣት አሻራን ያንሸራትቱ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"የጣት አሻራን ያንሸራቱ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"የእርስዎን ማሳወቂያዎች ለመመልከት በስልክዎ ጀርባ ላይ ባለው የጣት አሻራ ዳሳሽ ላይ ወደ ታች ጠረግ ያድርጉት"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"የእርስዎን ማሳወቂያዎች ለመፈተሽ በጡባዊዎ ጀርባ ላይ ባለው የጣት አሻራ ዳሳሽ ላይ ወደ ታች ጠረግ ያድርጉት"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"የእርስዎን ማሳወቂያዎች ለመፈተሽ በመሣሪያዎ ጀርባ ላይ ባለው የጣት አሻራ ዳሳሽ ላይ ወደ ታች ጠረግ ያድርጉት"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"ማሳወቂያዎችን በፍጥነት ይመልከቱ"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"በጣት አሻራ ዳሳሹ ላይ ወደ ታች ያንሸራትቱ"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"በርቷል"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ጠፍቷል"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"ማስነሻ አስቀድሞ ተከፍቷል"</string>
@@ -3769,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"በአዲሱ ጡባዊዎ ላይ ጉብኝት ያድርጉ"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"በአዲሱ መሣሪያዎ ላይ ጉብኝት ያድርጉ"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ይህ ባህሪ በዚህ መሣሪያ ላይ አይገኝም"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"ሙሉ የGNSS መለኪያዎች አስገድድ"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ሁሉንም የGNSS ህብረ ፎቶዎችን እና ድግምግሞሾችን ያለምንም የሥራ ብስክሌት ግልቢያ ዱካቸውን ይከታተሉ"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"የስንክል ንግግር ሳጥንን ሁልጊዜ አሳይ"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"መተግበሪያ በሚሰናከልበት እያንዳንዱ ጊዜ የንግግር ሳጥን አሳይ"</string>
+ <string name="directory_access" msgid="4722237210725864244">"የማውጫ መዳረሻ"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"የማውጫ መዳረሻ"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"የእኔ ስልክ"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"የእኔ ጡባዊ"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"የእኔ መሣሪያ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"መለያ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"የመሣሪያ ስም"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"መኪና ሲነዳ ብሉቱዝ ተጠቀም"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"እየነዳሁ ሳለ ብሉቱዝን በራስ-ሰር አብራ"</string>
</resources>
diff --git a/res/values-az/arrays.xml b/res/values-az/arrays.xml
index e75af41..c3e76e7 100644
--- a/res/values-az/arrays.xml
+++ b/res/values-az/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Düyməyə basın"</item>
<item msgid="1624323946324499595">"Eynisəviyyəli cihazdan PIN"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 saat"</item>
<item msgid="5198271470953124739">"Heç vaxt taym aut olmasın"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Defolt)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Keyfiyyətsiz"</item>
<item msgid="2042505933058940139">"Zəif"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"60 gündən köhnədir"</item>
<item msgid="5692284879054004388">"90 gündən köhnədir"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Şəbəkə tərcihindən istifadə edin"</item>
+ <item msgid="8745603368609022803">"Limitli olaraq qəbul edin"</item>
+ <item msgid="2266114985518865625">"Limitisiz olaraq qəbul edin"</item>
+ </string-array>
</resources>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index ba5034e..f273067 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Cihazlarınız"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Yeni cihazı qoşalaşdırın"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Qoşalaşdırmaq və bluetooth cihazlarına qoşulmaq üçün cihaza icazə verin"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Diapazon daxili zəngi deaktiv edin"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Bluetooth qulaqlığında fərdi telefon zənglərini oxutmayın"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Ən son qoşulmuş cihazlar"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Yadda saxlanmış cihazlar"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Cihaz əlavə edin"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Tarix ayarlayın"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Əlifba üzrə sırala"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Vaxt zonasına görə sırala"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> tarixindən başlayır."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Yay vaxtı"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standart vaxt"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Bölgə üzrə saat qurşağı"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Sabit saat qurşaqları"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Tarix"</string>
<string name="time_picker_title" msgid="483460752287255019">"Vaxt"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Avtomatik kilidləyin"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Ekran mesajını kilidləyin"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Vidcetləri aktivləşdirin"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Admin tərəfindən deaktiv edildi"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Kilid seçimini göstərin"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Təkmilləşdirilmiş giriş və barmaq izi kilidini deaktiv edən yandırıb söndürmə düyməsini göstərin."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Heç biri"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Məs., İlkin Santak."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profil info"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Hesablar"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Yer"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Məkan istifadə edin"</string>
<string name="account_settings_title" msgid="626177544686329806">"Hesablar"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Təhlükəsizlik & yeri"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Şifrələmə və kredensiallar"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Daxil etdiyiniz parol düzgündür, lakin datanız zədəlidir. \n\nPlanşeti istifadə etməyə davam etmək üçün zavod sıfırlaması etməlisiniz. Sıfırlanandan sonra Google Hesabınızda yedəklənmiş istənilən datanı bərpa edə bilərsiniz."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Daxil etdiyiniz parol düzgündür, lakin datanız zədəlidir. \n\nTelefonu istifadə etməyə davam etmək üçün zavod sıfırlaması etməlisiniz. Sıfırlanandan sonra Google Hesabınızda yedəklənmiş istənilən datanı bərpa edə bilərsiniz."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Daxiletmə metoduna keç"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Ekran kilidini quraşdırın"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Cihazınızı qoruyun"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Barmaq izini istifadə edin"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Barmaq iziniz ilə kilidi açın"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Ekran kilidi ayarlayın"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Digərlərinin planşetinizi istifadə etməsinə mane olun"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Digərlərinin cihazınızı istifadə etməsinə mane olun"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Digərlərinin telefonunuzu istifadə etməsinə mane olun"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Barmaq izi ilə kiliddən çıxarın"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Barmaq iziniz ilə kilidi açın"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Barmaq iziniz ilə kilidi açın"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Barmaq iziniz ilə kilidi açın"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Ekran kilidi seçin"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"İş kilidi seçin"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Planşetinizi qoruyun"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Spikerfon telefon kimi"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Musiqi və media üçün"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Ayarları yadda saxlayın"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maksimum qoşulmuş Bluetooth audio cihazı"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Maksimum sayda qoşulmuş Bluetooth audio cihazları seçin"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Yayım"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Naqilsiz displeyi aktivləşdirin"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Yaxınlıqda heç bir cihaz tapılmadı."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Ad"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Giriş"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi yandırmaq istəyir"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi söndürmək istəyir"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi-Fi yandırın"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fi istifadə edin"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi ayarları"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Simzis giriş nöqtələrini quraşdırın və idarə edin"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Parol"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Parolu göstər"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP Band Seçin"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Avtomatik"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz Band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz Band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP parametrləri"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS mövcuddur)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Şəbəkə parolunuzu daxil edin"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operator Wi‑Fi şəbəkəsi"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1%s</xliff:g> vasitəsilə qoşulun"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1$s</xliff:g> vasitəsilə qoşulun"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Yerləşmə dəqiqliyini təkmilləşdirmək və digər məqsədlər üçün Wi-Fi qapalı olsa da belə <xliff:g id="APP_NAME">%1$s</xliff:g> tətbiqi şəbəkə skanını yandırmaq istəyir. \n \n Skan etmək istəyən bütün tətbiqlərə icazə verilsin?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Bunu söndürmək üçün daşma menyuda Qabaqcıl bölməsinə daxil olun."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"İcazə verin"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP Band"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Digər cihazlara Wi‑Fi şəbəkəsi yaratmaq üçün hotspot istifadə edin. Hotspot mobil data bağlantısından istifadə edərək internet təmin edir. Əlavə mobil data xərcləri tətbiq edilə bilər."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Tətbiq yaxınlıqdakı cihazlarla kontenti paylaşmaq üçün hotspot yarada bilər."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Hotspotu avtomatik deaktiv edin"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Heç bir cihaz qoşulu olmazsa, Wi‑Fi hotspot\'u deaktiv ediləcək"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Hotspot yandırılır..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Hotspot söndürülür…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> aktivdir"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi zəngi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi Zəngini aktiv edin"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Wi-Fi əvəzinə mobil şəbəkə istifadə edin"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi ilə zəng edərək əhatəni genişləndirin"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Çağrı tərcihi"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi çağrı rejimi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaminq seçimi"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Fövqəladə Ünvan"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Wi‑Fi vasitəilə təcili zəng etdiyiniz zaman məkanınız kimi istidafə edilir"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958">"Fərdi DNS funksiyaları haqqında "<annotation id="url">"ətraflı məlumat"</annotation></string>
<string name="display_settings_title" msgid="1708697328627382561">"Göstər"</string>
<string name="sound_settings" msgid="5534671337768745343">"Səs"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Həcmlər"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobil şəbəkə növü"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator infosu"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobil şəbəkə durumu"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Xidmət durumu"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Siqnal gücü"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaminq"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Yeni <xliff:g id="NAME">^1</xliff:g> cihazınız işləyir. \n\nFotoları, faylları və tətbiq datasını bu cihaza daşımaq üçün Ayarlar və Yaddaş Ehtiyatı bölməsinə keçin."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"<xliff:g id="APP">^1</xliff:g> daşıyın"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"<xliff:g id="APP">^1</xliff:g> və onun datasının <xliff:g id="NAME_0">^2</xliff:g> üzərinə daşınması bir neçə dəqiqə vaxt alacaq. Daşınma tamamlanmamış tətbiqləri işlədə bilməyəcəksiniz. \n\nDaşınma müddəti ərzində <xliff:g id="NAME_1">^2</xliff:g> çıxarılmamalıdır."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Datanı köçürmək üçün <xliff:g id="APP">^1</xliff:g> tətbiqini kiliddən çıxarın."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"<xliff:g id="APP">^1</xliff:g> daşınır…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Daşınma zamanı <xliff:g id="NAME">^1</xliff:g> silinməməlidir. \n\nDaşınma tamamlanmamış bu cihazdakı <xliff:g id="APP">^2</xliff:g> tətbiqi əlçatan olmayacaq."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Daşınmanı ləğv edin"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Şəbəkə, tətbiqlər və ya cihazı sıfırlamaq mümkündür"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, mobil və Bluetooth\'u sıfırlayın"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Bununla bütün şəbəkə ayarları sıfırlanacaq, bura daxildir:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobil data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM-ləri də sıfırlayın"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Telefondakı bütün eSIM-ləri silin. eSIM-ləri yenidən endirmək üçün operatorla razılığa gəlməlisiniz. Bununla mobil xidmət planı ləğv edilməyəcək."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Ayarları sıfırlayın"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Bütün şəbəkə ayarları sıfırlansın? Bu əməliyyatı geri qaytara bilməzsiniz!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Ayarları sıfırlayın"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Sıfırlansın?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Şəbəkə sıfırlaması bu istifadəçi üçün əlçatan deyil"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Şəbəkə ayarları sıfırlandı"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM-ləri sıfırlamaq alınmadı"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIM-lər xəta səbəbilə sıfırlana bilmədi."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Bütün datanı silin (fabrika sıfırlaması)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Bu, planşetinizdən bunları siləcək: "<b>"daxili yaddaş"</b>", həmçinin:\n\n"<li>"Google hesabınızı"</li>\n<li>"Sistem və tətbiq data və ayarlarını"</li>\n<li>"Endirilmiş tətbiqləri"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Bu telefonunuzun "<b>"daxili yaddaşından"</b>" bütün datanı siləcək, bura daxildir: \n\n"<li>"Google hesabınız"</li>\n<li>"Sistem və tətbiq məlumatları və parametrləri"</li>\n<li>"Endirilmiş tətbiqlər"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Hazırda bu hesablara daxil olmusunuz:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Bu cihazda başqa istifadəçilər iştirak edir.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musiqi"</li>\n<li>"Fotolar"</li>\n<li>"Digər istifadəçi datası"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM operatorları"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM-lər"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Bununla mobil xidmət planı ləğv edilməyəcək."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Həmçinin musiqi, şəkil və digər istifadəçi datası təmizləmək üçün "<b>"USB yaddaşı"</b>" silinməlidir."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Musiqi, şəkil, və digər istifadəçi datasını silmək üçün "<b>"SD kartı"</b>" təmizləmək lazımdır."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Lütfən. internetə qoşulun"</string>
<string name="location_title" msgid="1029961368397484576">"Mənim yerləşməm"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"İş profili üçün yer"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Rejim"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Yüksək dəqiqlik"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Batareyaya qənaət"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Yalnız cihaz"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Məkan deaktiv"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Tətbiq səviyyəsi icazələri"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Son məkan sorğuları"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Son vaxtlar heç bir tətbiq tərəfindən məkan sorğusu olmayıb"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Məkan xidmətləri"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Çox batareya istifadəsi"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Az batareya istifadəsi"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Məkan rejimi"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Məkanı aşkarlamaq üçün GPS, Wi‑Fi, Bluetooth və ya mobil şəbəkə istifadə edin"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Məkanı aşkarlamaq üçün Wi‑Fi, Bluetooth və ya mobil şəbəkə istifadə edin"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Məkanı müəyyən etmək üçün GPS və cihaz sensoru istifadə edin"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Skan edilir"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi skan edilir"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Sistem tətbiq və xidmətlərinə Wi-Fi şəbəkələrini hər zaman aşkar etməyə icazə verməklə məkanı təkmilləşdirin."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Məkan mənbələri"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Planşet haqqında"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Telefon haqqında"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Cihaz haqqında"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Oxşar cihaz haqqında"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Hüquqi məlumata, statusa, proqram versiyasına baxın"</string>
<string name="legal_information" msgid="5769301644270604095">"Hüquqi məlumat"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Bütün <xliff:g id="COUNT">%1$d</xliff:g> tətbiqə baxın"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Planşet və şəxsi datanız naməlum tətbiqlərin hücumuna qarşı daha həssasdır. Bu mənbədən tətbiq quraşdırmaqla planşetinə dəyə biləcək zərər və ya həmin tətbiqlərin istifadəsi nəticəsində baş verən data itkisinə görə məsuliyyət daşıdığınızı qəbul edirsiniz."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefon və şəxsi datanız naməlum tətbiqlərin hücumuna qarşı daha həssasdır. Bu mənbədən tətbiq quraşdırmaqla telefona dəyə biləcək zərər və ya həmin tətbiqlərin istifadəsi nəticəsində baş verən data itkisinə görə məsuliyyət daşıdığınızı qəbul edirsiniz."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Cihaz və şəxsi datanız naməlum tətbiqlərin hücumuna qarşı daha həssasdır. Bu mənbədən tətbiq quraşdırmaqla cihaza dəyə biləcək zərər və ya həmin tətbiqlərin istifadəsi nəticəsində baş verən data itkisinə görə məsuliyyət daşıdığınızı qəbul edirsiniz."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Qabaqcıl ayarlar"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Daha çox parametr seçimlərini aktiv edin"</string>
<string name="application_info_label" msgid="5736524913065714880">"Tətbiq info"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Performansa təsir edə bilər"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Göstərici hərəkəti dayandırdıqdan sonra klikləyin"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Klikləmədən əvvəl gözləyin"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Xidmətdən istifadə edin"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Rəng korreksiyasından istifadə edin"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Başlıqlardan istifadə edin"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"AKTİV"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"DEAKTİV"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Sürətli Ayarlarda Göstər"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> qalır"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Şarjın bitməsinə var: <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Arxa fon fəaliyyəti"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Məhdudlaşdırılmış"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Tətbiqin arxa fonda işləməsinə icazə verin"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"İstifadə edilmədiyi zaman tətbiq arxa fonda işləyə bilər"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"İstifadə edilmədiyi zaman tətbiqin arxa fon fəaliyyəti məhduddur"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Cihaz arxa fonda oyadılır"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Məkan tez-tez təklif edilir"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> tətbiq səhv işləyir"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Batareya istifadəyə yararlıdır"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Tətbiqlər düzgün işləmir"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Zəif batareya tutumu"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Batareya azdır"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ağıllı batareya menecerini aktiv edin"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Batareya istifadəsini optimallaşdırmaq üçün aktiv edin"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"\"Zəif Batareya\" Rejimini aktiv edin"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Batareya istifadəsini artırın"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"\"Zəif Batareya\" Rejimi aktivdir"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Bəzi funksiyalar məhduddur"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefon çox istifadə edilib"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Planşet çox istifadə edilib"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Cihaz çox istifadə edilib"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Ən son tam doldurmadan sonra təxminən <xliff:g id="HOUR">%1$s</xliff:g> istifadə edildi"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Telefon həddindən artıq istifadə edildiyinə görə batareya çox sərf edilib. Batareya düzgün işləmir.\n\n Ən son tam doldurulmadan sonra cihaz təxminən <xliff:g id="HOUR">%1$s</xliff:g> istifadə edilib.\n\n Ümumi istifadə:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Planşet həddindən artıq istifadə edildiyinə görə batareya çox sərf edilib. Batareya düzgün işləmir.\n\n Ən son tam doldurulmadan sonra cihaz təxminən <xliff:g id="HOUR">%1$s</xliff:g> istifadə edilib.\n\n Ümumi istifadə:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Cihaz həddindən artıq istifadə edildiyinə görə batareya çox sərf edilib. Batareya düzgün işləmir.\n\n Ən son tam doldurulmadan sonra cihaz təxminən <xliff:g id="HOUR">%1$s</xliff:g> istifadə edilib.\n\n Ümumi istifadə:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Ağıllı batareya meneceri"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Batareyanın avtomatik idarə edilməsi"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"İstifadəyə əsasən batareya istifadəsini tətbiqlərə görə avtomatik ayarlayın"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Məhdudlaşdırılmış tətbiqlər"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d tətbiq</item>
+ <item quantity="one">%1$d tətbiq</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Tətbiq dayandırılsın?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Telefon batareya istifadəsini normal idarə edə bilmir, çünki <xliff:g id="APP">%1$s</xliff:g> telefonu oyaq saxlamağa davam edir.\n\nBu problemi həll etmək üçün tətbiqi dayandıra bilərsiniz.\n\nProblem baş verməyə davam edərsə, batareya performansını yaxşılaşdırmaq üçün tətbiqi sistemdən silməyiniz tələb edilə bilər."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Planşet batareya istifadəsini normal idarə edə bilmir, çünki <xliff:g id="APP">%1$s</xliff:g> planşeti oyaq saxlamağa davam edir.\n\nBu problemi həll etmək üçün tətbiqi dayandıra bilərsiniz.\n\nProblem baş verməyə davam edərsə, batareya performansını yaxşılaşdırmaq üçün tətbiqi sistemdən silməyiniz tələb edilə bilər."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Tətbiq optimallaşdırması"</string>
<string name="battery_saver" msgid="8172485772238572153">"Batareya Qənaəti"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Batareya Qənaətindən istifadə edin"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Avtomatik aktivləşdir"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Heç vaxt"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> batareya"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Hazırda sinxronizasiyada problemlər var. Bir azdan sonra düzələcək."</string>
<string name="add_account_label" msgid="7811707265834013767">"Hesab əlavə edin"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"İş profili hələ əlçatan deyil"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"İş rejimi"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Tətbiq, arxa fon sinxronizasiyası və digər əlaqədar xüsusiyyətlər daxil olmaqla iş profilinin fəaliyyətinə icazə verin"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"İş profili"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Təşkilatınız tərəfindən idarə olunur"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Tətbiq və bildirişlər deaktivdir"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"İş profilini silin"</string>
<string name="background_data" msgid="5779592891375473817">"Fon datası"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Tətbiqlər istənilən vaxt datanı sinxronlaşdıra, göndərə və qəbul edə bilər"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Hesab silinsin?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Bu hesabın silinməsi bütün mesajları, kontaktları və digər datanı planşetinizdən siləcək"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Bu hesabın silinməsi həmçinin bütün mesajların, kontaktların və digər datanın telefondan silinməsi ilə müşayət olunacaq!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Bu hesabın silinməsi bütün mesajları, kontaktları və digər datanı cihazdan siləcək!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Admin bu dəyişikliyə icazə vermir"</string>
<string name="provider_label" msgid="7724593781904508866">"Abunələrə basın"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">Sertifikatları yoxlayın</item>
<item quantity="one">Sertifikatı yoxlayın</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"İstifadəçilər"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Çoxsaylı istifadəçilər"</string>
<string name="user_list_title" msgid="7937158411137563543">"İstifadəçilər və profillər"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"İstifadəçi və ya profil əlavə edin"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"İstifadəçi əlavə edin"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Yayım"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Tətbiq və bildirişlər"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"İcazələr, defolt tətbiqlər"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"İstifadəçi və hesab"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Hesablar"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Defolt tətbiqlər"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Dil, vaxt, yedəkləmə, yeniliklər"</string>
<string name="search_results_title" msgid="1796252422574886932">"Ayarlar"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"narahat etməyin, bölməyin, bölmək, fasilə"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"yaxınlıqda, məkan, tarixçə, hesabat vermək"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"səliqə"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"hesab"</string>
<string name="keywords_users" msgid="3434190133131387942">"məhdudiyyət, məhdudlaşma, məhdudlaşıb"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"mətn düzəlişi, bağlantı, səs, titrəyiş, avtomatik, dil, jest, təklif etmək, təklif, tema, incidici, söz, növ, emosiya işarəsi, beynəlxalq"</string>
@@ -2829,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"şəbəkə, mobil şəbəkə vəziyyəti, servis vəziyyəti, siqnalın gücü, mobil şəbəkə növü, roaminq, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"seriya nömrəsi, proqram versiyası"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android təhlükəsizliyinin yenilənmə səviyyəsi, baseband versiyası, kernel versiyası"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient displey, Kilid ekranı"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC Teqi quraşdırın"</string>
<string name="write_tag" msgid="8571858602896222537">"Yazın"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tazmaq üçü teqə tıklayın..."</string>
@@ -2872,6 +2914,7 @@
<item quantity="one">1 qayda</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Narahat Etməyin"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\"Narahat Etməyin\" rejimini aktiv edin"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Davranış"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Səslərə, vibrasiyalara icazə verin"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Səs yoxdur"</string>
@@ -2881,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Avtomatik aktiv edin"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Avtomatik qaydalar"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Avtomatik qayda"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\"Narahat etməyin\" ayarlayın"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Səs və vibrasiyanı məhdud edin"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Müəyyən vaxtlarda telefonu səssiz edin"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\"Narahat etməyin\" qaydaları ayarlayın"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Qaydadan istifadə edin"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Yalnız prioritet"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Yalnız alarmlar"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Tam sakitlik"</string>
@@ -2890,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Vizual fəsadları blok edin"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Görünən siqnallara icazə verin"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Əlavə edin"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"İNDİ AKTİV EDİN"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"İNDİ DEAKTİV EDİN"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Aktiv edin"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"İndi aktiv edin"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"İndi deaktiv edin"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Narahat Etməyin rejimi <xliff:g id="FORMATTED_TIME">%s</xliff:g> olana qədər aktivdir"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Narahat Etməyin rejimi deaktiv edilənə qədər aktiv qalacaq"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Narahat Etməyin rejimi <xliff:g id="RULE_NAME">%s</xliff:g> tərəfindən avtomatik aktiv edildi"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Narahat Etməyin rejimi <xliff:g id="APP_NAME">%s</xliff:g> tərəfindən avtomatik aktiv edildi"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Yalnız prioritet"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"İş profili səsləri"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Şəxsi profil səslərini istifadə edin"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"İş və şəxsi profil səsləri eynidir"</string>
@@ -2911,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Zəng səsləri"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Digər səs və vibrasiyalar"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Bildirişlər"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Ən son göndərilənlər"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Qabaqcıl"</string>
<string name="profile_section_header" msgid="2320848161066912001">"İş bildirişləri"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Bildiriş nöqtələrinə icazə verin"</string>
@@ -2930,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Tətbiq bildirişləri"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Bildiriş kateqoriyası"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Bildiriş kateqoriyasının qrupu"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Əhəmiyyət"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Davranış"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Səsə icazə verin"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Bildirişləri heç vaxt göstərməyin"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Səs və ya vizual kəsintisiz"</string>
@@ -2948,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Orta əhəmiyyətli"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Çox əhəmiyyətli"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Daha çox əhəmiyyətli"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Bildirişləri göstərin"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Bildiriş köməkçisi"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Bildiriş girişi"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"İş profili bildirişlərinə giriş blok edilib"</string>
@@ -2978,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"\"Narahat etməyin\" girişi"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Heç bir tətbiq \"Narahat etməyin\" girişi sorğusu göndərməyib"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Tətbiqlər endirilir..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android bu tətbiq bildirişinin bu cihazda görünməsini blok edir"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android bu kateqoriyalı bildirişin bu cihazda görünməsini blok edir"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android bu kateqoriyalı bildirişin cihazda görünməsini blok edir"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Təklifinizə əsasən Android tətbiq bildirişinin bu cihazda görünməsini blok edir"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Təklifinizə əsasən Android bu kateqoriyalı bildirişin cihazda görünməsini blok edir"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Təklifinizə əsasən Android bu qrupdan olan bildirişin cihazda görünməsini blok edir"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kateqoriyalar"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Digər"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Cihazı kiliddən çıxarmaq üçün barmaq izi istifadə etməkdən əlavə, cihazı işə salmadan öncə parol tələb edərək onu qoruya bilərsiniz. Cihaz işə salınmadan öncə siqnallar da daxil olmaqla zəng, mesaj və ya bildiriş qəbul edə bilməz.\n\nBu, itirilmiş və ya oğurlanmış cihazlarda datanı qorumağa yardım edir. Cihazı işə salmaq üçün parol tələb edilsin?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Bəli"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Xeyr"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Bəli"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Xeyr"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PİN tələb edirsiniz?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Model tələb edirsiniz?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Parol tələb edirsiniz?"</string>
@@ -3271,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"İmtina edin"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Bu cihazın batareyasını doldurun"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Sadəcə bu cihazın batareyasını doldurun"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Enerji təchiz edin"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Qoşulu cihazı enereji ilə doldurun. Yalnız USB enerji doldurmasını dəstəkləyən cihazlarla işləyir."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Faylları köçürün"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Faylları başqa cihaza köçürün"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Fotoların transferi (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Əgər MTP dəstəklənmirsə (PTP), foto və faylları transfer edin"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Cihazı MIDI kimi istifadə edin"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Bu cihazı MIDI kimi istifadə edin"</string>
- <string name="usb_use" msgid="3256040963685055320">"USB istifadə edin"</string>
+ <string name="usb_use" msgid="3372728031108932425">"USB istifadəsi"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Enerji dodlurulması"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Enerji tədarükü"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Faylların köçürülməsi"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Fotoların köçürülməsi (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Cihazın MIDI kimi istifadəsi"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Aynalama"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Arxa fon yoxlaması"</string>
<string name="background_check_title" msgid="4534254315824525593">"Tam arxa fon girişi"</string>
@@ -3394,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Divar kağızı, mürgü rejimi, şrift ölçüsü"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 dəqiqəlik fəaliyyətsizlikdən sonra yuxu rejiminə keçir"</string>
<string name="memory_summary" msgid="8080825904671961872">"Ümumi <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> yaddaşdan ortalama <xliff:g id="USED_MEMORY">%1$s</xliff:g> yaddaş istifadə olunub"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Cari istifadəçi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> kimi daxil olundu"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> deloftdur"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"YANDIR / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"AKTİV"</string>
<string name="location_off_summary" msgid="6474350053215707957">"QAPALI"</string>
<string name="backup_disabled" msgid="485189128759595412">"Yedəkləmə deaktiv edildi"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> versiyasına güncəlləndi"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Əməliyyata icazə verilmir"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Səsi dəyişmək olmur"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Zəngə icazə verilmir"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS-ə icazə verilmir"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kameraya icazə verilmir"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Skrinşota icazə verilmir"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Yedəkləmələri deaktiv etmək alınmadı"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Bu əməliyyat deaktivdir. Ətraflı məlumat üçün təşkilatın admini ilə əlaqə saxlayın."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Daha ətraflı"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Admin ayarlar, icazələr, korporativ giriş, şəbəkə fəaliyyəti və cihazın məkan məlumatı da daxil olmaqla bu iş profili ilə əlaqəli tətbiq və dataya nəzarət edə və idarə edə bilər."</string>
@@ -3420,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Daşınan Wi-Fi hotspotu <xliff:g id="ID_1">%1$s</xliff:g> aktivdir, bu cihaz üçün Wi-Fi söndürülüb."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Uçuş rejimi aktivdir"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth və mobil şəbəkə deaktivdir. Zəng edə və ya internetə qoşula bilməzsiniz."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Narahat etməyin rejimi aktivdir (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Enerji qənaəti aktivdir"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performanc zəiflədi. Məkan xidmətləri və arxa fon datası deaktiv edildi."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobil data deaktivdir"</string>
@@ -3430,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"İş profili deaktivdir"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Tətbiq, arxa fon sinxronizasiyası və iş profiliniz ilə bağlı digər xüsusiyyətlər deaktiv edildi."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Gecə İşığı cədvəlini ayarlayın"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Solğun ekran kəhrabası"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Hər gecə ekranı avtomatik olaraq söndürün"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Gecə İşığı aktivdir"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ekran kəhrəba rəngi çalarındandır. Bu, yuxuya getməyinizə kömək edə bilər."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Təklif edilənlər"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Təkliflər"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> daha"</string>
@@ -3537,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"heç biri"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Sıralama obyekti yoxdur."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Obyekt sıralamasında bu açar yoxdur."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Displeyi kəsim ilə göstərin"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Yoxdur"</string>
<string name="special_access" msgid="3458780842491881155">"Xüsusi tətbiq girişi"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> tətbiq məhdudlaşdırılmamış data istifadə edə bilər</item>
@@ -3559,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Bir çox cihaza qoşuldu"</string>
<string name="demo_mode" msgid="2798762752209330277">"Sistem İİ demo rejimi"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Sürətli ayarlar üzrə developer xanaları"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Yardım üçün buradayıq"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Sizin üçün 24/7 buradayıq"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Sizin üçün 24 7 buradayıq"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Dəstək komandamız problemi həll etmək üçün xidmətinizdədir"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Dəstək komandamız hər gün, hər saat əlçatandır"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Yardım axtarın və ya dəstək saatlarında geri gəlin (yerli vaxt):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Telefon dəstək saatları (yerli vaxt)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Yardım axtarın və ya məsləhət və tövsiyələri kəşf edin"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Dəstək:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Pəncərə Obyekti"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Səth İzi"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Xaricə səyahət edirsiniz?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Beynəlxalq xərclər çıxıla bilər"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Telefon"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Söhbət"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Məsləhət və tövsiyələri kəşf edin"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Yardım axtarın və əks əlaqə göndərin"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Yardım xidmətiylə əlaqə"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Giriş"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Daxil ola bilmədiniz?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Sistem məlumatı göndərin"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Yenidən göstərməyin"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Sorğulama növü:"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Hesab əlavə edin"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Sistem məlumatı"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"İş profil ayarları"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontakt axtarışı"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Zəng edənləri və kontaktları təyin etmək üçün təşkilatınız tərəfindən kontakt axtarışlarına icazə verin"</string>
@@ -3599,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> saniyə</item>
<item quantity="one">1 saniyə</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> gözləyin"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Yaddaşı idarə edin"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Yaddaşda boş yer yaratmaq üçün, yaddaş meneceri yedəklənmiş foto və videoları cihazınızdan silir."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Foto və videoları silin"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Yaddaş Meneceri"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Yaddaş menecerindən istifadə edin"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Avtomatik"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Təlimat"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"İndi yer boşaldın"</string>
@@ -3614,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Kameraya keçin"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Kameranı cəld açmaq üçün, enerji düyməsinə iki dəfə basın. İstənilən ekranda işləyir."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Kameranı cəld açın"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Yandırıb-söndürmə düyməsinə iki dəfə basın və kameranı açın"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Kameranı çevirin"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Cəld selfi çəkin"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Selfi rejimi üçün telefonu iki dəfə burun"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Selfi rejimi üçün planşeti iki dəfə burun"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Selfi rejimi üçün cihazı iki dəfə burun"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Telefonu yoxlamaq üçün iki dəfə tıklayın"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Planşeti yoxlamaq üçün iki dəfə tıklayın"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Cihazı yoxlamaq üçün iki dəfə tıklayın"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Vaxt, bildiriş ikonası və digər məlumatı yoxlamaq üçün iki dəfə ekrana klikləyin."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Ekran deaktiv olduğu zaman bildirişləri yoxlayın"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Telefonu yoxlamaq üçün qaldırın"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Planşeti yoxlamaq üçün qaldırın"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Cihazı yoxlamaq üçün qaldırın"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Vaxt, bildiriş ikonası və digər məlumatı yoxlamaq üçün telefonu götürün."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Vaxt, bildiriş ikonası və digər məlumatı yoxlamaq üçün planşeti götürün."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Vaxt, bildiriş ikonası və digər məlumatı yoxlamaq üçün cihazı götürün."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Ekran deaktiv olduğu zaman bildirişləri yoxlayın"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Bildirişlər üçün barmağınızı sürüşdürün"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Barmağınızı sürüşdürün"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Bildirişləri yoxlamaq üçün, barmaq sensorunda aşağı sürüşdürün."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Bildirişləri yoxlamaq üçün, planşetin arxasındakı barmaq sensorunda aşağı sürüşdürün."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Bildirişləri yoxlamaq üçün, cihazın arxasındakı barmaq sensorunda aşağı sürüşdürün."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Bildirişlərə cəld baxın"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Barmaq izi sensorunda aşağı sürüşdürün"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Aktiv"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Deaktiv"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Əməliyyat sistemi yükləyicisi artıq kiliddən çıxarılıb"</string>
@@ -3769,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Yeni planşetiniz ilə tanış olun"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Yeni cihazınız ilə tanış olun"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Bu funksiya artıq bu cihazda əlçatan deyil"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Tam GNSS ölçülərini icra edin"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"İş sistemi olmadan bütün GNSS qruplaşmaları və tezliklərini izləyin"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Xəta dialoqunu həmişə göstərin"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Tətbiqdə xəta baş verdiyi zaman dialoqu göstərin"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Kataloq girişi"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"kataloq girişi"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Telefonum"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Planşetim"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Cihazım"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Hesab"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Cihaz adı"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Maşında Bluetooth\'dan istifadə edin"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Avtomobil idarə edərkən Bluetooth\'u avtomatik aktiv edin"</string>
</resources>
diff --git a/res/values-be/arrays.xml b/res/values-be/arrays.xml
index 2c4aa75..6407a92 100644
--- a/res/values-be/arrays.xml
+++ b/res/values-be/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Націсніце кнопку"</item>
<item msgid="1624323946324499595">"PIN-код ад пірынгавай прылады"</item>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index ae376a7..74b5b1e 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -336,16 +336,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Задаць дату"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Сартаваць па алфавіце"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Сартаваць па часавым поясе"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"Змена на <xliff:g id="TIME_TYPE">%1$s</xliff:g> пачынаецца <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Летні час"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Стандартны час"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Часавы пояс згодна рэгіёну"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Часавыя паясы з фіксаваным зрухам"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Дата"</string>
<string name="time_picker_title" msgid="483460752287255019">"Час"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Аўтаматычная блакіроўка"</string>
@@ -356,6 +351,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Тэкст на экране блакіроўкі"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Уключыць віджэты"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Адключана адміністратарам"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Няма"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Напрыклад, Android Лявона"</string>
@@ -364,8 +363,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Звесткi профiлю"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Уліковыя запісы"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Месцазнаходжанне"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Выкарыстаць месцазнаходжанне"</string>
<string name="account_settings_title" msgid="626177544686329806">"Уліковыя запісы"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Бяспека і месца"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шыфраванне і ўліковыя даныя"</string>
@@ -479,9 +477,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Уведзены вамі пароль правільны, але, на жаль, вашы даныя пашкоджаныя. \n\nКаб працягваць выкарыстоўваць планшэт, неабходна скінуць налады. Падчас наладкі планшэта пасля скіду налад у вас з\'явіцца магчымасць аднавіць даныя, рэзервовыя копіі якіх захоўваліся ў вашым уліковым запісе Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Уведзены вамі пароль правільны, але, на жаль, вашы даныя пашкоджаныя. \n\nКаб працягваць выкарыстоўваць тэлефон, неабходна скінуць налады. Падчас наладкі тэлефона пасля скіду налад у вас з\'явіцца магчымасць аднавіць даныя, рэзервовыя копіі якіх захоўваліся ў вашым уліковы запісе Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Пераключэнне рэжыму ўводу"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Задайце блакіроўку экрана"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Абараніце сваю прыладу"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Выкарыстоўваць адбітак пальца"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Разблакіруйце з дапамогай адбітка пальца"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Спосаб блакіроўкі экрана"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Выб. блак. прац. проф."</string>
@@ -743,8 +748,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Назва"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 ГГц"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 ГГц"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Увайсці"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Мб/с"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> хоча ўключыць Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> хоча адключыць Wi-Fi"</string>
@@ -762,8 +766,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Уключыць Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Выкарыстоўваць Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Налады Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Усталяванне бесправадных кропак доступу і кіраванне iмi"</string>
@@ -858,6 +861,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Пароль"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Паказваць пароль"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Выбраць дыяпазон для пунктаў доступу"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Аўтаматычна"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Дыяпазон 2,4 ГГц"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Дыяпазон 5 ГГц"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Налады IP"</string>
@@ -965,7 +969,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi-тэлефанія"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Уключыць Wi-Fi-тэлефанію"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Выкарыстоўваць Wi-Fi замест мабільнай сеткі"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Перавагі выклікаў"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Рэжым Wi-Fi-тэлефаніі"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Налады роўмінгу"</string>
@@ -1221,6 +1226,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Тып мабільнай сеткі"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Звесткi пра аператара"</string>
<string name="status_data_state" msgid="5503181397066522950">"Стан мабільнай сеткі"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Стан"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Магутнасць сігналу"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роўмінг"</string>
@@ -1407,19 +1414,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Налады сеткі, праграмы або прылады могуць быць скінуты"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Скінуць налады Wi-Fi, мабільнай перадачы даных і Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Гэта прывядзе да скіду ўсіх налад сеткі, у тым ліку\n\n"<li>"Wi‑Fi"</li>\n<li>"мабільнай перадачы даных"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Скінуць eSIM-карты"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Скід налад"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Скінуць усе налады сеткі? Гэта дзеянне нельга адмяніць!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Скід налад"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Скінуць?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Скід налад сеткі недаступны для гэтага карыстальніка"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Налады сеткі былі скінутыя"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Немагчыма скінуць eSIM-карты"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Немагчыма скінуць eSIM-карты з-за памылкі."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Сцерці ўсе даныя (cкід да заводскіх налад)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Гэта дазволіць сцерці ўсе даныя з "<b>"унутранага сховiшча"</b>" вашага планшэта, у тым ліку:\n\n"<li>"Ваш улiковы запiс Google"</li>\n<li>"Сістэмныя даныя і налады, а таксама даныя і налады дадаткаў"</li>\n<li>"Спампаваныя дадаткі"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Гэта дазволіць сцерці ўсе даныя з "<b>"унутранага сховiшча"</b>" вашага тэлефона, у тым ліку:\n\n"<li>"Ваш улiковы запiс Google"</li>\n<li>"Сістэмныя даныя і налады, а таксама даныя і налады дадаткаў"</li>\n<li>"Спампаваныя дадаткі"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"У дадзены момант вы зайшлі ў наступныя ўліковыя запісы:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"На гэтай прыладзе ёсць іншыя карыстальнікі.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Музыка"</li>\n<li>"Фатаграфіі"</li>\n<li>"Іншыя дадзеныя карыстальніка"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Аператары на eSIM-карце"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM-карты"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Гэта не прывядзе да скасавання вашага тарыфнага плана."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Каб выдаліць музыку, фатаграфіі і іншыя дадзеныя карыстальніка, трэба ачысціць "<b>"USB-назапашвальнік"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Каб выдаліць музыку, фатаграфіі і іншыя дадзеныя карыстальніка, трэба выдаліць інфармацыю з "<b>"SD-карты"</b>"."</string>
@@ -1479,21 +1491,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Калі ласка, падлучыцеся да Інтэрнэту"</string>
<string name="location_title" msgid="1029961368397484576">"Маё месцазнаходжанне"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Месца для рабочага профілю"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Рэжым"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Высокая дакладнасць"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Эканомія энергіі"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Толькi прылада"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Вызначэнне месцазнаходж. адкл."</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Дазволы на ўзроўні праграм"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Апошнія запыты пра месцазнах."</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"У апошні час запытаў ад дадаткаў на вызначэнне месцазнаходжання не паступала"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Службы вызначэння месцазнаходжання"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Выс. узровень выкарыст. акум."</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Нізкі ўзровень выкарыст. акум."</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Рэжым вызначэння месцазнаходж."</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Выкарыстоўваць GPS, Wi-Fi, Bluetooth або мабільныя сеткі для вызначэння месцазнаходжання"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Выкарыстоўваць Wi‑Fi, Bluetooth або мабільныя сеткі для вызначэння месцазнаходжання"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Выкарыстоўваць GPS і датчыкі прылады для вызначэння месцазнаходжання"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Сканіраванне"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Сканіраванне Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Палепшыце функцыю вызначэння месцазнаходжання, дазволіўшы сістэмным праграмам і службам знаходзіць сеткі Wi-Fi у любы час."</string>
@@ -1515,8 +1518,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Крыніцы месцазнаходжання"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Аб планшэце"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Пра тэлефон"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Звесткі пра прыладу"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Пра імітаваную прыладу"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Прагледзець юрыдычную інфармацыю, стан, вэрсіі праграмнага забяспечання"</string>
<string name="legal_information" msgid="5769301644270604095">"Юрыдычная інфармацыя"</string>
@@ -1624,8 +1626,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Паказаць усе праграмы (<xliff:g id="COUNT">%1$d</xliff:g> шт.)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Ваш планшэт і асабістыя даныя больш уразлівыя для нападаў невядомых праграм. Пры ўсталёўцы праграм з гэтай крыніцы вы згаджаецеся, што несяце адказнасць за любыя пашкоджанні планшэта ці страту даных, якія могуць адбыцца ў выніку выкарыстання гэтых праграм."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Ваш тэлефон і асабістыя даныя больш уразлівыя для нападаў невядомых праграм. Пры ўсталёўцы праграм з гэтай крыніцы вы згаджаецеся, што несяце адказнасць за любыя пашкоджанні тэлефона ці страту даных, якія могуць адбыцца ў выніку выкарыстання гэтых праграм."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Ваша прылада і асабістыя даныя больш прыступныя для нападаў невядомых праграм. Усталёўваючы праграмы з гэтай крыніцы вы згаджаецеся, што несяце адказнасць за любыя пашкоджанні прылады ці страту даных, якія могуць адбыцца ў выніку выкарыстання гэтых праграм."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Пашыраныя налады"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Уключыць дадатковыя параметры налад"</string>
<string name="application_info_label" msgid="5736524913065714880">"Звесткі пра праграмы"</string>
@@ -1927,12 +1928,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Можа паўплываць на прадукцыйнасць"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Націсканне пасля спынення руху указальніка"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Затрымка перад націсканнем"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Карыстанне сэрвісам"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Карыстанне карэкцыяй колераў"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Карыстанне цітрамі"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"УКЛЮЧАНА"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"АДКЛЮЧАНА"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Паказваць у Хуткіх наладах"</string>
@@ -2060,7 +2058,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Застаецца <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Да поўнай зарадкі засталося <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Фонавая дзейнасць"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"З абмежаваннямі"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Дазволіць праграме працаваць у фонавым рэжыме"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Праграма можа працаваць у фонавым рэжыме, калі не выкарыстоўваецца"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Праца праграмы ў фонавым рэжыме абмежавана, калі праграмай не карыстаюцца"</string>
@@ -2107,18 +2105,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Праграмы працуюць нармальна"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Нізкая ёмістасць акумулятара"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Акумулятар не можа забяспечыць дастатковы тэрмін аўтаномнай працы"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Уключыць разумны менеджар акумулятара"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Уключыць для аптымізацыі карыстання акумулятарам"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Уключэнне рэжыму нізкага ўзроўню выкарыстання акумулятара"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Падоўжыце працу акумулятара"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Уключаны рэжым нізкага ўзроўню выкарыстання акумулятара"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Некаторыя магчымасці абмежаваныя"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Тэлефонам шмат карысталіся"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Планшэтам шмат карысталіся"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Прыладай шмат карысталіся"</string>
@@ -2244,8 +2236,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Сервер медыя"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Аптымізацыя дадаткаў"</string>
<string name="battery_saver" msgid="8172485772238572153">"Эканомія зараду"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Карыстанне функцыяй эканоміі зараду"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Уключаць аўтаматычна"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Ніколі"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"пры ўзроўні зараду акумулятара <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2433,8 +2424,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"У цяперашні час ёсць праблемы сінхранізацыi. Яна хутка адновіцца."</string>
<string name="add_account_label" msgid="7811707265834013767">"Дадаць уліковы запіс"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Рабочы профіль яшчэ недаступны"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Рэжым працы"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Дазволіць функцыянаванне працоўнага профілю, у тым ліку праграм, фонавай сінхранізацыі і звязаных з імі функцый."</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Выдаліць рабочы профіль"</string>
<string name="background_data" msgid="5779592891375473817">"Зыходныя дадзеныя"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Прыкладанні ў любы час могуць сінхранізаваць, адпраўляць і атрымлiваць дадзеныя"</string>
@@ -2466,8 +2461,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Выдаліць уліковы запіс"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Выдаленне гэтага ўлiковага запiсу прывядзе да выдалення ўсіх паведамленняў, кантактаў і іншых дадзеных з планшэта."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Выдаленне гэтага ўлiковага запiсу прывядзе да выдалення ўсіх паведамленняў, кантактаў і іншых дадзеных з тэлефона."</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Выдаленне гэтага ўліковага запісу прывядзе да выдалення з прылады ўсіх паведамленняў, кантактаў і іншых даных!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Ваш адміністратар не дазваляе гэту змену"</string>
<string name="provider_label" msgid="7724593781904508866">"Прымусовыя падпіскі"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2694,7 +2688,8 @@
<item quantity="many">Праверыць сертыфікаты</item>
<item quantity="other">Праверыць сертыфікаты</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Карыстальнікі"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Карыстальнікi і профілi"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Дадаць карыстальніка або профіль"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Дадаць карыстальніка"</string>
@@ -2886,7 +2881,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Праграмы і апавяшчэнні"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Дазволы, стандартныя праграмы"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Карыстальнікі і ўліковыя запісы"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Стандартныя праграмы"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Мовы, час, рэзервовае капіраванне, абнаўленні"</string>
<string name="search_results_title" msgid="1796252422574886932">"Налады"</string>
@@ -2917,7 +2913,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"не турбаваць, умешвацца, умяшанне, перапыняць"</string>
<string name="keywords_app" msgid="6334757056536837791">"аператыўная памяць"</string>
<string name="keywords_location" msgid="6615286961552714686">"паблізу, месцазнаходжанне, гісторыя, справаздачы"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"дакладнасць"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"уліковы запіс"</string>
<string name="keywords_users" msgid="3434190133131387942">"абмежаванне, абмяжоўваць, абмежаваны"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"выпраўленне тэксту, правільны, гук, вібрацыя, аўтаматычна, мова, жэст, прапанаваць, прапанова, тэма, абразлівы, слова, набіраць, эмодзі, міжнародны"</string>
@@ -2986,6 +2981,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> правіла</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Не турбаваць"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Уключэнне рэжыму \"Не турбаваць\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Паводзіны"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Дазволіць гукі і вібрацыю ад:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Без гуку"</string>
@@ -2995,8 +2991,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Уключаць аўтаматычна"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Аўтаматычныя правілы"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Аўтаматычнае правіла"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Правілы рэжыму \"Не турбаваць\""</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Абмяжоўваць гукі і вібрацыю ў пэўныя часы"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Выкарыстаць правіла"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Толькі прыярытэтныя"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Толькі будзільнікі"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Поўная цішыня"</string>
@@ -3004,12 +3003,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блакіроўка візуальных апавяшчэнняў"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Дазволіць візуальныя сігналы"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Дадаць"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Уключыць"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Уключыць"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Адключыць"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Рэжым \"Не турбаваць\" уключаны да <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Рэжым \"Не турбаваць\" будзе ўключаны, пакуль вы яго не выключыце"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Рэжым \"Не турбаваць\" быў аўтаматычна ўключаны правілам (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Рэжым \"Не турбаваць\" быў аўтаматычна ўключаны праграмай (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Толькі прыярытэтныя"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Гукі працоўнага профілю"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Выкар. гукі асабістага профілю"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"У працоўным і асабістым профілях гукі аднолькавыя"</string>
@@ -3025,6 +3027,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Рынгтоны"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Іншыя гукі і вібрацыя"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Апавяшчэнні"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Нядаўна адпраўлялі"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Пашыраныя"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Апавяшчэнні працоўнага профілю"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Паказваць значкі апавяшчэнняў"</string>
@@ -3252,6 +3255,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"У дадатак да выкарыстання адбітка пальца для разблакіроўкі прылады, вы можаце абараніць прыладу, наладзіўшы функцыю патрабавання пароля пры запуску. Пакуль прылада не запушчана, на ёй нельга прымаць выклікі, паведамленні або апавяшчэнні, а таксама не працуе функцыя будзільніка.\n\nГэта дапамагае абараніць даныя на страчаных або ўкрадзеных прыладах. Запытваць пароль для запуску вашай прылады?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Так"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Не"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Так"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Не"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Запытваць PIN-код?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Патрабаваць узор?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Запытваць пароль?"</string>
@@ -3541,7 +3546,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Бягучы карыстальнік: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Вы ўвайшлі як <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> з\'яўляецца стандартнай праграмай"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"УКЛ. / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"ВЫКЛ."</string>
<string name="backup_disabled" msgid="485189128759595412">"Рэзервовае капіраванне адключана"</string>
<string name="about_summary" msgid="924181828102801010">"Абноўлена да версіі Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3551,6 +3557,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Адпраўка SMS забаронена"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Выкарыстанне камеры забаронена"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Здымкі экрана забаронены"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Немагчыма выключыць стварэнне рэзервовых копій"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Гэта дзеянне адключана. Каб даведацца больш, звярніцеся да адміністратара вашай арганізацыі."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Дадатковая інфармацыя"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"У вашага адміністратара ёсць магчымасць маніторынгу і адміністравання праграм і даных, звязаных з вашым працоўным профілем, у тым ліку налад, дазволаў, карпаратыўнага доступу, сеткавай актыўнасці і геаданых."</string>
@@ -3574,9 +3581,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"Працоўны профіль адключаны"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Праграмы, фонавая сінхранізацыя і іншыя функцыі, звязаныя з вашым працоўным профілем, адключаны."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Глядзець графік \"Начной падсветкі\""</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Бурштынавы экран, каб дапамагчы вам заснуць"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Начная падсветка ўключана"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Экран мае адценне бурштынавага колеру. Гэта можа дапамагчы вам заснуць."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Прапанаванае вам"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Прапановы"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"яшчэ +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3689,6 +3698,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"няма"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Аб\'ект ранжыравання адсутнічае."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Аб\'ект ранжыравання не ўтрымлівае гэты сімвал."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Сімуляцыя дысплэя з выразам для камеры"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Няма"</string>
<string name="special_access" msgid="3458780842491881155">"Асобы доступ для праграм"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> праграма можа выкарыстоўваць даныя без абмежаванняў</item>
@@ -3713,10 +3724,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Падключана да некалькіх прылад"</string>
<string name="demo_mode" msgid="2798762752209330277">"Рэжым дэманстрацыі сістэмнага інтэрфейсу карыстальніка"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Пліткі хуткіх налад для распрацоўшчыкаў"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Трасіроўка вокан"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Трасіроўка паверхні"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Налады працоўнага профілю"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Пошук кантактаў"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Дазволіць вашай арганізацыі пошук кантактаў, каб вызначаць абанентаў і кантакты"</string>
@@ -3742,8 +3751,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Каб вызваліць месца ў сховішчы, Менеджар сховішча выдаляе фота і відэа, для якіх створаны рэзервовыя копіі, з вашай прылады."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Выдаліць фота і відэа"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Менеджар сховішча"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Карыстанне менеджарам сховішча"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Аўтаматычна"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Уручную"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Вызваліць месца"</string>
@@ -3754,32 +3762,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Перайсці да камеры"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Каб хутка адкрыць камеру, двойчы націсніце кнопку сілкавання. Працуе на любым экране."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Хуткае адкрыццё камеры"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Каб адкрыць камеру, двойчы націсніце на кнопку сілкавання"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Змена камеры"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Рабіце сэлфі хутчэй"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Каб перакл. на франтальную камеру, двойчы павярніце тэлефон"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Каб перакл. на франтальную камеру, двойчы павярніце планшэт"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Каб перакл. на франтальную камеру, двойчы павярніце прыладу"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Двойчы дакраніцеся, каб праверыць тэлефон"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Двойчы дакраніцеся, каб праверыць планшэт"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Двойчы дакраніцеся, каб праверыць прыладу"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Каб праверыць час, значкі паведамленняў і іншыя даныя, двойчы націсніце на экран."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Правяраць апавяшчэнні, калі экран выключаны"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Падняць тэлефон, каб праверыць яго"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Падніміце планшэт, каб праверыць яго"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Падніміце прыладу, каб праверыць яе"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Каб праверыць час, значкі паведамленняў і іншыя даныя, вазьміце свой тэлефон у рукі."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Каб праверыць час, значкі паведамленняў і іншыя даныя, вазьміце свой планшэт у рукі."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Каб праверыць час, значкі паведамленняў і іншыя даныя, вазьміце сваю прыладу ў рукі."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Правяраць апавяшчэнні, калі экран выключаны"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Правядзіце пальцам, каб убачыць апавяшчэнні"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Правесці адбітак пальца"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Каб праверыць апавяшчэнні, правядзіце пальцам уніз па сканеры адбіткаў пальцаў на заднім боку тэлефона."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Каб праверыць апавяшчэнні, правядзіце пальцам уніз па сканеры адбіткаў пальцаў на заднім боку планшэта."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Каб праверыць апавяшчэнні, правядзіце пальцам уніз па сканеры адбіткаў пальцаў на заднім боку прылады."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Хуткі прагляд апавяшчэнняў"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Правядзіце пальцам уніз па сканеры адбіткаў пальцаў"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Уключана"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Адключана"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Загрузчык ужо разблакіраваны"</string>
@@ -3925,8 +3926,24 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Гэта функцыя недаступная на гэтай прыладзе"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Прымусова правесці поўныя вымярэнні GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Адсочваць усе групы і частоты GNSS з выключаным працоўным цыклам"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Заўсёды паказваць дыялогавыя вокны з памылкамі"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Паказваць дыялогавае акно кожны раз, калі адбываецца збой праграмы"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Доступ да каталога"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"доступ да каталога"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-bn/arrays.xml b/res/values-bn/arrays.xml
index cb0deba..ed05f50 100644
--- a/res/values-bn/arrays.xml
+++ b/res/values-bn/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"পুশ বোতাম"</item>
<item msgid="1624323946324499595">"চেনা ডিভাইস থেকে পিন"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"১ ঘণ্টা"</item>
<item msgid="5198271470953124739">"কখনই সময় শেষ হবে না"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"১ (ডিফল্ট)"</item>
+ <item msgid="7584056855393485416">"২"</item>
+ <item msgid="844570832050176311">"৩"</item>
+ <item msgid="1896812737336024220">"৪"</item>
+ <item msgid="2664420770707984266">"৫"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"১"</item>
+ <item msgid="2731443086402670729">"২"</item>
+ <item msgid="74627748729027880">"৩"</item>
+ <item msgid="2654447223197666662">"৪"</item>
+ <item msgid="7026157954713482328">"৫"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"নিম্নমানের"</item>
<item msgid="2042505933058940139">"খারাপ"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"৬০ দিনের বেশি পুরানো"</item>
<item msgid="5692284879054004388">"৯০ দিনের বেশি পুরানো"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"নেটওয়ার্কের পছন্দ ব্যবহার করুন"</item>
+ <item msgid="8745603368609022803">"মিটারিং চালু রাখুন"</item>
+ <item msgid="2266114985518865625">"মিটারিং এর দরকার নেই"</item>
+ </string-array>
</resources>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 4d4870f..2d9504a 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"আপনার ডিভাইসগুলি"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"নতুন ডিভাইস যুক্ত করুন"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"ডিভাইসে ব্লুটুথ সংযোগ করতে এবং পেয়ার করতে অনুমতি দিন"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"ইন-ব্যান্ড রিং অক্ষম করুন"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"ব্লুটুথ হেডসেটে ফোনের কাস্টম রিং-টোন শুনতে চাই না"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"এখন সংযুক্ত"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"সেভ করে রাখা ডিভাইস"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"ডিভাইস যোগ করুন"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"তারিখ সেট করুন"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"বর্ণানুক্রমে সাজান"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"সময় অঞ্চলের অনুসারে সাজান"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> তারিখে চালু হবে।"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ডেলাইট সেভিং সময়"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"স্ট্যান্ডার্ড টাইম"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"অঞ্চল অনুযায়ী টাইম জোন"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"সুনির্দিষ্ট অফসেট টাইম জোন"</string>
<string name="date_picker_title" msgid="1338210036394128512">"তারিখ"</string>
<string name="time_picker_title" msgid="483460752287255019">"সময়"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"অটোমেটিক লক"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"লক স্ক্রিনের মেসেজ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"উইজেটগুলি সক্ষম করুন"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"প্রশাসক দ্বারা অক্ষম করা হয়েছে"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"লকডাউনের বিকল্পগুলি দেখুন"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"পাওয়ার বোতামের বিভিন্ন বিকল্প, যেমন সম্প্রসারিত অ্যাক্সেস এবং আঙ্গুলের ছাপ দিয়ে আনলক করা দেখুন।"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"কোনো কিছুই নয়"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"যেমন, সুমনের Android"</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"প্রোফাইল তথ্য"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"অ্যাকাউন্টগুলি"</string>
<string name="location_settings_title" msgid="1369675479310751735">"অবস্থান"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"লোকেশন ব্যবহার করুন"</string>
<string name="account_settings_title" msgid="626177544686329806">"অ্যাকাউন্টগুলি"</string>
<string name="security_settings_title" msgid="4918904614964215087">"নিরাপত্তা ও লোকেশন"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"এনক্রিপশন ও ক্রেডেনশিয়াল"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"আপনি যে পাসওয়ার্ডটি লিখেছেন সেটি ঠিক আছে, কিন্তু দুর্ভাগ্যবশত আপনার ডেটা বিকৃত হয়েছে। \n\nআবার আপনার ট্যাবলেট ব্যবহার করা আবার শুরু করতে, আপনাকে ফ্যাক্টরি রিসেট করতে হবে। আবার সেট করার পর আপনি যখন আপনার ফোন সেট আপ করবেন তখন আপনার Google অ্যাকাউন্টে ব্যাকআপ করা যে কোনো ডেটা পুনরুদ্ধার করার সুযোগ পাবেন।"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"আপনি যে পাসওয়ার্ডটি লিখেছেন সেটি ঠিক আছে, কিন্তু দুর্ভাগ্যবশত আপনার ডেটা বিকৃত হয়েছে। \n\nআবার আপনার ফোন ব্যবহার করা আবার শুরু করতে, আপনাকে ফ্যাক্টরি রিসেট করতে হবে। আবার সেট করার পর আপনি যখন আপনার ফোন সেট আপ করবেন তখন আপনার Google অ্যাকাউন্টে ব্যাকআপ করা যে কোনো ডেটা পুনরুদ্ধার করার সুযোগ পাবেন।"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ইনপুট পদ্ধতি পরিবর্তন করুন"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"স্ক্রিন লক সেট করুন"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"আপনার ডিভাইস সুরক্ষিত করুন"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"আঙ্গুলের ছাপ ব্যবহার করুন"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"আপনার আঙ্গুলের ছাপ দিয়ে আনলক করুন"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"সুরক্ষার জন্য স্ক্রিন লক সেট করুন"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"অন্যদের আপনার ট্যাবলেট ব্যবহার করা থেকে আটকান"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"অন্যদের আপনার ডিভাইস ব্যবহার করা থেকে আটকান"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"অন্যদের আপনার ফোন ব্যবহার করা থেকে আটকান"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"আঙ্গুলের ছাপ দিয়ে আনলক করুন"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"আপনার আঙ্গুলের ছাপ দিয়ে আনলক করুন"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"আপনার আঙ্গুলের ছাপ দিয়ে আনলক করুন"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"আপনার আঙ্গুলের ছাপ দিয়ে আনলক করুন"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"স্ক্রিন লক বেছে নিন"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"কর্মস্থলের লক বেছে নিন"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"আপনার ট্যাবলেটটিকে নিরাপদ করুন"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"স্পিকার ফোন হিসেবে"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"সঙ্গীত এবং মিডিয়ার জন্য"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"সেটিংস মনে রাখুন"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"ব্লুটুথের মাধ্যমে সংযুক্ত সর্বাধিক অডিও ডিভাইস"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"সর্বাধিক কতগুলি অডিও ডিভাইস ব্লুটুথের মাধ্যমে সংযুক্ত করা যাবে তা নির্দিষ্ট করুন"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"কাস্ট করুন"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"ওয়্যারলেস প্রদর্শন সক্ষম করুন"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"কাছাকাছি কোনো ডিভাইস পাওয়া যায়নি।"</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"নাম"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"সাইন-ইন করুন"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi চালু করতে চাইছে"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi বন্ধ করতে চাইছে"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"ওয়াই-ফাই"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"ওয়াই-ফাই চালু করুন"</string>
<string name="wifi_settings" msgid="29722149822540994">"ওয়াই-ফাই"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"ওয়াই-ফাই ব্যবহার করুন"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"ওয়াই-ফাই সেটিংস"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"ওয়াই-ফাই"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"ওয়্যারলেস অ্যাক্সেস পয়েন্ট সেট আপ ও পরিচালনা করুন"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"পাসওয়ার্ড"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"পাসওয়ার্ড দেখান"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP ব্যান্ড বেছে নিন"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"অটোমেটিক"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"২.৪ GHz ব্যান্ড"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"৫ GHz ব্যান্ড"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP সেটিংস"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS উপলব্ধ)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"আপনার নেটওয়ার্ক পাসওয়ার্ডটি লিখুন"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"পরিষেবা প্রদানকারীর ওয়াই-ফাই নেটওয়ার্ক"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1%s</xliff:g> এর মাধ্যমে সংযুক্ত করুন"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1$s</xliff:g> এর মাধ্যমে সংযুক্ত করুন"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"অবস্থান নির্ভুলতা উন্নতি ও অন্যান্য উদ্দ্যেশ্যের জন্য <xliff:g id="APP_NAME">%1$s</xliff:g> নেটওয়ার্ক স্ক্যান চালু করতে চাইছে, এমনকি ওয়াই-ফাই বন্ধ থাকা সত্ত্বেও।\n\nযে সব অ্যাপ্লিকেশানগুলি স্ক্যান করতে চাই তাদের জন্য এটির অনুমতি দেবেন?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"এটি বন্ধ করতে, ওভারফ্লো মেনুতে ‘উন্নত’ লেখায় যান"</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"অনুমতি দিন"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP Band"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"আপনার অন্যান্য ডিভাইসের জন্য একটি ওয়াই-ফাই নেটওয়ার্ক তৈরি করতে হটস্পট ব্যবহার করুন। হটস্পটের মাধ্যমে আপনার মোবাইলের ডেটা ব্যবহার করে ইন্টারনেট সংযোগ দেওয়া হয়। মোবাইলের ডেটার জন্য অতিরিক্ত চার্জ প্রযোজ্য হতে পারে।"</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"অ্যাপগুলি আশেপাশের ডিভাইসের সাথে কন্টেন্ট শেয়ার করার জন্য হটস্পট তৈরি করতে পারে।"</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"নিজে থেকে হটস্পট বন্ধ করুন"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"কোনও ডিভাইস সংযুক্ত না থাকলে ওয়াই-ফাই হটস্পট বন্ধ হয়ে যাবে"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"হটস্পট চালু হচ্ছে..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"হটস্পট বন্ধ হচ্ছে..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> সক্রিয় আছে"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"ওয়াই-ফাই কলিং"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"ওয়াই-ফাই কলিং চালু করুন"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"মোবাইল নেটওয়ার্কের পরিবর্তে ওয়াই-ফাই ব্যবহার করুন"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"যেখানে নেটওয়ার্ক নেই সেখানে ওয়াই-ফাই এর মাধ্যমে কল করুন"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"কলিং পছন্দ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"ওয়াই-ফাই কলিং মোড"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"পছন্দের রোমিং"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"জরুরি ঠিকানা"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"ওয়াই-ফাই নেটওয়ার্ক ব্যবহার করে জরুরি কল করার সময় আপনার লোকেশন হিসেবে ব্যবহার করা হয়"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958">"ব্যক্তিগত ডিএনএস বৈশিষ্ট্যের বিষয়ে "<annotation id="url">"আরও জানুন"</annotation></string>
<string name="display_settings_title" msgid="1708697328627382561">"প্রদর্শন"</string>
<string name="sound_settings" msgid="5534671337768745343">"সাউন্ড"</string>
<string name="all_volume_title" msgid="4296957391257836961">"ভলিউম"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"মোবাইল নেটওয়ার্ক ধরণ"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"অপারেটরের তথ্য"</string>
<string name="status_data_state" msgid="5503181397066522950">"মোবাইল নেটওয়ার্ক স্থিতি"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"পরিষেবা স্থিতি"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"সিগন্যাল ক্ষমতা"</string>
<string name="status_roaming" msgid="2638800467430913403">"রোমিং"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"আপনার নতুন <xliff:g id="NAME">^1</xliff:g> কাজ করছে৷ \n\nফটো, ফাইল, এবং অ্যাপ্লিকেশান ডেটা এই ডিভাইসে সরাতে, সেটিংস এবং সঞ্চয়স্থানে যান৷"</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"<xliff:g id="APP">^1</xliff:g> সরান"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"<xliff:g id="APP">^1</xliff:g> এবং এর ডেটা <xliff:g id="NAME_0">^2</xliff:g> এ সরাতে মাত্র কয়েক মিনিট সময় লাগবে৷ সরানো সম্পূর্ণ না হওয়া পর্যন্ত আপনি অ্যাপ্লিকেশানটি ব্যবহার করতে পারবেন না৷ \n\nসরানোর সময় <xliff:g id="NAME_1">^2</xliff:g> অপসারণ করবেন না৷"</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"ডেটা সরানোর জন্য <xliff:g id="APP">^1</xliff:g>কে আনলক করতে হবে।"</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"<xliff:g id="APP">^1</xliff:g> সরানো হচ্ছে..."</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"সরানোর সময় <xliff:g id="NAME">^1</xliff:g>টি অপসারণ করবেন না৷ \n\nএই ডিভাইসের <xliff:g id="APP">^2</xliff:g> অ্যাপ্লিকেশানটি সরানো সম্পূর্ণ না হওয়া পর্যন্ত উপলব্ধ নাও হতে পারে৷"</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"সরানো বাতিল করুন"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"নেটওয়ার্ক, অ্যাপ, অথবা ডিভাইস রিসেট করা যায়"</string>
<string name="reset_network_title" msgid="6166025966016873843">"ওয়াই-ফাই, মোবাইল এবং ব্লুটুথ রিসেট করুন"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"এগুলি সহ সমস্ত নেটওয়ার্ক সেটিংস আবার সেট করবে:\n\n"<li>"ওয়াই ফাই "</li>\n<li>"সেলুলার ডাটা "</li>\n<li>"ব্লুটুথ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"এছাড়াও ই-সিমগুলি রিসেট করুন"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"আপনার ফোন থেকে সব ই-সিম মুছে দিন। ই-সিম আবার ডাউনলোড করার জন্য পরিষেবা প্রদানকারীর সাথে যোগাযোগ করতে হবে। অবশ্য এতে আপনার মোবাইল পরিষেবার প্ল্যান বাতিল হবে না।"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"সেটিংস আবার সেট করুন"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"সমস্ত নেটওয়ার্ক সেটিংস আবার সেট করবেন? আপনি এই প্রক্রিয়াটি পূর্বাবস্থায় ফেরাতে পারবেন না!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"সেটিংস আবার সেট করুন"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"আবার সেট করবেন?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"এই ব্যবহারকারীদের জন্য নেটওয়ার্ক আবার সেট করুন উপলব্ধ নয়"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"নেটওয়ার্ক সেটিংস আবার সেট করা হয়েছে"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ই-সিমগুলি রিসেট করা যাচ্ছে না"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"একটি সমস্যা হয়েছে, ই-সিমগুলি রিসেট করা যাচ্ছে না।"</string>
<string name="master_clear_title" msgid="3531267871084279512">"সমস্ত ডেটা মুছুন (ফ্যাক্টরি রিসেট)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"এটি আপনার ট্যাবলেটের "<b>"ইন্টারনাল স্টোরেজ"</b>", থেকে সমস্ত ডেটা মুছে দেবে, এগুলি সহ:\n\n"<li>"আপনার Google অ্যাকাউন্ট"</li>\n<li>"সিস্টেম এবং অ্যাপ্লিকেশন ডেটা এবং সেটিংস"</li>\n<li>"ডাউনলোড করা অ্যাপ্লিকেশনগুলি"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"এটি আপনার ফোনের "<b>"ইন্টারনাল স্টোরেজ"</b>", থেকে সমস্ত ডেটা মুছে দেবে, এগুলি সহ:\n\n"<li>"আপনার Google অ্যাকাউন্ট"</li>\n<li>"সিস্টেম এবং অ্যাপ্লিকেশন ডেটা এবং সেটিংস"</li>\n<li>"ডাউনলোড করা অ্যাপ্লিকেশনগুলি"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"আপনি বর্তমানে নিম্নলিখিত অ্যাকাউন্টে প্রবেশ করে আছেন:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"এই ডিভাইসে অন্যান্য ব্যবহারকারীরাও রয়েছেন৷\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"সঙ্গীত"</li>\n<li>"ফটো"</li>\n<li>"অন্যান্য ব্যবহারকারী ডেটা"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"ই-সিম এ থাকা পরিষেবা প্রদানকারী"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"ই-সিম"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"এতে আপনার মোবাইল পরিষেবার প্ল্যান বাতিল হবে না।"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"আপনার সঙ্গীত, ছবি এবং অন্যান্য ব্যবহারকারী ডেটা সাফ করতে, "<b>"USB সঞ্চয়স্থানটিকে"</b>" মুছে দিতে হবে।"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"আপনার সঙ্গীত, ছবি এবং অন্যান্য ব্যবহারকারী ডেটা সাফ করতে, "<b>"SD কার্ডটিকে"</b>" মুছে দিতে হবে।"</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"দয়া করে ইন্টারনেটের সঙ্গে সংযুক্ত হোন"</string>
<string name="location_title" msgid="1029961368397484576">"আমার অবস্থান"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"কাজের প্রোফাইলের জন্য অবস্থান"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"মোড"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"উচ্চ পর্যায়ের যথার্থতা"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ব্যাটারি সঞ্চয়"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"শুধুমাত্র ডিভাইস"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"অবস্থান বন্ধ"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"অ্যাপ-স্তরের অনুমতিগুলি"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"সাম্প্রতিক অবস্থান অনুরোধগুলি"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"সম্প্রতি কোনো অ্যাপ্লিকেশান অবস্থানের অনুরোধ করেনি"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"লোকেশন পরিষেবা"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"উচ্চ ব্যাটারির ব্যবহার"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"কম ব্যাটারির ব্যবহার"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"অবস্থান মোড"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"অবস্থান নির্ধারণ করতে জিপিএস, ওয়াই ফাই, ব্লুটুথ, বা মোবাইল নেটওয়ার্ক ব্যবহার করুন"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"অবস্থান নির্ধারণ করতে ওয়াই ফাই, ব্লুটুথ, বা মোবাইল নেটওয়ার্ক ব্যবহার করুন"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"অবস্থান নির্ণয় করতে GPS এবং ডিভাইস সেন্সর ব্যবহার করুন"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"স্ক্যান করা হচ্ছে"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"ওয়াই-ফাই স্ক্যানিং"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"যে কোনো সময়ে ওয়াই-ফাই নেটওয়ার্কগুলিকে সনাক্ত করার জন্য সিস্টেম অ্যাপ্লিকেশান এবং পরিষেবাগুলিকে অনুমতি দিয়ে অবস্থান উন্নত করুন।"</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"অবস্থান উৎসগুলি"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ট্যাবলেট সম্পর্কে"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ফোন সম্পর্কে"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ডিভাইস সম্বন্ধে"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ইমিউলেট করা ডিভাইস সম্পর্কে"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"আইনি তথ্য, স্থিতি, সফ্টওয়্যার ভার্সন দেখুন"</string>
<string name="legal_information" msgid="5769301644270604095">"আইনি তথ্য"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"<xliff:g id="COUNT">%1$d</xliff:g>টি অ্যাপের সবকটি দেখুন"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"অজানা অ্যাপের দ্বারা আপনার ট্যাবলেট এবং ব্যক্তিগত তথ্য আক্রান্ত হওয়ার সম্ভাবনা সবচেয়ে বেশি। এই উৎস থেকে আসা অ্যাপগুলি ইনস্টল করে আপনি সম্মত হচ্ছেন যে সেগুলি ব্যবহারের ফলে আপনার ট্যাবলেটের কোনো ক্ষতি হলে বা ডেটা হারিয়ে গেলে তার জন্য আপনিই দায়ী থাকবেন।"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"অজানা অ্যাপের দ্বারা আপনার ফোন এবং ব্যক্তিগত তথ্য আক্রান্ত হওয়ার সম্ভাবনা সবচেয়ে বেশি। এই উৎস থেকে আসা অ্যাপগুলি ইনস্টল করে আপনি সম্মত হচ্ছেন যে সেগুলি ব্যবহারের ফলে আপনার ফোনের কোনো ক্ষতি হলে বা ডেটা হারিয়ে গেলে তার জন্য আপনিই দায়ী থাকবেন।"</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"অজানা অ্যাপের দ্বারা আপনার ফোন এবং ব্যক্তিগত তথ্য আক্রান্ত হওয়ার সম্ভাবনা সবচেয়ে বেশি। এই উৎস থেকে আসা অ্যাপগুলি ইনস্টল করে আপনি সম্মত হচ্ছেন যে সেগুলি ব্যবহারের ফলে আপনার ফোনের কোনও ক্ষতি হলে বা ডেটা হারিয়ে গেলে তার জন্য আপনিই দায়ী থাকবেন।"</string>
<string name="advanced_settings" msgid="1777249286757067969">"উন্নত সেটিংস"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"আরো সেটিংস বিকল্প সক্ষম করুন"</string>
<string name="application_info_label" msgid="5736524913065714880">"অ্যাপের তথ্য"</string>
@@ -1610,7 +1627,7 @@
<string name="always_allow_bind_appwidgets_text" msgid="566822577792032925">"আপনি এই অ্যাপ্লিকেশানটিকে উইজেটগুলিকে তৈরি করা এবং তাদের ডেটা অ্যাক্সেস করার মঞ্জুরি দেওয়া চয়ন করেছেন৷"</string>
<string name="auto_launch_disable_text" msgid="7800385822185540166">"কোনো ডিফল্ট সেট করা নেই৷"</string>
<string name="clear_activities" msgid="7408923511535174430">"ডিফল্টগুলি সাফ করুন"</string>
- <string name="screen_compatibility_text" msgid="1616155457673106022">"এই অ্যাপ্লিকেশানটি হয়তো আপনার স্ক্রীনের জন্য ডিজাইন করা হয়নি। আপনার স্ক্রীনে এটি কিভাবে সামঞ্জস্য করবে আপনি তা এখানে নিয়ন্ত্রণ করতে পারেন।"</string>
+ <string name="screen_compatibility_text" msgid="1616155457673106022">"এই অ্যাপ্লিকেশানটি হয়ত আপনার স্ক্রীনের জন্য ডিজাইন করা হয়নি। আপনার স্ক্রীনে এটি কিভাবে সামঞ্জস্য করবে আপনি তা এখানে নিয়ন্ত্রণ করতে পারেন।"</string>
<string name="ask_compatibility" msgid="7225195569089607846">"লঞ্চ করার সময় জিজ্ঞাসা করুন"</string>
<string name="enable_compatibility" msgid="5806819252068617811">"স্কেল অ্যাপ্লিকেশন"</string>
<string name="unknown" msgid="1592123443519355854">"অজানা"</string>
@@ -1731,7 +1748,7 @@
<string name="service_stop" msgid="6369807553277527248">"থামান"</string>
<string name="service_manage" msgid="1876642087421959194">"সেটিংস"</string>
<string name="service_stop_description" msgid="9146619928198961643">"এই পরিষেবাটি এটির অ্যাপ্লিকেশান দ্বারা শুরু হয়েছে। এটি থামালে, অ্যাপ্লিকেশানটি বিফল হওয়ার সম্ভাবনা রয়েছে।"</string>
- <string name="heavy_weight_stop_description" msgid="6050413065144035971">"এই অ্যাপ্লিকেশানটি নিরাপদে থামানো যাবে না। আপনি যদি এটিকে থামান, আপনি হয়তো আপনার বর্তমান কাজের কয়েকটি হারাতে পারেন।"</string>
+ <string name="heavy_weight_stop_description" msgid="6050413065144035971">"এই অ্যাপ্লিকেশানটি নিরাপদে থামানো যাবে না। আপনি যদি এটিকে থামান, আপনি হয়ত আপনার বর্তমান কাজের কয়েকটি হারাতে পারেন।"</string>
<string name="background_process_stop_description" msgid="3834163804031287685">"যদি পুরানো অ্যাপ্লিকেশান প্রক্রিয়াটি আবার প্রয়োজন হয় তাই এটি চলছে। সাধারণতঃ এটি থামার কোনো কারণ নেই।"</string>
<string name="service_manage_description" msgid="479683614471552426">"<xliff:g id="CLIENT_NAME">%1$s</xliff:g>: বর্তমানে ব্যবহৃত হচ্ছে। এটিকে নিয়ন্ত্রণ করতে সেটিংসে আলতো চাপুন।"</string>
<string name="main_running_process_description" msgid="1130702347066340890">"মুখ্য প্রক্রিয়া ব্যবহৃত হচ্ছে।"</string>
@@ -1760,7 +1777,7 @@
<string name="auto_punctuate_summary" msgid="4372126865670574837">"\"।\" প্রবেশ করাতে দুইবার \'স্পেস\' কী টিপুন"</string>
<string name="show_password" msgid="4837897357002495384">"পাসওয়ার্ড দেখুন"</string>
<string name="show_password_summary" msgid="3365397574784829969">"টাইপ করার সময় অক্ষরগুলি কয়েক মুহূর্তের জন্য দেখুন"</string>
- <string name="spellchecker_security_warning" msgid="9060897418527708922">"এই বানান পরীক্ষকটি হয়তো পাসওয়ার্ড এবং ক্রেডিট কার্ড নম্বর সহ আপনার টাইপ করা সমস্ত টেক্সট সংগ্রহ করতে সক্ষম হতে পারে। এটি <xliff:g id="SPELLCHECKER_APPLICATION_NAME">%1$s</xliff:g> অ্যাপ থেকে এসেছে। এই বানান পরীক্ষকটি ব্যবহার করবেন?"</string>
+ <string name="spellchecker_security_warning" msgid="9060897418527708922">"এই বানান পরীক্ষকটি হয়ত পাসওয়ার্ড এবং ক্রেডিট কার্ড নম্বর সহ আপনার টাইপ করা সমস্ত টেক্সট সংগ্রহ করতে সক্ষম হতে পারে। এটি <xliff:g id="SPELLCHECKER_APPLICATION_NAME">%1$s</xliff:g> অ্যাপ থেকে এসেছে। এই বানান পরীক্ষকটি ব্যবহার করবেন?"</string>
<string name="spellchecker_quick_settings" msgid="246728645150092058">"সেটিংস"</string>
<string name="spellchecker_language" msgid="6041050114690541437">"ভাষা"</string>
<string name="keyboard_and_input_methods_category" msgid="6035224122054465137">"কিবোর্ড এবং ইনপুট"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"কার্য-সম্পাদনায় প্রভাব রাখতে পারে"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"পয়েন্টার সরানো বন্ধ হবার পরেই ক্লিক করুন"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ক্লিক করার আগে বিলম্ব"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"পরিষেবা ব্যবহার করুন"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"কালার কারেকশন ব্যবহার করুন"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"ক্যাপশন ব্যবহার করুন"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"চালু"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"বন্ধ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"দ্রুত সেটিংসে দেখান"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> অবশিষ্ট রয়েছে"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> চার্জ করা বাকি"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"পটভূমির কার্যকলাপ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"বিধিনিষেধযুক্ত"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"অ্যাপটি পটভূমিতে চলতে দিন"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"যখন অ্যাপটি ব্যবহার করা হয় না তখন সেটি পটভূমিতে চালু থাকতে পারে"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"যখন অ্যাপটি ব্যবহার করা হয় না তখন পটভূমিতে সেটির ব্যবহার সীমিত"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"ডিভাইসটিকে পটভূমিতে সক্রিয় করা হচ্ছে"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"বারবার অবস্থানের অনুরোধ করা হচ্ছে"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g>টি অ্যাপে অস্বাভাবিক কার্যকলাপ দেখা যাচ্ছে"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"ব্যাটারি ভাল অবস্থায় আছে"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"অ্যাপে সাধারণ কার্যকলাপ দেখা যাচ্ছে"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"কম ক্ষমতার ব্যাটারি"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"কম ক্ষমতার ব্যাটারিতে ভাল কাজ হয় না"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"স্মার্ট ব্যাটারি পরিচালক চালু করুন"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ব্যাটারির ব্যবহার অপ্টিমাইজ করতে এটি চালু করুন"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"\'ব্যাটারি কম\' মোড চালু করুন"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ব্যাটারি আরও বেশিক্ষণ চালান"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"\'ব্যাটারি কম\' মোড চালু আছে"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"কিছু বৈশিষ্ট্য সীমিতভাবে ব্যবহার করা যাবে"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ফোন অত্যাধিক ব্যবহার করা হয়েছে"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ট্যাবলেট অত্যাধিক ব্যবহার করা হয়েছে"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ডিভাইস অত্যাধিক ব্যবহার করা হয়েছে"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"শেষ বার সম্পূর্ণ চার্জের পর <xliff:g id="HOUR">%1$s</xliff:g> ব্যবহার করা হয়েছে"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"আপনার ফোন অত্যাধিক ব্যবহার করার ফলে প্রচুর ব্যাটারি খরচ হয়েছে। আপনার ব্যাটারির সাধারণ কার্যকলাপ দেখা যাচ্ছে।\n\n শেষ বার সম্পূর্ণ চার্জের পর আপনার ফোন <xliff:g id="HOUR">%1$s</xliff:g> ব্যবহার করা হয়েছে।\n\n মোট ব্যবহার:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"আপনার ট্যাবলেট অত্যাধিক ব্যবহার করার ফলে প্রচুর ব্যাটারি খরচ হয়েছে। আপনার ব্যাটারির সাধারণ কার্যকলাপ দেখা যাচ্ছে।\n\n শেষ বার সম্পূর্ণ চার্জের পর আপনার ট্যাবলেট <xliff:g id="HOUR">%1$s</xliff:g> ব্যবহার করা হয়েছে।\n\n মোট ব্যবহার:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"আপনার ডিভাইস অত্যাধিক ব্যবহার করার ফলে প্রচুর ব্যাটারি খরচ হয়েছে। আপনার ব্যাটারির সাধারণ কার্যকলাপ দেখা যাচ্ছে। \n\n শেষ বার সম্পূর্ণ চার্জের পর আপনার ডিভাইস <xliff:g id="HOUR">%1$s</xliff:g> ব্যবহার করা হয়েছে।\n\n মোট ব্যবহার:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"স্মার্ট ব্যাটারি পরিচালক"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"ব্যাটারি অটোমেটিক পরিচালনা করুন"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"পাওয়ারের ব্যবহার সংক্রান্ত অ্যাপের মাধ্যমে নিজে থেকেই পাওয়ারের ব্যবহার অ্যাডজাস্ট করুন"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"বিধিনিষেধযুক্ত অ্যাপ"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="one">%1$dটি অ্যাপ</item>
+ <item quantity="other">%1$dটি অ্যাপ</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"অ্যাপটি বন্ধ করবেন?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"<xliff:g id="APP">%1$s</xliff:g> অ্যাপটি আপনার ফোনকে জাগিয়ে রাখছে, তাই আপনার ফোন স্বাভাবিকভাবে ব্যাটারি পরিচালনা করতে পারছে না।\n\nএই সমস্যার সমাধানের জন্য আপনি অ্যাপটি বন্ধ করতে পারেন।\n\nতার পরেও যদি এরকম ঘটতে থাকে, তাহলে ব্যাটারির পারফরম্যান্সের উন্নতি করতে এই অ্যাপটি আনইনস্টল করতে হতে পারে।"</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"<xliff:g id="APP">%1$s</xliff:g> অ্যাপটি আপনার ট্যাবলেট জাগিয়ে রাখছে, তাই আপনার ট্যাবলেট স্বাভাবিকভাবে ব্যাটারি পরিচালনা করতে পারছে না।\n\nএই সমস্যার সমাধানের জন্য আপনি অ্যাপটি বন্ধ করতে পারেন।\n\nতার পরেও যদি এরকম ঘটতে থাকে, তাহলে ব্যাটারির পারফরম্যান্সের উন্নতি করতে এই অ্যাপটি আনইনস্টল করতে হতে পারে।"</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"মিডিয়াসার্ভার"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"অ্যাপ অপটিমাইজেশান"</string>
<string name="battery_saver" msgid="8172485772238572153">"ব্যাটারি সেভার"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ব্যাটারি সেভার ব্যবহার করুন"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"স্বয়ংক্রিয়ভাবে চালু হবে"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"কখনও নয়"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g>ব্যাটারি আছে"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"সমন্বয় বর্তমানে সমস্যার সম্মুখীন হচ্ছে। এটি খুব শীঘ্রই ফিরে আসবে।"</string>
<string name="add_account_label" msgid="7811707265834013767">"অ্যাকাউন্ট যোগ করুন"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"কর্মস্থলের প্রোফাইল এখনো উপলব্ধ নয়"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"কাজের মোড"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"অ্যাপ, পটভূমি সিঙ্ক এবং সম্পর্কিত বৈশিষ্ট্যগুলি সহ কর্মস্থলের প্রোফাইলটিকে কাজ করার অনুমতি দিন"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"কাজের প্রোফাইল"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"আপনার প্রতিষ্ঠান দ্বারা পরিচালিত"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"অ্যাপ এবং বিজ্ঞপ্তি বন্ধ আছে"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"কর্মস্থলের প্রোফাইল সরান"</string>
<string name="background_data" msgid="5779592891375473817">"ব্যাকগ্রাউন্ড ডেটা"</string>
<string name="background_data_summary" msgid="8328521479872763452">"অ্যাপ্লিকেশানগুলি যে কোনো সময়ে ডেটা সমন্বয়, পাঠাতে ও গ্রহণ করতে পারে"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"অ্যাকাউন্ট সরাবেন?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"এই অ্যাকাউন্টটি মুছে দিলে এটি ট্যাবলেটটি থেকে সমস্ত মেসেজ, পরিচিতি এবং অন্য ডেটা মুছে দেবে!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"এই অ্যাকাউন্টটি মুছে দিলে এটি ফোন থেকে সমস্ত মেসেজ, পরিচিতি এবং অন্য ডেটা মুছে দেবে!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"এই অ্যাকাউন্টটি মুছে দিলে এটির সমস্ত মেসেজ, পরিচিতি এবং অন্যান্য ডেটা ডিভাইস থেকে মুছে দেওয়া হবে!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"আপনার প্রশাসক এই পরিবর্তনটি করতে দেবেন না"</string>
<string name="provider_label" msgid="7724593781904508866">"পুশ সদস্যতাগুলি"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="one">টি সার্টিফিকেট পরীক্ষা করুন</item>
<item quantity="other">টি সার্টিফিকেট পরীক্ষা করুন</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ব্যবহারকারীগণ"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"একাধিক ব্যবহারকারী"</string>
<string name="user_list_title" msgid="7937158411137563543">"ব্যবহারকারীরা ও প্রোফাইলগুলি"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ব্যবহারকারী অথবা প্রোফাইল যোগ করুন"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ব্যবহারকারীকে যোগ করুন"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ব্লুটুথ, কাস্ট করা"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"অ্যাপ ও বিজ্ঞপ্তি"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"অনুমতিগুলি, ডিফল্ট অ্যাপ্স"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ব্যবহারকারী এবং অ্যাকাউন্টগুলি"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"অ্যাকাউন্ট"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ডিফল্ট অ্যাপ"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ভাষা, সময়, ব্যাকআপ, আপডেট"</string>
<string name="search_results_title" msgid="1796252422574886932">"সেটিংস"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"বিরক্ত করবেন না, বাধা দেওয়া, বাধা, বিরতি"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"আশেপাশে, অবস্থান, ইতিহাস, প্রতিবেদন করা"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"নির্ভুলতা"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"অ্যাকাউন্ট"</string>
<string name="keywords_users" msgid="3434190133131387942">"বাধানিষেধ, বাধানিষেধ আরোপ করা, বাধানিষেধযুক্ত"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"টেক্সট সংশোধন, সঠিক, শব্দ, স্পন্দন, স্বয়ং, ভাষা, ইঙ্গিত, প্রস্তাব, প্রস্তাবনা, থিম, আপত্তিজনক, শব্দ, লেখা, ইমোজি, আন্তর্জাতিক"</string>
@@ -2829,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"নেটওয়ার্ক, মোবাইল নেটওয়ার্কের অবস্থা, পরিষেবার অবস্থা, সিগন্যালের অবস্থা, মোবাইল নেটওয়ার্কের ধরন, রোমিং, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"সিরিয়াল নম্বর, হার্ডওয়্যার ভার্সন"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android নিরাপত্তা প্যাচের স্তর, বেসব্যান্ড ভার্সন, কার্নেল ভার্সন"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ওয়াই-ফাই NFC ট্যাগ সেটআপ করুন"</string>
<string name="write_tag" msgid="8571858602896222537">"লিখুন"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"লিখতে একটি ট্যাগে আলতো চাপুন..."</string>
@@ -2872,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g>টি নিয়ম</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"বিরক্ত করবেন না"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'বিরক্ত করবেন না\' মোড চালু করুন"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"আচরণ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"এগুলির সাউন্ড ও ভাইব্রেশন হবে"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"কোনও সাউন্ড নয়"</string>
@@ -2881,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"নিজে থেকে চালু করুন"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"অটোমেটিক নিয়ম"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"অটোমেটিক নিয়ম"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\'বিরক্ত করবেন না\' সেট আপ করুন"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"নির্দিষ্ট সময়ের ক্ষেত্রে শব্দ এবং কম্পন সীমিত করুন"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"নির্দিষ্ট সময়ে ফোন সাইলেন্ট করুন"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'বিরক্ত করবেন না\' মোডের নিয়ম সেট-আপ করুন"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"নিয়ম ব্যবহার করুন"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"শুধুমাত্র অগ্রাধিকার"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"শুধুমাত্র অ্যালার্মগুলি"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"একদম নিরব"</string>
@@ -2890,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ভিজ্যুয়াল ব্যাঘাতগুলিকে ব্লক করুন"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ভিজুয়াল সঙ্কেতগুলি চালু করুন"</string>
<string name="zen_mode_add" msgid="90014394953272517">"যোগ করুন"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"এখনই চালু করুন"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"এখনই বন্ধ করুন"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"চালু করুন"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"এখনই চালু করুন"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"এখনই বন্ধ করুন"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"\'বিরক্ত করবেন না\' মোডটি <xliff:g id="FORMATTED_TIME">%s</xliff:g> পর্যন্ত চালু থাকবে"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"\'বিরক্ত করবেন না\' মোডটি বন্ধ না করা পর্যন্ত সেটি চালু থাকবে"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"<xliff:g id="RULE_NAME">%s</xliff:g> নিয়মটির জন্য \'বিরক্ত করবেন না\' মোডটি নিজে থেকেই চালু হয়ে গেছে"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"<xliff:g id="APP_NAME">%s</xliff:g> অ্যাপটি নিজে থেকেই \'বিরক্ত করবেন না\' মোড চালু করে দিয়েছে"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"শুধুমাত্র অগ্রাধিকার"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"কর্মস্থলের প্রোফাইলের ধ্বনিগুলি"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ব্যক্তিগত প্রোফাইলের ধ্বনিগুলি ব্যবহার করুন"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"কাজ এবং ব্যক্তিগত প্রোফাইলের জন্য একই শব্দ"</string>
@@ -2911,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"রিংটোনগুলি"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"অন্যান্য সাউন্ড এবং ভাইব্রেশন"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"বিজ্ঞপ্তি"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"সম্প্রতি পাঠানো হয়েছে"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"উন্নত"</string>
<string name="profile_section_header" msgid="2320848161066912001">"কর্মস্থলের বিজ্ঞপ্তিগুলি"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"একাধিক বিজ্ঞপ্তি ডট দেখাতে দিন"</string>
@@ -2930,7 +2981,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"অ্যাপ বিজ্ঞপ্তি"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"বিজ্ঞপ্তির বিভাগ"</string>
<string name="notification_group_title" msgid="7180506440133859601">"বিজ্ঞপ্তির বিভাগের গ্রুপ"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"গুরুত্ব"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"আচরণ"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"সাউন্ডের অনুমতি দিন"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"কখনোই বিজ্ঞপ্তগুলি দেখায় না"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"কোনো শব্দ বা ভিজ্যুয়াল বাধা নেই"</string>
@@ -2948,6 +2999,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"মাঝারি গুরুত্ব"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"উচ্চ গুরুত্ব"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"সর্বাধিক গুরুত্ব"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"বিজ্ঞপ্তি দেখুন"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"বিজ্ঞপ্তি সহায়ক"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"বিজ্ঞপ্তির অ্যাক্সেস"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"কর্মস্থলের প্রোফাইলের বিজ্ঞপ্তিতে অ্যাক্সেস ব্লক করা হয়েছে"</string>
@@ -2978,9 +3030,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"বিরক্ত করবেন না অ্যাক্সেস করুন"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"ইনস্টল করা নেই এমন অ্যাপগুলি বিরক্ত করবেন না অ্যাক্সেস করুন এর অনুরোধ জানিয়েছে"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"অ্যাপ্লিকেশানগুলি লোড করা হচ্ছে..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android এই অ্যাপের বিজ্ঞপ্তিগুলিকে এই ডিভাইসে দেখাতে দিছে না।"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android এই বিভাগের বিজ্ঞপ্তিগুলিকে এই ডিভাইসে দেখাতে দিছে না।"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android এই বিভাগের বিজ্ঞপ্তিগুলিকে এই ডিভাইসে দেখাতে দিচ্ছে না"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"আপনার অনুরোধ অনুযায়ী Android এই অ্যাপের বিজ্ঞপ্তি এই ডিভাইসে দেখাচ্ছে না"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"আপনার অনুরোধ অনুযায়ী Android এই বিভাগের বিজ্ঞপ্তিগুলি এই ডিভাইসে দেখাচ্ছে না"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"আপনার অনুরোধ অনুযায়ী Android এই ধরনের বিজ্ঞপ্তিগুলি এই ডিভাইসে দেখাচ্ছে না"</string>
<string name="notification_channels" msgid="5346841743182627500">"বিভাগগুলি"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"অন্যান্য"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"আপনার ডিভাইস আনলক করার জন্য আঙ্গুলের ছাপ ব্যবহার করা ছাড়াও ডিভাইসটি চালু হওয়ার সময় পাসওয়ার্ড দেওয়ার মাধ্যমে আপনি এটিকে আরো সুরক্ষিত রাখতে পারেন। ডিভাইসটি চালু না হওয়া পর্যন্ত এতে কল, মেসেজ বা অ্যালার্মের কোনও বিজ্ঞপ্তি আসবে না।\n\nএর ফলে ডিভাইসটি হারিয়ে বা চুরি হয়ে গেলেও আপনার ডেটা সুরক্ষিত থাকবে। চালু করার সময় পাসওয়ার্ড দেওয়ার ব্যবস্থা রাখতে চান?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"হ্যাঁ"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"না"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"হ্যাঁ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"না"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"পিন প্রয়োজন?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"প্যাটার্নের প্রয়োজন?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"পাসওয়ার্ডের প্রয়োজন?"</string>
@@ -3271,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"প্রত্যাখ্যান করুন"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"এই ডিভাইসটি চার্জ করুন"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"শুধুমাত্র ডিভাইটি চার্জ করুন"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"পাওয়ার সরবরাহ করুন"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"সংযুক্ত ডিভাইসটি চার্জ করুন। শুধুমাত্র USB চার্জিং সমর্থিত ডিভাইসেই এটি করা যাবে।"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ফাইল ট্রান্সফার করুন"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"অন্য ডিভাইসে ফাইল ট্রান্সফার করুন"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ফটো ট্রান্সফার করুন (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"যদি MTP সমর্থিত না হয় তবে ফটো বা ফাইলগুলি স্থানান্তর করুন (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI হিসেবে ডিভাইসটি ব্যবহার করুন"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"MIDI হিসেবে এই ডিভাইসটি ব্যবহার করুন"</string>
- <string name="usb_use" msgid="3256040963685055320">"এটি করতে USB ব্যবহার করুন"</string>
+ <string name="usb_use" msgid="3372728031108932425">"এর জন্য USB ব্যবহার করুন"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"এই ডিভাইসটি চার্জ করা হচ্ছে"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"সংযুক্ত ডিভাইসটি চার্জ করা হচ্ছে"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ফাইলগুলি স্থানান্তর করা হচ্ছে"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ফটোগুলি স্থানান্তর করা হচ্ছে (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"ডিভাইসটিকে MIDI হিসেবে ব্যবহার করা হচ্ছে"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"এসএমএস প্রতিবিম্ব"</string>
<string name="background_check_pref" msgid="7550258400138010979">"ব্যাকগ্রাউন্ড পরীক্ষা"</string>
<string name="background_check_title" msgid="4534254315824525593">"সম্পূর্ণ পটভূমি অ্যাক্সেস করুন"</string>
@@ -3394,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"ওয়ালপেপার, নিদ্রা মোড, হরফের আকার"</string>
<string name="display_summary_example" msgid="9102633726811090523">"১০ মিনিট ধরে নিষ্ক্রিয় থাকার পরে নিদ্রা মোডে যায়"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> এর মধ্যে <xliff:g id="USED_MEMORY">%1$s</xliff:g> মেমোরি ব্যবহৃত হয়েছে"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"বর্তমান ব্যবহারকারী: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> হিসেবে প্রবেশ করেছেন"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> হল ডিফল্ট"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"চালু / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"চালু"</string>
<string name="location_off_summary" msgid="6474350053215707957">"বন্ধ"</string>
<string name="backup_disabled" msgid="485189128759595412">"ব্যাক-আপ নেওয়া অক্ষম করা রয়েছে"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> এ আপডেট করা হয়েছে"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"কাজটি অনুমোদিত নয়"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"ভলিউম পরিবর্তন করা যাবে না"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"কল করার অনুমতি নেই"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"এসএমএস পাঠানোর অনুমতি নেই"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ক্যামেরা ব্যবহারের অনুমতি নেই"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"স্ক্রিনশটের অনুমতি নেই"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ব্যাক-আপ বন্ধ করা যাবে না"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"এই অ্যাকশনটি অক্ষম করা আছে। আরো জানতে আপনার প্রতিষ্ঠানের প্রশাসকের সাথে যোগাযোগ করুন।"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"আরো বিশদ বিবরণ"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"আপনার প্রশাসক আপনার কর্মস্থলের প্রোফাইলের সাথে সম্পর্কিত অ্যাপ এবং ডেটা নিরীক্ষণ ও পরিচালনা করতে পারেন, যাতে সামিল রয়েছে সেটিংস, অনুমতি, কর্পোরেট অ্যাক্সেস, নেটওয়ার্ক কার্যকলাপ এবং ডিভাইসের অবস্থান তথ্য।"</string>
@@ -3420,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"পোর্টেবল ওয়াই-ফাই হটস্পট <xliff:g id="ID_1">%1$s</xliff:g> সক্রিয় আছে, এই ডিভাইসের ওয়াই-ফাই বন্ধ করা হয়েছে৷"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"বিমান মোড চালু করা আছে"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"ওয়াই-ফাই, ব্লুটুথ এবং মোবাইল নেটওয়ার্ক বন্ধ করা আছে৷ আপনি ফোন করতে বা ইন্টারনেটে সংযোগ করতে পারবেন না৷"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\'বিরক্ত করবেন না\' চালু আছে (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ব্যাটারি সেভার চালু আছে"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"কার্য-সম্পাদনা কমানো হয়েছে৷ অবস্থান পরিষেবা এবং ব্যাকগ্রাউন্ড ডেটা বন্ধ করা হয়েছে৷"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"মোবাইল ডেটা বন্ধ করা আছে"</string>
@@ -3430,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"কর্মস্থলের প্রোফাইল বন্ধ রয়েছে"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"অ্যাপ, পটভূমি সিঙ্ক এবং আপনার কর্মস্থলের প্রোফাইলের সাথে সম্পর্কিত অন্য বৈশিষ্ট্যগুলিকে বন্ধ করা হয়েছে৷"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"নাইট লাইটের সময়সূচী সেট করুন"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ঘুম আসতে অসুবিধা না হওয়ার জন্য স্ক্রিনের আভা অ্যাম্বার করুন"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"রাত হলেই স্ক্রিনে নিজে থেকে আভা দেখা যাবে"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"নাইট লাইট চালু আছে"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"স্ক্রিন হলুদাভ বাদামি আভা ধারণ করে৷ এটি আপনাকে ঘুমিয়ে পড়তে সহায়তা করতে পারে৷"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"আপনার জন্য প্রস্তাবিত"</string>
<string name="suggestions_title" msgid="7280792342273268377">"প্রস্তাবনাগুলি"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>টি"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+ আরও <xliff:g id="ID_1">%1$d</xliff:g>টি"</string>
@@ -3537,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"কোনো কিছুই নয়"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"রেঙ্কিং অবজেক্ট অনুপস্থিত।"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"রেঙ্কিং অবজেক্টে এই কী থাকে না।"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"কাট-আউটের সাহায্যে ডিসপ্লে দেখুন"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"কোনওটিই নয়"</string>
<string name="special_access" msgid="3458780842491881155">"বিশেষ অ্যাপ অ্যাক্সেস করুন"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g>টি অ্যাপ অপরিমিত ডেটা ব্যবহার করতে পারে</item>
@@ -3559,31 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"একাধিক ডিভাইসের সাথে সংযুক্ত আছে"</string>
<string name="demo_mode" msgid="2798762752209330277">"সিস্টেম UI ডেমো মোড"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"দ্রুত সেটিংস ডেভেলপার টাইলস"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"আপনাকে সাহায্য করতে আমরা প্রস্তুত"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"আমরা আপনাকে সহায়তা করার জন্য সপ্তাহে সাত দিন ২৪ ঘণ্টা এখানে রয়েছি"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"আমরা আপনাকে সহায়তা করার জন্য সপ্তাহে সাত দিন ২৪ ঘণ্টা এখানে রয়েছি"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"যেকোনও সমস্যার সমাধান করার জন্য আমাদের সহায়তা টিম এখানে রয়েছে"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"আমাদের সহায়তা টিম সপ্তাহে সাত দিন ২৪ ঘণ্টা এখানে রয়েছে"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"সহায়তা খুঁজুন বা সহায়তা প্রদান চালু থাকার সময়ে আমাদের সাথে যোগযোগ করুন (স্থানীয় সময়):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"ফোনের মাধ্যমে সহায়তা প্রদান করার সময় (স্থানীয় সময়)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"সহায়তা খুঁজুন বা টিপ এবং কৌশলগুলি এক্সপ্লোর করুন"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"এর জন্য সমর্থন:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"উইন্ডো ট্রেস"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"সারফেস ট্রেস"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"বিদেশ ভ্রমন করছেন?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"আন্তর্জাতিক চার্জ প্রযোজ্য হতে পারে"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"ফোন"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"চ্যাট করুন"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"টিপ এবং কৌশলগুলি এক্সপ্লোর করুন"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"সহায়তায় খুঁজুন এবং মতামত পাঠান"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"সহায়তায় যোগাযোগ করুন"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"সাইন-ইন করুন"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"সাইন ইন করতে পারছেন না?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"সিস্টেমের তথ্য পাঠান"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"আর দেখাবেন না"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"এই রূপে অনুরোধ করা হচ্ছে"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"অ্যাকাউন্ট যোগ করুন"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"সিস্টেমের তথ্য"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"কর্মস্থলের প্রোফাইলের সেটিংস"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"পরিচিতির অনুসন্ধান"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"কলারদের এবং পরিচিতিগুলিকে চিহ্নিত করতে আপনার প্রতিষ্ঠান দ্বারা পরিচিতি অনুসন্ধানের অনুমতি দিন"</string>
@@ -3599,11 +3660,11 @@
<item quantity="one"><xliff:g id="NUMBER">%s</xliff:g> সেকেন্ড</item>
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> সেকেন্ড</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> অপেক্ষা করুন"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"স্টোরেজ পরিচালনা করুন"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"স্টোরেজ খালি করার কাজে সাহায্য করার জন্য, স্টোরেজ ম্যানেজার আপনার ডিভাইস থেকে ব্যাক-আপ নেওয়া ফটো এবং ভিডিওগুলিকে সরিয়ে দেয়৷"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ফটো এবং ভিডিওগুলিকে সরান"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"সঞ্চয়স্থানের পরিচালক"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"স্টোরেজ পরিচালক ব্যবহার করুন"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"অটোমেটিক"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"ম্যানুয়াল"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"এখনই জায়গা খালি করুন"</string>
@@ -3614,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ক্যামেরাতে সরাসরি যান"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ক্যামেরা দ্রুত খুলতে, পাওয়ার বোতাম দুবার প্রেস করুন৷ যেকোনও স্ক্রিনে কাজ করে৷"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ক্যামেরাটি তাড়াতাড়ি খুলুন"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ক্যামেরা খোলার জন্য পাওয়ার বোতামটি দুবার টিপুন"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ক্যামেরা ফ্লিপ করুন"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"তাড়াতাড়ি সেলফি তুলুন"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"সেলফি মোডে যাওয়ার জন্য ফোনটি ডবল টুইস্ট করুন"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"সেলফি মোডে যাওয়ার জন্য ট্যাবলেটটি ডবল টুইস্ট করুন"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"সেলফি মোডে যাওয়ার জন্য ডিভাইসটি ডবল টুইস্ট করুন"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ফোন চেক করতে দুবার ট্যাপ করুন"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ট্যাবলেট চেক করতে দুবার ট্যাপ করুন"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ডিভাইস চেক করতে দুবার ট্যাপ করুন"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"সময়, বিজ্ঞপ্তির আইকন, এবং অন্যান্য তথ্য দেখতে আপনার স্ক্রিনে ডবল ট্যাপ করুন।"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"স্ক্রিন বন্ধ থাকলেও বিজ্ঞপ্তি দেখুন"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"চেক করতে ফোনটিকে হাতে নিন"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"চেক করতে ট্যাবলেটটিকে হাতে নিন"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"চেক করতে ডিভাইসটিকে হাতে নিন"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"সময়, বিজ্ঞপ্তির আইকন, এবং অন্যান্য তথ্য দেখতে আপনার ফোনটি তুলে নিন।"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"সময়, বিজ্ঞপ্তির আইকন, এবং অন্যান্য তথ্য দেখতে আপনার ট্যাবলেটটি তুলে নিন।"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"সময়, বিজ্ঞপ্তির আইকন, এবং অন্যান্য তথ্য দেখতে আপনার ডিভাইসটি তুলে নিন।"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"স্ক্রিন বন্ধ থাকলেও বিজ্ঞপ্তি দেখুন"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"বিজ্ঞপ্তির জন্য আঙ্গুলের ছাপ সোয়াইপ করুন"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"আঙ্গুলের ছাপ সোয়াইপ করুন"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"আপনার বিজ্ঞপ্তিগুলি চেক করতে, আপনার ফোনের পিছনে আঙ্গুলের ছাপ নেওয়ার সেন্সরে নিচের দিকে সোয়াইপ করুন৷"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"আপনার বিজ্ঞপ্তিগুলি চেক করতে, আপনার ট্যাবলেটের পিছনে আঙ্গুলের ছাপ নেওয়ার সেন্সরে নিচের দিকে সোয়াইপ করুন৷"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"আপনার বিজ্ঞপ্তিগুলি চেক করতে, আপনার ডিভাইসের পিছনে আঙ্গুলের ছাপ নেওয়ার সেন্সরে নিচের দিকে সোয়াইপ করুন৷"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"বিজ্ঞপ্তিগুলি দ্রুত দেখুন"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"আঙ্গুলের ছাপ নেওয়ার সেন্সরে নিচের দিকে সোয়াইপ করুন"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"চালু আছে"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"বন্ধ আছে"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"বুটলোডার ইতিমধ্যেই আনলক করা হয়েছে"</string>
@@ -3769,8 +3823,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"আপনার নতুন ট্যাবলেট চালিয়ে দেখুন"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"আপনার নতুন ডিভাইস চালিয়ে দেখুন"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"এই বৈশিষ্ট্যটি এই ডিভাইসে উপলব্ধ নেই"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"GnssMeasurement সম্পূর্ণভাবে ট্র্যাক করুন"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ডিউটি-সাইক্লিং বাদে সমস্ত কন্সটেলেশন এবং ফ্রিকোয়েন্সি ট্র্যাক করুন"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"প্রত্যেকবার ক্র্যাশ ডায়ালগ দেখাতে দিন"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"কোনও অ্যাপ ক্র্যাশ করলে প্রত্যেকবার ডায়ালগ দেখাতে দিন"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ডিরেক্টরি অ্যাক্সেস"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ডিরেক্টরি অ্যাক্সেস"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"আমার ফোন"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"আমার ট্যাবলেট"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"আমার ডিভাইস"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"অ্যাকাউন্ট"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ডিভাইসের নাম"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ড্রাইভ করার সময় ব্লুটুথ চালু রাখুন"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ড্রাইভ করার সময় নিজে থেকে ব্লুটুথ চালু হতে দিন"</string>
</resources>
diff --git a/res/values-bs/arrays.xml b/res/values-bs/arrays.xml
index 2d6ab4e..8dd114d 100644
--- a/res/values-bs/arrays.xml
+++ b/res/values-bs/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pritisnite dugme"</item>
<item msgid="1624323946324499595">"PIN ravnopravnog uređaja"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 sat"</item>
<item msgid="5198271470953124739">"Ne ističe nikada"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Zadano)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Loš"</item>
<item msgid="2042505933058940139">"Loš"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Starije od 60 dana"</item>
<item msgid="5692284879054004388">"Starije od 90 dana"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Koristi mrežne postavke"</item>
+ <item msgid="8745603368609022803">"Tretiraj kao vezu s ograničenjem"</item>
+ <item msgid="2266114985518865625">"Tretiraj kao vezu bez ograničenja"</item>
+ </string-array>
</resources>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index d31e910..aa5de26 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -38,7 +38,7 @@
<string name="header_category_personal" msgid="3310195187905720823">"Lično"</string>
<string name="header_category_access" msgid="7580499097416970962">"Pristup"</string>
<string name="header_category_system" msgid="2816866961183068977">"Sistem"</string>
- <string name="radio_info_data_connection_enable" msgid="8656750679353982712">"Omogućite podatkovnu vezu"</string>
+ <string name="radio_info_data_connection_enable" msgid="8656750679353982712">"Omogućite vezu za prijenos podataka"</string>
<string name="radio_info_data_connection_disable" msgid="8541302390883231216">"Onemogućite podatkovnu mrežu"</string>
<string name="volte_provisioned_switch_string" msgid="7979882929810283786">"VoLTE"</string>
<string name="vt_provisioned_switch_string" msgid="7876998291744854759">"Video poziv obezbijeđen"</string>
@@ -171,6 +171,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Vaši uređaji"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Uparivanje novog uređaja"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Dozvolite uređaju uparivanje i povezivanje s Bluetooth uređajima"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Onemogući zvono unutar pojasa"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Ne reproduciraj prilagođene melodije zvona telefona na Bluetooth slušalicama"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Trenutno povezani"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Sačuvani uređaji"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Dodajte uređaj"</string>
@@ -205,7 +207,7 @@
<string name="radio_info_neighboring_location_label" msgid="5766020323342985397">"Informacije o susjednim ćelijama (zastarjela):"</string>
<string name="radio_info_cell_info_refresh_rate" msgid="7062777594049622128">"Interval osvježavanja informacija o ćeliji"</string>
<string name="radio_info_cellinfo_label" msgid="6213223844927623098">"Sve informacije o mjerenju ćelije"</string>
- <string name="radio_info_dcrtinfo_label" msgid="4062076024399431876">"Informacije u stvarnom vremenu o podatkovnoj vezi:"</string>
+ <string name="radio_info_dcrtinfo_label" msgid="4062076024399431876">"Informacije u stvarnom vremenu o vezi za prijenos podataka:"</string>
<string name="radio_info_gprs_service_label" msgid="4209624131644060517">"Prijenos podataka:"</string>
<string name="radio_info_roaming_label" msgid="6141505430275138647">"Roming:"</string>
<string name="radio_info_imei_label" msgid="1220524224732944192">"IMEI:"</string>
@@ -295,7 +297,7 @@
<string name="radio_controls_title" msgid="3447085191369779032">"Više"</string>
<string name="wireless_networks_settings_title" msgid="3643009077742794212">"Bežična veza i mreže"</string>
<string name="radio_controls_summary" msgid="1838624369870907268">"Upravljanje značajkama Wi-Fi, Bluetooth, način rada u zrakoplovu, mobilne mreže i VPN-ovi"</string>
- <string name="cellular_data_title" msgid="6835451574385496662">"Mobilni podaci"</string>
+ <string name="cellular_data_title" msgid="6835451574385496662">"Prijenos podataka na mobilnoj mreži"</string>
<string name="calls_title" msgid="3544471959217176768">"Pozivi"</string>
<string name="sms_messages_title" msgid="1778636286080572535">"SMS poruke"</string>
<string name="cellular_data_summary" msgid="4660351864416939504">"Dopusti prijenos podataka mobilnom mrežom"</string>
@@ -332,6 +334,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Postavljanje vremena"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sortiraj po abecedi"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Poredaj po vremenskim zonama"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> počinje <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Ljetno računanje vremena"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standardno vrijeme"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Vremenska zona po regiji"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Vremenske zone s fiksnim pomakom"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Datum"</string>
<string name="time_picker_title" msgid="483460752287255019">"Vrijeme"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automatsko zaključavanje"</string>
@@ -342,6 +349,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Poruka na zaključanom ekranu"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Omogući vidžete"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Onemogućio administrator"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ništa"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Npr. Edinov Android."</string>
@@ -350,6 +361,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Podaci o profilu"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Računi"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Lokacija"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Koristi lokaciju"</string>
<string name="account_settings_title" msgid="626177544686329806">"Računi"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Sigurnost i lokacija"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Šifriranje i akreditivi"</string>
@@ -462,9 +474,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Unesena lozinka je ispravna, ali nažalost vaši podaci su oštećeni. \n\nDa biste nastavili koristiti tablet, morate izvršiti vraćanje na fabričke postavke. Prilikom podešavanja tableta nakon ponovnog postavljanja, imat ćete priliku da vratite podatke čija sigurnosna kopija je spremljena u vaš Google račun."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Unesena lozinka je ispravna, ali nažalost vaši podaci su oštećeni. \n\nDa biste nastavili koristiti telefon, morate izvršiti vraćanje na fabričke postavke. Prilikom podešavanja telefona nakon ponovnog postavljanja, imat ćete priliku da vratite podatke čija sigurnosna kopija je spremljena u vaš Google račun."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Promjena načina unosa"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Postavite zaključavanje ekrana"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Zaštitite svoj uređaj"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Koristite otisak prsta"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Otključajte otiskom prsta"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Zaključavanje ekrana"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Odaberi zaklj. profila"</string>
@@ -702,6 +721,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Kao spikerfon"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Za muziku i medijske sadržaje"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Zapamti postavke"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maksimalan broj povezanih Bluetooth audio uređaja"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Izaberite maksimalan broj povezanih Bluetooth audio uređaja"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Emitiranje"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Omogući bežični prikaz"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Nije pronađen nijedan uređaj u blizini."</string>
@@ -716,6 +737,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Ime"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Prijava"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mb/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> želi uključiti Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> želi isključiti Wi-Fi"</string>
@@ -733,6 +755,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Uključite Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Koristi Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi postavke"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Podešavanje bežičnih pristupnih tačaka i upravljanje njima"</string>
@@ -766,9 +789,9 @@
<string name="wifi_suspend_optimizations" msgid="1220174276403689487">"Optimizacija Wi-Fi-ja"</string>
<string name="wifi_suspend_optimizations_summary" msgid="4151428966089116856">"Korištenje baterije se svodi na minimum kada je Wi-Fi uključen"</string>
<string name="wifi_limit_optimizations_summary" msgid="9000801068363468950">"Limit za bateriju za Wi-Fi"</string>
- <string name="wifi_switch_away_when_unvalidated" msgid="8593144541347373394">"Prebaci se na mobilne podatke ako Wi-Fi izgubi pristup internetu."</string>
- <string name="wifi_cellular_data_fallback_title" msgid="8753386877755616476">"Automatsko prebacivanje na prijenos mobilnih podataka"</string>
- <string name="wifi_cellular_data_fallback_summary" msgid="1403505355490119307">"Korištenje mobilnih podataka kada Wi-Fi mreža nema pristup internetu. Mogu nastati troškovi prijenosa podataka."</string>
+ <string name="wifi_switch_away_when_unvalidated" msgid="8593144541347373394">"Prebaci se na prijenos podataka na mobilnoj mreži ako Wi-Fi izgubi pristup internetu."</string>
+ <string name="wifi_cellular_data_fallback_title" msgid="8753386877755616476">"Automatsko prebacivanje na prijenos podataka na mobilnoj mreži"</string>
+ <string name="wifi_cellular_data_fallback_summary" msgid="1403505355490119307">"Korištenje prijenosa podataka na mobilnoj mreži kada Wi-Fi mreža nema pristup internetu. Mogu nastati troškovi prijenosa podataka."</string>
<string name="wifi_add_network" msgid="6234851776910938957">"Dodajte mrežu"</string>
<string name="wifi_configure_settings_preference_title" msgid="2913345003906899146">"Postavke za Wi-Fi"</string>
<string name="wifi_configure_settings_preference_summary_wakeup_on" msgid="646393113104367290">"Wi‑Fi veza se uključuje ponovo automatski"</string>
@@ -827,6 +850,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Lozinka"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Prikaži lozinku"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Odaberite opseg pristupne tačke"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatski"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Opseg od 2.4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Opseg od 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP postavke"</string>
@@ -844,7 +868,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS dostupan)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Unesite svoju lozinku za mrežu"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Wi-Fi mreža mobilnog operatera"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Povežite se preko mobilnog operatera <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Povežite se preko mobilnog operatera <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Da biste poboljšali preciznost lokacije te u druge svrhe, <xliff:g id="APP_NAME">%1$s</xliff:g> aplikacija želi uključiti skeniranje mreže, čak i kada je Wi-Fi isključen.\n\nŽelite li dozvoliti ovo za sve aplikacije koje žele izvršiti skeniranje?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Da ovo isključite, idite na Napredno u preklopnom meniju."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Dozvoli"</string>
@@ -919,10 +943,10 @@
<string name="wifi_hotspot_name_summary_connected" msgid="3888672084861445362">"Drugi uređaji se mogu povezati na pristupnu tačku <xliff:g id="WIFI_HOTSPOT_NAME">%1$s</xliff:g>"</string>
<string name="wifi_hotspot_password_title" msgid="8676859981917573801">"Lozinka pristupne tačke"</string>
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP opseg"</string>
- <string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Koristite pristupnu tačku da kreirate Wi‑Fi mrežu za ostale svoje uređaje. Pristupna tačka pruža internet koristeći vaš mobilni prijenos podataka. Mogu nastati dodatni troškovi prijenosa mobilnih podataka."</string>
+ <string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Koristite pristupnu tačku da kreirate Wi‑Fi mrežu za ostale svoje uređaje. Pristupna tačka pruža internet koristeći vašu vezu za prijenos podataka na mobilnoj mreži. Mogu nastati dodatni troškovi prijenosa mobilnih podataka."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Aplikacije mogu kreirati pristupnu tačku za dijeljenje sadržaja s uređajima u blizini."</string>
- <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Automatski isključi žarišnu točku"</string>
- <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Žarišna točka Wi‑Fi-ja isključit će se ako nije povezan nijedan uređaj"</string>
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Automatski isključi pristupnu tačku"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Wi‑Fi pristupna tačka će se isključiti ako nijedan uređaj nije povezan"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Uključivanje pristupne tačke…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Isključivanje pristupne tačke…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> je aktivna"</string>
@@ -933,7 +957,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android pristupna tačka"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi pozivanje"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Uključite Wi-Fi pozive"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Koristite Wi-Fi umjesto mobilne mreže"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Postavke za pozive"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Način pozivanja preko Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Postavke rominga"</string>
@@ -971,6 +996,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Adresa za hitne slučajeve"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Koristi se kao vaša lokacija prilikom hitnog poziva putem Wi‑Fi mreže"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Saznajte više"</annotation>" o funkcijama Privatnog DNS-a"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Prikaz"</string>
<string name="sound_settings" msgid="5534671337768745343">"Zvuk"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Jačine zvuka"</string>
@@ -1133,11 +1159,11 @@
<string name="sim_enter_ok" msgid="6475946836899218919">"Uredu"</string>
<string name="sim_enter_cancel" msgid="6240422158517208036">"Otkaži"</string>
<string name="sim_multi_sims_title" msgid="9159427879911231239">"Pronađeno više SIM-ova"</string>
- <string name="sim_multi_sims_summary" msgid="2698176447067691396">"Odaberite željenu SIM karticu za prijenos mobilnih podataka."</string>
+ <string name="sim_multi_sims_summary" msgid="2698176447067691396">"Odaberite željenu SIM karticu za prijenos podataka na mobilnoj mreži."</string>
<string name="sim_change_data_title" msgid="294357201685244532">"Promijeniti podatkovni SIM?"</string>
- <string name="sim_change_data_message" msgid="5854582807996717811">"Želite li za prijenos mobilnih podataka koristiti SIM karticu <xliff:g id="NEW_SIM">%1$s</xliff:g> umjesto SIM kartice <xliff:g id="OLD_SIM">%2$s</xliff:g>?"</string>
+ <string name="sim_change_data_message" msgid="5854582807996717811">"Želite li za prijenos podataka na mobilnoj mreži koristiti SIM karticu <xliff:g id="NEW_SIM">%1$s</xliff:g> umjesto SIM kartice <xliff:g id="OLD_SIM">%2$s</xliff:g>?"</string>
<string name="sim_preferred_title" msgid="5567909634636045268">"Ažurirati željenu SIM karticu?"</string>
- <string name="sim_preferred_message" msgid="8466930554330635780">"SIM kartica <xliff:g id="NEW_SIM">%1$s</xliff:g> jedina je SIM kartica u vašem uređaju. Želite li tu SIM karticu koristiti za prijenos mobilnih podataka, pozive i SMS poruke?"</string>
+ <string name="sim_preferred_message" msgid="8466930554330635780">"SIM kartica <xliff:g id="NEW_SIM">%1$s</xliff:g> jedina je SIM kartica u vašem uređaju. Želite li tu SIM karticu koristiti za prijenos podataka na mobilnoj mreži, pozive i SMS poruke?"</string>
<string name="wrong_pin_code_pukked" msgid="4003655226832658066">"PIN za SIM je netačan. Za otključavanje uređaja sada morate kontaktirati svog operatera."</string>
<plurals name="wrong_pin_code" formatted="false" msgid="1582398808893048097">
<item quantity="one">PIN za SIM je netačan. Preostao vam je još <xliff:g id="NUMBER_1">%d</xliff:g> pokušaj.</item>
@@ -1186,6 +1212,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Vrsta mobilne mreže"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informacije o operateru"</string>
<string name="status_data_state" msgid="5503181397066522950">"Stanje mobilne mreže"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Stanje usluge"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Jačina signala"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roming"</string>
@@ -1319,6 +1347,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Novi uređaj (<xliff:g id="NAME">^1</xliff:g>) funkcionira. \n\nDa biste premjestili slike, datoteke i podatke aplikacija na ovaj uređaj, idite na Postavke > Memorija."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Premjesti <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Premještanje <xliff:g id="APP">^1</xliff:g> i njenih podataka na <xliff:g id="NAME_0">^2</xliff:g> će trajati samo nekoliko trenutaka. Nećete biti u mogućnosti koristiti aplikacije sve dok se ne završi premještanje. \n\n Nemojte uklanjati <xliff:g id="NAME_1">^2</xliff:g> tokom premještanja."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Da prebacite podatke, morate otključati korisnika <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Premješta se <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Nemojte uklanjati <xliff:g id="NAME">^1</xliff:g> tokom premještanja. Aplikacija \n\n <xliff:g id="APP">^2</xliff:g> na ovom uređaju neće biti dostupna sve dok se ne završi premještanje."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Poništi premještanje"</string>
@@ -1371,19 +1400,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Mreža, aplikacije ili uređaj mogu se vratiti na zadano"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Vrati Wi-Fi, mobilnu i Bluetooth vezu na zadane postavke"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Sve postavke mreže vratit će se na zadano, uključujući:\n\n"<li>"Wi‑Fi mrežu"</li>\n<li>"Prijenos mobilnih podataka"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Vraćanje i eSIM-ova na zadano"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Vrati postavke na zadano"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Vratiti sve postavke mreže na zadano? Ovu radnju ne možete poništiti!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Vrati postavke na zadano"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Ponovo postaviti?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Ponovno postavljanje mreže nije dostupno za ovog korisnika"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Postavke mreže vraćene su na zadano"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Nije moguće vratiti eSIM-ove na zadano"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Nije moguće vratiti eSIM-ove na zadano zbog greške."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Potpuno izbriši sve podatke (vraćanje na fabričke postavke)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Ovo će izbrisati sve podatke iz "<b>"interne memorije"</b>" vašeg tableta, uključujući:\n\n"<li>"vaš Google račun"</li>\n<li>"sistemske i aplikacijske podatke i postavke"</li>\n<li>"preuzete aplikacije"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Ovo će izbrisati sve podatke iz "<b>"interne memorije"</b>" vašeg telefona, uključujući:\n\n"<li>"vaš Google račun"</li>\n<li>"sistemske i aplikacijske podatke i postavke"</li>\n<li>"preuzete aplikacije"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Trenutno ste prijavljeni u sljedeće račune:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Drugi korisnici su prisutni na ovom uređaju.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"muziku"</li>\n<li>"fotografije"</li>\n<li>"ostale korisničke podatke"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Mobilni operateri na eSIM kartici"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM kartice"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Ovim se neće otkazati vaš plan usluga mobilnog operatera."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Da biste izbrisali muziku, slike i ostale korisničke podatke, "<b>"USB pohrana"</b>" treba biti izbrisana."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Da biste izbrisali muziku, slike i ostale korisničke podatke, "<b>"SD kartica"</b>" treba biti izbrisana."</string>
@@ -1424,7 +1458,7 @@
<string name="bluetooth_tethering_off_subtext_config" msgid="376389105752995580">"Dijeljenje internetske veze uređaja <xliff:g id="DEVICE_NAME">%1$d</xliff:g> putem Bluetootha"</string>
<string name="bluetooth_tethering_overflow_error" msgid="2135590598511178690">"Nije se moguće povezati sa više od <xliff:g id="MAXCONNECTION">%1$d</xliff:g> uređaja."</string>
<string name="bluetooth_untether_blank" msgid="2871192409329334813">"Prestat će se dijeliti veza s uređajem <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string>
- <string name="tethering_footer_info" msgid="7112228674056306147">"Koristite pristupnu tačku i povezivanje putem mobitela za pružanje interneta drugim uređajima putem mobilnog prijenosa podataka. Aplikacije također mogu kreirati pristupne tačke za dijeljenje sadržaja s uređajima u blizini."</string>
+ <string name="tethering_footer_info" msgid="7112228674056306147">"Koristite pristupnu tačku i povezivanje putem mobitela za pružanje interneta drugim uređajima putem veze za prijenos podataka na mobilnoj mreži. Aplikacije također mogu kreirati pristupne tačke za dijeljenje sadržaja s uređajima u blizini."</string>
<string name="tethering_help_button_text" msgid="656117495547173630">"Pomoć"</string>
<string name="network_settings_title" msgid="2876509814832830757">"Mobilna mreža"</string>
<string name="manage_mobile_plan_title" msgid="7630170375010107744">"Paket mobilne usluge"</string>
@@ -1443,21 +1477,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Povežite se na Internet"</string>
<string name="location_title" msgid="1029961368397484576">"Moja lokacija"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Lokacija za profil za Work"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Način"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Visoka preciznost"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Ušteda baterije"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Samo uređaj"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Utvrđivanje lokacije isključeno"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Odobrenja na nivou aplikacija"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Nedavni zahtjevi za utvrđivanje lokacije"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nijedna aplikacija nije zahtijevala utvrđivanje lokacije u posljednje vrijeme"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Usluge lokacije"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Visoka potrošnja baterije"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Niska potrošnja baterije"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Način otkrivanja lokacije"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Koristi GPS, Wi-Fi, Bluetooth ili mobilne mreže za određivanje lokacije"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Koristi Wi-Fi, Bluetooth ili mobilnu mrežu za određivanje lokacije"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Koristi GPS i senzore uređaja za određivanje lokacije"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Skeniranje"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Skeniranje Wi‑Fi mreže"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Poboljšajte utvrđivanje lokacije tako da dozvolite sistemskim aplikacijama i uslugama da detektiraju Wi-Fi mreže u bilo kom trenutku."</string>
@@ -1479,6 +1504,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Izvori lokacije"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"O tabletu"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"O telefonu"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"O uređaju"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"O emuliranom uređaju"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Prikaži pravne informacije, status, verziju softvera"</string>
<string name="legal_information" msgid="5769301644270604095">"Pravne informacije"</string>
@@ -1586,6 +1612,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Prikaži sve aplikacije: <xliff:g id="COUNT">%1$d</xliff:g>"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Vaši podaci na tabletu i lični podaci su više izloženi napadima aplikacija iz nepoznatih izvora. Instaliranjem aplikacija iz takvih izvora, saglasni ste da ste vi odgovorni za bilo kakvu štetu na telefonu ili gubitak podataka koji mogu nastati korištenjem tih aplikacija."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Vaši podaci na telefonu i lični podaci više su izloženi napadima aplikacija iz nepoznatih izvora. Instaliranjem aplikacija iz takvih izvora, saglasni ste da ste vi odgovorni za bilo kakvu štetu na telefonu ili gubitak podataka koji mogu nastati korištenjem tih aplikacija."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Podaci s vašeg uređaja i vaši lični podaci su izloženiji napadima nepoznatih aplikacija. Instaliranjem aplikacija iz ovog izvora prihvatate odgovornost za bilo kakvu štetu na uređaju ili gubitak podataka uzrokovan njihovim korištenjem."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Napredne postavke"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Omogućite više opcija postavki"</string>
<string name="application_info_label" msgid="5736524913065714880">"Informacije o aplikaciji"</string>
@@ -1886,6 +1913,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Može uticati na performanse"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Klik kada se pokazivač zaustavi"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Odgoda prije klika"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Koristi uslugu"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Koristi ispravku boje"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Koristi natpise"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"UKLJUČENO"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ISKLJUČENO"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Prikaži u Brzim postavkama"</string>
@@ -2006,7 +2036,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Preostalo <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> do pune baterije"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktivnosti u pozadini"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Ograničena"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Dopustite aplikaciji da radi u pozadini"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Aplikacija može raditi u pozadini kada se ne koristi"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Aktivnost aplikacije u pozadini je ograničena kada se ne koristi"</string>
@@ -2050,11 +2080,31 @@
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Učestalo zahtijevanje lokacije"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Ukupno aplikacija koje se ne ponašaju kako treba: <xliff:g id="NUMBER">%1$d</xliff:g>"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"Baterija je u dobrom stanju"</string>
- <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikacije se ponašaju na uobičajen način"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikacije se normalno ponašaju"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Nizak kapacitet baterije"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Baterija ne može osigurati dobar vijek trajanja"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Uključite pametnog upravitelja baterije"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Uključite za optimiziranje potrošnje baterije"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Uključite način rada Niska potrošnja baterije"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Produžite trajanje baterije"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Uključen je način rada Niska potrošnja baterije"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Neke funkcije su ograničene"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Pojačano korištenje telefona"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Pojačano korištenje tableta"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Pojačano korištenje uređaja"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Oko <xliff:g id="HOUR">%1$s</xliff:g> iskorišteno od posljednje potpune napunjenosti"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Puno ste koristili telefon i potrošili mnogo baterije. Baterija se ponaša normalno.\n\n Od posljednje potpune napunjenosti telefon ste koristili oko <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Ukupna potrošnja:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Puno ste koristili tablet i potrošili mnogo baterije. Baterija se ponaša normalno.\n\n Od posljednje potpune napunjenosti tablet ste koristili oko <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Ukupna potrošnja:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Puno ste koristili uređaj i potrošili mnogo baterije. Baterija se ponaša normalno.\n\n Od posljednje potpune napunjenosti uređaj ste koristili oko <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Ukupna potrošnja:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Pametni upravitelj baterije"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Automatsko upravljanje baterijom"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatsko prilagođavanje potrošnje energije za aplikacije na osnovu korištenja"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Ograničene aplikacije"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="one">%1$d aplikacija</item>
+ <item quantity="few">%1$d aplikacije</item>
+ <item quantity="other">%1$d aplikacija</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Želite zaustaviti aplikaciju?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Vaš telefon ne može normalno upravljati baterijom jer aplikacija <xliff:g id="APP">%1$s</xliff:g> stalno drži vaš telefon aktivnim.\n\nDa pokušate riješiti ovaj problem, možete zaustaviti aplikaciju.\n\nAko se problem ne riješi, možda ćete trebati deinstalirati aplikaciju da poboljšate rad baterije."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Vaš tablet ne može normalno upravljati baterijom jer aplikacija <xliff:g id="APP">%1$s</xliff:g> stalno drži vaš tablet aktivnim.\n\nDa pokušate riješiti ovaj problem, možete zaustaviti aplikaciju.\n\nAko se problem ne riješi, možda ćete trebati deinstalirati aplikaciju da poboljšate rad baterije."</string>
@@ -2163,6 +2213,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Server za medijske sadržaje"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimizacija aplikacija"</string>
<string name="battery_saver" msgid="8172485772238572153">"Ušteda baterije"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Koristi Uštedu baterije"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Automatsko uključivanje"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nikad"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"na <xliff:g id="PERCENT">%1$s</xliff:g> baterije"</string>
@@ -2273,7 +2324,7 @@
<string name="usage_access_title" msgid="332333405495457839">"Apl. s pristupom pod. o korišt."</string>
<string name="emergency_tone_title" msgid="1055954530111587114">"Ton za hitne pozive"</string>
<string name="emergency_tone_summary" msgid="722259232924572153">"Postavi ponašanje prilikom upućivanja poziva za hitne situacije"</string>
- <string name="privacy_settings_title" msgid="2978878794187459190">"Sigurnosno kopiranje"</string>
+ <string name="privacy_settings_title" msgid="2978878794187459190">"Izrada sigurnosnih kopija"</string>
<string name="backup_section_title" msgid="7952232291452882740">"Sigurnosna kopija i vraćanje"</string>
<string name="personal_data_section_title" msgid="7815209034443782061">"Lični podaci"</string>
<string name="backup_data_title" msgid="1239105919852668016">"Izrada sigurnosnih kopija podataka"</string>
@@ -2285,7 +2336,7 @@
<string name="backup_inactive_title" msgid="685838037986644604">"Usluga za izradu sigurnosne kopije nije aktivna"</string>
<string name="backup_configure_account_default_summary" msgid="2436933224764745553">"Nijedan račun trenutno ne pravi sigurnosne kopije podataka"</string>
<string name="backup_erase_dialog_title" msgid="1027640829482174106"></string>
- <string name="backup_erase_dialog_message" msgid="5221011285568343155">"Želite li prestati sa pravljenjem sigurnosnih kopija lozinki za Wi-Fi, obeleživača, drugih postavki te podataka aplikacija i izbrisati sve kopije sa Google servera?"</string>
+ <string name="backup_erase_dialog_message" msgid="5221011285568343155">"Želite li prestati sa izradom sigurnosnih kopija lozinki za Wi-Fi, obeleživača, drugih postavki te podataka aplikacija i izbrisati sve kopije sa Google servera?"</string>
<string name="fullbackup_erase_dialog_message" msgid="694766389396659626">"Prestani da praviš sigurnosne kopije podataka (npr. lozinke za Wi-Fi i istorija poziva) i podataka aplikacije (npr. postavke i fajlovi koje pohranjuju aplikacije), i izbriši sve kopije na udaljenim serverima?"</string>
<string name="fullbackup_data_summary" msgid="960850365007767734">"Daljinski pokrenite automatsku izradu sigurnosnih kopija podataka na uređaju (npr. Wi-Fi lozinki i historije poziva) i podataka iz aplikacija (npr. postavki i fajlova koje pohranjuju aplikacije).\n\nKada uključite automatsku izradu sigurnosnih kopija, podaci iz uređaja i aplikacija se periodično pohranjuju daljinski. Podaci iz aplikacije mogu biti bilo koji podaci koje je aplikacija sačuvala (na osnovu programerskih postavki), uključujući i potencijalno osjetljive podatke, kao što su kontakti, poruke i fotografije."</string>
<string name="device_admin_settings_title" msgid="4960761799560705902">"Postavke administratora uređaja"</string>
@@ -2350,8 +2401,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Trenutno ima problema sa sinhroniziranjem. Ubrzo će opet raditi."</string>
<string name="add_account_label" msgid="7811707265834013767">"Dodaj račun"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Radni profil još uvijek nije dostupan"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Način rada"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Omogućava radnom profilu da funkcionira, uključujući aplikacije, sinhronizaciju u pozadini i povezane funkcije"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Ukloni radni profil"</string>
<string name="background_data" msgid="5779592891375473817">"Podaci u pozadini"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikacije mogu sinhronizirati, slati i primati podatke u bilo koje vrijeme"</string>
@@ -2383,6 +2438,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Ukloniti račun?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Uklanjanjem ovog računa će se izbrisati sve njegove poruke, kontakti i ostali podaci s tableta!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Uklanjanjem ovog računa će se izbrisati sve njegove poruke, kontakti i ostali podaci s telefona!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Uklanjanjem ovog računa izbrisat ćete sve njegove poruke, kontakte i druge podatke s uređaja!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Vaš administrator ne dopušta ovu promjenu"</string>
<string name="provider_label" msgid="7724593781904508866">"Push pretplate"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2408,7 +2464,7 @@
<string name="data_usage_accounting" msgid="7170028915873577387">"Obračun podataka operatera može se razlikovati od obračuna vašeg uređaja."</string>
<string name="data_usage_app" msgid="4970478397515423303">"Korištenje aplikacija"</string>
<string name="data_usage_app_info_label" msgid="3409931235687866706">"INFORMACIJE O APLIKACIJI"</string>
- <string name="data_usage_cellular_data" msgid="9168928285122125137">"Mobilni podaci"</string>
+ <string name="data_usage_cellular_data" msgid="9168928285122125137">"Prijenos podataka na mobilnoj mreži"</string>
<string name="data_usage_data_limit" msgid="1193930999713192703">"Postavljanje ograničenja za podatke"</string>
<string name="data_usage_cycle" msgid="5652529796195787949">"Ciklus prijenosa podataka"</string>
<string name="data_usage_app_items_header_text" msgid="5017850810459372828">"Korištenje aplikacije"</string>
@@ -2434,7 +2490,7 @@
<string name="data_usage_label_foreground" msgid="4938034231928628164">"Prvi plan"</string>
<string name="data_usage_label_background" msgid="3225844085975764519">"Pozadina"</string>
<string name="data_usage_app_restricted" msgid="3568465218866589705">"ograničeno"</string>
- <string name="data_usage_disable_mobile" msgid="8656552431969276305">"Želite li isključiti prijenos mobilnih podataka?"</string>
+ <string name="data_usage_disable_mobile" msgid="8656552431969276305">"Želite li isključiti prijenos podataka na mobilnoj mreži?"</string>
<string name="data_usage_disable_mobile_limit" msgid="4644364396844393848">"Ograničenje za mobilne podatke"</string>
<string name="data_usage_disable_4g_limit" msgid="6233554774946681175">"Postavi ograničenje za 4G podatke"</string>
<string name="data_usage_disable_3g_limit" msgid="2558557840444266906">"Ograničenje 2G-3G podataka"</string>
@@ -2453,11 +2509,11 @@
<string name="data_usage_background_label" msgid="2722008379947694926">"Pozadina:"</string>
<string name="data_usage_app_settings" msgid="2279171379771253165">"Aplikacijske postavke"</string>
<string name="data_usage_app_restrict_background" msgid="7359227831562303223">"Pozadinski podaci"</string>
- <string name="data_usage_app_restrict_background_summary" msgid="5853552187570622572">"Omogući prijenos mobilnih podataka u pozadini"</string>
+ <string name="data_usage_app_restrict_background_summary" msgid="5853552187570622572">"Omogući prijenos podataka na mobilnoj mreži u pozadini"</string>
<string name="data_usage_app_restrict_background_summary_disabled" msgid="7401927377070755054">"Za ograničenje poz. podat. za ovu apl. ograničite mob. podatke."</string>
<string name="data_usage_app_restrict_dialog_title" msgid="1613108390242737923">"Ograničiti podatke u pozadini?"</string>
<string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"Zbog te značajke aplikacija koja ovisi o pozadinskim podacima može prestati raditi kada su dostupne samo mobilne mreže.\n\nU postavkama možete pronaći prikladnije kontrole prijenosa podataka."</string>
- <string name="data_usage_restrict_denied_dialog" msgid="55012417305745608">"Ograničavanje prijenosa pozadinskih podataka moguće je samo ako ste postavili ograničenje za prijenos mobilnih podataka."</string>
+ <string name="data_usage_restrict_denied_dialog" msgid="55012417305745608">"Ograničavanje prijenosa pozadinskih podataka moguće je samo ako ste postavili ograničenje za prijenos podataka na mobilnoj mreži."</string>
<string name="data_usage_auto_sync_on_dialog_title" msgid="2438617846762244389">"Uklj. autom. sinhron. podataka?"</string>
<string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="8581983093524041669">"Promjene računa koje unesete na webu automatski će se kopirati na tablet.\n\nNeki računi također mogu automatski kopirati promjene s tableta na web. Google račun funkcionira na ovaj način."</string>
<string name="data_usage_auto_sync_on_dialog" product="default" msgid="8651376294887142858">"Promjene računa koje unesete na webu automatski će se kopirati na telefon.\n\nNeki računi također mogu automatski kopirati promjene s telefona na web. Google račun funkcionira na ovaj način."</string>
@@ -2469,8 +2525,8 @@
<string name="data_usage_warning_editor_title" msgid="3704136912240060339">"Postavljanje upozorenja o prijenosu podataka"</string>
<string name="data_usage_limit_editor_title" msgid="9153595142385030015">"Postavljanje ograničenja za prijenos podataka"</string>
<string name="data_usage_limit_dialog_title" msgid="3023111643632996097">"Ograničavanje prijenosa podataka"</string>
- <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="4983487893343645667">"Vaš tablet će isključiti prijenos mobilnih podataka nakon što dostigne ograničenje koje ste postavili.\n\nS obzirom na to da vaš telefon mjeri prijenos podataka te da obračun vašeg operatera može biti drugačiji, uzmite u obzir postavljanje umjerenog ograničenja."</string>
- <string name="data_usage_limit_dialog_mobile" product="default" msgid="3926320594049434225">"Vaš telefon će isključiti prijenos mobilnih podataka nakon što dostigne ograničenje koje ste postavili.\n\nS obzirom na to da vaš telefon mjeri prijenos podataka te da obračun vašeg operatera može biti drugačiji, uzmite u obzir postavljanje umjerenog ograničenja."</string>
+ <string name="data_usage_limit_dialog_mobile" product="tablet" msgid="4983487893343645667">"Vaš tablet će isključiti prijenos podataka na mobilnoj mreži nakon što dostigne ograničenje koje ste postavili.\n\nS obzirom na to da vaš telefon mjeri prijenos podataka te da obračun vašeg operatera može biti drugačiji, uzmite u obzir postavljanje umjerenog ograničenja."</string>
+ <string name="data_usage_limit_dialog_mobile" product="default" msgid="3926320594049434225">"Vaš telefon će isključiti prijenos podataka na mobilnoj mreži nakon što dostigne ograničenje koje ste postavili.\n\nS obzirom na to da vaš telefon mjeri prijenos podataka te da obračun vašeg operatera može biti drugačiji, uzmite u obzir postavljanje umjerenog ograničenja."</string>
<string name="data_usage_restrict_background_title" msgid="2201315502223035062">"Ograničiti podatke u pozadini?"</string>
<string name="data_usage_restrict_background" msgid="434093644726734586">"Ako ograničite prijenos pozadinskih mobilnih podataka, neke aplikacije i usluge neće raditi ukoliko niste povezani na Wi-Fi mrežu."</string>
<string name="data_usage_restrict_background_multiuser" product="tablet" msgid="7096707497743363380">"Ako ograničite prijenos pozadinskih mobilnih podataka, neke aplikacije i usluge neće raditi ukoliko niste povezani na Wi-Fi mrežu.\n\nOva postavka utiče na sve korisnike registrirane na ovom tabletu."</string>
@@ -2551,7 +2607,7 @@
<string name="vpn_always_on_summary_active" msgid="8800736191241875669">"Funkcija Uvijek uključeno je aktivna"</string>
<string name="vpn_require_connection" msgid="8388183166574269666">"Blokiraj veze bez VPN-a"</string>
<string name="vpn_require_connection_title" msgid="159053539340576331">"Treba li zahtijevati VPN vezu?"</string>
- <string name="vpn_lockdown_summary" msgid="2200032066376720339">"Odaberite VPN profil s kojim će uvijek biti uspostavljena veza. Mrežni promet će biti dopušten samo kad je uspostavljena veza s tim VPN-om."</string>
+ <string name="vpn_lockdown_summary" msgid="2200032066376720339">"Odaberite VPN profil s kojim će uvijek biti uspostavljena veza. Mrežni saobraćaj će biti dopušten samo kad je uspostavljena veza s tim VPN-om."</string>
<string name="vpn_lockdown_none" msgid="9214462857336483711">"Nema"</string>
<string name="vpn_lockdown_config_error" msgid="3898576754914217248">"Uvijek aktivni VPN zahtijeva IP adresu i za server i za DNS."</string>
<string name="vpn_no_network" msgid="3050233675132726155">"Nema mrežne veze. Pokušajte ponovo kasnije."</string>
@@ -2605,7 +2661,8 @@
<item quantity="few">Provjerite certifikate</item>
<item quantity="other">Provjerite certifikate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Korisnici"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Korisnici i profili"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Dodaj korisnika ili profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Dodaj korisnika"</string>
@@ -2745,7 +2802,7 @@
<string name="sim_settings_summary" msgid="4050372057097516088">"<xliff:g id="SIM_NAME">%1$s</xliff:g> – <xliff:g id="SIM_NUMBER">%2$s</xliff:g>"</string>
<string name="sim_cards_changed_message" msgid="7900721153345139783">"SIM kartice su promijenjene"</string>
<string name="sim_cards_changed_message_summary" msgid="8258058274989383204">"Dodirnite za podešavanje aktivnosti"</string>
- <string name="sim_cellular_data_unavailable" msgid="9109302537004566098">"Prijenos mobilnih podataka je nedostupan"</string>
+ <string name="sim_cellular_data_unavailable" msgid="9109302537004566098">"Prijenos podataka na mobilnoj mreži je nedostupan"</string>
<string name="sim_cellular_data_unavailable_summary" msgid="5416535001368135327">"Dodirnite za odabir SIM kartice za prijenos podataka"</string>
<string name="sim_calls_always_use" msgid="7936774751250119715">"Uvijek koristi ovo za pozive"</string>
<string name="select_sim_for_data" msgid="2366081042162853044">"Odaberite SIM za podatke"</string>
@@ -2796,7 +2853,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikacije i obavještenja"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Odobrenja, zadane aplikacije"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Korisnici i računi"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Zadane aplikacije"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Jezici, vrijeme, sigurnosna kopija, ažuriranja"</string>
<string name="search_results_title" msgid="1796252422574886932">"Postavke"</string>
@@ -2827,7 +2885,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ne ne uznemiravaj, prekinuti, prekidanje, pauza"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"u blizini, lokacija, istorija, izvještavanje"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"preciznost"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"račun"</string>
<string name="keywords_users" msgid="3434190133131387942">"ograničenje, ograničavanje, ograničen"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"korekcija teksta, ispravan, zvuk, vibrirati, auto, jezik, gest, predložiti, prijedlog, tema, uvredljivo, riječ, vrsta, emoji, međunarodna"</string>
@@ -2895,6 +2952,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> pravila</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ne ometaj"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Uključi način rada Ne ometaj"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Ponašanje"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Omogući zvuke i vibracije od"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Bez zvuka"</string>
@@ -2904,8 +2962,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Automatsko uključivanje"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatska pravila"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatsko pravilo"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Postavite pravila za funkciju Ne ometaj"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Ograničite zvuk i vibracije u određenim vremenskim periodima"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Koristi pravilo"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Samo prioritetno"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Potpuna tišina"</string>
@@ -2913,12 +2974,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiranje vizuelnih ometanja"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Dozvolite vizualnu signalizaciju"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Dodaj"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"UKLJUČI SADA"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"ISKLJUČI SADA"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Uključi"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Uključi sada"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Isključi sada"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Opcija Ne ometaj će biti uključena do <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Opcija Ne ometaj će biti uključena dok je ne isključite"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Opcija Ne ometaj je automatski uključena na osnovu pravila (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Opciju Ne ometaj je automatski uključila aplikacija (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Samo prioriteti"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Zvukovi radnog profila"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Koristite zvukove ličnog profila"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvukovi su isti za radni i lični profil"</string>
@@ -2934,6 +2998,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Melodije zvona"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Ostali zvukovi i vibracije"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Obavještenja"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Nedavno poslano"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Napredno"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Obavještenja za posao"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Dozvoli tačke za obavještenja"</string>
@@ -2953,7 +3018,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Obavještenja o aplikaciji"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Kategorija obavještenja"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Grupa kategorija obavještenja"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Značaj"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Ponašanje"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Dozvoli zvuk"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Nikad ne prikazuj obavještenja"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Bez ometanja zvukom ili prikazivanjem"</string>
@@ -2971,6 +3036,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Srednje važno"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Veoma važno"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Hitno"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Prikaži obavještenja"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asistent za obavještenja"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Pristup obavještenjima"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Pristup obavještenjima radnog profila je blokiran"</string>
@@ -3002,9 +3068,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Pristup opciji Ne ometaj"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Nijedna instalirana aplikacija nije zatražila pristup za Ne ometaj"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Učitavaju se aplikacije..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android blokira prikaz obavještenja ove aplikacije na uređaju"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android blokira prikaz ove kategorije obavještenja na uređaju"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android blokira prikaz ove kategorije obavještenja na uređaju"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Na vaš zahtjev, Android blokira pojavljivanje obavještenja iz ove aplikacije na ovom uređaju"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Na vaš zahtjev, Android blokira pojavljivanje ove kategorije obavještenja na ovom uređaju"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Na vaš zahtjev, Android blokira pojavljivanje ove grupe obavještenja na ovom uređaju"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kategorije"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Ostalo"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3154,6 +3220,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Osim korištenja otiska prsta za otključavanje, uređaj možete dodatno zaštiti zahtijevanjem unošenja lozinke prije nego što se pokrene. Dok se uređaj ne pokrene, ne može primati pozive, poruke ili obavještenja, uključujući alarme.\n\nOvim se štite podaci na izgubljenim ili ukradenim uređajima. Želite li da se za pokretanje uređaja zahtijeva lozinka?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Da"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ne"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Da"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ne"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Zahtijevati PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Zahtijevati unos obrasca?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Zahtijevati lozinku?"</string>
@@ -3289,7 +3357,7 @@
<string name="high_power_off" msgid="3393904131961263278">"Optimizacija potrošnje baterije"</string>
<string name="high_power_system" msgid="7362862974428225301">"Optimizacija baterije je nedostupna"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Ne primjenjuje se optimizacija baterije. Tako se baterija može brže isprazniti."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Želite li dopustiti aplikaciji da uvijek radi u pozadini?"</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Dopustiti aplikaciji da uvijek radi u pozadini?"</string>
<string name="high_power_prompt_body" msgid="1031422980602565049">"Ako aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g> dopustite da uvijek radi u pozadini, može se skratiti vijek trajanja baterije. \n\nTo možete promijeniti kasnije ako odete u Postavke > Aplikacije i obavještenja."</string>
<string name="battery_summary" msgid="8044042095190688654">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> iskorištenosti od posljednje potpune napunjenosti"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Upravljanje napajanjem"</string>
@@ -3434,9 +3502,10 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Trenutni korisnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Prijavljeni ste kao korisnik <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> je zadana aplikacija"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"UKLJUČENO/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"ISKLJUČENO"</string>
- <string name="backup_disabled" msgid="485189128759595412">"Pravljenje sigurnosnih kopija je onemogućeno"</string>
+ <string name="backup_disabled" msgid="485189128759595412">"Izrada sigurnosnih kopija je onemogućena"</string>
<string name="about_summary" msgid="924181828102801010">"Ažurirano na Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
<string name="disabled_by_policy_title" msgid="627023216027648534">"Radnja nije dozvoljena"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Nije moguće promijeniti jačinu zvuka"</string>
@@ -3444,6 +3513,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS poruka nije dozvoljena"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kamera nije dozvoljena"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Snimak ekrana nije dozvoljen"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Nije moguće isključiti sigurnosne kopije"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Ova radnja je onemogućena. Da saznate više, obratite se administratoru organizacije."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Više detalja"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Vaš administrator može pratiti i upravljati aplikacijama i podacima povezanim s vašim radnim profilom, uključujući postavke, odobrenja, korporativni pristup, aktivnost na mreži i informacije o lokaciji uređaja."</string>
@@ -3460,16 +3530,18 @@
<string name="condition_zen_title" msgid="2679168532600816392">"Opcija Ne ometaj je uključena (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
<string name="condition_battery_title" msgid="3272131008388575349">"Čuvar baterije je uključen"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performanse su smanjenje. Usluge određivanja lokacije i pozadinski podaci su isključeni."</string>
- <string name="condition_cellular_title" msgid="1327317003797575735">"Mobilni podaci su isključeni"</string>
+ <string name="condition_cellular_title" msgid="1327317003797575735">"Prijenos podataka na mobilnoj mreži je isključen"</string>
<string name="condition_cellular_summary" msgid="1818046558419658463">"Internet je dostupan samo putem Wi-Fi mreže."</string>
<string name="condition_bg_data_title" msgid="2483860304802846542">"Ušteda podataka je uključena"</string>
<string name="condition_bg_data_summary" msgid="656957852895282228">"Pozadinski podaci su dostupni samo putem Wi-Fi mreže. Ovo može uticati na rad nekih aplikacija ili usluga kada Wi-Fi nije dostupan."</string>
<string name="condition_work_title" msgid="7293722361184366648">"Radni profil je isključen"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Isključene su aplikacije, pozadinska sinhronizacija i ostale funkcije povezane s vašim radnim profilom."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Postavite plan za Noćno svjetlo"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Obojite ekran u narandžasto da lakše zaspite"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Noćno svjetlo je uključeno"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ekran je obojen u žutosmeđu nijansu. To vam može pomoći da zaspite."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Prijedlozi za vas"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Prijedlozi"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"još <xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Još <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3493,12 +3565,12 @@
<string name="camera_laser_sensor_switch" msgid="8913588990743234440">"Laserski senzor kamere"</string>
<string name="ota_disable_automatic_update" msgid="2319639631655915050">"Automatsko ažuriranje sistema"</string>
<string name="usage" msgid="2977875522080448986">"Potrošnja"</string>
- <string name="cellular_data_usage" msgid="2155683719898158203">"Prijenos mobilnih podataka"</string>
+ <string name="cellular_data_usage" msgid="2155683719898158203">"Prijenos podataka na mobilnoj mreži"</string>
<string name="wifi_data_usage" msgid="686754111095324306">"Potrošnja Wi-Fi podataka"</string>
<string name="ethernet_data_usage" msgid="5108764537574354616">"Prijenos podataka putem Etherneta"</string>
<string name="wifi" msgid="1081550856200013637">"Wi-Fi"</string>
<string name="ethernet" msgid="6600095783781389720">"Ethernet"</string>
- <string name="cell_data_template" msgid="405684854174361041">"<xliff:g id="AMOUNT">^1</xliff:g> prenesenih mobilnih podataka"</string>
+ <string name="cell_data_template" msgid="405684854174361041">"<xliff:g id="AMOUNT">^1</xliff:g> putem prijenosa podataka"</string>
<string name="wifi_data_template" msgid="6265570748799357386">"<xliff:g id="AMOUNT">^1</xliff:g> Wi-Fi podataka"</string>
<string name="ethernet_data_template" msgid="5782476509881033590">"<xliff:g id="AMOUNT">^1</xliff:g> ethernet podataka"</string>
<string name="cell_warning_only" msgid="763147658209027140">"Upozorenje o podacima <xliff:g id="ID_1">%1$s</xliff:g>"</string>
@@ -3578,6 +3650,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ništa"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Rangirani objekt nedostaje."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Rangirani objekt ne sadrži ovu tipku."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simuliraj ekran s obrezanom slikom"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Nema"</string>
<string name="special_access" msgid="3458780842491881155">"Poseban pristup aplikacijama"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> aplikacija može koristiti neograničen prijenos podataka</item>
@@ -3601,31 +3675,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Povezan s više uređaja"</string>
<string name="demo_mode" msgid="2798762752209330277">"Način demonstracije Sistemskog UI-a"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Pločice programera za brze postavke"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Mi smo tu da pomognemo"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Tu smo za vas 24 sata dnevno"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Tu smo za vas 24 sata dnevno"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Naš tim za podršku je tu da se pobrine za sve probleme"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Naš tim za podršku na raspolaganju je cijelog dana, svakog dana."</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Potražite pomoć ili se vratite u radno vrijeme podrške (po lokalnom vremenu):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Radno vrijeme za pružanje telefonske podrške (lokalno vrijeme)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Potražite pomoć ili istražite savjete i trikove"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Podrška za:"</string>
- <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Putujete u inostranstvo?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Mogući su troškovi za međunarodne pozive"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Pozovi"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Pokreni chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Istraživanje savjeta i trikova"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Pomoć i slanje povratnih informacija"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontaktirajte podršku korisnicima"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Prijavite se"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Ne možete se prijaviti?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Pošalji informacije o sistemu"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Ne prikazuj ponovo"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Tražite kao"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Dodaj račun"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Informacije o sistemu"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Trag prozora"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Površinsko praćenje"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Postavke radnog profila"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Pretraživanje kontakata"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Dozvolite svojoj organizaciji da pretražuje kontakte kako bi identificirala pozivaoce i kontakte"</string>
@@ -3644,11 +3695,11 @@
<item quantity="few"><xliff:g id="NUMBER">%s</xliff:g> sekunde</item>
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekundi</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Sačekajte ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Upravljanje prostorom za pohranu"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Radi lakšeg oslobađanja prostora za pohranu, upravitelj pohranom s vašeg uređaja uklanja sigurnosne kopije fotografija i videozapisa."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Ukloni fotografije i videozapise"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Upravitelj prostora za pohranu"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Koristi Upravitelja pohrane"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatski"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Ručno"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Oslobodite prostor odmah"</string>
@@ -3659,32 +3710,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Prelazak na Kameru"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Dodirivanje dvaput na dugme za uključivanje za brzo otvaranje kamere. Funkcionira na svakom ekranu."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Brzo otvorite kameru"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Dodirnite dugme za napajanje dvaput da otvorite kameru"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Okretanje kamere"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Snimajte selfije brže"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Uvrnite telefon dvaput za selfi način rada"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Uvrnite tablet dvaput za selfi način rada"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Uvrnite uređaj dvaput za selfi način rada"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Kliknite dvaput za provjeru telefona"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Kliknite dvaput za provjeru tableta"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Kliknite dvaput za provjeru uređaja"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Provjera vremena, ikona obavještenja i drugih informacija kad se dvaput dodirne ekran."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Provjera obavještenja kada je ekran isključen"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Provjera telefona kad se podigne"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Podignite za provjeru tableta"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Podignite za provjeru uređaja"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Provjera vremena, ikona obavještenja i drugih informacija kad se telefon podigne."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Provjera vremena, ikona obavještenja i drugih informacija kad se tablet podigne."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Provjera vremena, ikona obavještenja i drugih informacija kad se uređaj podigne."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Provjerite obavještenja dok je ekran isključen"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Prevlačenje prstom za obavještenja"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Prevlačenje otiska prsta"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Provjera obavještenja prevlačenjem prstom prema dolje po senzoru za otisak prsta na poleđini telefona."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Provjera obavještenja prevlačenjem prstom prema dolje po senzoru za otisak prsta na poleđini tableta."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Provjera obavještenja prevlačenjem prstom prema dolje po senzoru za otisak prsta na poleđini uređaja."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Brzo pregledajte obavještenja"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Prevucite prstom prema dolje na senzoru za otisak prsta"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Uključeno"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Isključeno"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Program za učitavanje operativnog sistema je već otključan"</string>
@@ -3719,7 +3763,7 @@
<string name="enterprise_privacy_enterprise_data" msgid="2773968662865848413">"Podaci koji su povezani s vašim računom, kao što su e-pošta ili kalendar"</string>
<string name="enterprise_privacy_installed_packages" msgid="2313698828178764590">"Spisak aplikacija na vašem uređaju"</string>
<string name="enterprise_privacy_usage_stats" msgid="4398411405572759370">"Utrošeno vrijeme i podaci za svaku aplikaciju"</string>
- <string name="enterprise_privacy_network_logs" msgid="161722817268849590">"Najskoriji zapis mrežnog prometa"</string>
+ <string name="enterprise_privacy_network_logs" msgid="161722817268849590">"Najskoriji zapis mrežnog saobraćaja"</string>
<string name="enterprise_privacy_bug_reports" msgid="843225086779037863">"Najnoviji izvještaj o greškama"</string>
<string name="enterprise_privacy_security_logs" msgid="5377362481617301074">"Najnoviji zapisnik o aktivnostima"</string>
<string name="enterprise_privacy_none" msgid="7706621148858381189">"Nema"</string>
@@ -3821,8 +3865,26 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Upoznajte se s novim tabletom"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Upoznajte se s novim uređajem"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ova funkcija nije dostupna na ovom uređaju"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Prisilno omogući potpuno GNSS mjerenje"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Prati sve povezane foto sfere i frekvencije GNSS-a bez ciklusa rada"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Uvijek prikaži dijaloški okvir za pad aplikacije"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Prikaži dijaloški prozor pri svakom padu aplikacije"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Pristup direktorijima"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"pristup direktorijima"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-cs/arrays.xml b/res/values-cs/arrays.xml
index d2efa01..88c07a6 100644
--- a/res/values-cs/arrays.xml
+++ b/res/values-cs/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Stisknutí tlačítka"</item>
<item msgid="1624323946324499595">"PIN ze sdíleného zařízení"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 h"</item>
<item msgid="5198271470953124739">"Bez časového limitu"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (výchozí)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Nízká"</item>
<item msgid="2042505933058940139">"Slabý"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Starší než 60 dní"</item>
<item msgid="5692284879054004388">"Starší než 90 dní"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Použít předvolbu sítě"</item>
+ <item msgid="8745603368609022803">"Považovat za měřenou síť"</item>
+ <item msgid="2266114985518865625">"Považovat za neměřenou síť"</item>
+ </string-array>
</resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 52b95d3..362118d 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -172,6 +172,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Vaše zařízení"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Spárovat nové zařízení"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Povolte zařízení spárovat se a propojit se zařízeními Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Zakázat vyzvánění v hovorovém pásmu"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Nepřehrávat vlastní vyzváněcí tóny telefonu v náhlavních soupravách Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Momentálně připojeno"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Uložená zařízení"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Přidat zařízení"</string>
@@ -197,7 +199,7 @@
<string name="proxy_error_dismiss" msgid="4993171795485460060">"OK"</string>
<string name="proxy_error_invalid_host" msgid="6865850167802455230">"Zadaný název hostitele není platný."</string>
<string name="proxy_error_invalid_exclusion_list" msgid="678527645450894773">"Seznam vyloučení, který jste vytvořili, má nesprávný formát. Zadejte seznam názvů domén k vyloučení a jednotlivé názvy oddělte čárkami."</string>
- <string name="proxy_error_empty_port" msgid="5539106187558215246">"Je třeba vyplnit pole portu."</string>
+ <string name="proxy_error_empty_port" msgid="5539106187558215246">"Vyplňte pole portu."</string>
<string name="proxy_error_empty_host_set_port" msgid="2451694104858226781">"Pokud je pole hostitel prázdné, musí být prázdné i pole port."</string>
<string name="proxy_error_invalid_port" msgid="5988270202074492710">"Zadaný port není platný."</string>
<string name="proxy_warning_limited_support" msgid="7229337138062837422">"Proxy server protokolu HTTP může používat prohlížeč, ale nesmí jej používat další aplikace."</string>
@@ -334,6 +336,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Nastavit datum"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Seřadit abecedně"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Seřadit podle časového pásma"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> začíná <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Letní čas"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standardní čas"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Časové pásmo podle oblasti"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Časová pásma s pevným posunem"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Datum"</string>
<string name="time_picker_title" msgid="483460752287255019">"Čas"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automaticky zamknout za"</string>
@@ -344,6 +351,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Zpráva na zamčené obrazovce"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Aktivovat widgety"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Zakázáno administrátorem"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Zobrazit možnost zamknutí"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Zobrazí vypínač, který vypíná prodloužený přístup a odemykání otiskem prstu."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Žádná"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Např. Tomův Android."</string>
@@ -352,6 +361,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Informace o profilu"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Účty"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Poloha"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Používat polohu"</string>
<string name="account_settings_title" msgid="626177544686329806">"Účty"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Zabezpečení a poloha"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Šifrování a identifikační údaje"</string>
@@ -465,10 +475,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Zadané heslo je správné, avšak data jsou poškozena.\n\nChcete-li tablet nadále používat, je nutné v něm obnovit tovární nastavení. Až budete tablet po obnově znovu nastavovat, bude možné obnovit veškerá data, která byla zálohována na váš účet Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Zadané heslo je správné, avšak data jsou poškozena.\n\nChcete-li telefon nadále používat, je nutné v něm obnovit tovární nastavení. Až budete telefon po obnově znovu nastavovat, bude možné obnovit veškerá data, která byla zálohována na váš účet Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Přepnout metodu zadávání"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Nastavení zámku obrazovky"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Ochraňte své zařízení"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Použijte otisk prstu"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Odemykání pomocí otisku prstu"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Nastavte bezpečný zámek obrazovky"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Zabraňte ostatním v používání vašeho tabletu"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Zabraňte ostatním v používání vašeho zařízení"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Zabraňte ostatním v používání vašeho telefonu"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Odemknutí otiskem prstu"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Odemykání pomocí otisku prstu"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Odemykání pomocí otisku prstu"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Odemykání pomocí otisku prstu"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Zámek obrazovky"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Zvolte pracovní zámek"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Ochraňte svůj tablet"</string>
@@ -713,6 +727,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Jako telefon pro hlasitý poslech"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Pro hudbu a média"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Zapamatovat nastavení"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maximum připojených audiozařízení Bluetooth"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Vyberte maximální počet připojených audiozařízení Bluetooth"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Odeslat"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Povolit bezdrátové zobrazení"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"V okolí nebyla nalezena žádná zařízení."</string>
@@ -727,6 +743,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Název"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Přihlásit se"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mb/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"Aplikace <xliff:g id="REQUESTER">%s</xliff:g> chce zapnout Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"Aplikace <xliff:g id="REQUESTER">%s</xliff:g> chce vypnout Wi-Fi"</string>
@@ -744,6 +761,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Zapnout Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Používat Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Nastavení Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Umožňuje nastavit a spravovat přístupové body bezdrátové sítě"</string>
@@ -838,6 +856,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Heslo"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Zobrazovat heslo"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Vybrat pásmo přístupového bodu"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatické"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Pásmo 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Pásmo 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Nastavení IP adresy"</string>
@@ -850,12 +869,12 @@
<string name="wifi_do_not_validate_eap_server" msgid="4266754430576348471">"Neověřovat"</string>
<string name="wifi_do_not_validate_eap_server_warning" msgid="1787190245542586660">"Není určen žádný certifikát. Připojení nebude soukromé."</string>
<string name="wifi_ssid_too_long" msgid="3474753269579895244">"Název sítě je příliš dlouhý."</string>
- <string name="wifi_no_domain_warning" msgid="5223011964091727376">"Je třeba zadat doménu."</string>
+ <string name="wifi_no_domain_warning" msgid="5223011964091727376">"Zadejte doménu."</string>
<string name="wifi_wps_available_first_item" msgid="4422547079984583502">"WPS je k dispozici"</string>
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS je k dispozici)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Zadejte heslo sítě"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Síť Wi-Fi operátora"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Připojit přes: <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Připojit přes: <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Aplikace <xliff:g id="APP_NAME">%1$s</xliff:g> chce zapnout vyhledávání sítí (kvůli lepšímu určení polohy i kvůli jiným účelům) a hledat sítě i v případě, že je vypnut modul Wi-Fi.\n\nChcete tuto možnost povolit všem aplikacím, které chtějí vyhledávat sítě?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Chcete-li toto nastavení vypnout, přejděte do rozbalovací nabídky Rozšířené."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Povolit"</string>
@@ -933,10 +952,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"Pásmo přístupového bodu"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Pomocí hotspotu můžete vytvořit síť Wi‑Fi pro další zařízení. Hotspot poskytuje připojení k internetu pomocí vašeho mobilního datového připojení. Mohou být účtovány dodatečné poplatky za mobilní data."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Aplikace mohou vytvořit hotspot ke sdílení obsahu s okolními zařízeními."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Automatické vypnutí hotspotu"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Pokud nebudou připojena žádná zařízení, hotspot Wi-Fi se vypne"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Zapínání hotspotu…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Vypínání hotspotu…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"Síť <xliff:g id="NETWORK_SSID">%1$s</xliff:g> je aktivní"</string>
@@ -947,7 +964,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Volání přes Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Zapněte volání přes Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Namísto mobilní sítě použijte Wi-Fi"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Rozšiřte pokrytí voláním přes Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Předvolby volání"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Režim volání přes Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Předvolba pro roaming"</string>
@@ -985,6 +1002,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Nouzová adresa"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Použije se jako vaše poloha, pokud uskutečníte tísňové volání přes Wi-Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Další informace"</annotation>" o funkcích soukromého režimu DNS"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Obrazovka"</string>
<string name="sound_settings" msgid="5534671337768745343">"Zvuk"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Hlasitost"</string>
@@ -1201,6 +1219,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Typ mobilní sítě"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informace operátora"</string>
<string name="status_data_state" msgid="5503181397066522950">"Stav mobilní sítě"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Stav služby"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Síla signálu"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1334,6 +1353,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Nové úložiště <xliff:g id="NAME">^1</xliff:g> již funguje. \n\nChcete-li do tohoto zařízení přesunout fotky, soubory a data aplikací, přejděte do Nastavení > Úložiště."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Přesuňte aplikaci <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Přesunutí aplikace <xliff:g id="APP">^1</xliff:g> a jejích dat do úložiště <xliff:g id="NAME_0">^2</xliff:g> bude trvat jen chvíli. Aplikaci bude možné používat až po dokončení přesunu. \n\nÚložiště <xliff:g id="NAME_1">^2</xliff:g> během přesunu neodpojujte."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Chcete-li přesunout data, je třeba odemknout uživatele <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Probíhá přesun aplikace <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Úložiště <xliff:g id="NAME">^1</xliff:g> během přesunu nevysouvejte. \n\nAplikace <xliff:g id="APP">^2</xliff:g> bude v tomto zařízení k dispozici až po dokončení přesunu."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Zrušit přesun"</string>
@@ -1386,19 +1406,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Lze resetovat síť, aplikace nebo zařízení"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Resetovat Wi-Fi, data a Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Budou resetována nastavení všech sítí, včetně následujících:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobilní data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Resetovat také eSIM karty"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Vymazat všechny eSIM karty v telefonu. Budete muset kontaktovat operátora a eSIM karty stáhnout znovu. Tímto krokem nebude zrušen mobilní tarif."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Obnovit nastavení"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Chcete resetovat všechna nastavení sítí? Tuto akci nelze vrátit zpět."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Obnovit nastavení"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Resetovat?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Pro tohoto uživatele resetování sítě není k dispozici"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Nastavení sítí bylo resetováno"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM karty nelze resetovat"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIM karty kvůli chybě nelze resetovat."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Vymazat data (tovární reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Tato akce smaže veškerá data z "<b>"interního úložiště"</b>" tabletu, mj. i:\n\n"<li>"váš účet Google"</li>\n<li>"nastavení a data systému a aplikací"</li>\n<li>"stažené aplikace"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Tato akce smaže veškerá data z "<b>"interního úložiště"</b>" telefonu, mj. i:\n\n"<li>"váš účet Google"</li>\n<li>"nastavení a data systému a aplikací"</li>\n<li>"stažené aplikace"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Aktuálně jste přihlášeni k těmto účtům:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"V tomto zařízení jsou přítomni další uživatelé.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"hudba"</li>\n<li>"fotky"</li>\n<li>"další uživatelské údaje"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operátoři na eSIM kartě"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Tímto krokem nebude zrušen mobilní tarif."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Chcete-li smazat také hudbu, obrázky a další uživatelská data, je potřeba vymazat "<b>"úložiště USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Chcete-li smazat také hudbu, obrázky a další uživatelská data, je potřeba vymazat "<b>"kartu SD"</b>"."</string>
@@ -1458,21 +1482,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Připojte se prosím k internetu."</string>
<string name="location_title" msgid="1029961368397484576">"Moje poloha"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Umístění pracovního profilu"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Režim určování polohy"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Vysoká přesnost"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Úspora baterie"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Pouze zařízení"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Poloha vypnuta"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Oprávnění na úrovni aplikace"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Nedávné žádosti o určení polohy"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"V poslední době žádné aplikace o polohu nepožádaly."</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Služby určování polohy"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Vysoké využívání baterie"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Nízké využívání baterie"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Určování polohy"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"K určování polohy používat GPS, Wi-Fi, Bluetooth nebo mobilní sítě"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"K určování polohy používat Wi-Fi, Bluetooth nebo mobilní sítě"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"K určování polohy používat GPS a senzory zařízení"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Skenování"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Vyhledávání Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Umožňuje zlepšit přesnost určování polohy tím, že systémové aplikace a služby budou vyhledávat sítě Wi-Fi neustále."</string>
@@ -1494,6 +1509,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Zdroje polohy"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Informace o tabletu"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Informace o telefonu"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Informace o zařízení"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Informace o emulovaném zařízení"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Zobrazí právní informace, stav a verzi softwaru"</string>
<string name="legal_information" msgid="5769301644270604095">"Právní informace"</string>
@@ -1601,6 +1617,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Zobrazit všechny aplikace (<xliff:g id="COUNT">%1$d</xliff:g>)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tablet a osobní údaje jsou zranitelnější vůči útoku ze strany neznámých aplikací. Instalací aplikací z tohoto zdroje vyjadřujete souhlas s tím, že nesete odpovědnost za případné poškození tabletu nebo ztrátu dat, které jejich používání může způsobit."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefon a osobní údaje jsou zranitelnější vůči útoku ze strany neznámých aplikací. Instalací aplikací z tohoto zdroje vyjadřujete souhlas s tím, že nesete odpovědnost za případné poškození telefonu nebo ztrátu dat, které jejich používání může způsobit."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Zařízení a osobní údaje jsou zranitelnější vůči útoku ze strany neznámých aplikací. Instalací aplikací z tohoto zdroje vyjadřujete souhlas s tím, že nesete odpovědnost za případné poškození zařízení nebo ztrátu dat, které jejich používání může způsobit."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Upřesnit nastavení"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Povolit další možnosti nastavení"</string>
<string name="application_info_label" msgid="5736524913065714880">"O aplikaci"</string>
@@ -1902,6 +1919,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Toto nastavení může mít dopad na výkon"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Kliknutí po zastavení kurzoru"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Prodleva před kliknutím"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Používat službu"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Používat korekci barev"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Používat titulky"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ZAPNUTO"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"VYPNUTO"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Zobrazit v rychlém nastavení"</string>
@@ -2029,7 +2049,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Zbývá <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> do nabití"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktivita na pozadí"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Omezené"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Povolit aplikaci spouštění na pozadí"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Když aplikace není používána, může běžet na pozadí"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Když aplikace není používána, je její aktivita na pozadí omezena"</string>
@@ -2072,14 +2092,33 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Buzení zařízen na pozadí"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Časté žádosti o polohu"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Počet aplikací, které se nechovají správně: <xliff:g id="NUMBER">%1$d</xliff:g>"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Baterie pracuje bez problémů"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikace se chovají normálně"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Nízká kapacita baterie"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Baterie není schopna zajistit dobrou výdrž"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Zapněte chytrého správce baterie"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Zapnutím optimalizujete využití baterie"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Zapněte režim Slabá baterie"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Prodlužte životnost baterie"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Režim Slabá baterie je zapnutý"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Některé funkce jsou omezeny"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefon byl intenzivně využíván"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet byl intenzivně využíván"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Zařízení bylo intenzivně využíváno"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Od posledního úplného nabití bylo zařízení využíváno asi <xliff:g id="HOUR">%1$s</xliff:g>"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Váš telefon byl intenzivně využíván, což mělo za následek velkou spotřebu baterie. Baterie se chová normálně.\n\n Od posledního úplného nabití byl telefon využíván asi <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Celkové využití:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Váš tablet byl intenzivně využíván, což mělo za následek velkou spotřebu baterie. Baterie se chová normálně.\n\n Od posledního úplného nabití byl telefon využíván asi <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Celkové využití:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Vaše zařízení bylo intenzivně využíváno, což mělo za následek velkou spotřebu baterie. Baterie se chová normálně.\n\n Od posledního úplného nabití bylo zařízení využíváno asi <xliff:g id="HOUR">%1$s</xliff:g>.\n\n Celkové využití:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Chytrý správce baterie"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Automatická správa baterie"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automaticky přizpůsobovat využití energie aplikacemi podle používání"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Omezené aplikace"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="few">%1$d aplikace</item>
+ <item quantity="many">%1$d aplikace</item>
+ <item quantity="other">%1$d aplikací</item>
+ <item quantity="one">%1$d aplikace</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Zastavit aplikaci?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Telefon nemůže normálně šetřit baterii, protože mu aplikace <xliff:g id="APP">%1$s</xliff:g> znemožňuje přejít do režimu spánku.\n\nTento problém můžete zkusit vyřešit tím, že aplikaci ukončíte.\n\nPokud se to bude dít neustále, kvůli prodloužení výdrže baterie bude aplikaci možná nutné odinstalovat."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Tablet nemůže normálně šetřit baterii, protože mu aplikace <xliff:g id="APP">%1$s</xliff:g> znemožňuje přejít do režimu spánku.\n\nTento problém můžete zkusit vyřešit tím, že aplikaci ukončíte.\n\nPokud se to bude dít neustále, kvůli prodloužení výdrže baterie bude aplikaci možná nutné odinstalovat."</string>
@@ -2188,6 +2227,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimalizace aplikací"</string>
<string name="battery_saver" msgid="8172485772238572153">"Spořič baterie"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Používat spořič baterie"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Zapnout automaticky"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nikdy"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"při <xliff:g id="PERCENT">%1$s</xliff:g> baterie"</string>
@@ -2375,8 +2415,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Nastaly potíže se synchronizací. Služba bude brzy obnovena."</string>
<string name="add_account_label" msgid="7811707265834013767">"Přidat účet"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Pracovní profil zatím není k dispozici"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Pracovní režim"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Bude fungovat pracovní profil, včetně aplikací, synchronizace na pozadí a souvisejících funkcí."</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Pracovní profil"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Spravováno vaší organizací"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Aplikace a oznámení jsou vypnuta"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Odstranit pracovní profil"</string>
<string name="background_data" msgid="5779592891375473817">"Data na pozadí"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikace mohou kdykoli synchronizovat, odesílat a přijímat data."</string>
@@ -2408,6 +2449,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Chcete odebrat účet?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Odebráním účtu smažete z tabletu také všechny zprávy, kontakty a další data tohoto účtu."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Odebráním účtu smažete z telefonu také všechny zprávy, kontakty a další data tohoto účtu."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Odebráním účtu smažete ze zařízení také všechny jeho zprávy, kontakty a další data."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Administrátor tuto změnu zakázal"</string>
<string name="provider_label" msgid="7724593781904508866">"Zobrazit odběry"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2634,7 +2676,7 @@
<item quantity="other">Zkontrolovat certifikáty</item>
<item quantity="one">Zkontrolovat certifikát</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Uživatelé"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Více uživatelů"</string>
<string name="user_list_title" msgid="7937158411137563543">"Uživatelé a profily"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Přidat uživatele nebo profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Přidat uživatele"</string>
@@ -2826,7 +2868,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikace a oznámení"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Oprávnění, výchozí aplikace"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Uživatelé a účty"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Účty"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Výchozí aplikace"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Jazyky, čas, zálohování, aktualizace"</string>
<string name="search_results_title" msgid="1796252422574886932">"Nastavení"</string>
@@ -2857,7 +2901,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"nerušit, vyrušit, vyrušení, pauza"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"okolí, poloha, historie, hlášení"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"přesnost"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"účet"</string>
<string name="keywords_users" msgid="3434190133131387942">"omezení, omezit, omezeno"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"oprava textu, opravit, zvuk, vibrace, auto, jazyk, gesto, navrhnout, návrh, motiv, nevhodné, slovo, typ, emodži, mezinárodní"</string>
@@ -2881,6 +2924,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"síť, stav mobilní sítě, stav služby, síla signálu, typ mobilní sítě, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"sériové číslo, verze hardwaru"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"úroveň opravy zabezpečení androidu, verze základního pásma, verze jádra"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambientní displej, displej zámku obrazovky"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Nastavení štítku NFC pro Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Zapsat"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Klepnutím na štítek zahájíte zápis..."</string>
@@ -2926,6 +2970,7 @@
<item quantity="one">1 pravidlo</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Nerušit"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Zapněte funkci Nerušit"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Chování"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Povolit zvuky a vibrace pro"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Žádné zvuky"</string>
@@ -2935,8 +2980,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Zapnout automaticky"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatická pravidla"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatické pravidlo"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Nast. pravidel režimu Nerušit"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Omezit zvuky a vibrace v určitou dobu"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Ztlumit telefon v určitou dobu"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Nastavit pravidla režimu Nerušit"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Použít pravidlo"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Pouze prioritní"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Pouze budíky"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Úplné ticho"</string>
@@ -2944,12 +2990,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokovat vizuální vyrušení"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Povolit vizuální signály"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Přidat"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"ZAPNOUT"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"VYPNOUT"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Zapnout"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Zapnout"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Vypnout"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Režim Nerušit je zapnut do <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Režim Nerušit zůstane zapnut, dokud ho nevypnete"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Režim Nerušit byl automaticky zapnut pravidlem (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Režim Nerušit byl automaticky zapnut aplikací (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Pouze prioritní"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Zvuky pracovního profilu"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Použít zvuky osobního profilu"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvuky pracovního a osobního profilu jsou stejné"</string>
@@ -2965,6 +3014,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Vyzváněcí tóny"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Další zvuky a vibrace"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Oznámení"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Nedávno odeslané"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Rozšířená nastavení"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Pracovní oznámení"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Povolit puntíky s oznámením"</string>
@@ -2984,7 +3036,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Oznámení"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Kategorie oznámení"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Skupina kategorií oznámení"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Důležitost"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Chování"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Povolit zvuk"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Oznámení nikdy nezobrazovat"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Bez zvukového a vizuálního vyrušení"</string>
@@ -3002,6 +3054,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Střední důležitost"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Vysoká důležitost"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgentní důležitost"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Zobrazit oznámení"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asistent oznámení"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Přístup k oznámením"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Přístup k oznámením pracovního profilu je zablokován"</string>
@@ -3034,9 +3087,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Přístup při nastavení Nerušit"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"O přístup při nastavení Nerušit nepožádaly žádné nainstalované aplikace"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Načítání aplikací..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Oznámení této aplikace jsou v zařízení blokována systémem Android"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Tato kategorie oznámení je v zařízení blokována systémem Android"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Tato skupina oznámení je v zařízení blokována systémem Android"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Oznámení této aplikace jsou v zařízení na vaši žádost blokována systémem Android"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Tato kategorie oznámení je v zařízení na vaši žádost blokována systémem Android"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Tato skupina oznámení je v zařízení na vaši žádost blokována systémem Android"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kategorie"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Jiné"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3191,6 +3244,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Kromě odemykání otiskem prstu můžete toto zařízení dále ochránit tím, že před jeho spuštěním bude požadováno heslo. Před spuštěním zařízení nemůže přijímat hovory, zprávy ani oznámení, včetně budíků.\n\nTato funkce pomáhá chránit data ve ztracených nebo ukradených zařízeních. Má být před spuštěním zařízení vyžadováno heslo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ano"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ne"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ano"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ne"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Požadovat kód PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Požadovat gesto?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Požadovat heslo?"</string>
@@ -3349,21 +3404,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Odmítnout"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Nabíjení"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Nabít jen toto zařízení"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Zdroj napájení"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Připojené zařízení se bude nabíjet. Funguje pouze u zařízení, která podporují nabíjení přes USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Přenos souborů"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Přenos souborů do jiného zařízení"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Přenos fotek (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Přenést fotky nebo soubory, pokud MTP není podporováno (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Režim MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Toto zařízení se použije v režimu MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Účel připojení přes USB:"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Použití USB:"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Nabíjení zařízení"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Napájení"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Přenos souborů"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Přenos fotek (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Použití zařízení jako MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Zrcadlení SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Kontrola pozadí"</string>
<string name="background_check_title" msgid="4534254315824525593">"Úplný přístup k pozadí"</string>
@@ -3476,19 +3553,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Tapeta, režim spánku, velikost písma"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Po 10 minutách nečinnosti přejít do režimu spánku"</string>
<string name="memory_summary" msgid="8080825904671961872">"Přibližné využití paměti: <xliff:g id="USED_MEMORY">%1$s</xliff:g> z <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Aktuální uživatel: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Jste přihlášeni jako <xliff:g id="USER_NAME">%1$s</xliff:g>."</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> – nastaveno jako výchozí"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ZAPNUTO / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ZAP"</string>
<string name="location_off_summary" msgid="6474350053215707957">"VYPNUTO"</string>
<string name="backup_disabled" msgid="485189128759595412">"Zálohování bylo zakázáno"</string>
- <string name="about_summary" msgid="924181828102801010">"Aktualizováno na Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Akce není povolena."</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Hlasitost nelze změnit"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Volání není povoleno"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Zprávy SMS nejsou povoleny"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Použití fotoaparátu není povoleno"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Uložení snímku obrazovky není povoleno"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Zálohy nelze vypnout"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Tato akce je zakázána. Další informace vám sdělí administrátor vaší organizace."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Další podrobnosti"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administrátor může sledovat a spravovat aplikace a data přidružená k vašemu pracovnímu profilu, včetně nastavení, oprávnění, firemního přístupu, aktivity v síti a informací o poloze zařízení."</string>
@@ -3502,7 +3582,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Přenosný hotspot Wi-Fi <xliff:g id="ID_1">%1$s</xliff:g> je aktivní. Připojení k Wi-Fi z tohoto zařízení je vypnuto."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Režim Letadlo je zapnutý"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Připojení pomocí Wi-Fi, Bluetooth a mobilní sítě je vypnuto. V tuto chvíli nelze volat ani se připojit k internetu."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Režim Nerušit je zapnutý (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Spořič baterie je zapnutý"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Výkon je omezen. Služby určování polohy a data na pozadí jsou vypnuta."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobilní data jsou vypnuta"</string>
@@ -3512,9 +3593,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Pracovní profil je vypnutý"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Aplikace, synchronizace na pozadí a další funkce související s pracovním profilem jsou vypnuty."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Nastavení plánu Nočního režimu"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Pro snazší usínání obrazovku zbarvit do oranžova"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Každý večer automaticky zbarvit obrazovku do oranžova"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Noční režim je aktivní"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Obrazovka je tónována oranžově. Možná vám to pomůže usnout."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Navrženo pro vás"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Návrhy"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"a další (<xliff:g id="ID_1">%1$d</xliff:g>)"</string>
@@ -3627,6 +3709,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"žádné"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Objekt hodnocení chybí."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Objekt hodnocení tento klíč neobsahuje."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulovat displej s výřezem"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Žádné"</string>
<string name="special_access" msgid="3458780842491881155">"Přístup ke spec. aplikacím"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="few"><xliff:g id="COUNT">%d</xliff:g> aplikace mohou využívat neomezená data</item>
@@ -3651,31 +3735,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Připojeno k několika zařízením"</string>
<string name="demo_mode" msgid="2798762752209330277">"Ukázkový režim uživatelského rozhraní systému"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Dlaždice rychlého nastavení pro vývojáře"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Rádi vám pomůžeme"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Jsme tu pro vás non-stop"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Jsme tu pro vás non-stop"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Náš tým podpory vám pomůže vyřešit všechny problémy"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Náš tým podpory je vám neustále k dispozici"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Prostudujte si nápovědu nebo se sem vraťte v pracovní době (v místním čase):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Pracovní doba telefonické podpory (v místním čase)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Prozkoumejte nápovědu nebo si projděte tipy a triky"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Podpora pro zemi:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Trasování okna"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Trasování povrchu"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Cestujete do zahraničí?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Mohou být účtovány poplatky za mezinárodní volání"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Telefon"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Prozkoumat tipy a triky"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Vyhledat nápovědu a odeslat zpětnou vazbu"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontaktujte podporu"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Přihlásit se"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Nemůžete se přihlásit?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Odeslání systémových informací"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Příště již nezobrazovat"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Žádost bude odeslána pomocí účtu"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Přidat účet"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Systémové informace"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Nastavení pracovního profilu"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Vyhledávání kontaktů"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Povolit vyhledávání kontaktů organizací za účelem identifikace volajících a kontaktů"</string>
@@ -3697,11 +3759,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekund</item>
<item quantity="one">1 sekunda</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Odhadované čekání: ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Spravovat úložiště"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Správce úložiště vám pomůže uvolnit místo v úložišti tím, že ze zařízení odstraní zálohované fotky a videa."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Odstranit fotky a videa"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Správce úložiště"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Používat správce úložiště"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automaticky"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Ruční"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Uvolnit místo"</string>
@@ -3712,32 +3774,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Spuštění fotoaparátu"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Chcete-li rychle spustit fotoaparát, dvakrát stiskněte vypínač. Funguje to na všech obrazovkách."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Otevírejte fotoaparát rychle"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Otevírejte fotoaparát dvojím stisknutím vypínače"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Přepnutí fotoaparátu"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Foťte selfie rychleji"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Aktivujte režim selfie dvojím otočením telefonu"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Aktivujte režim selfie dvojím otočením tabletu"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Aktivujte režim selfie dvojím otočením zařízení"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Kontrola telefonu dvojitým klepnutím"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Kontrola tabletu dvojitým klepnutím"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Kontrola zařízení dvojitým klepnutím"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Chcete-li zobrazit čas, ikony oznámení a další informace, dvakrát klepněte na obrazovku."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Čtěte oznámení při vypnuté obrazovce"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Kontrola telefonu zvednutím"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Kontrola tabletu zvednutím"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Kontrola zařízení zvednutím"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Chcete-li zobrazit čas, ikony oznámení a další informace, zvedněte telefon."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Chcete-li zobrazit čas, ikony oznámení a další informace, zvedněte tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Chcete-li zobrazit čas, ikony oznámení a další informace, zvedněte zařízení."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Čtěte oznámení při vypnuté obrazovce"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Otisk prstu pro oznámení"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Přejeďte po otisku"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Chcete-li zkontrolovat oznámení, přejeďte prstem dolů po snímači otisků prstů na zadní straně telefonu."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Chcete-li zkontrolovat oznámení, přejeďte prstem dolů po snímači otisků prstů na zadní straně tabletu."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Chcete-li zkontrolovat oznámení, přejeďte prstem dolů po snímači otisků prstů na zadní straně zařízení."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Zobrazujte oznámení rychle"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Přejeďte dolů po snímači otisků prstů"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Zapnuto"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Vypnuto"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Zavaděč je již odemknut"</string>
@@ -3881,8 +3936,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Prohlédněte si svůj nový tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Prohlédněte si své nové zařízení"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Funkce v tomto zařízení není k dispozici"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Vynutit úplné měření GNSS"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Sledovat všechny konstelace a frekvence GNSS bez cyklického vypínání a zapínání"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Vždy zobrazit dialog o pádu"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Zobrazit dialog při každém pádu aplikace"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Přístup k adresářům"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"přístup k adresářům"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Můj telefon"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Můj tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Moje zařízení"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Účet"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Název zařízení"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Při řízení používat Bluetooth"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Při řízení automaticky zapnout Bluetooth"</string>
</resources>
diff --git a/res/values-en-rAU/arrays.xml b/res/values-en-rAU/arrays.xml
index 1e36841..2b3388b 100644
--- a/res/values-en-rAU/arrays.xml
+++ b/res/values-en-rAU/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push button"</item>
<item msgid="1624323946324499595">"PIN from peer device"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hour"</item>
<item msgid="5198271470953124739">"Never time out"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Default)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Poor"</item>
<item msgid="2042505933058940139">"Poor"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Over 60 days old"</item>
<item msgid="5692284879054004388">"Over 90 days old"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Use network preference"</item>
+ <item msgid="8745603368609022803">"Treat as metered"</item>
+ <item msgid="2266114985518865625">"Treat as unmetered"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index aa94d86..b2b8c90 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Your devices"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Pair new device"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Allow device to pair and connect to Bluetooth devices"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Disable in-band ringing"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Don’t play custom phone ringtones on Bluetooth headsets"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Currently connected"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Saved devices"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Add device"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Set date"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sort alphabetically"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sort by time zone"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> starts on <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"British Summer Time (also known as daylight savings time)"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standard time"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Time zone by region"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fixed offset time zones"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Date"</string>
<string name="time_picker_title" msgid="483460752287255019">"Time"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automatically lock"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lock screen message"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Enable widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disabled by admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Show lockdown option"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Display power button option that turns off extended access and fingerprint unlocking."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"None"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"e.g. Joe\'s Android."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profile info"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Accounts"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Location"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Use location"</string>
<string name="account_settings_title" msgid="626177544686329806">"Accounts"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Security & location"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encryption & credentials"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your tablet, you will need to perform a factory reset. When you set up your tablet after the reset, you\'ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your phone, you need to perform a factory reset. When you set up your phone after the reset, you’ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Switch input method"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Set screen lock"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protect your device"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Use fingerprint"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Set screen lock for security"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Prevent others from using your tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Prevent others from using your device"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Prevent others from using your phone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Unlock with fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Choose screen lock"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Choose work lock"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protect your tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"As speaker phone"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"For music and media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Remember settings"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maximum connected Bluetooth audio devices"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Select maximum number of connected Bluetooth audio devices"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Cast"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Enable wireless display"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"No nearby devices were found."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Name"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Sign in"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn on Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn off Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Turn on Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Use Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi settings"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Set up & manage wireless access points"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Show password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Select AP band"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP settings"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Enter your network password"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operator Wi‑Fi network"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"To turn this off, go to Advanced in the overflow menu."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -921,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android Hotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi Calling"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Turn on Wi-Fi Calling"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Use Wi-Fi instead of mobile network"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extend coverage by calling over Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Calling preference"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi Calling mode"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming preference"</string>
@@ -959,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Emergency Address"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Used as your location when you make an emergency call over Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Learn more"</annotation>" about Private DNS features"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Display"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sound"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1173,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobile network type"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator info"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobile network state"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Service status"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal strength"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1306,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Your new <xliff:g id="NAME">^1</xliff:g> is working. \n\nTo move photos, files and app data to this device, go to Settings > Storage."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Move <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Moving <xliff:g id="APP">^1</xliff:g> and its data to <xliff:g id="NAME_0">^2</xliff:g> will take only a few moments. You won\'t be able to use the app until the move is complete. \n\nDon\'t remove the <xliff:g id="NAME_1">^2</xliff:g> during the move."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"To move data you need to unlock user <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Moving <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Don\'t remove the <xliff:g id="NAME">^1</xliff:g> during the move. \n\nThe <xliff:g id="APP">^2</xliff:g> app on this device won\'t be available until the move is complete."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancel move"</string>
@@ -1358,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Network, apps or device can be reset"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reset Wi-Fi, mobile & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"This will reset all network settings, including:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobile data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Also reset eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Erase all eSIMs on the phone. You’ll have to contact your operator to re-download your eSIMs. This will not cancel your mobile service plan."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reset settings"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reset all network settings? You can\'t undo this action!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reset settings"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reset?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Network reset is not available for this user"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Network settings have been reset"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Can\'t reset eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"The eSIMs can’t be reset due to an error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Erase all data (factory reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"This will erase all data from your tablet\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"This will erase all data from your phone\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"You are currently signed in to the following accounts:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"There are other users present on this device.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Music"</li>\n<li>"Photos"</li>\n<li>"Other user data"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operators on eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"This will not cancel your mobile service plan."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"To clear music, pictures and other user data, the "<b>"USB storage"</b>" needs to be erased."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"To clear music, pictures and other user data, the "<b>"SD card"</b>" needs to be erased."</string>
@@ -1430,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Please connect to the internet"</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Location for work profile"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"High accuracy"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Battery saving"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Device only"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Location off"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"App-level permissions"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Recent location requests"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"No apps have requested location recently"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Location services"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"High battery use"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Low battery use"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Location mode"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Use GPS, Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Use Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Use GPS and device sensors to determine location"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanning"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi scanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Improve location by allowing system apps and services to detect Wi‑Fi networks at any time."</string>
@@ -1466,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Location sources"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"About tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"About phone"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"About device"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"About emulated device"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"View legal info, status, software version"</string>
<string name="legal_information" msgid="5769301644270604095">"Legal information"</string>
@@ -1573,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"See all <xliff:g id="COUNT">%1$d</xliff:g> apps"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Your tablet and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your tablet or loss of data that may result from their use."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Your phone and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your phone or loss of data that may result from their use."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Your device and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your device or loss of data that may result from their use."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Advanced settings"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Enable more settings options"</string>
<string name="application_info_label" msgid="5736524913065714880">"App info"</string>
@@ -1872,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"May affect performance"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Click after cursor stops moving"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Delay before click"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Use service"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Use colour correction"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Use captions"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ON"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"OFF"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Show in Quick Settings"</string>
@@ -1985,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> remaining"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> to charge"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Background activity"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricted"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Allow the app to run in the background"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"App can run in the background when not in use"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"App\'s background activity is limited when not in use"</string>
@@ -2030,10 +2052,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> apps misbehaving"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"Battery is in good shape"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Apps are behaving normally"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Low battery capacity"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Battery can\'t provide good battery life"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Turn on smart battery manager"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Turn on to optimise battery usage"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Turn on Low Battery Mode"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Extend your battery life"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Low Battery Mode is on"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Some features are limited"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Phone used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Device used heavily"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"About <xliff:g id="HOUR">%1$s</xliff:g> used since last full charge"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Your phone was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your phone was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Smart battery manager"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Auto-manage battery"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatically adjust power usage by apps based on usage"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Restricted apps"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d apps</item>
+ <item quantity="one">%1$d app</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Stop app?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Your phone can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your phone awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Your tablet can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your tablet awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
@@ -2142,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Media server"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"App optimisation"</string>
<string name="battery_saver" msgid="8172485772238572153">"Battery Saver"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Use Battery Saver"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Turn on automatically"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Never"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"at <xliff:g id="PERCENT">%1$s</xliff:g> battery"</string>
@@ -2329,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sync is currently experiencing problems. It will be back shortly."</string>
<string name="add_account_label" msgid="7811707265834013767">"Add account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Work profile isn\'t available yet"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work mode"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Allow work profile to function, including apps, background sync and related features"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work profile"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Managed by your organisation"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apps and notifications are off"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remove work profile"</string>
<string name="background_data" msgid="5779592891375473817">"Background data"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apps can sync, send and receive data at any time"</string>
@@ -2362,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Remove account?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Removing this account will delete all of its messages, contacts and other data from the tablet!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Removing this account will delete all of its messages, contacts and other data from the phone!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Removing this account will delete all of its messages, contacts and other data from the device."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"This change isn\'t allowed by your admin"</string>
<string name="provider_label" msgid="7724593781904508866">"Push subscriptions"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2580,7 +2624,7 @@
<item quantity="other">Check certificates</item>
<item quantity="one">Check certificate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Users"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Multiple users"</string>
<string name="user_list_title" msgid="7937158411137563543">"Users & profiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Add user or profile"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Add user"</string>
@@ -2770,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps & notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissions, default apps"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Users & accounts"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Accounts"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Default apps"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Languages, time, backup, updates"</string>
<string name="search_results_title" msgid="1796252422574886932">"Settings"</string>
@@ -2801,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"don\'t disturb, interrupt, interruption, break"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, location, history, reporting"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"accuracy"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restrict, restricted"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"text correction, correct, sound, vibrate, auto, language, gesture, suggest, suggestion, theme, offensive, word, type, emoji, international"</string>
@@ -2825,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"network, mobile network state, service state, signal strength, mobile network type, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serial number, hardware version"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, baseband version, kernel version"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient display, Lock screen display"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Set up Wi-Fi NFC Tag"</string>
<string name="write_tag" msgid="8571858602896222537">"Write"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
@@ -2868,6 +2914,7 @@
<item quantity="one">1 rule</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Do Not Disturb"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Turn on Do Not Disturb"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Behaviour"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Allow sounds & vibrations from"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"No sound"</string>
@@ -2877,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Turn on automatically"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatic rules"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatic rule"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Set Do Not Disturb rules"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limit sounds & vibrations at certain times"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silence phone at certain times"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Set do not disturb rules"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Use rule"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Priority only"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
@@ -2886,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Allow visual signals"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Add"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"TURN ON NOW"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"TURN OFF NOW"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Turn on"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Turn on now"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Turn off now"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Do Not Disturb is on until <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Do Not Disturb will stay on until you turn it off"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Do Not Disturb was automatically turned on by a rule (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Do Not Disturb was automatically turned on by an app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priority only"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -2907,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtones"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Other sounds and vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Recently sent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Advanced"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work notifications"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Allow notification dots"</string>
@@ -2926,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"App notifications"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Notification category"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Notification category group"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importance"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Behaviour"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Allow sound"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Never show notifications"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"No sound or visual interruption"</string>
@@ -2944,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Medium importance"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"High importance"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgent importance"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Show notifications"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Notification assistant"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Notification access"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Access to work profile notifications is blocked"</string>
@@ -2974,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Do Not Disturb access"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"No installed apps have requested Do Not Disturb access"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Loading apps..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android is blocking this app\'s notifications from appearing on this device"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android is blocking this category of notifications from appearing on this device"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android is blocking this group of notifications from appearing on this device"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"At your request, Android is blocking this app\'s notifications from appearing on this device"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"At your request, Android is blocking this category of notifications from appearing on this device"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"At your request, Android is blocking this group of notifications from appearing on this device"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categories"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Other"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"In addition to using your fingerprint to unlock your device, you can further protect this device by requiring your password before it starts up. Until the device starts up, it can’t receive calls, messages or notifications, including alarms.\n\nThis helps protect data on lost or stolen devices. Require password to start your device?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Require PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Require pattern?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Require password?"</string>
@@ -3267,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Decline"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charge this device"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Just charge this device"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Supply power"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charge the connected device. Works only with devices that support USB charging."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transfer files"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfer files to another device"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transfer photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transfer photos or files if MTP is not supported (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Use device as MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Use this device as MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Use USB to"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Use USB for"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Charging this device"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Supplying power"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferring files"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferring photos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Using device as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Background check"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full background access"</string>
@@ -3390,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Wallpaper, sleep, font size"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sleep after 10 minutes of inactivity"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg <xliff:g id="USED_MEMORY">%1$s</xliff:g> of <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> memory used"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Current user: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Signed in as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup disabled"</string>
- <string name="about_summary" msgid="924181828102801010">"Updated to Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action not allowed"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Can\'t change volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Calling not allowed"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS not allowed"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera not allowed"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot not allowed"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Can\'t turn off backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"This action is disabled. To find out more, contact your organisation\'s admin."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"More details"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Your admin can monitor and manage apps and data associated with your work profile, including settings, permissions, corporate access, network activity and the device\'s location information."</string>
@@ -3416,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Portable Wi-Fi hotspot <xliff:g id="ID_1">%1$s</xliff:g> is active, Wi-Fi for this device is turned off."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Aeroplane mode is on"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth and mobile network are turned off. You can\'t make phone calls or connect to the Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Do Not Disturb is on (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Battery Saver is on"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performance is reduced. Location services and background data are turned off."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobile data is off"</string>
@@ -3426,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work profile is off"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apps, background sync and other features related to your work profile are turned off."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Set Night Light schedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint screen amber to help you fall asleep"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Automatically tint screen every night"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Night Light is on"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Screen is tinted amber. This may help you fall asleep."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggested for You"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> more"</string>
@@ -3533,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"None"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Ranking object is missing."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Ranking object doesn\'t contain this key."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulate a display with a cutout"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"None"</string>
<string name="special_access" msgid="3458780842491881155">"Special app access"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
@@ -3555,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Connected to multiple devices"</string>
<string name="demo_mode" msgid="2798762752209330277">"System UI demo mode"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"We\'re here to help"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"We\'re here for you 24/7"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"We\'re here for you 24/7"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Our support team is here to help address any issue"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Our support team is available all day, every day"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Search help or come back during support hours (local time):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Phone support hours (local time)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Search help or explore tips & tricks"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Support for:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Travelling abroad?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"International charges may apply"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Phone"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Explore tips & tricks"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Search help & send feedback"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Contact support"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Sign In"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Can\'t sign in?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Send system information"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Do not show this again"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Requesting as"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Add account"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"System information"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work profile settings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Contact search"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Allow contact searches by your organisation to identify callers and contacts"</string>
@@ -3595,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> seconds</item>
<item quantity="one">1 second</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> wait"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Manage storage"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"To help free up storage space, storage manager removes backed up photos and videos from your device."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Remove photos & videos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Storage manager"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Use Storage Manager"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatic"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Free up space now"</string>
@@ -3610,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Jump to camera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"To quickly open camera, press the power button twice. Works from any screen."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Open camera quickly"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Press power button twice to open camera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Flip camera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Take selfies faster"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Double-twist phone for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Double-twist tablet for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Double-twist device for selfie mode"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Double-tap to check phone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Double-tap to check tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Double-tap to check device"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"To check time, notification icons and other info, double-tap your screen."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Check notifications when screen is off"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Lift to check phone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Lift to check tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Lift to check device"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"To check time, notification icons and other info, pick up your phone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"To check time, notification icons and other info, pick up your tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"To check time, notification icons and other info, pick up your device."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Check notifications when screen is off"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swipe fingerprint for notifications"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swipe fingerprint"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"To check your notifications, swipe down on the fingerprint sensor on the back of your phone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"To check your notifications, swipe down on the fingerprint sensor on the back of your tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"To check your notifications, swipe down on the fingerprint sensor on the back of your device."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"See notifications quickly"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swipe down on the fingerprint sensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader is already unlocked"</string>
@@ -3765,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Take a tour of your new tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Take a tour of your new device"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"This feature is not available on this device"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Force full GNSS measurements"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Track all GNSS constellations and frequencies with no duty cycling"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Always show crash dialogue"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Show dialogue every time an app crashes"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Directory access"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"directory access"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Phone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Device"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Device name"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Use Bluetooth when driving"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Turn on Bluetooth automatically when driving"</string>
</resources>
diff --git a/res/values-en-rCA/arrays.xml b/res/values-en-rCA/arrays.xml
index 1e36841..2b3388b 100644
--- a/res/values-en-rCA/arrays.xml
+++ b/res/values-en-rCA/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push button"</item>
<item msgid="1624323946324499595">"PIN from peer device"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hour"</item>
<item msgid="5198271470953124739">"Never time out"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Default)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Poor"</item>
<item msgid="2042505933058940139">"Poor"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Over 60 days old"</item>
<item msgid="5692284879054004388">"Over 90 days old"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Use network preference"</item>
+ <item msgid="8745603368609022803">"Treat as metered"</item>
+ <item msgid="2266114985518865625">"Treat as unmetered"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 7e2defd..e3d05e8 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Your devices"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Pair new device"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Allow device to pair and connect to Bluetooth devices"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Disable in-band ringing"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Don’t play custom phone ringtones on Bluetooth headsets"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Currently connected"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Saved devices"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Add device"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Set date"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sort alphabetically"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sort by time zone"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> starts on <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"British Summer Time (also known as daylight savings time)"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standard time"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Time zone by region"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fixed offset time zones"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Date"</string>
<string name="time_picker_title" msgid="483460752287255019">"Time"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automatically lock"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lock screen message"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Enable widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disabled by admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Show lockdown option"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Display power button option that turns off extended access and fingerprint unlocking."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"None"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"e.g. Joe\'s Android."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profile info"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Accounts"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Location"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Use location"</string>
<string name="account_settings_title" msgid="626177544686329806">"Accounts"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Security & location"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encryption & credentials"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your tablet, you will need to perform a factory reset. When you set up your tablet after the reset, you\'ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your phone, you need to perform a factory reset. When you set up your phone after the reset, you’ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Switch input method"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Set screen lock"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protect your device"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Use fingerprint"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Set screen lock for security"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Prevent others from using your tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Prevent others from using your device"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Prevent others from using your phone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Unlock with fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Choose screen lock"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Choose work lock"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protect your tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"As speaker phone"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"For music and media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Remember settings"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maximum connected Bluetooth audio devices"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Select maximum number of connected Bluetooth audio devices"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Cast"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Enable wireless display"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"No nearby devices were found."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Name"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Sign in"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn on Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn off Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Turn on Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Use Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi settings"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Set up & manage wireless access points"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Show password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Select AP band"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP settings"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Enter your network password"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operator Wi‑Fi network"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"To turn this off, go to Advanced in the overflow menu."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -921,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android Hotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi Calling"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Turn on Wi-Fi Calling"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Use Wi-Fi instead of mobile network"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extend coverage by calling over Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Calling preference"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi Calling mode"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming preference"</string>
@@ -959,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Emergency Address"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Used as your location when you make an emergency call over Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Learn more"</annotation>" about Private DNS features"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Display"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sound"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1173,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobile network type"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator info"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobile network state"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Service status"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal strength"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1306,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Your new <xliff:g id="NAME">^1</xliff:g> is working. \n\nTo move photos, files and app data to this device, go to Settings > Storage."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Move <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Moving <xliff:g id="APP">^1</xliff:g> and its data to <xliff:g id="NAME_0">^2</xliff:g> will take only a few moments. You won\'t be able to use the app until the move is complete. \n\nDon\'t remove the <xliff:g id="NAME_1">^2</xliff:g> during the move."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"To move data you need to unlock user <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Moving <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Don\'t remove the <xliff:g id="NAME">^1</xliff:g> during the move. \n\nThe <xliff:g id="APP">^2</xliff:g> app on this device won\'t be available until the move is complete."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancel move"</string>
@@ -1358,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Network, apps or device can be reset"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reset Wi-Fi, mobile & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"This will reset all network settings, including:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobile data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Also reset eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Erase all eSIMs on the phone. You’ll have to contact your operator to re-download your eSIMs. This will not cancel your mobile service plan."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reset settings"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reset all network settings? You can\'t undo this action!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reset settings"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reset?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Network reset is not available for this user"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Network settings have been reset"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Can\'t reset eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"The eSIMs can’t be reset due to an error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Erase all data (factory reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"This will erase all data from your tablet\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"This will erase all data from your phone\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"You are currently signed in to the following accounts:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"There are other users present on this device.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Music"</li>\n<li>"Photos"</li>\n<li>"Other user data"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operators on eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"This will not cancel your mobile service plan."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"To clear music, pictures and other user data, the "<b>"USB storage"</b>" needs to be erased."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"To clear music, pictures and other user data, the "<b>"SD card"</b>" needs to be erased."</string>
@@ -1430,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Please connect to the internet"</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Location for work profile"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"High accuracy"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Battery saving"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Device only"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Location off"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"App-level permissions"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Recent location requests"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"No apps have requested location recently"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Location services"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"High battery use"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Low battery use"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Location mode"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Use GPS, Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Use Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Use GPS and device sensors to determine location"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanning"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi scanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Improve location by allowing system apps and services to detect Wi‑Fi networks at any time."</string>
@@ -1466,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Location sources"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"About tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"About phone"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"About device"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"About emulated device"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"View legal info, status, software version"</string>
<string name="legal_information" msgid="5769301644270604095">"Legal information"</string>
@@ -1573,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"See all <xliff:g id="COUNT">%1$d</xliff:g> apps"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Your tablet and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your tablet or loss of data that may result from their use."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Your phone and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your phone or loss of data that may result from their use."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Your device and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your device or loss of data that may result from their use."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Advanced settings"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Enable more settings options"</string>
<string name="application_info_label" msgid="5736524913065714880">"App info"</string>
@@ -1872,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"May affect performance"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Click after cursor stops moving"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Delay before click"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Use service"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Use colour correction"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Use captions"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ON"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"OFF"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Show in Quick Settings"</string>
@@ -1985,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> remaining"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> to charge"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Background activity"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricted"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Allow the app to run in the background"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"App can run in the background when not in use"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"App\'s background activity is limited when not in use"</string>
@@ -2030,10 +2052,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> apps misbehaving"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"Battery is in good shape"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Apps are behaving normally"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Low battery capacity"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Battery can\'t provide good battery life"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Turn on smart battery manager"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Turn on to optimise battery usage"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Turn on Low Battery Mode"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Extend your battery life"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Low Battery Mode is on"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Some features are limited"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Phone used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Device used heavily"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"About <xliff:g id="HOUR">%1$s</xliff:g> used since last full charge"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Your phone was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your phone was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Smart battery manager"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Auto-manage battery"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatically adjust power usage by apps based on usage"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Restricted apps"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d apps</item>
+ <item quantity="one">%1$d app</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Stop app?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Your phone can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your phone awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Your tablet can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your tablet awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
@@ -2142,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Media server"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"App optimisation"</string>
<string name="battery_saver" msgid="8172485772238572153">"Battery Saver"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Use Battery Saver"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Turn on automatically"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Never"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"at <xliff:g id="PERCENT">%1$s</xliff:g> battery"</string>
@@ -2329,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sync is currently experiencing problems. It will be back shortly."</string>
<string name="add_account_label" msgid="7811707265834013767">"Add account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Work profile isn\'t available yet"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work mode"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Allow work profile to function, including apps, background sync and related features"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work profile"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Managed by your organisation"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apps and notifications are off"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remove work profile"</string>
<string name="background_data" msgid="5779592891375473817">"Background data"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apps can sync, send and receive data at any time"</string>
@@ -2362,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Remove account?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Removing this account will delete all of its messages, contacts and other data from the tablet!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Removing this account will delete all of its messages, contacts and other data from the phone!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Removing this account will delete all of its messages, contacts and other data from the device."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"This change isn\'t allowed by your admin"</string>
<string name="provider_label" msgid="7724593781904508866">"Push subscriptions"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2580,7 +2624,7 @@
<item quantity="other">Check certificates</item>
<item quantity="one">Check certificate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Users"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Multiple users"</string>
<string name="user_list_title" msgid="7937158411137563543">"Users & profiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Add user or profile"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Add user"</string>
@@ -2770,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps & notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissions, default apps"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Users & accounts"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Accounts"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Default apps"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Languages, time, backup, updates"</string>
<string name="search_results_title" msgid="1796252422574886932">"Settings"</string>
@@ -2801,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"don\'t disturb, interrupt, interruption, break"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, location, history, reporting"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"accuracy"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restrict, restricted"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"text correction, correct, sound, vibrate, auto, language, gesture, suggest, suggestion, theme, offensive, word, type, emoji, international"</string>
@@ -2825,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"network, mobile network state, service state, signal strength, mobile network type, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serial number, hardware version"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, baseband version, kernel version"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient display, Lock screen display"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Set up Wi-Fi NFC Tag"</string>
<string name="write_tag" msgid="8571858602896222537">"Write"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
@@ -2868,6 +2914,7 @@
<item quantity="one">1 rule</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Do Not Disturb"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Turn on Do Not Disturb"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Behaviour"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Allow sounds & vibrations from"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"No sound"</string>
@@ -2877,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Turn on automatically"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatic rules"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatic rule"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Set Do Not Disturb rules"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limit sounds & vibrations at certain times"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silence phone at certain times"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Set do not disturb rules"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Use rule"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Priority only"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
@@ -2886,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Allow visual signals"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Add"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"TURN ON NOW"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"TURN OFF NOW"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Turn on"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Turn on now"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Turn off now"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Do Not Disturb is on until <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Do Not Disturb will stay on until you turn it off"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Do Not Disturb was automatically turned on by a rule (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Do Not Disturb was automatically turned on by an app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priority only"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -2907,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtones"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Other sounds and vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Recently sent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Advanced"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work notifications"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Allow notification dots"</string>
@@ -2926,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"App notifications"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Notification category"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Notification category group"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importance"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Behaviour"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Allow sound"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Never show notifications"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"No sound or visual interruption"</string>
@@ -2944,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Medium importance"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"High importance"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgent importance"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Show notifications"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Notification assistant"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Notification access"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Access to work profile notifications is blocked"</string>
@@ -2974,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Do Not Disturb access"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"No installed apps have requested Do Not Disturb access"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Loading apps..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android is blocking this app\'s notifications from appearing on this device"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android is blocking this category of notifications from appearing on this device"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android is blocking this group of notifications from appearing on this device"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"At your request, Android is blocking this app\'s notifications from appearing on this device"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"At your request, Android is blocking this category of notifications from appearing on this device"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"At your request, Android is blocking this group of notifications from appearing on this device"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categories"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Other"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"In addition to using your fingerprint to unlock your device, you can further protect this device by requiring your password before it starts up. Until the device starts up, it can’t receive calls, messages or notifications, including alarms.\n\nThis helps protect data on lost or stolen devices. Require password to start your device?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Require PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Require pattern?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Require password?"</string>
@@ -3267,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Decline"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charge this device"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Just charge this device"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Supply power"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charge the connected device. Works only with devices that support USB charging."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transfer files"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfer files to another device"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transfer photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transfer photos or files if MTP is not supported (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Use device as MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Use this device as MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Use USB to"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Use USB for"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Charging this device"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Supplying power"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferring files"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferring photos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Using device as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Background check"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full background access"</string>
@@ -3390,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Wallpaper, sleep, font size"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sleep after 10 minutes of inactivity"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg <xliff:g id="USED_MEMORY">%1$s</xliff:g> of <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> memory used"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Current user: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Signed in as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup disabled"</string>
- <string name="about_summary" msgid="924181828102801010">"Updated to Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action not allowed"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Can\'t change volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Calling not allowed"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS not allowed"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera not allowed"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot not allowed"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Can\'t turn off backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"This action is disabled. To find out more, contact your organisation\'s admin."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"More details"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Your admin can monitor and manage apps and data associated with your work profile, including settings, permissions, corporate access, network activity and the device\'s location information."</string>
@@ -3416,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Portable Wi-Fi hotspot <xliff:g id="ID_1">%1$s</xliff:g> is active, Wi-Fi for this device is turned off."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Aeroplane mode is on"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth and mobile network are turned off. You can\'t make phone calls or connect to the Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Do Not Disturb is on (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Battery Saver is on"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performance is reduced. Location services and background data are turned off."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobile data is off"</string>
@@ -3426,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work profile is off"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apps, background sync and other features related to your work profile are turned off."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Set Night Light schedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint screen amber to help you fall asleep"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Automatically tint screen every night"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Night Light is on"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Screen is tinted amber. This may help you fall asleep."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggested for You"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> more"</string>
@@ -3533,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"None"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Ranking object is missing."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Ranking object doesn\'t contain this key."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulate a display with a cutout"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"None"</string>
<string name="special_access" msgid="3458780842491881155">"Special app access"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
@@ -3555,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Connected to multiple devices"</string>
<string name="demo_mode" msgid="2798762752209330277">"System UI demo mode"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"We\'re here to help"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"We\'re here for you 24/7"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"We\'re here for you 24/7"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Our support team is here to help address any issue"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Our support team is available all day, every day"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Search help or come back during support hours (local time):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Phone support hours (local time)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Search help or explore tips & tricks"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Support for:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Travelling abroad?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"International charges may apply"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Phone"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Explore tips & tricks"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Search help & send feedback"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Contact support"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Sign In"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Can\'t sign in?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Send system information"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Do not show this again"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Requesting as"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Add account"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"System information"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work profile settings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Contact search"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Allow contact searches by your organisation to identify callers and contacts"</string>
@@ -3595,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> seconds</item>
<item quantity="one">1 second</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> wait"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Manage storage"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"To help free up storage space, storage manager removes backed up photos and videos from your device."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Remove photos & videos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Storage manager"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Use Storage Manager"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatic"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Free up space now"</string>
@@ -3610,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Jump to camera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"To quickly open camera, press the power button twice. Works from any screen."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Open camera quickly"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Press power button twice to open camera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Flip camera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Take selfies faster"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Double-twist phone for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Double-twist tablet for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Double-twist device for selfie mode"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Double-tap to check phone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Double-tap to check tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Double-tap to check device"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"To check time, notification icons and other info, double-tap your screen."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Check notifications when screen is off"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Lift to check phone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Lift to check tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Lift to check device"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"To check time, notification icons and other info, pick up your phone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"To check time, notification icons and other info, pick up your tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"To check time, notification icons and other info, pick up your device."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Check notifications when screen is off"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swipe fingerprint for notifications"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swipe fingerprint"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"To check your notifications, swipe down on the fingerprint sensor on the back of your phone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"To check your notifications, swipe down on the fingerprint sensor on the back of your tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"To check your notifications, swipe down on the fingerprint sensor on the back of your device."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"See notifications quickly"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swipe down on the fingerprint sensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader is already unlocked"</string>
@@ -3765,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Take a tour of your new tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Take a tour of your new device"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"This feature is not available on this device"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Force full GNSS measurements"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Track all GNSS constellations and frequencies with no duty cycling"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Always show crash dialogue"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Show dialogue every time an app crashes"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Directory access"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"directory access"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Phone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Device"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Device name"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Use Bluetooth when driving"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Turn on Bluetooth automatically when driving"</string>
</resources>
diff --git a/res/values-en-rGB/arrays.xml b/res/values-en-rGB/arrays.xml
index 1e36841..2b3388b 100644
--- a/res/values-en-rGB/arrays.xml
+++ b/res/values-en-rGB/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push button"</item>
<item msgid="1624323946324499595">"PIN from peer device"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hour"</item>
<item msgid="5198271470953124739">"Never time out"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Default)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Poor"</item>
<item msgid="2042505933058940139">"Poor"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Over 60 days old"</item>
<item msgid="5692284879054004388">"Over 90 days old"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Use network preference"</item>
+ <item msgid="8745603368609022803">"Treat as metered"</item>
+ <item msgid="2266114985518865625">"Treat as unmetered"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index aa94d86..b2b8c90 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Your devices"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Pair new device"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Allow device to pair and connect to Bluetooth devices"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Disable in-band ringing"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Don’t play custom phone ringtones on Bluetooth headsets"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Currently connected"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Saved devices"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Add device"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Set date"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sort alphabetically"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sort by time zone"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> starts on <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"British Summer Time (also known as daylight savings time)"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standard time"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Time zone by region"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fixed offset time zones"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Date"</string>
<string name="time_picker_title" msgid="483460752287255019">"Time"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automatically lock"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lock screen message"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Enable widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disabled by admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Show lockdown option"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Display power button option that turns off extended access and fingerprint unlocking."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"None"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"e.g. Joe\'s Android."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profile info"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Accounts"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Location"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Use location"</string>
<string name="account_settings_title" msgid="626177544686329806">"Accounts"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Security & location"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encryption & credentials"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your tablet, you will need to perform a factory reset. When you set up your tablet after the reset, you\'ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your phone, you need to perform a factory reset. When you set up your phone after the reset, you’ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Switch input method"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Set screen lock"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protect your device"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Use fingerprint"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Set screen lock for security"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Prevent others from using your tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Prevent others from using your device"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Prevent others from using your phone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Unlock with fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Choose screen lock"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Choose work lock"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protect your tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"As speaker phone"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"For music and media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Remember settings"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maximum connected Bluetooth audio devices"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Select maximum number of connected Bluetooth audio devices"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Cast"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Enable wireless display"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"No nearby devices were found."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Name"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Sign in"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn on Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn off Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Turn on Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Use Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi settings"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Set up & manage wireless access points"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Show password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Select AP band"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP settings"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Enter your network password"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operator Wi‑Fi network"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"To turn this off, go to Advanced in the overflow menu."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -921,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android Hotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi Calling"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Turn on Wi-Fi Calling"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Use Wi-Fi instead of mobile network"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extend coverage by calling over Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Calling preference"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi Calling mode"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming preference"</string>
@@ -959,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Emergency Address"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Used as your location when you make an emergency call over Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Learn more"</annotation>" about Private DNS features"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Display"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sound"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1173,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobile network type"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator info"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobile network state"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Service status"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal strength"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1306,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Your new <xliff:g id="NAME">^1</xliff:g> is working. \n\nTo move photos, files and app data to this device, go to Settings > Storage."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Move <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Moving <xliff:g id="APP">^1</xliff:g> and its data to <xliff:g id="NAME_0">^2</xliff:g> will take only a few moments. You won\'t be able to use the app until the move is complete. \n\nDon\'t remove the <xliff:g id="NAME_1">^2</xliff:g> during the move."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"To move data you need to unlock user <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Moving <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Don\'t remove the <xliff:g id="NAME">^1</xliff:g> during the move. \n\nThe <xliff:g id="APP">^2</xliff:g> app on this device won\'t be available until the move is complete."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancel move"</string>
@@ -1358,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Network, apps or device can be reset"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reset Wi-Fi, mobile & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"This will reset all network settings, including:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobile data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Also reset eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Erase all eSIMs on the phone. You’ll have to contact your operator to re-download your eSIMs. This will not cancel your mobile service plan."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reset settings"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reset all network settings? You can\'t undo this action!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reset settings"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reset?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Network reset is not available for this user"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Network settings have been reset"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Can\'t reset eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"The eSIMs can’t be reset due to an error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Erase all data (factory reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"This will erase all data from your tablet\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"This will erase all data from your phone\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"You are currently signed in to the following accounts:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"There are other users present on this device.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Music"</li>\n<li>"Photos"</li>\n<li>"Other user data"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operators on eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"This will not cancel your mobile service plan."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"To clear music, pictures and other user data, the "<b>"USB storage"</b>" needs to be erased."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"To clear music, pictures and other user data, the "<b>"SD card"</b>" needs to be erased."</string>
@@ -1430,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Please connect to the internet"</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Location for work profile"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"High accuracy"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Battery saving"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Device only"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Location off"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"App-level permissions"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Recent location requests"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"No apps have requested location recently"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Location services"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"High battery use"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Low battery use"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Location mode"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Use GPS, Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Use Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Use GPS and device sensors to determine location"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanning"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi scanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Improve location by allowing system apps and services to detect Wi‑Fi networks at any time."</string>
@@ -1466,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Location sources"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"About tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"About phone"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"About device"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"About emulated device"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"View legal info, status, software version"</string>
<string name="legal_information" msgid="5769301644270604095">"Legal information"</string>
@@ -1573,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"See all <xliff:g id="COUNT">%1$d</xliff:g> apps"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Your tablet and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your tablet or loss of data that may result from their use."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Your phone and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your phone or loss of data that may result from their use."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Your device and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your device or loss of data that may result from their use."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Advanced settings"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Enable more settings options"</string>
<string name="application_info_label" msgid="5736524913065714880">"App info"</string>
@@ -1872,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"May affect performance"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Click after cursor stops moving"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Delay before click"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Use service"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Use colour correction"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Use captions"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ON"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"OFF"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Show in Quick Settings"</string>
@@ -1985,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> remaining"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> to charge"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Background activity"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricted"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Allow the app to run in the background"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"App can run in the background when not in use"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"App\'s background activity is limited when not in use"</string>
@@ -2030,10 +2052,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> apps misbehaving"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"Battery is in good shape"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Apps are behaving normally"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Low battery capacity"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Battery can\'t provide good battery life"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Turn on smart battery manager"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Turn on to optimise battery usage"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Turn on Low Battery Mode"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Extend your battery life"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Low Battery Mode is on"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Some features are limited"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Phone used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Device used heavily"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"About <xliff:g id="HOUR">%1$s</xliff:g> used since last full charge"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Your phone was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your phone was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Smart battery manager"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Auto-manage battery"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatically adjust power usage by apps based on usage"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Restricted apps"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d apps</item>
+ <item quantity="one">%1$d app</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Stop app?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Your phone can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your phone awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Your tablet can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your tablet awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
@@ -2142,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Media server"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"App optimisation"</string>
<string name="battery_saver" msgid="8172485772238572153">"Battery Saver"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Use Battery Saver"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Turn on automatically"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Never"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"at <xliff:g id="PERCENT">%1$s</xliff:g> battery"</string>
@@ -2329,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sync is currently experiencing problems. It will be back shortly."</string>
<string name="add_account_label" msgid="7811707265834013767">"Add account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Work profile isn\'t available yet"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work mode"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Allow work profile to function, including apps, background sync and related features"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work profile"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Managed by your organisation"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apps and notifications are off"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remove work profile"</string>
<string name="background_data" msgid="5779592891375473817">"Background data"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apps can sync, send and receive data at any time"</string>
@@ -2362,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Remove account?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Removing this account will delete all of its messages, contacts and other data from the tablet!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Removing this account will delete all of its messages, contacts and other data from the phone!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Removing this account will delete all of its messages, contacts and other data from the device."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"This change isn\'t allowed by your admin"</string>
<string name="provider_label" msgid="7724593781904508866">"Push subscriptions"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2580,7 +2624,7 @@
<item quantity="other">Check certificates</item>
<item quantity="one">Check certificate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Users"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Multiple users"</string>
<string name="user_list_title" msgid="7937158411137563543">"Users & profiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Add user or profile"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Add user"</string>
@@ -2770,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps & notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissions, default apps"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Users & accounts"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Accounts"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Default apps"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Languages, time, backup, updates"</string>
<string name="search_results_title" msgid="1796252422574886932">"Settings"</string>
@@ -2801,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"don\'t disturb, interrupt, interruption, break"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, location, history, reporting"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"accuracy"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restrict, restricted"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"text correction, correct, sound, vibrate, auto, language, gesture, suggest, suggestion, theme, offensive, word, type, emoji, international"</string>
@@ -2825,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"network, mobile network state, service state, signal strength, mobile network type, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serial number, hardware version"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, baseband version, kernel version"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient display, Lock screen display"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Set up Wi-Fi NFC Tag"</string>
<string name="write_tag" msgid="8571858602896222537">"Write"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
@@ -2868,6 +2914,7 @@
<item quantity="one">1 rule</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Do Not Disturb"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Turn on Do Not Disturb"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Behaviour"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Allow sounds & vibrations from"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"No sound"</string>
@@ -2877,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Turn on automatically"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatic rules"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatic rule"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Set Do Not Disturb rules"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limit sounds & vibrations at certain times"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silence phone at certain times"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Set do not disturb rules"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Use rule"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Priority only"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
@@ -2886,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Allow visual signals"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Add"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"TURN ON NOW"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"TURN OFF NOW"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Turn on"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Turn on now"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Turn off now"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Do Not Disturb is on until <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Do Not Disturb will stay on until you turn it off"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Do Not Disturb was automatically turned on by a rule (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Do Not Disturb was automatically turned on by an app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priority only"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -2907,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtones"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Other sounds and vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Recently sent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Advanced"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work notifications"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Allow notification dots"</string>
@@ -2926,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"App notifications"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Notification category"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Notification category group"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importance"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Behaviour"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Allow sound"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Never show notifications"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"No sound or visual interruption"</string>
@@ -2944,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Medium importance"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"High importance"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgent importance"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Show notifications"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Notification assistant"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Notification access"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Access to work profile notifications is blocked"</string>
@@ -2974,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Do Not Disturb access"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"No installed apps have requested Do Not Disturb access"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Loading apps..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android is blocking this app\'s notifications from appearing on this device"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android is blocking this category of notifications from appearing on this device"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android is blocking this group of notifications from appearing on this device"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"At your request, Android is blocking this app\'s notifications from appearing on this device"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"At your request, Android is blocking this category of notifications from appearing on this device"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"At your request, Android is blocking this group of notifications from appearing on this device"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categories"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Other"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"In addition to using your fingerprint to unlock your device, you can further protect this device by requiring your password before it starts up. Until the device starts up, it can’t receive calls, messages or notifications, including alarms.\n\nThis helps protect data on lost or stolen devices. Require password to start your device?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Require PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Require pattern?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Require password?"</string>
@@ -3267,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Decline"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charge this device"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Just charge this device"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Supply power"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charge the connected device. Works only with devices that support USB charging."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transfer files"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfer files to another device"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transfer photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transfer photos or files if MTP is not supported (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Use device as MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Use this device as MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Use USB to"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Use USB for"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Charging this device"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Supplying power"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferring files"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferring photos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Using device as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Background check"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full background access"</string>
@@ -3390,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Wallpaper, sleep, font size"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sleep after 10 minutes of inactivity"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg <xliff:g id="USED_MEMORY">%1$s</xliff:g> of <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> memory used"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Current user: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Signed in as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup disabled"</string>
- <string name="about_summary" msgid="924181828102801010">"Updated to Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action not allowed"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Can\'t change volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Calling not allowed"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS not allowed"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera not allowed"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot not allowed"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Can\'t turn off backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"This action is disabled. To find out more, contact your organisation\'s admin."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"More details"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Your admin can monitor and manage apps and data associated with your work profile, including settings, permissions, corporate access, network activity and the device\'s location information."</string>
@@ -3416,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Portable Wi-Fi hotspot <xliff:g id="ID_1">%1$s</xliff:g> is active, Wi-Fi for this device is turned off."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Aeroplane mode is on"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth and mobile network are turned off. You can\'t make phone calls or connect to the Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Do Not Disturb is on (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Battery Saver is on"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performance is reduced. Location services and background data are turned off."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobile data is off"</string>
@@ -3426,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work profile is off"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apps, background sync and other features related to your work profile are turned off."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Set Night Light schedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint screen amber to help you fall asleep"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Automatically tint screen every night"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Night Light is on"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Screen is tinted amber. This may help you fall asleep."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggested for You"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> more"</string>
@@ -3533,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"None"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Ranking object is missing."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Ranking object doesn\'t contain this key."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulate a display with a cutout"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"None"</string>
<string name="special_access" msgid="3458780842491881155">"Special app access"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
@@ -3555,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Connected to multiple devices"</string>
<string name="demo_mode" msgid="2798762752209330277">"System UI demo mode"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"We\'re here to help"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"We\'re here for you 24/7"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"We\'re here for you 24/7"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Our support team is here to help address any issue"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Our support team is available all day, every day"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Search help or come back during support hours (local time):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Phone support hours (local time)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Search help or explore tips & tricks"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Support for:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Travelling abroad?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"International charges may apply"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Phone"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Explore tips & tricks"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Search help & send feedback"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Contact support"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Sign In"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Can\'t sign in?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Send system information"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Do not show this again"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Requesting as"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Add account"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"System information"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work profile settings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Contact search"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Allow contact searches by your organisation to identify callers and contacts"</string>
@@ -3595,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> seconds</item>
<item quantity="one">1 second</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> wait"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Manage storage"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"To help free up storage space, storage manager removes backed up photos and videos from your device."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Remove photos & videos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Storage manager"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Use Storage Manager"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatic"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Free up space now"</string>
@@ -3610,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Jump to camera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"To quickly open camera, press the power button twice. Works from any screen."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Open camera quickly"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Press power button twice to open camera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Flip camera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Take selfies faster"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Double-twist phone for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Double-twist tablet for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Double-twist device for selfie mode"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Double-tap to check phone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Double-tap to check tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Double-tap to check device"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"To check time, notification icons and other info, double-tap your screen."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Check notifications when screen is off"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Lift to check phone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Lift to check tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Lift to check device"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"To check time, notification icons and other info, pick up your phone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"To check time, notification icons and other info, pick up your tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"To check time, notification icons and other info, pick up your device."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Check notifications when screen is off"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swipe fingerprint for notifications"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swipe fingerprint"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"To check your notifications, swipe down on the fingerprint sensor on the back of your phone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"To check your notifications, swipe down on the fingerprint sensor on the back of your tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"To check your notifications, swipe down on the fingerprint sensor on the back of your device."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"See notifications quickly"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swipe down on the fingerprint sensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader is already unlocked"</string>
@@ -3765,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Take a tour of your new tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Take a tour of your new device"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"This feature is not available on this device"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Force full GNSS measurements"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Track all GNSS constellations and frequencies with no duty cycling"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Always show crash dialogue"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Show dialogue every time an app crashes"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Directory access"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"directory access"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Phone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Device"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Device name"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Use Bluetooth when driving"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Turn on Bluetooth automatically when driving"</string>
</resources>
diff --git a/res/values-en-rIN/arrays.xml b/res/values-en-rIN/arrays.xml
index 1e36841..2b3388b 100644
--- a/res/values-en-rIN/arrays.xml
+++ b/res/values-en-rIN/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push button"</item>
<item msgid="1624323946324499595">"PIN from peer device"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hour"</item>
<item msgid="5198271470953124739">"Never time out"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Default)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Poor"</item>
<item msgid="2042505933058940139">"Poor"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Over 60 days old"</item>
<item msgid="5692284879054004388">"Over 90 days old"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Use network preference"</item>
+ <item msgid="8745603368609022803">"Treat as metered"</item>
+ <item msgid="2266114985518865625">"Treat as unmetered"</item>
+ </string-array>
</resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index aa94d86..b2b8c90 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Your devices"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Pair new device"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Allow device to pair and connect to Bluetooth devices"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Disable in-band ringing"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Don’t play custom phone ringtones on Bluetooth headsets"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Currently connected"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Saved devices"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Add device"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Set date"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sort alphabetically"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sort by time zone"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> starts on <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"British Summer Time (also known as daylight savings time)"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standard time"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Time zone by region"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fixed offset time zones"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Date"</string>
<string name="time_picker_title" msgid="483460752287255019">"Time"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Automatically lock"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lock screen message"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Enable widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disabled by admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Show lockdown option"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Display power button option that turns off extended access and fingerprint unlocking."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"None"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"e.g. Joe\'s Android."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profile info"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Accounts"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Location"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Use location"</string>
<string name="account_settings_title" msgid="626177544686329806">"Accounts"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Security & location"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encryption & credentials"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your tablet, you will need to perform a factory reset. When you set up your tablet after the reset, you\'ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"The password that you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your phone, you need to perform a factory reset. When you set up your phone after the reset, you’ll have an opportunity to restore any data that was backed up to your Google account."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Switch input method"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Set screen lock"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protect your device"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Use fingerprint"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Set screen lock for security"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Prevent others from using your tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Prevent others from using your device"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Prevent others from using your phone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Unlock with fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Choose screen lock"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Choose work lock"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protect your tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"As speaker phone"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"For music and media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Remember settings"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maximum connected Bluetooth audio devices"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Select maximum number of connected Bluetooth audio devices"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Cast"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Enable wireless display"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"No nearby devices were found."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Name"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Sign in"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn on Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> wants to turn off Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Turn on Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Use Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi settings"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Set up & manage wireless access points"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Show password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Select AP band"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP settings"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Enter your network password"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operator Wi‑Fi network"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Connect via <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"To turn this off, go to Advanced in the overflow menu."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -921,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android Hotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi Calling"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Turn on Wi-Fi Calling"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Use Wi-Fi instead of mobile network"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extend coverage by calling over Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Calling preference"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi Calling mode"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming preference"</string>
@@ -959,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Emergency Address"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Used as your location when you make an emergency call over Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Learn more"</annotation>" about Private DNS features"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Display"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sound"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1173,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobile network type"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator info"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobile network state"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Service status"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal strength"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1306,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Your new <xliff:g id="NAME">^1</xliff:g> is working. \n\nTo move photos, files and app data to this device, go to Settings > Storage."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Move <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Moving <xliff:g id="APP">^1</xliff:g> and its data to <xliff:g id="NAME_0">^2</xliff:g> will take only a few moments. You won\'t be able to use the app until the move is complete. \n\nDon\'t remove the <xliff:g id="NAME_1">^2</xliff:g> during the move."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"To move data you need to unlock user <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Moving <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Don\'t remove the <xliff:g id="NAME">^1</xliff:g> during the move. \n\nThe <xliff:g id="APP">^2</xliff:g> app on this device won\'t be available until the move is complete."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancel move"</string>
@@ -1358,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Network, apps or device can be reset"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reset Wi-Fi, mobile & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"This will reset all network settings, including:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobile data"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Also reset eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Erase all eSIMs on the phone. You’ll have to contact your operator to re-download your eSIMs. This will not cancel your mobile service plan."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reset settings"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reset all network settings? You can\'t undo this action!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reset settings"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reset?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Network reset is not available for this user"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Network settings have been reset"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Can\'t reset eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"The eSIMs can’t be reset due to an error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Erase all data (factory reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"This will erase all data from your tablet\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"This will erase all data from your phone\'s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>\n<li>"System and app data and settings"</li>\n<li>"Downloaded apps"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"You are currently signed in to the following accounts:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"There are other users present on this device.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Music"</li>\n<li>"Photos"</li>\n<li>"Other user data"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operators on eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"This will not cancel your mobile service plan."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"To clear music, pictures and other user data, the "<b>"USB storage"</b>" needs to be erased."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"To clear music, pictures and other user data, the "<b>"SD card"</b>" needs to be erased."</string>
@@ -1430,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Please connect to the internet"</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Location for work profile"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"High accuracy"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Battery saving"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Device only"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Location off"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"App-level permissions"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Recent location requests"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"No apps have requested location recently"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Location services"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"High battery use"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Low battery use"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Location mode"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Use GPS, Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Use Wi‑Fi, Bluetooth or mobile networks to determine location"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Use GPS and device sensors to determine location"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanning"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi scanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Improve location by allowing system apps and services to detect Wi‑Fi networks at any time."</string>
@@ -1466,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Location sources"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"About tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"About phone"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"About device"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"About emulated device"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"View legal info, status, software version"</string>
<string name="legal_information" msgid="5769301644270604095">"Legal information"</string>
@@ -1573,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"See all <xliff:g id="COUNT">%1$d</xliff:g> apps"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Your tablet and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your tablet or loss of data that may result from their use."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Your phone and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your phone or loss of data that may result from their use."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Your device and personal data are more vulnerable to attack by unknown apps. By installing apps from this source, you agree that you are responsible for any damage to your device or loss of data that may result from their use."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Advanced settings"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Enable more settings options"</string>
<string name="application_info_label" msgid="5736524913065714880">"App info"</string>
@@ -1872,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"May affect performance"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Click after cursor stops moving"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Delay before click"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Use service"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Use colour correction"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Use captions"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ON"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"OFF"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Show in Quick Settings"</string>
@@ -1985,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> remaining"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> to charge"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Background activity"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricted"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Allow the app to run in the background"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"App can run in the background when not in use"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"App\'s background activity is limited when not in use"</string>
@@ -2030,10 +2052,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> apps misbehaving"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"Battery is in good shape"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Apps are behaving normally"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Low battery capacity"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Battery can\'t provide good battery life"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Turn on smart battery manager"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Turn on to optimise battery usage"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Turn on Low Battery Mode"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Extend your battery life"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Low Battery Mode is on"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Some features are limited"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Phone used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet used heavily"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Device used heavily"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"About <xliff:g id="HOUR">%1$s</xliff:g> used since last full charge"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Your phone was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your phone was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about <xliff:g id="HOUR">%1$s</xliff:g> since last full charge.\n\n Total usage:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Smart battery manager"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Auto-manage battery"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatically adjust power usage by apps based on usage"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Restricted apps"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d apps</item>
+ <item quantity="one">%1$d app</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Stop app?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Your phone can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your phone awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Your tablet can\'t manage battery normally because <xliff:g id="APP">%1$s</xliff:g> is keeping your tablet awake.\n\nTo try to fix this issue, you can stop the app.\n\nIf this keeps happening, you may need to uninstall the app to improve battery performance."</string>
@@ -2142,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Media server"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"App optimisation"</string>
<string name="battery_saver" msgid="8172485772238572153">"Battery Saver"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Use Battery Saver"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Turn on automatically"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Never"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"at <xliff:g id="PERCENT">%1$s</xliff:g> battery"</string>
@@ -2329,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sync is currently experiencing problems. It will be back shortly."</string>
<string name="add_account_label" msgid="7811707265834013767">"Add account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Work profile isn\'t available yet"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work mode"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Allow work profile to function, including apps, background sync and related features"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work profile"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Managed by your organisation"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apps and notifications are off"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remove work profile"</string>
<string name="background_data" msgid="5779592891375473817">"Background data"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apps can sync, send and receive data at any time"</string>
@@ -2362,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Remove account?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Removing this account will delete all of its messages, contacts and other data from the tablet!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Removing this account will delete all of its messages, contacts and other data from the phone!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Removing this account will delete all of its messages, contacts and other data from the device."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"This change isn\'t allowed by your admin"</string>
<string name="provider_label" msgid="7724593781904508866">"Push subscriptions"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2580,7 +2624,7 @@
<item quantity="other">Check certificates</item>
<item quantity="one">Check certificate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Users"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Multiple users"</string>
<string name="user_list_title" msgid="7937158411137563543">"Users & profiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Add user or profile"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Add user"</string>
@@ -2770,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps & notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissions, default apps"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Users & accounts"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Accounts"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Default apps"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Languages, time, backup, updates"</string>
<string name="search_results_title" msgid="1796252422574886932">"Settings"</string>
@@ -2801,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"don\'t disturb, interrupt, interruption, break"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, location, history, reporting"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"accuracy"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restrict, restricted"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"text correction, correct, sound, vibrate, auto, language, gesture, suggest, suggestion, theme, offensive, word, type, emoji, international"</string>
@@ -2825,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"network, mobile network state, service state, signal strength, mobile network type, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serial number, hardware version"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, baseband version, kernel version"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient display, Lock screen display"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Set up Wi-Fi NFC Tag"</string>
<string name="write_tag" msgid="8571858602896222537">"Write"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
@@ -2868,6 +2914,7 @@
<item quantity="one">1 rule</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Do Not Disturb"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Turn on Do Not Disturb"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Behaviour"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Allow sounds & vibrations from"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"No sound"</string>
@@ -2877,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Turn on automatically"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatic rules"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatic rule"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Set Do Not Disturb rules"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limit sounds & vibrations at certain times"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silence phone at certain times"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Set do not disturb rules"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Use rule"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Priority only"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
@@ -2886,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Allow visual signals"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Add"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"TURN ON NOW"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"TURN OFF NOW"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Turn on"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Turn on now"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Turn off now"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Do Not Disturb is on until <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Do Not Disturb will stay on until you turn it off"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Do Not Disturb was automatically turned on by a rule (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Do Not Disturb was automatically turned on by an app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priority only"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -2907,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtones"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Other sounds and vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Recently sent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Advanced"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work notifications"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Allow notification dots"</string>
@@ -2926,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"App notifications"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Notification category"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Notification category group"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importance"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Behaviour"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Allow sound"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Never show notifications"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"No sound or visual interruption"</string>
@@ -2944,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Medium importance"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"High importance"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgent importance"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Show notifications"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Notification assistant"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Notification access"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Access to work profile notifications is blocked"</string>
@@ -2974,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Do Not Disturb access"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"No installed apps have requested Do Not Disturb access"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Loading apps..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android is blocking this app\'s notifications from appearing on this device"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android is blocking this category of notifications from appearing on this device"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android is blocking this group of notifications from appearing on this device"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"At your request, Android is blocking this app\'s notifications from appearing on this device"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"At your request, Android is blocking this category of notifications from appearing on this device"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"At your request, Android is blocking this group of notifications from appearing on this device"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categories"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Other"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"In addition to using your fingerprint to unlock your device, you can further protect this device by requiring your password before it starts up. Until the device starts up, it can’t receive calls, messages or notifications, including alarms.\n\nThis helps protect data on lost or stolen devices. Require password to start your device?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Require PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Require pattern?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Require password?"</string>
@@ -3267,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Decline"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charge this device"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Just charge this device"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Supply power"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charge the connected device. Works only with devices that support USB charging."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transfer files"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfer files to another device"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transfer photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transfer photos or files if MTP is not supported (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Use device as MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Use this device as MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Use USB to"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Use USB for"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Charging this device"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Supplying power"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferring files"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferring photos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Using device as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Background check"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full background access"</string>
@@ -3390,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Wallpaper, sleep, font size"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sleep after 10 minutes of inactivity"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg <xliff:g id="USED_MEMORY">%1$s</xliff:g> of <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> memory used"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Current user: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Signed in as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup disabled"</string>
- <string name="about_summary" msgid="924181828102801010">"Updated to Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action not allowed"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Can\'t change volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Calling not allowed"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS not allowed"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera not allowed"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot not allowed"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Can\'t turn off backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"This action is disabled. To find out more, contact your organisation\'s admin."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"More details"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Your admin can monitor and manage apps and data associated with your work profile, including settings, permissions, corporate access, network activity and the device\'s location information."</string>
@@ -3416,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Portable Wi-Fi hotspot <xliff:g id="ID_1">%1$s</xliff:g> is active, Wi-Fi for this device is turned off."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Aeroplane mode is on"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth and mobile network are turned off. You can\'t make phone calls or connect to the Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Do Not Disturb is on (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Battery Saver is on"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performance is reduced. Location services and background data are turned off."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobile data is off"</string>
@@ -3426,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work profile is off"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apps, background sync and other features related to your work profile are turned off."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Set Night Light schedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint screen amber to help you fall asleep"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Automatically tint screen every night"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Night Light is on"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Screen is tinted amber. This may help you fall asleep."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggested for You"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> more"</string>
@@ -3533,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"None"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Ranking object is missing."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Ranking object doesn\'t contain this key."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulate a display with a cutout"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"None"</string>
<string name="special_access" msgid="3458780842491881155">"Special app access"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
@@ -3555,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Connected to multiple devices"</string>
<string name="demo_mode" msgid="2798762752209330277">"System UI demo mode"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"We\'re here to help"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"We\'re here for you 24/7"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"We\'re here for you 24/7"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Our support team is here to help address any issue"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Our support team is available all day, every day"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Search help or come back during support hours (local time):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Phone support hours (local time)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Search help or explore tips & tricks"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Support for:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Travelling abroad?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"International charges may apply"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Phone"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Explore tips & tricks"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Search help & send feedback"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Contact support"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Sign In"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Can\'t sign in?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Send system information"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Do not show this again"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Requesting as"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Add account"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"System information"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work profile settings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Contact search"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Allow contact searches by your organisation to identify callers and contacts"</string>
@@ -3595,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> seconds</item>
<item quantity="one">1 second</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"~<xliff:g id="ESTIMATE">%1$s</xliff:g> wait"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Manage storage"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"To help free up storage space, storage manager removes backed up photos and videos from your device."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Remove photos & videos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Storage manager"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Use Storage Manager"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatic"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Free up space now"</string>
@@ -3610,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Jump to camera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"To quickly open camera, press the power button twice. Works from any screen."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Open camera quickly"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Press power button twice to open camera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Flip camera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Take selfies faster"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Double-twist phone for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Double-twist tablet for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Double-twist device for selfie mode"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Double-tap to check phone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Double-tap to check tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Double-tap to check device"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"To check time, notification icons and other info, double-tap your screen."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Check notifications when screen is off"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Lift to check phone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Lift to check tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Lift to check device"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"To check time, notification icons and other info, pick up your phone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"To check time, notification icons and other info, pick up your tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"To check time, notification icons and other info, pick up your device."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Check notifications when screen is off"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swipe fingerprint for notifications"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swipe fingerprint"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"To check your notifications, swipe down on the fingerprint sensor on the back of your phone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"To check your notifications, swipe down on the fingerprint sensor on the back of your tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"To check your notifications, swipe down on the fingerprint sensor on the back of your device."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"See notifications quickly"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swipe down on the fingerprint sensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader is already unlocked"</string>
@@ -3765,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Take a tour of your new tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Take a tour of your new device"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"This feature is not available on this device"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Force full GNSS measurements"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Track all GNSS constellations and frequencies with no duty cycling"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Always show crash dialogue"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Show dialogue every time an app crashes"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Directory access"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"directory access"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Phone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Device"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Device name"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Use Bluetooth when driving"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Turn on Bluetooth automatically when driving"</string>
</resources>
diff --git a/res/values-en-rXC/arrays.xml b/res/values-en-rXC/arrays.xml
index 3caf221..e5ab074 100644
--- a/res/values-en-rXC/arrays.xml
+++ b/res/values-en-rXC/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push button"</item>
<item msgid="1624323946324499595">"PIN from peer device"</item>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index 009367f..c6df339 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -346,6 +346,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lock screen message"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Enable widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disabled by admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Show lockdown option"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Display power button option that turns off extended access and fingerprint unlocking."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"None"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"E.g., Joe’s Android."</string>
@@ -466,10 +468,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"The password you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your tablet, you need to perform a factory reset. When you set up your tablet after the reset, you’ll have an opportunity to restore any data that was backed up to your Google Account."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"The password you entered is correct, but unfortunately your data is corrupt. \n\nTo resume using your phone, you need to perform a factory reset. When you set up your phone after the reset, you’ll have an opportunity to restore any data that was backed up to your Google Account."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Switch input method"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Set screen lock"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protect your device"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Use fingerprint"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Set screen lock for security"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Prevent others from using your tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Prevent others from using your device"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Prevent others from using your phone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Unlock with fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Unlock with your fingerprint"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Choose screen lock"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Choose work lock"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protect your tablet"</string>
@@ -827,6 +833,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Show password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Select AP Band"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz Band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz Band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP settings"</string>
@@ -932,7 +939,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi calling"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Turn on Wi-Fi Calling"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Use Wi-Fi instead of mobile network"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extend coverage by calling over Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Calling preference"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi calling mode"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming preference"</string>
@@ -1185,6 +1192,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobile network type"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator info"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobile network state"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Service state"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal strength"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1371,19 +1379,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Network, apps, or device can be reset"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reset Wi-Fi, mobile & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"This will reset all network settings, including:\n\n"<li>"Wi‑Fi"</li>"\n"<li>"Mobile data"</li>"\n"<li>"Bluetooth"</li>""</string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Also reset eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Erase all eSIMs on the phone. You’ll have to contact your carrier to redownload your eSIMs. This will not cancel your mobile service plan."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reset settings"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reset all network settings? You can’t undo this action!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reset settings"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reset?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Network reset is not available for this user"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Network settings have been reset"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Cant’t reset eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"The eSIMs can’tt be reset due to an error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Erase all data (factory reset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"This will erase all data from your tablet’s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>"\n"<li>"System and app data and settings"</li>"\n"<li>"Downloaded apps"</li>""</string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"This will erase all data from your phone’s "<b>"internal storage"</b>", including:\n\n"<li>"Your Google account"</li>"\n"<li>"System and app data and settings"</li>"\n"<li>"Downloaded apps"</li>""</string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">"\n\nYou are currently signed into the following accounts:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">"\n\nThere are other users present on this device.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237">""<li>"Music"</li>"\n"<li>"Photos"</li>"\n"<li>"Other user data"</li>""</string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008">""<li>"Carriers on eSIM"</li>""</string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177">""<li>"eSIMs"</li>""</string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">"\n\nThis will not cancel your mobile service plan."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">"\n\nTo clear music, pictures, and other user data, the "<b>"USB storage"</b>" needs to be erased."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">"\n\nTo clear music, pictures, and other user data, the "<b>"SD card"</b>" needs to be erased."</string>
@@ -1443,21 +1455,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Please connect to the internet"</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Location for work profile"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"High accuracy"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Battery saving"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Device only"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Location off"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"App-level permissions"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Recent location requests"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"No apps have requested location recently"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Location services"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"High battery use"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Low battery use"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Location mode"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Use GPS, Wi‑Fi, Bluetooth, or mobile networks to determine location"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Use Wi‑Fi, Bluetooth, or mobile networks to determine location"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Use GPS and device sensors to determine location"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanning"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi scanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Improve location by allowing system apps and services to detect Wi‑Fi networks at any time."</string>
@@ -2003,7 +2006,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> remaining"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> to charge"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Background activity"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricted"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Allow the app to run in the background"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"App can run in the background when not in use"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"App\'s background activity is limited when not in use"</string>
@@ -2052,14 +2055,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Battery can\'t provide good battery life"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Turn on smart battery manager"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Turn on to optimize battery usage"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Turn on Low Battery Mode"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Extend your battery life"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Low Battery Mode is on"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Some features are limited"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Phone used heavily"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet used heavily"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Device used heavily"</string>
@@ -2371,8 +2370,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sync is currently experiencing problems. It will be back shortly."</string>
<string name="add_account_label" msgid="7811707265834013767">"Add account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Work profile isn’t available yet"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work mode"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Allow work profile to function, including apps, background sync, and related features"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work profile"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Managed by your organization"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apps and notifications are off"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remove work profile"</string>
<string name="background_data" msgid="5779592891375473817">"Background data"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apps can sync, send, and receive data at any time"</string>
@@ -2623,7 +2623,7 @@
<item quantity="other">Check certificates</item>
<item quantity="one">Check certificate</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Users"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Multiple users"</string>
<string name="user_list_title" msgid="7937158411137563543">"Users & profiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Add user or profile"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Add user"</string>
@@ -2813,7 +2813,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps & notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissions, default apps"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Users & accounts"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Accounts"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Default apps"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Languages, time, backup, updates"</string>
<string name="search_results_title" msgid="1796252422574886932">"Settings"</string>
@@ -2844,7 +2846,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"dont don’t disturb, interrupt, interruption, break"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, location, history, reporting"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"accuracy"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restrict, restricted"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"text correction, correct, sound, vibrate, auto, language, gesture, suggest, suggestion, theme, offensive, word, type, emoji, international"</string>
@@ -2868,6 +2869,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"network, mobile network state, service state, signal strength, mobile network type, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serial number, hardware version"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, baseband version, kernel version"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Ambient display, Lock screen display"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Set up Wi-Fi NFC Tag"</string>
<string name="write_tag" msgid="8571858602896222537">"Write"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
@@ -2911,6 +2913,7 @@
<item quantity="one">1 rule</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Do Not Disturb"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Turn on Do Not Disturb"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Behavior"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Allow sounds and vibrations from"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"No sound"</string>
@@ -2920,8 +2923,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Turn on automatically"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatic rules"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatic rule"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Set Do Not Disturb rules"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limit sounds & vibrations at certain times"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silence phone at certain times"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Set Do Not Disturb rules"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Use rule"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Priority only"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarms only"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total silence"</string>
@@ -2929,12 +2933,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Block visual disturbances"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Allow visual signals"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Add"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Turn on"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Turn on now"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Turn off now"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Do Not Disturb is on until <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Do Not Disturb will stay on until you turn it off"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Do Not Disturb was automatically turned on by a rule (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Do Not Disturb was automatically turned on by an app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priority only"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work profile sounds"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Use personal profile sounds"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sounds are the same for work and personal profiles"</string>
@@ -2950,6 +2957,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtones"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Other sounds and vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Recently sent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Advanced"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work notifications"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Allow notification dots"</string>
@@ -3165,6 +3175,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"In addition to using your fingerprint to unlock your device, you can further protect this device by requiring your password before it starts up. Until the device starts up, it can’t receive calls, messages, or notifications, including alarms.\n\nThis helps protect data on lost or stolen devices. Require password to start your device?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Require PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Require pattern?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Require password?"</string>
@@ -3311,21 +3323,45 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Decline"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charge this device"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Just charge this device"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Supply power"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charge the connected device. Works only with devices that support USB charging."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transfer files"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfer files to another device"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transfer photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transfer photos or files if MTP is not supported (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Use device as MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <!-- no translation found for usb_use_MIDI (5116404702692483166) -->
+ <skip />
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Use this device as MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Use USB to"</string>
+ <!-- no translation found for usb_use (3372728031108932425) -->
+ <skip />
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Charging this device"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Supplying power"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferring files"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferring photos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Using device as MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Background check"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full background access"</string>
@@ -3434,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Wallpaper, sleep, font size"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sleep after 10 minutes of inactivity"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg <xliff:g id="USED_MEMORY">%1$s</xliff:g> of <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> memory used"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Current user: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Signed in as <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> is default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Back up disabled"</string>
- <string name="about_summary" msgid="924181828102801010">"Updated to Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action not allowed"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Can\'t change volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Calling not allowed"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS not allowed"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera not allowed"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot not allowed"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Can\'t turn off backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"This action is disabled. To learn more, contact your organization\'s admin."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"More details"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Your admin can monitor and manage apps and data associated with your work profile, including settings, permissions, corporate access, network activity, and the device\'s location information."</string>
@@ -3460,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Portable Wi-Fi hotspot <xliff:g id="ID_1">%1$s</xliff:g> is active, Wi-Fi for this device is turned off."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Airplane mode is on"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth, and mobile network are turned off. You can\'t make phone calls or connect to the internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Do not disturb is on (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Battery Saver is on"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performance is reduced. Location services and background data are turned off."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobile data is off"</string>
@@ -3470,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work profile is off"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apps, background sync, and other features related to your work profile are turned off."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Set Night Light schedule"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tint screen amber to help you fall asleep"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Automatically tint screen every night"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Night Light is on"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Screen is tinted amber. This may help you fall asleep."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggested for You"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> more"</string>
@@ -3577,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"none"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Ranking object is missing."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Ranking object doesn\'t contain this key."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulate a display with a cutout"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"None"</string>
<string name="special_access" msgid="3458780842491881155">"Special app access"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apps can use unrestricted data</item>
@@ -3600,7 +3643,8 @@
<string name="demo_mode" msgid="2798762752209330277">"System UI demo mode"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Layer Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work profile settings"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Contact search"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Allow contact searches by your organization to identify callers and contacts"</string>
@@ -3631,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Jump to camera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"To quickly open camera, press the power button twice. Works from any screen."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Open camera quickly"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Press power button twice to open camera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Flip camera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Take selfies faster"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Double-twist phone for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Double-twist tablet for selfie mode"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Double-twist device for selfie mode"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Double-tap to check phone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Double-tap to check tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Double-tap to check device"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"To check time, notification icons, and other info, double-tap your screen."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Check notifications when screen is off"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Lift to check phone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Lift to check tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Lift to check device"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"To check time, notification icons, and other info, pick up your phone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"To check time, notification icons, and other info, pick up your tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"To check time, notification icons, and other info, pick up your device."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Check notifications when screen is off"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swipe fingerprint for notifications"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swipe fingerprint"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"To check your notifications, swipe down on the fingerprint sensor on the back of your phone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"To check your notifications, swipe down on the fingerprint sensor on the back of your tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"To check your notifications, swipe down on the fingerprint sensor on the back of your device."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"See notifications quickly"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swipe down on the fingerprint sensor"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader is already unlocked"</string>
@@ -3788,6 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"This feature is not available on this device"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Force full GNSS measurements"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Track all GNSS constellations and frequencies with no duty cycling"</string>
- <string name="storage_access" msgid="8905018810338984531">"Storage access"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"storage access scoped directory"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Always show crash dialog"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Show dialog every time an app crashes"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Directory access"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"directory access"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"My Phone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"My Tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"My Device"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Device name"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Use Bluetooth when driving"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Turn on Bluetooth automatically when driving"</string>
</resources>
diff --git a/res/values-es/arrays.xml b/res/values-es/arrays.xml
index 8fcdf75..ce3daf5 100644
--- a/res/values-es/arrays.xml
+++ b/res/values-es/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Botón WPS"</item>
<item msgid="1624323946324499595">"PIN del otro dispositivo"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hora"</item>
<item msgid="5198271470953124739">"Siempre visible"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (predeterminado)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Mala"</item>
<item msgid="2042505933058940139">"Mala"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Más de 60 días de antigüedad"</item>
<item msgid="5692284879054004388">"Más de 90 días de antigüedad"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Utilizar preferencias de red"</item>
+ <item msgid="8745603368609022803">"Tratar como red de uso no medido"</item>
+ <item msgid="2266114985518865625">"Tratar como red de uso medido"</item>
+ </string-array>
</resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 75808de..821f7c7 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Tus dispositivos"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Emparejar dispositivo nuevo"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Permitir que el dispositivo se vincule y se conecte con dispositivos Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Inhabilitar tono de llamada por Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"No reproducir los tonos de llamada personalizados del teléfono en auriculares Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Conectados actualmente"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Dispositivos guardados"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Añadir dispositivo"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Establecer fecha"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Ordenar alfabéticamente"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Ordenar por zona horaria"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> empieza el <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Horario de verano"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Hora estándar"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Zona horaria por región"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Zonas horarias con compensación fija"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Fecha"</string>
<string name="time_picker_title" msgid="483460752287255019">"Hora"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Bloquear automáticamente"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mensaje en la pantalla de bloqueo"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Habilitar widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Inhabilitado por el administrador"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Mostrar opción de bloqueo"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Muestra la opción del botón de encendido que desactiva el acceso ampliado y el desbloqueo con huella digital."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ninguno"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"p. ej., Android de Juan"</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Información del perfil"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Cuentas"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Ubicación"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Utilizar la ubicación"</string>
<string name="account_settings_title" msgid="626177544686329806">"Cuentas"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Seguridad y ubicación"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Cifrado y credenciales"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"La contraseña que has introducido es correcta pero, lamentablemente, tus datos están dañados. \n\nPara seguir utilizando el tablet, debes restablecer el estado de fábrica. Al configurar el dispositivo después de este proceso, podrás restaurar los datos incluidos en la copia de seguridad de tu cuenta de Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"La contraseña que has introducido es correcta pero, lamentablemente, tus datos están dañados. \n\nPara seguir utilizando el teléfono, debes restablecer el estado de fábrica. Al configurar el dispositivo después de este proceso, podrás restaurar los datos incluidos en la copia de seguridad de tu cuenta de Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Cambiar método de entrada"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Establecer el bloqueo de pantalla"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protege tu dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Utilizar huella digital"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desbloquear con tu huella digital"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Bloqueo de pantalla por seguridad"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Evita que otros usuarios utilicen tu tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Evita que otros usuarios utilicen tu dispositivo"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Evita que otros usuarios utilicen tu teléfono"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Desbloquear con huella digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Desbloquear con tu huella digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Desbloquear con tu huella digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Desbloquear con tu huella digital"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Elige un bloqueo de pantalla"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Bloqueo de trabajo"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protege tu tablet"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como altavoz del teléfono"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Para música y contenido multimedia"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Ajustes de recordatorio"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Máximo de dispositivos de audio conectados por Bluetooth"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Selecciona el número máximo de dispositivos de audio conectados por Bluetooth"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Enviar pantalla"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Habilitar pantalla inalámbrica"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"No hay dispositivos cercanos."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Nombre"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Iniciar sesión"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> quiere activar la conexión Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> quiere desactivar la conexión Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Activar conexión Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Utilizar redes Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Ajustes de Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Configurar y administrar puntos de acceso inalámbricos"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Contraseña"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostrar contraseña"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Seleccionar banda de AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automáticamente"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Ajustes de IP"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponible)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Introduce la contraseña de tu red"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Red Wi‑Fi del operador"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Conectar a través de <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Conectar a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para mejorar la precisión de la ubicación y para otros fines, <xliff:g id="APP_NAME">%1$s</xliff:g> quiere activar la búsqueda de redes aunque la conexión Wi-Fi esté desactivada.\n\n¿Permitir para todas las aplicaciones que quieran buscar redes?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Para desactivar esta opción, accede a las opciones avanzadas del menú adicional."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -921,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Llamadas Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Activa la Llamada por Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Utiliza una red Wi-Fi en lugar de la red móvil"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Llamar por Wi‑Fi para ampliar la cobertura"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferencia de llamada"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modo de llamadas Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferencia de itinerancia"</string>
@@ -959,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Dirección de emergencia"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Se utiliza como tu ubicación al hacer una llamada de emergencia por Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Más información"</annotation>" sobre las funciones de DNS privado"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Pantalla"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sonido"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumen"</string>
@@ -1173,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo de red móvil"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Información de operador"</string>
<string name="status_data_state" msgid="5503181397066522950">"Estado de la red móvil"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Estado del servicio"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Intensidad de la señal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Itinerancia"</string>
@@ -1306,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Tu nueva <xliff:g id="NAME">^1</xliff:g> está lista. \n\nPara mover fotos, archivos y datos de aplicaciones a este dispositivo, accede a Ajustes > Almacenamiento."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Mover <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"La migración de <xliff:g id="APP">^1</xliff:g> y de sus datos a tu <xliff:g id="NAME_0">^2</xliff:g> solo durará un momento. No podrás utilizar la aplicación hasta que finalice el proceso. \n\nNo extraigas tu <xliff:g id="NAME_1">^2</xliff:g> durante la migración."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Debes desbloquear el usuario <xliff:g id="APP">^1</xliff:g> para transferir datos."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Moviendo <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"No extraigas tu <xliff:g id="NAME">^1</xliff:g> durante la migración \n\nLa aplicación <xliff:g id="APP">^2</xliff:g> de este dispositivo no estará disponible hasta que finalice el proceso."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancelar migración"</string>
@@ -1358,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Se puede recuperar la configuración de la red, de las aplicaciones o del dispositivo"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Recuperar ajustes de Wi-Fi, red móvil y Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Se recuperarán todos los ajustes de red, como:\n\n"<li>"Wi‑Fi"</li>\n<li>"Datos móviles"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Recuperar también el estado de las tarjetas eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Borra todas las tarjetas eSIM del teléfono. Ponte en contacto con tu operador para volver a descargar tus tarjetas eSIM. Esta acción no cancelará tu plan de servicios móviles."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Recuperar ajustes"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"¿Quieres recuperar todos los ajustes de red? Esta acción no se puede deshacer."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Recuperar ajustes"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"¿Restablecer?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Este usuario no puede restablecer la red"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Se han recuperado los ajustes de red"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"No se ha podido recuperar el estado de las tarjetas eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"No se ha podido recuperar el estado de las tarjetas eSIM debido a un error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Borrar todos los datos (recuperar estado de fábrica)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Se borrarán todos los datos del "<b>"almacenamiento interno"</b>" del tablet, como:\n\n"<li>"Tu cuenta de Google"</li>\n<li>"Los ajustes y los datos de aplicaciones y del sistema"</li>\n<li>"Las aplicaciones descargadas"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Se borrarán todos los datos del "<b>"almacenamiento interno"</b>" del teléfono, como:\n\n"<li>"Tu cuenta de Google"</li>\n<li>"Los ajustes y los datos de aplicaciones y del sistema"</li>\n<li>"Las aplicaciones descargadas"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Has iniciado sesión en las cuentas que se indican a continuación:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Hay otros usuarios presentes en este dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Música"</li>\n<li>"Fotos"</li>\n<li>"Otros datos de usuario"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operadores de la eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Tu plan de servicios móviles no se cancelará."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Para eliminar la música, las imágenes y otros datos de usuario, debes borrar el "<b>"almacenamiento USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Para eliminar la música, las imágenes y otros datos de usuario, debes borrar la "<b>"tarjeta SD"</b>"."</string>
@@ -1430,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Debes conectarte a Internet"</string>
<string name="location_title" msgid="1029961368397484576">"Mi ubicación"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Ubicación para el perfil de trabajo"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modo"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisión"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Ahorro de batería"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Solo dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Ubicación desactivada"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Permisos de las aplicaciones"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Solicitudes de ubicación recientes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Ninguna aplicación ha solicitado la ubicación recientemente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Servicios de ubicación"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Uso de batería elevado"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Poco uso de batería"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Preferencias de ubicación"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Usa las redes móviles, la conexión Wi-Fi, el Bluetooth o el GPS para determinar la ubicación"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Usa las redes móviles, la conexión Wi‑Fi o el Bluetooth para determinar la ubicación"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Utiliza el GPS y los sensores del dispositivo para determinar la ubicación"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Búsqueda"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Búsqueda de redes Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Los servicios y las aplicaciones del sistema pueden detectar redes Wi‑Fi en cualquier momento para mejorar la precisión de la ubicación."</string>
@@ -1466,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Fuentes de ubicación"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Información del tablet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Información del teléfono"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Información del dispositivo"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Información sobre el dispositivo emulado"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Ver información legal, estado, versión del software"</string>
<string name="legal_information" msgid="5769301644270604095">"Información legal"</string>
@@ -1573,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Ver todas las aplicaciones (<xliff:g id="COUNT">%1$d</xliff:g>)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tu tablet y tus datos personales son más vulnerables a los ataques de aplicaciones desconocidas. Al instalar aplicaciones de esta fuente, aceptas ser responsable de cualquier daño que sufra tu tablet o la pérdida de datos que se pueda derivar de su uso."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Tu teléfono y tus datos personales son más vulnerables a los ataques de aplicaciones desconocidas. Al instalar aplicaciones de esta fuente, aceptas ser responsable de cualquier daño que sufra tu teléfono o la pérdida de datos que se pueda derivar de su uso."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Tu dispositivo y tus datos personales son más vulnerables a los ataques de aplicaciones desconocidas. Al instalar aplicaciones de esta fuente, aceptas ser responsable de cualquier daño que sufra tu dispositivo o de la pérdida de datos que se pueda derivar de su uso."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Ajustes avanzados"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Habilitar más opciones de configuración"</string>
<string name="application_info_label" msgid="5736524913065714880">"Información de la aplicación"</string>
@@ -1745,7 +1764,7 @@
<string name="language_settings" msgid="8758655933029560944">"Idiomas e introducción de texto"</string>
<string name="language_empty_list_user_restricted" msgid="5984015900102140696">"No tienes permiso para cambiar el idioma del dispositivo."</string>
<string name="language_keyboard_settings_title" msgid="3709159207482544398">"Idiomas e introducción de texto"</string>
- <string name="input_assistance" msgid="7577795275222555487">"Asistencia de entrada"</string>
+ <string name="input_assistance" msgid="7577795275222555487">"Asistencia de introducción de texto"</string>
<string name="keyboard_settings_category" msgid="8275523930352487827">"Teclado e introducción de texto"</string>
<string name="phone_language" msgid="7116581601133118044">"Idiomas"</string>
<string name="phone_language_summary" msgid="3871309445655554211"></string>
@@ -1872,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Puede afectar al rendimiento"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Clic después de que el puntero deje de moverse"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Retraso antes del clic"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Utilizar el servicio"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Utilizar la corrección de color"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Utilizar subtítulos"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ACTIVADO"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"DESACTIVADO"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Mostrar en ajustes rápidos"</string>
@@ -1985,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Quedan <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> para completar la carga"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Actividad en segundo plano"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Con restricciones"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permite que la aplicación se ejecute en segundo plano"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"La aplicación puede funcionar en segundo plano cuando no se está usando"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"La actividad de la aplicación en segundo plano es limitada cuando no se está utilizando"</string>
@@ -2030,10 +2052,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Hay <xliff:g id="NUMBER">%1$d</xliff:g> aplicaciones que no funcionan correctamente"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"La batería funciona correctamente"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Las aplicaciones funcionan correctamente"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"La capacidad de la batería es baja"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Queda poca batería"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Activar el gestor de batería inteligente"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Activa esta opción para optimizar el uso de la batería"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Activa el modo de batería baja"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Consigue que tu batería dure más"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Modo de batería baja activado"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Algunas funciones están limitadas"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Mucho uso del teléfono"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Mucho uso del tablet"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Mucho uso del dispositivo"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Usado durante aproximadamente <xliff:g id="HOUR">%1$s</xliff:g> desde la última carga completa"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Has dado mucho uso a tu teléfono y se ha consumido mucha batería. La batería está funcionando de manera normal.\n\n El teléfono se ha usado durante aproximadamente <xliff:g id="HOUR">%1$s</xliff:g> desde la última carga completa.\n\n Uso total:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Has dado mucho uso a tu tablet y se ha consumido mucha batería. La batería está funcionando de manera normal.\n\n El tablet se ha usado durante aproximadamente <xliff:g id="HOUR">%1$s</xliff:g> desde la última carga completa.\n\n Uso total:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Has dado mucho uso a tu dispositivo y se ha consumido mucha batería. La batería está funcionando de manera normal.\n\n El dispositivo se ha usado durante aproximadamente <xliff:g id="HOUR">%1$s</xliff:g> desde la última carga completa.\n\n Uso total:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Gestor de batería inteligente"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Administrar batería automáticamente"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Ajusta automáticamente el consumo de batería de las aplicaciones según su uso"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Aplicaciones restringidas"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d aplicaciones</item>
+ <item quantity="one">%1$d aplicación</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"¿Detener la aplicación?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Tu teléfono no puede administrar el uso de la batería con normalidad porque <xliff:g id="APP">%1$s</xliff:g> lo mantiene activo.\n\nPara solucionarlo, detén la aplicación.\n\nSi el problema persiste, desinstala la aplicación para mejorar el rendimiento de la batería."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Tu tablet no puede administrar el uso de la batería con normalidad porque <xliff:g id="APP">%1$s</xliff:g> lo mantiene activo.\n\nPara solucionarlo, detén la aplicación.\n\nSi el problema persiste, desinstala la aplicación para mejorar el rendimiento de la batería."</string>
@@ -2142,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Servidor multimedia"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimización de aplicación"</string>
<string name="battery_saver" msgid="8172485772238572153">"Ahorro de batería"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Utilizar la función Ahorro de batería"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Activar automáticamente"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nunca"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"con un <xliff:g id="PERCENT">%1$s</xliff:g> de batería"</string>
@@ -2329,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"En este momento hay incidencias con la sincronización. Se restablecerá en breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Añadir cuenta"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"El perfil de trabajo aún no está disponible"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modo de trabajo"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permitir que se utilice el modo de trabajo, incluidas las aplicaciones, la sincronización en segundo plano y las funciones relacionadas"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Perfil de trabajo"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Administrado por tu organización"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Las aplicaciones y las notificaciones están desactivadas"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Quitar perfil de trabajo"</string>
<string name="background_data" msgid="5779592891375473817">"Datos en segundo plano"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Las aplicaciones pueden sincronizar datos, enviarlos y recibirlos."</string>
@@ -2362,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"¿Quitar cuenta?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Si quitas esta cuenta, se eliminarán todos sus mensajes, contactos y otros datos del tablet."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Si quitas esta cuenta, se eliminarán todos sus mensajes, contactos y otros datos del teléfono."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Si quitas esta cuenta, se eliminarán todos sus mensajes, contactos y otros datos del dispositivo."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"El administrador no permite realizar este cambio"</string>
<string name="provider_label" msgid="7724593781904508866">"Enviar suscripciones"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2463,13 +2507,13 @@
<string name="data_usage_total_during_range_mobile" product="tablet" msgid="1925687342154538972">"<xliff:g id="RANGE">%2$s</xliff:g>: unos <xliff:g id="TOTAL">%1$s</xliff:g> usados (según el cálculo del tablet). El cálculo del uso de datos del operador puede variar."</string>
<string name="data_usage_total_during_range_mobile" product="default" msgid="5063981061103812900">"<xliff:g id="RANGE">%2$s</xliff:g>: unos <xliff:g id="TOTAL">%1$s</xliff:g> usados (según el cálculo del teléfono). El cálculo del uso de datos del operador puede variar."</string>
<string name="data_usage_metered_title" msgid="7383175371006596441">"Restricciones de red"</string>
- <string name="data_usage_metered_body" msgid="7655851702771342507">"Las redes sin tarifa plana se tratan como redes móviles cuando se restringe el uso de datos en segundo plano. Las aplicaciones pueden mostrar una advertencia antes de usar estas redes para descargar archivos grandes."</string>
+ <string name="data_usage_metered_body" msgid="7655851702771342507">"Las redes sin uso medido se tratan como redes móviles cuando se restringe el uso de datos en segundo plano. Las aplicaciones pueden mostrar una advertencia antes de usar estas redes para descargar archivos grandes."</string>
<string name="data_usage_metered_mobile" msgid="5423305619126978393">"Redes móviles"</string>
- <string name="data_usage_metered_wifi" msgid="1761738002328299714">"Redes Wi-Fi sin tarifa plana"</string>
- <string name="data_usage_metered_wifi_disabled" msgid="727808462375941567">"Para seleccionar redes sin tarifa plana, activa el Wi‑Fi."</string>
+ <string name="data_usage_metered_wifi" msgid="1761738002328299714">"Redes Wi-Fi sin uso medido"</string>
+ <string name="data_usage_metered_wifi_disabled" msgid="727808462375941567">"Para seleccionar redes sin uso medido, activa el Wi‑Fi."</string>
<string name="data_usage_metered_auto" msgid="1262028400911918865">"Automática"</string>
- <string name="data_usage_metered_yes" msgid="9217539611385225894">"Sin tarifa plana"</string>
- <string name="data_usage_metered_no" msgid="4025232961929071789">"Con tarifa plana"</string>
+ <string name="data_usage_metered_yes" msgid="9217539611385225894">"De uso medido"</string>
+ <string name="data_usage_metered_no" msgid="4025232961929071789">"Con uso medido"</string>
<string name="data_usage_disclaimer" msgid="6887858149980673444">"El uso de datos del operador puede ser diferente al calculado por el dispositivo."</string>
<string name="cryptkeeper_emergency_call" msgid="198578731586097145">"Llamada de emergencia"</string>
<string name="cryptkeeper_return_to_call" msgid="5613717339452772491">"Volver a llamada"</string>
@@ -2580,7 +2624,7 @@
<item quantity="other">Comprobar certificados</item>
<item quantity="one">Comprobar certificado</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Usuarios"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Varios usuarios"</string>
<string name="user_list_title" msgid="7937158411137563543">"Usuarios y perfiles"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Añadir usuario o perfil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Añadir usuario"</string>
@@ -2770,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, enviar contenido"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplicaciones y notificaciones"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permisos, aplicaciones predeterminadas"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Usuarios y cuentas"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Cuentas"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplicaciones predeterminadas"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Idiomas, hora, copias de seguridad y actualizaciones"</string>
<string name="search_results_title" msgid="1796252422574886932">"Ajustes"</string>
@@ -2789,7 +2835,7 @@
<string name="keywords_display_font_size" msgid="3404655440064726124">"tamaño del texto"</string>
<string name="keywords_display_cast_screen" msgid="7684618996741933067">"proyectar, enviar"</string>
<string name="keywords_storage" msgid="3299217909546089225">"espacio, disco, disco duro, uso del dispositivo"</string>
- <string name="keywords_battery" msgid="1173830745699768388">"consumo de energía, carga"</string>
+ <string name="keywords_battery" msgid="1173830745699768388">"consumo de batería, carga"</string>
<string name="keywords_spell_checker" msgid="1399641226370605729">"ortografía, diccionarios, corrector ortográfico, corrección automática"</string>
<string name="keywords_voice_input" msgid="769778245192531102">"herramienta de reconocimiento, entrada, síntesis de voz, hablar, idioma, manos libres, reconocimiento, ofensiva, palabra, audio, historial, auriculares bluetooth"</string>
<string name="keywords_text_to_speech_output" msgid="5150660047085754699">"valorar, idioma, predeterminado, hablar, síntesis de voz, accesibilidad, lector de pantalla, ciego"</string>
@@ -2801,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"no molestar, interrumpir, interrupción, descanso"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, cercano, ubicación, historial, informes"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisión"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"cuenta"</string>
<string name="keywords_users" msgid="3434190133131387942">"restricción, restringir, restringido"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"corrección de texto, corregir, sonido, vibración, automático, idioma, gesto, sugerencia, tema, ofensivo, palabra, escribir, emoji, internacional"</string>
@@ -2825,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"red, estado de la red móvil, estado del servicio, intensidad de la señal, tipo de red móvil, itinerancia, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"número de serie, versión de hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nivel de parche de seguridad de android, versión de banda base, versión de kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Pantalla ambiente, pantalla de bloqueo"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurar etiqueta NFC Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Editar"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Toca una etiqueta para editarla..."</string>
@@ -2868,6 +2914,7 @@
<item quantity="one">1 regla</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"No molestar"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Activar el modo No molestar"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamiento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permitir sonidos/vibraciones de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Sin sonido"</string>
@@ -2877,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Activar automáticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Reglas automáticas"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regla automática"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Definir reglas de No molestar"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limitar sonido y vibración en algunos momentos"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silenciar teléfono en ciertos momentos"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Definir reglas de No molestar"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Usar regla"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Solo prioritarias"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Solo alarmas"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silencio total"</string>
@@ -2886,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear interrupciones visuales"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permitir señales visuales"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Añadir"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"ACTIVAR AHORA"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"DESACTIVAR AHORA"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Activar"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Activar ahora"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desactivar ahora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"El modo No molestar está activado hasta esta hora: <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"El modo No molestar permanecerá habilitado hasta que lo desactives"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Una regla (<xliff:g id="RULE_NAME">%s</xliff:g>) ha activado automáticamente el modo No molestar"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Una aplicación (<xliff:g id="APP_NAME">%s</xliff:g>) ha activado automáticamente el modo No molestar"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Solo prioritarias"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sonidos del perfil de trabajo"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Utilizar sonidos del perfil personal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Los sonidos de los perfiles personal y de trabajo son los mismos"</string>
@@ -2907,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Tonos de llamada"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Otros sonidos y vibraciones"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificaciones"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Enviadas recientemente"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Ajustes avanzados"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificaciones de trabajo"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permitir burbujas de notificación"</string>
@@ -2926,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Notificaciones de aplicaciones"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Categoría de notificaciones"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Grupo de categoría de notificaciones"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importancia"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Comportamiento"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Permitir sonido"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"No mostrar notificaciones nunca"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Sin sonido ni interrupción visual"</string>
@@ -2944,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Algo importante"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Muy importante"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Urgente"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Mostrar notificaciones"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asistente de notificaciones"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Acceso a notificaciones"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Se ha bloqueado el acceso a las notificaciones del perfil de trabajo"</string>
@@ -2974,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Acceso a No molestar"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Ninguna aplicación instalada ha solicitado acceso de No molestar"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Cargando aplicaciones..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android bloquea las notificaciones de esta aplicación para que no aparezcan en el dispositivo"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android bloquea esta categoría de notificaciones para que no aparezcan en el dispositivo"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android bloquea este grupo de notificaciones para que no aparezcan en el dispositivo"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Como solicitaste, Android está bloqueando las notificaciones de esta aplicación para que no aparezcan en el dispositivo"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Como solicitaste, Android está bloqueando esta categoría de notificaciones para que no aparezcan en el dispositivo"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Como solicitaste, Android está bloqueando este grupo de notificaciones para que no aparezcan en el dispositivo"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categorías"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Otros"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Además de utilizar tu huella digital para desbloquear el dispositivo, puedes protegerlo aún más configurándolo para que solicite una contraseña antes de que se inicie. Hasta entonces, no podrás recibir llamadas, mensajes ni notificaciones, incluidas las alarmas.\n\nEsto permite proteger los datos en dispositivos perdidos o robados. ¿Quieres que el dispositivo pida la contraseña para iniciarse?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Sí"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Sí"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"¿Solicitar PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"¿Solicitar patrón?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"¿Solicitar contraseña?"</string>
@@ -3251,7 +3308,7 @@
<string name="high_power_system" msgid="7362862974428225301">"Optimización de batería no disponible"</string>
<string name="high_power_desc" msgid="6283926163708585760">"No se aplica la optimización de la batería, por lo que se puede agotar más rápido."</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"¿Permitir que la aplicación esté activa siempre en segundo plano?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Si permites que <xliff:g id="APP_NAME">%1$s</xliff:g> está activa siempre en segundo plano, es posible que se reduzca la duración de la batería. \n\nPuedes cambiar esta opción en cualquier momento en Ajustes > Aplicaciones y notificaciones."</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Si permites que <xliff:g id="APP_NAME">%1$s</xliff:g> esté activa siempre en segundo plano, es posible que se reduzca la duración de la batería. \n\nPuedes cambiar esta opción en cualquier momento en Ajustes > Aplicaciones y notificaciones."</string>
<string name="battery_summary" msgid="8044042095190688654">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> de uso desde la última carga completa"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Gestión de la batería"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"No ha usado batería desde la última carga completa"</string>
@@ -3267,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Rechazar"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Cargar este dispositivo"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Cargar solo este dispositivo"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Suministrar corriente eléctrica"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Carga el dispositivo conectado. Solo funciona con dispositivos compatibles con la carga por USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transferir archivos"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transferir archivos a otro dispositivo"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transferir fotos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferir fotos o archivos si no se admite MTP (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Utilizar dispositivo como MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Utilizar este dispositivo como MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Utilizar USB para"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Utilizar USB para"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Cargando el dispositivo"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Suministrar energía"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferir archivos"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferir fotos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Utilizar el dispositivo como MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Mirroring de SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"comprobación de uso en segundo plano"</string>
<string name="background_check_title" msgid="4534254315824525593">"Acceso completo en segundo plano"</string>
@@ -3390,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Fondo de pantalla, suspensión, tamaño de la fuente"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Suspender tras 10 minutos de inactividad"</string>
<string name="memory_summary" msgid="8080825904671961872">"Se está usando una media de <xliff:g id="USED_MEMORY">%1$s</xliff:g> de <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> de memoria"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Usuario actual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Has iniciado sesión como <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"Aplicación predeterminada: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ACTIVADO / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ACTIVADA"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DESACTIVADO"</string>
<string name="backup_disabled" msgid="485189128759595412">"Copia de seguridad inhabilitada"</string>
- <string name="about_summary" msgid="924181828102801010">"Actualizado a Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Acción no permitida"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"No se puede cambiar el volumen"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"No se permite llamar"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"No se permite enviar SMS"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"No se permite usar la cámara"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"No se permiten capturar pantallas"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"No se pueden desactivar las copias de seguridad"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Esta acción está inhabilitada. Para obtener más información, ponte en contacto con el administrador de la organización."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Más información"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"El administrador puede supervisar y gestionar las aplicaciones y los datos asociados a tu perfil de trabajo, como los ajustes, los permisos, el acceso corporativo, la actividad de red y la información de ubicación del dispositivo."</string>
@@ -3416,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"El punto de acceso Wi-Fi <xliff:g id="ID_1">%1$s</xliff:g> está activo y la conexión Wi-Fi de este dispositivo está desactivada."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Modo avión activado"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"La red móvil, la conexión Wi‑Fi y el Bluetooth están desactivados. No puedes hacer llamadas ni conectarte a Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"No molestar activado (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Ahorro de batería activado"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Ha disminuido el rendimiento. Las datos en segundo plano y los servicios de ubicación están desactivados."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Datos móviles desactivados"</string>
@@ -3426,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Perfil de trabajo desactivado"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Las aplicaciones, la sincronización en segundo plano y otras funciones relacionadas con tu perfil de trabajo están desactivadas."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Definir horario de luz nocturna"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Pantalla ámbar para ayudar a conciliar sueño"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Cambiar automáticamente el color de la pantalla por la noche"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Luz nocturna activada"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"La pantalla adopta un tono ámbar que puede ayudarte a conciliar el sueño."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sugerencias personalizadas"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugerencias"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"Más de <xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"<xliff:g id="ID_1">%1$d</xliff:g> más"</string>
@@ -3533,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ninguno"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Falta un objeto de la clasificación."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"El objeto de la clasificación no incluye esta tecla."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simula una pantalla con un recorte"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Ninguna"</string>
<string name="special_access" msgid="3458780842491881155">"Acceso especial de aplicaciones"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplicaciones pueden utilizar datos sin restricción</item>
@@ -3555,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Conectado a varios dispositivos"</string>
<string name="demo_mode" msgid="2798762752209330277">"Modo de demostración de IU del sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Ajustes rápidos de mosaicos de desarrolladores"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Queremos ayudarte"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Estamos disponibles las 24 horas del día, 7 días a la semana"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Estamos disponibles las 24 horas del día, 7 días a la semana"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Nuestro equipo de asistencia está a tu disposición para ayudarte a solucionar cualquier problema"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Nuestro equipo de asistencia está disponible siempre que lo necesites"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Busca en la ayuda o vuelve durante nuestro horario de asistencia (hora local):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Horario del servicio de asistencia telefónica (hora local)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Busca en la Ayuda o consulta la sección Consejos y sugerencias"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Asistencia en:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Captura de ventanas"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Captura de superficies"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"¿Vas a viajar al extranjero?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Pueden aplicarse cargos internacionales."</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Teléfono"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Consulta la sección Consejos y sugerencias"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Buscar en la ayuda y enviar sugerencias"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Ponte en contacto con el servicio de asistencia"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Iniciar sesión"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"¿No puedes iniciar sesión?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Enviar información del sistema"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"No volver a mostrar"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Solicitando como"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Añadir cuenta"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Información del sistema"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Ajustes de perfil de trabajo"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Búsqueda de contactos"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permitir que tu organización busque contactos para identificar llamadas y contactos"</string>
@@ -3595,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> segundos</item>
<item quantity="one">1 segundo</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Tiempo de espera aproximado: <xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Gestionar almacenamiento"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Para liberar espacio, el Administrador de Almacenamiento borrará de tu dispositivo las fotos y vídeos que tengan copia de seguridad."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Borrar fotos y vídeos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Administrador de Almacenamiento"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Utilizar el Administrador de Almacenamiento"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automático"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Liberar espacio"</string>
@@ -3610,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Acceso rápido a la cámara"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Pulsa dos veces el botón de encendido para abrir la cámara rápidamente. Funciona desde cualquier pantalla."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Abrir la cámara rápidamente"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Pulsa el botón de encendido dos veces para abrir la cámara"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Cambiar de cámara"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Hacer selfies más rápido"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Gira el teléfono dos veces para activar el modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Gira el tablet dos veces para activar el modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Gira el dispositivo dos veces para activar el modo selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocar el teléfono dos veces para consultarlo"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocar el tablet dos veces para comprobar notificaciones"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocar el dispositivo dos veces para comprobar notificaciones"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Toca la pantalla dos veces para ver la hora, los iconos de notificación y otra información."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Consulta notificaciones cuando la pantalla esté apagada"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Levantar el teléfono para consultarlo"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Levantar el tablet para comprobar las notificaciones"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Levantar el dispositivo para comprobar las notificaciones"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Coger el teléfono para ver la hora, los iconos de notificación y otra información"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Coge el tablet para ver la hora, los iconos de notificación y otra información."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Coge el dispositivo para consultar la hora, iconos de notificación y otra información."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Consulta notificaciones cuando la pantalla esté apagada"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Deslizar por el sensor de huellas para abrir notificaciones"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Deslizar huella digital"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Para ver tus notificaciones, desliza el dedo hacia abajo en el sensor de huellas digitales situado en la parte trasera del teléfono."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Para ver tus notificaciones, desliza el dedo hacia abajo en el sensor de huellas digitales situado en la parte trasera del tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Para ver tus notificaciones, desliza el dedo hacia abajo en el sensor de huellas digitales situado en la parte trasera del dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Ver las notificaciones más rápido"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Desliza el dedo hacia abajo en sensor de huellas digitales"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Activado"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desactivado"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"El gestor de arranque ya está desbloqueado"</string>
@@ -3765,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Descubre tu nuevo tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Descubre tu nuevo dispositivo"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Esta función no está disponible en este dispositivo"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forzar mediciones de GNSS completas"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Registrar todas las frecuencias y constelaciones de GNSS sin ciclo de servicio"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Mostrar siempre el cuadro de diálogo de bloqueos"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostrar el cuadro de diálogo cuando una aplicación falle"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acceso al directorio"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acceso al directorio"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Mi teléfono"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Mi tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Mi dispositivo"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Cuenta"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nombre del dispositivo"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Usar Bluetooth al conducir"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Activar el Bluetooth automáticamente al conducir"</string>
</resources>
diff --git a/res/values-eu/arrays.xml b/res/values-eu/arrays.xml
index c23ae26..4b35fd5 100644
--- a/res/values-eu/arrays.xml
+++ b/res/values-eu/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Sakatu botoia"</item>
<item msgid="1624323946324499595">"Pareko gailuaren PINa"</item>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index bc268c4..ce9a3e6 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Ezarri data"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Ordenatu alfabetikoki"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Ordenatu ordu-zonaren arabera"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> egun honetan hasiko da: <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Udako ordutegia"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Ordu arrunta"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Lurraldearen araberako ordu-zona"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Ordu-zonen arteko diferentzia konpondu da"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Data"</string>
<string name="time_picker_title" msgid="483460752287255019">"Ordua"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Blokeatu automatikoki"</string>
@@ -352,6 +347,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Pantaila blokeatuaren mezua"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Gaitu widgetak"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Administratzaileak desgaitu du"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Bat ere ez"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Adibidez, Jonen Android gailua."</string>
@@ -360,8 +359,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profilaren informazioa"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Kontuak"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Kokapena"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Erabili kokapena"</string>
<string name="account_settings_title" msgid="626177544686329806">"Kontuak"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Segurtasuna eta kokapena"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Enkriptatzea eta kredentzialak"</string>
@@ -473,9 +471,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Idatzi duzun pasahitza zuzena da, baina datuak hondatuta daude. \n\nTableta erabiltzen jarraitzeko, jatorrizko ezarpenak berrezarri beharko dituzu. Berrezarri ondoren, tableta konfiguratzen duzunean, Google kontuan egindako babeskopiak leheneratu ahal izango dituzu."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Idatzi duzun pasahitza zuzena da, baina datuak hondatuta daude. \n\nTelefonoa erabiltzen jarraitzeko, jatorrizko ezarpenak berrezarri beharko dituzu. Berrezarri ondoren, telefonoa konfiguratzen duzunean, Google kontuan egindako babeskopiak leheneratu ahal izango dituzu."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Aldatu idazketa-metodoa"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Ezarri pantailaren blokeoa"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Babestu gailua"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Erabili hatz-marka"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desblokeatu hatz-markarekin"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Aukeratu pantailaren blokeoa"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Aukeratu laneko blokeoa"</string>
@@ -721,8 +726,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Izena"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Hasi saioa"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mb/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> aplikazioak Wi-Fi konexioa aktibatu nahi du"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> aplikazioak Wi-Fi konexioa desaktibatu nahi du"</string>
@@ -740,8 +744,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Aktibatu Wi-Fia"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Erabili Wi-Fi konexioa"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi ezarpenak"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Konfiguratu eta kudeatu hari gabeko sarbide-puntuak"</string>
@@ -836,6 +839,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Pasahitza"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Erakutsi pasahitza"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Hautatu AP banda"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatikoa"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz-ko banda"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz-ko banda"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ezarpenak"</string>
@@ -941,7 +945,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidSarePublikoa"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi bidezko deiak"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Aktibatu Wi-Fi bidezko deiak"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Erabili Wi-Fi sarea sare mugikorraren ordez"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Deitzeko aukera lehenetsiak"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi bidez deitzeko modua"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Ibiltaritzako hobespena"</string>
@@ -1194,6 +1199,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Sare mugikor mota"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operadorearen informazioa"</string>
<string name="status_data_state" msgid="5503181397066522950">"Sare mugikorraren egoera"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Zerbitzuaren egoera"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Seinalearen indarra"</string>
<string name="status_roaming" msgid="2638800467430913403">"Ibiltaritzan"</string>
@@ -1380,19 +1387,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Sarea, aplikazioak edota gailua berrezar daitezke"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Berrezarri Wi-Fi, Bluetooth eta sare mugikorraren ezarpenak"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Hori eginez gero, sare guztien ezarpenak berrezarri egingo dira, besteak beste: \n\n"<li>"Wi‑Fi"</li>\n<li>"Datu-konexioa"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Gainera, berrezarri eSIM txartelak"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Berrezarri ezarpenak"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Sareko ezarpen guztiak berrezarri nahi dituzu? Ekintza hori ezin da desegin."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Berrezarri ezarpenak"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Berrezarri?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Erabiltzaileak ez du sarea berrezartzeko baimenik"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Berrezarri dira sareko ezarpenak"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Ezin dira berrezarri eSIM txartelak"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Ezin dira berrezarri eSIM txartelak errore bat gertatu delako."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Ezabatu datu guztiak (berrezarri fabrikako ezarpenak)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Tabletaren "<b>"barneko memoriako"</b>" datu guztiak ezabatuko dira, besteak beste:\n\n"<li>"Google kontua"</li>\n<li>"Sistema- eta aplikazioen datuak eta ezarpenak"</li>\n<li>"Deskargatutako aplikazioak"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Telefonoaren "<b>"barneko memoriako"</b>" datu guztiak ezabatuko dira, besteak beste:\n\n"<li>"Google kontua"</li>\n<li>"Sistema- eta aplikazioen datuak nahiz ezarpenak"</li>\n<li>"Deskargatutako aplikazioak"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Kontu hauetan hasi duzu saioa:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Badaude erabiltzaile gehiago gailu honetan.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musika"</li>\n<li>"Argazkiak"</li>\n<li>"Bestelako erabiltzaile-datuak"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM txartela onartzen duten operadoreak"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM txartelak"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Horrek ez du utziko bertan behera operadorearekin kontratatuta duzun zerbitzu-plana."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Musika, irudiak eta bestelako erabiltzaile-datuak garbitzeko, "<b>"USB memoria"</b>" ezabatu behar da."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Musika, irudiak eta bestelako erabiltzaile-datuak garbitzeko, "<b>"SD txartela"</b>" ezabatu behar da."</string>
@@ -1401,8 +1413,8 @@
<string name="erase_external_storage_description" product="nosdcard" msgid="4728558173931599429">"Ezabatu barneko USB memoriako datu guztiak, adibidez, musika edo argazkiak"</string>
<string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"Ezabatu SD txarteleko datu guztiak, besteak beste, musika edo argazkiak."</string>
<string name="erase_esim_storage" msgid="1886761972867390123">"Ezabatu eSIM txartelak"</string>
- <string name="erase_esim_storage_description" product="default" msgid="708691303677321598">"Ezabatu telefonoko eSIM txartel guztiak. Ez da bertan behera utziko zerbitzu mugikorraren plana."</string>
- <string name="erase_esim_storage_description" product="tablet" msgid="1780953956941209107">"Ezabatu tabletako eSIM txartel guztiak. Ez da bertan behera utziko zerbitzu mugikorraren plana."</string>
+ <string name="erase_esim_storage_description" product="default" msgid="708691303677321598">"Ezabatu telefonoko eSIM txartel guztiak. Ez da bertan behera utziko mugikorreko zerbitzu-plana."</string>
+ <string name="erase_esim_storage_description" product="tablet" msgid="1780953956941209107">"Ezabatu tabletako eSIM txartel guztiak. Ez da bertan behera utziko mugikorreko zerbitzu-plana."</string>
<string name="master_clear_button_text" product="tablet" msgid="3130786116528304116">"Berrezarri tableta"</string>
<string name="master_clear_button_text" product="default" msgid="7550632653343157971">"Berrezarri telefonoa"</string>
<string name="master_clear_final_desc" msgid="7318683914280403086">"Informazio pertsonal guztia eta deskargatutako aplikazioak ezabatu nahi dituzu? Ekintza hori ezin da desegin."</string>
@@ -1452,21 +1464,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Konektatu Internetera"</string>
<string name="location_title" msgid="1029961368397484576">"Nire kokapena"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Laneko profilaren kokapena"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modua"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Zehaztasun handia"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Bateria aurreztea"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Gailua soilik"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Kokapena desaktibatuta"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Aplikazio-mailako baimenak"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Azken kokapen-eskaerak"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Ez dago kokapena duela gutxi eskatu duen aplikaziorik"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Kokapen-zerbitzuak"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Bateria-erabilera handia"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Bateria-erabilera txikia"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Kokapen modua"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Erabili GPS sistema edota Wi‑Fi, Bluetooth edo telefonia mugikorreko sareak kokapena zehazteko"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Erabili Wi‑Fi, Bluetooth edo telefonia mugikorreko sareak kokapena zehazteko"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Erabili GPS sistema eta gailuaren sentsoreak kokapena zehazteko"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Bilaketa"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi sareak bilatzea"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Hobetu kokapenaren zehaztasuna sistemaren aplikazioei eta zerbitzuei Wi-Fi sareak edonoiz hautemateko aukera emanda."</string>
@@ -1488,8 +1491,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Kokapenaren iturburuak"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Tabletari buruz"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Telefonoari buruz"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Gailuari buruz"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Emulatutako gailuari buruz"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Ikusi legezko informazioa, egoera, software-bertsioa"</string>
<string name="legal_information" msgid="5769301644270604095">"Lege-informazioa"</string>
@@ -1597,8 +1599,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Ikusi <xliff:g id="COUNT">%1$d</xliff:g> aplikazioak"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tabletak eta datu pertsonalek aplikazio ezezagunen erasoak jaso ditzakete. Iturburu honetako aplikazioak instalatzen badituzu, onartzen duzu haiek erabiltzeagatik tabletari gerta dakizkiokeen kalteen edo datu-galeren erantzulea zeu zarela."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefonoak eta datu pertsonalek aplikazio ezezagunen erasoak jaso ditzakete. Iturburu honetako aplikazioak instalatzen badituzu, onartzen duzu haiek erabiltzeagatik telefonoari gerta dakizkiokeen kalteen edo datu-galeren erantzulea zeu zarela."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Gailuak eta datu pertsonalek aplikazio ezezagunen erasoak jaso ditzakete. Iturburu honetako aplikazioak instalatzen badituzu, onartu egingo duzu haiek erabiltzeagatik gailuari gerta dakizkiokeen kalteen edo datu-galeren erantzulea zeu izango zarela."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Ezarpen aurreratuak"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Gaitu ezarpenen aukera gehiago"</string>
<string name="application_info_label" msgid="5736524913065714880">"Aplikazioen informazioa"</string>
@@ -1898,12 +1899,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Baliteke errendimenduan eragina izatea"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Egin klik erakusleak mugitzeari uztean"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Klik egin aurretiko atzerapena"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Erabili zerbitzua"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Erabili koloreen zuzenketa"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Erabili azpitituluak"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"AKTIBATUTA"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"DESAKTIBATUTA"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Erakutsi Ezarpen bizkorretan"</string>
@@ -2017,7 +2015,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Geratzen den denbora: <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Kargatu arteko denbora: <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Atzeko planoko jarduerak"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Murriztua"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Baimendu aplikazioari atzeko planoan funtzionatzea"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Erabiltzen ari ez zarenean, atzeko planoan exekuta daiteke aplikazioa"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Erabiltzen ari ez zarenean, aplikazioak murriztuta izaten ditu atzeko planoko jarduerak"</string>
@@ -2064,18 +2062,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikazioen portaera normala da"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Bateriaren edukiera txikiegia da"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Bateriak ezin du eskaini iraupen onargarria"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Aktibatu bateria-kudeatzaile adimenduna"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Aktiba ezazu bateriaren erabilera optimizatzeko"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Aktibatu bateria gutxiko modua"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Luzatu bateriaren iraupena"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Aktibatu da bateria gutxiko modua"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Eginbide batzuk mugatuta daude"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefonoa asko erabili da"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tableta asko erabili da"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Gailua asko erabili da"</string>
@@ -2199,8 +2191,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Multimedia-zerbitzaria"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Aplikazio-optimizazioa"</string>
<string name="battery_saver" msgid="8172485772238572153">"Bateria-aurrezlea"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Erabili Bateria-aurrezlea"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Aktibatu automatikoki"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Inoiz ez"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"bateriaren maila <xliff:g id="PERCENT">%1$s</xliff:g> denean"</string>
@@ -2325,7 +2316,7 @@
<string name="backup_erase_dialog_title" msgid="1027640829482174106"></string>
<string name="backup_erase_dialog_message" msgid="5221011285568343155">"Wi-Fi pasahitzen, laster-marken, bestelako ezarpenen eta aplikazioetako datuen babeskopiak egiteari utzi eta Google zerbitzarietako kopia guztiak ezabatu nahi dituzu?"</string>
<string name="fullbackup_erase_dialog_message" msgid="694766389396659626">"Gailuko datuen (adibidez, Wi-Fi pasahitzak eta deien historia) eta aplikazioetako datuen (besteak beste, ezarpenak eta aplikazioek gordetako fitxategiak) babeskopiak egiteari utzi nahi diozu eta urruneko zerbitzarietako kopia guztiak ezabatu nahi dituzu?"</string>
- <string name="fullbackup_data_summary" msgid="960850365007767734">"Egin babeskopiak automatikoki urrunetik, bai gailuetako datuenak (esaterako, Wi-Fi sareetako pasahitzak eta deien historia), bai aplikazioetako datuenak (esaterako, ezarpenak eta aplikazioek gordetako fitxategiak).\n\nBabeskopiak automatikoki egiteko aukera aktibatzean, gailuko eta aplikazioetako datuak urrunetik gordetzen dira aldizka. Aplikazioetako datuak aplikazioek gordetako edozein datu izan daitezke (garatzailearen ezarpenen arabera), eta kontuzkoa izan litekeen informazioa ere sar daiteke (adibidez, kontaktuak, mezuak eta argazkiak)."</string>
+ <string name="fullbackup_data_summary" msgid="960850365007767734">"Egin babeskopiak automatikoki urrunetik, bai gailuetako datuenak (esaterako, Wi-Fi sareetako pasahitzak eta deien historia), bai aplikazioetako datuenak (esaterako, ezarpenak eta aplikazioek gordetako fitxategiak).\n\nBabeskopiak automatikoki egiteko aukera aktibatzean, gailuko eta aplikazioetako datuak urrunetik gordetzen dira aldizka. Aplikazioetako datuak aplikazioek gordetako edozein datu izan daitezke (garatzailearen ezarpenen arabera), eta kontuzkoak izan litezkeen datuak ere sar daitezke (adibidez, kontaktuak, mezuak eta argazkiak)."</string>
<string name="device_admin_settings_title" msgid="4960761799560705902">"Gailua administratzeko aplikazioaren ezarpenak"</string>
<string name="active_device_admin_msg" msgid="578748451637360192">"Gailua administratzeko aplikazioa"</string>
<string name="remove_device_admin" msgid="9207368982033308173">"Desaktibatu gailua administratzeko aplikazioa"</string>
@@ -2388,8 +2379,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sinkronizazioak arazoak ditu. Laster egongo da berriro erabilgarri."</string>
<string name="add_account_label" msgid="7811707265834013767">"Gehitu kontua"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Laneko profila ez dago oraindik erabilgarri"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Lan modua"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Baimendu laneko profilak funtzionatzea, besteak beste, aplikazioak, atzeko planoko sinkronizazioa eta erlazionatutako eginbideak"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Kendu laneko profila"</string>
<string name="background_data" msgid="5779592891375473817">"Atzeko planoko datuak"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikazioek datuak edonoiz sinkroniza, bidal eta jaso ditzakete"</string>
@@ -2421,8 +2416,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Kontua kendu?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Kontua kentzen baduzu, bere mezu, kontaktu eta bestelako datu guztiak tabletatik ezabatuko dira!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Kontua kentzen baduzu, bere mezu, kontaktu eta bestelako datu guztiak telefonotik ezabatuko dira!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Kontua kentzen baduzu, bertako mezu, kontaktu eta bestelako datu guztiak ezabatuko dira gailutik!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Administratzaileak ez du eman aldaketa egiteko baimena"</string>
<string name="provider_label" msgid="7724593781904508866">"Push-harpidetzak"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2635,8 @@
<item quantity="other">Ikusi ziurtagiriak</item>
<item quantity="one">Ikusi ziurtagiria</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Erabiltzaileak"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Erabiltzaileak eta profilak"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Gehitu erabiltzailea edo profila"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Gehitu erabiltzailea"</string>
@@ -2831,7 +2826,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, igorpenak"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikazioak eta jakinarazpenak"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Baimenak, aplikazio lehenetsiak"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Erabiltzaileak eta kontuak"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplikazio lehenetsiak"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Hizkuntzak, ordua, babeskopiak, eguneratzeak"</string>
<string name="search_results_title" msgid="1796252422574886932">"Ezarpenak"</string>
@@ -2862,7 +2858,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ez molestatu, eten, etenaldi, atseden"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"inguruko, inguruan, kokapen, historia, hautemate, hauteman, detektatu"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"zehaztasun"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"kontu"</string>
<string name="keywords_users" msgid="3434190133131387942">"muga, mugatu, murriztu, murriztapen, debekatu, debeku"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"testua, zuzenketa, zuzendu, soinua, dardara, automatikoa, hizkuntza, keinua, iradoki, iradokizuna, gaia, iraingarria, hitza, mota, emotikonoa, nazioartekoa"</string>
@@ -2929,6 +2924,7 @@
<item quantity="one">1 arau</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ez molestatu"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Aktibatu \"Ez molestatu\" modua"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Jokabidea"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Baimendu soinu eta dardara hauek:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Ez egin soinurik"</string>
@@ -2938,8 +2934,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Aktibatu automatikoki"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Arau automatikoak"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Arau automatikoa"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Ezarri \"Ez molestatu\" arauak"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Mugatu soinuak eta dardarak ordu jakinetara"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Erabili araua"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Lehentasuna dutenak soilik"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarmak soilik"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Isiltasun osoa"</string>
@@ -2947,12 +2946,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokeatu oztopo bisualak"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Baimendu seinale bisualak"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Gehitu"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Aktibatu"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Aktibatu"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desaktibatu"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> arte egongo da aktibatuta \"Ez molestatu\" modua"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Desaktibatzen duzun arte egongo da aktibatuta \"Ez molestatu\" modua"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"<xliff:g id="RULE_NAME">%s</xliff:g> arauak automatikoki aktibatu du \"Ez molestatu\" modua"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"<xliff:g id="APP_NAME">%s</xliff:g> aplikazioak automatikoki aktibatu du \"Ez molestatu\" modua"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Lehentasuna dutenak soilik"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Laneko profilaren soinuak"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Erabili profil pertsonalaren soinuak"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Soinu berberak erabiltzen dira laneko profilean nahiz profil pertsonalean"</string>
@@ -2968,6 +2970,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Tonuak"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Beste soinu eta dardara batzuk"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Jakinarazpenak"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Berriki bidalitakoak"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Ezarpen aurreratuak"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Laneko jakinarazpenak"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Baimendu jakinarazteko biribiltxoak"</string>
@@ -3183,6 +3186,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Gailua babestuago izan dezazun, desblokeatzeko hatz-marka erabiltzeaz gain, pasahitza eska dezakezu gailua abiarazterakoan. Abiarazi ezean, gailuak ezingo du jaso deirik, mezurik edo jakinarazpenik, eta alarmek ez dute joko.\n\nGaldutako edo lapurtutako gailuetan dauden datuak babesteko balio du neurri horrek. Pasahitza eskatzea nahi duzu gailua abiarazterakoan?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Bai"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ez"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Bai"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ez"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN kodea eskatzea nahi duzu?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Eredua eskatzea nahi duzu?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Pasahitza eskatzea nahi duzu?"</string>
@@ -3203,7 +3208,7 @@
<string name="storage_type_internal" msgid="6042049833565674948">"Barneko memoria"</string>
<string name="storage_type_external" msgid="7738894330670001898">"Kanpoko memoria"</string>
<string name="app_data_usage" msgid="7942375313697452803">"Aplikazioak erabilitako datuak"</string>
- <string name="data_summary_format" msgid="6213211533341068366">"<xliff:g id="SIZE">%1$s</xliff:g>, <xliff:g id="DATE">%2$s</xliff:g> eta gero"</string>
+ <string name="data_summary_format" msgid="6213211533341068366">"<xliff:g id="SIZE">%1$s</xliff:g>, <xliff:g id="DATE">%2$s</xliff:g>az geroztik"</string>
<string name="storage_used" msgid="7128074132917008743">"Erabilitako memoria"</string>
<string name="change" msgid="6657848623929839991">"Aldatu"</string>
<string name="change_storage" msgid="600475265207060436">"Aldatu biltegia"</string>
@@ -3455,7 +3460,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Uneko erabiltzailea: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> gisa hasi duzu saioa"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> da aplikazio lehenetsia"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"AKTIBATUTA / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"DESAKTIBATUTA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Desgaituta dago babeskopiak egiteko aukera"</string>
<string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> bertsiora eguneratuta"</string>
@@ -3465,6 +3471,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Ez da onartzen SMS mezuak bidaltzea"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Ez da onartzen kamera erabiltzea"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Ez da onartzen pantaila-argazkiak ateratzea"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Ezin dira desaktibatu babeskopiak"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Desgaituta dago hori egiteko aukera. Informazio gehiago lortzeko, jarri erakundearen administratzailearekin harremanetan."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Xehetasun gehiago"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administratzaileak gainbegiratu eta kudeatu egin ditzake laneko profilarekin erlazionatutako aplikazioak eta datuak, besteak beste, ezarpenak, baimenak, enpresaren sarbide-baimenak, sareko jarduerak eta gailuaren kokapen-informazioa."</string>
@@ -3488,9 +3495,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"Laneko profila desaktibatuta"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Desaktibatuta daude aplikazioak, atzeko planoko sinkronizazioa eta laneko profilarekin erlazionatutako bestelako eginbideak."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Ezarri gaueko argiaren ordutegia"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Erabili pantaila horikara errazago lokartzeko"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Gaueko argia aktibatuta"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Pantaila tindu horikaraz jantzi dugu. Errazago hartuko zaitu loak horrela."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Zuri iradokiak"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Iradokizunak"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+ beste <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3595,6 +3604,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"bat ere ez"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Sailkapen-objektua falta da."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Sailkapen-objektuak ez du gako hau."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulatu mozketa bat duen pantaila bat"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Bat ere ez"</string>
<string name="special_access" msgid="3458780842491881155">"Aplikazio-baimen bereziak"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplikaziok dute datuak mugarik gabe erabiltzeko aukera</item>
@@ -3617,10 +3628,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Gailu batera baino gehiagotara konektatuta"</string>
<string name="demo_mode" msgid="2798762752209330277">"Sistemaren erabiltzaile-interfazearen demo modua"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Ezarpen bizkorretako garatzaileentzako lauzak"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Leihoen arrastoa"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Azalerako arrastoa"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Laneko profilaren ezarpenak"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontaktu-bilaketak"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Onartu erakundeko kontaktu-bilaketek deitzaileak eta kontaktuak identifikatzea"</string>
@@ -3640,8 +3649,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Memorian tokia egiteko, babeskopiak dituzten argazkiak eta bideoak gailutik kentzen ditu memoria-kudeatzaileak."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Kendu argazkiak eta bideoak"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Memoria-kudeatzailea"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Erabili Memoria-kudeatzailea"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatikoa"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Eskuzko ezarpenak"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Egin tokia"</string>
@@ -3652,32 +3660,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Ireki kamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Kamera bizkor irekitzeko, sakatu birritan etengailua. Edozein pantailatan zaudela egin dezakezu hori."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Ireki kamera bizkor"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Kamera irekitzeko, sakatu birritan etengailua"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Biratu kamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Atera autoargazkiak bizkorrago"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Autoargazki modua erabiltzeko, biratu telefonoa birritan"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Autoargazki modua erabiltzeko, biratu tableta birritan"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Autoargazki modua erabiltzeko, biratu gailua birritan"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Sakatu birritan telefonoa bertan dagoena ikusteko"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Sakatu birritan tableta bertan dagoena ikusteko"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Sakatu birritan gailua bertan dagoena ikusteko"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Ordua, jakinarazpenen ikonoak eta bestelako informazioa begiratzeko, sakatu pantaila birritan."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Ikusi jakinarazpenak pantaila itzalita dagoenean"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Jaso telefonoa bertan dagoena ikusteko"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Jaso tableta bertan dagoena ikusteko"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Jaso gailua bertan dagoena ikusteko"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ordua, jakinarazpenen ikonoak eta bestelako informazioa begiratzeko, hartu telefonoa."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ordua, jakinarazpenen ikonoak eta bestelako informazioa begiratzeko, hartu tableta."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ordua, jakinarazpenen ikonoak eta bestelako informazioa begiratzeko, hartu gailua."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Ikusi jakinarazpenak pantaila itzalita dagoenean"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Pasatu hatza sentsoretik jakinarazpenak ikusteko"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Pasatu hatz-marka"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Jakinarazpenei begiratu bat emateko, pasatu hatza beherantz telefonoaren atzealdeko hatz-marken sentsorean."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Jakinarazpenei begiratu bat emateko, pasatu hatza beherantz tabletaren atzealdeko hatz-marken sentsorean."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Jakinarazpenei begiratu bat emateko, pasatu hatza beherantz gailuaren atzealdeko hatz-marken sentsorean."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Ikusi jakinarazpenak bizkor"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Pasatu hatza beherantz hatz-marken sentsorean"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Aktibatuta"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desaktibatuta"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Abiarazlea desblokeatuta dago dagoeneko"</string>
@@ -3809,8 +3810,24 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Eginbidea ez dago erabilgarri gailu honetan"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Behartu GNSS neurketa osoak gauzatzera"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Egin GNSS konstelazio eta maiztasun guztien jarraipena, eginbeharren ziklorik gabe"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Erakutsi beti hutsegiteen leihoak"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Erakutsi leiho bat aplikazioren batek huts egiten duen bakoitzean"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Direktoriorako sarbidea"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"direktoriorako sarbidea"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-fi/arrays.xml b/res/values-fi/arrays.xml
index e30aa86..d0f645c 100644
--- a/res/values-fi/arrays.xml
+++ b/res/values-fi/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Paina painiketta"</item>
<item msgid="1624323946324499595">"Vertaislaitteen PIN-koodi"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 tunti"</item>
<item msgid="5198271470953124739">"Ei aikakatkaisua"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (oletusarvo)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Huono"</item>
<item msgid="2042505933058940139">"Heikko"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Yli 60 päivää vanhat"</item>
<item msgid="5692284879054004388">"Yli 90 päivää vanhat"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Käytä verkkoasetusta"</item>
+ <item msgid="8745603368609022803">"Merkitse maksulliseksi"</item>
+ <item msgid="2266114985518865625">"Merkitse maksuttomaksi"</item>
+ </string-array>
</resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index ab9abd8..8549728 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Omat laitteet"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Muodosta laitepari uuden laitteen kanssa"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Salli laitteen muodostaa laitepari Bluetooth-laitteisiin ja yhdistää niihin"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Poista käytöstä kaistalla soitto"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Älä toista puhelimen muokattuja soittoääniä Bluetooth-kuulokemikrofoneissa"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Yhdistetty tällä hetkellä"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Tallennetut laitteet"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Lisää laite"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Aseta päivämäärä"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Lajittelu aakkosjärjestyksessä"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Lajittelu aikavyöhykkeen mukaan"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> alkaa <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Kesäaika"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Normaaliaika"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Aikavyöhyke alueittain"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Kiinteät aikavyöhykkeet"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Päiväys"</string>
<string name="time_picker_title" msgid="483460752287255019">"Aika"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Lukitse automaattisesti"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Lukitusnäytön teksti"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Käytä widgetejä"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Järjestelmänvalvojan estämä"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Näytä lukitusasetus"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Näytä virtapainikeasetus, joka poistaa käytöstä lisäkäyttöoikeudet ja lukituksen avaamisen sormenjäljellä"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ei mitään"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Esim. Rikun android"</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profiilin tiedot"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Tilit"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Sijainti"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Käytä sijaintia"</string>
<string name="account_settings_title" msgid="626177544686329806">"Tilit"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Suojaus ja sijainti"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Salaus ja kirjautumistiedot"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Annoit oikean salasanan, mutta tiedot ovat valitettavasti vioittuneet. \n\nTehdasasetukset on palautettava, jotta voit jatkaa tabletin käyttöä. Tehdasasetusten palautuksen jälkeen voit määrittää tabletin asetukset uudelleen ja palauttaa Google-tiliisi mahdollisesti varmuuskopioidut tiedot."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Annoit oikean salasanan, mutta tiedot ovat valitettavasti vioittuneet. \n\nTehdasasetukset on palautettava, jotta voit jatkaa puhelimen käyttöä. Tehdasasetusten palautuksen jälkeen voit määrittää puhelimen asetukset uudelleen ja palauttaa Google-tiliisi mahdollisesti varmuuskopioidut tiedot."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Vaihda syöttötapaa"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Määritä näytön lukitus"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Suojaa laitettasi"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Käytä sormenjälkeä"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Lukituksen avaaminen sormenjäljellä"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Näytön lukitus turvallisuussyistä"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Estä muita käyttämästä tablettiasi"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Estä muita käyttämästä laitettasi"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Estä muita käyttämästä puhelintasi"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Avaa sormenjäljellä"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Lukituksen avaaminen sormenjäljellä"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Lukituksen avaaminen sormenjäljellä"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Lukituksen avaaminen sormenjäljellä"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Valitse näytön lukitus"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Työprofiilin lukitus"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Tabletin suojaaminen"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Kaiuttimena"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Musiikille ja medialle"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Muista asetukset"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Liitettyjen Bluetooth-äänilaitteiden enimmäismäärä"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Valitse liitettyjen Bluetooth-äänilaitteiden enimmäismäärä"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Lähetä"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Ota langaton näyttö käyttöön"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Bluetooth-laitteita ei löydy lähistöltä."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Nimi"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Kirjaudu sisään"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mt/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> haluaa ottaa Wi-Fin käyttöön."</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> haluaa poistaa Wi-Fin käytöstä."</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Ota Wi-Fi käyttöön"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Käytä Wi-Fiä"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi-asetukset"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Ota käyttöön ja hallinnoi langattoman yhteyden tukiasemia"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Salasana"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Näytä salasana"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Valitse AP-taajuus"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automaattinen"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 GHz:n taajuus"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz:n taajuus"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP-asetukset"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS käytettävissä)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Anna verkkosalasana"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Operaattorin Wi‑Fi-verkko"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Muodosta yhteys: <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Muodosta yhteys: <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> haluaa parantaa sijainnin tarkkuutta ja suorittaa muita toimintoja ottamalla verkon etsinnän käyttöön, vaikka Wi-Fi-yhteys ei ole käytössä.\n\nAnnetaanko tämä lupa kaikille sovelluksille, jotka haluavat etsiä verkkoja?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Poista asetus käytöstä ylivuotovalikon lisäasetuksista."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Salli"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP-taajuus"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Hotspot-ominaisuudella voit luoda muille laitteillesi Wi-Fi-verkon. Ominaisuus jakaa internetyhteyden muille laitteille mobiilidatayhteydellä. Lisämaksuja mobiilidatan käytöstä voidaan periä."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Sovellukset voivat luoda hotspotin ja jakaa sisältöä lähellä olevien laitteiden kanssa."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Poista hotspot käytöstä automaattisesti"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Wi‑Fi-hotspot poistetaan käytöstä, jos laitteita ei ole yhdistetty."</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Otetaan yhteyspiste käyttöön..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Poistetaan yhteyspiste käytöstä..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> on aktiivinen"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi-puhelut"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Ota Wi-Fi-puhelut käyttöön"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Käytä Wi-Fiä mobiiliverkon sijaan"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Paranna kattavuutta soittamalla Wi-Fi-yhteyden kautta"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Puheluasetus"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi-puhelutila"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming-asetus"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Hätäosoite"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Sijaintisi, kun soitat hätäpuhelun Wi-Fillä"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Lisätietoja"</annotation>" yksityisistä DNS-ominaisuuksista"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Näyttö"</string>
<string name="sound_settings" msgid="5534671337768745343">"Ääni"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Äänenvoimakkuudet"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobiiliverkon tyyppi"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operaattorin tiedot"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobiiliverkon tila"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Palvelun tila"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signaalin vahvuus"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Uusi <xliff:g id="NAME">^1</xliff:g> toimii oikein. \n\nJos haluat siirtää kuvia, tiedostoja ja sovellustietoja tähän laitteeseen, siirry kohtaan Asetukset > Tallennustila."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Siirrä <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Sovelluksen <xliff:g id="APP">^1</xliff:g> ja sen tietojen siirtäminen kohteeseen <xliff:g id="NAME_0">^2</xliff:g> vie vain hetken. Et voi käyttää sovellusta, ennen kuin siirto on valmis. \n\nJätä <xliff:g id="NAME_1">^2</xliff:g> paikalleen siirron ajaksi."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Avaa käyttäjän <xliff:g id="APP">^1</xliff:g> lukitus siirtääksesi tietoja."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Siirretään <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Jätä <xliff:g id="NAME">^1</xliff:g> paikalleen siirron ajaksi. \n\nTämän laitteen <xliff:g id="APP">^2</xliff:g>-sovellus ei ole käytettävissä, ennen kuin siirto on valmis."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Peruuta siirto"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Voit nollata verkon, sovellusten tai laitteen asetukset."</string>
<string name="reset_network_title" msgid="6166025966016873843">"Nollaa Wi-Fin, mobiiliverkon ja Bluetoothin asetukset"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Tämä nollaa kaikki verkkoasetukset, esimerkiksi seuraavat:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobiilidata"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Nollaa myös eSIMit"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Tyhjennä kaikki puhelimen eSIMit. Sinun otettava yhteyttä operaattoriisi, jotta voit ladata eSIMit uudelleen. Tämä ei peruuta mobiilipalvelupakettiasi."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Nollaa asetukset"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Nollataanko kaikki verkkoasetukset? Toimintoa ei voi peruuttaa."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Nollaa asetukset"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Nollataanko?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Tämä käyttäjä ei voi palauttaa verkon asetuksia."</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Verkkoasetuksesi on nollattu."</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIMien nollaus epäonnistui"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIMien nollaus epäonnistui virheen vuoksi."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Poista kaikki tiedot (palauta tehdasasetukset)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Tämä poistaa kaikki tablet-laitteesi "<b>"sisäisen tallennustilan"</b>" tiedot, kuten:\n\n"<li>"Google-tilisi"</li>\n<li>"Järjestelmä- ja sovellustiedot ja -asetukset"</li>\n<li>"Ladatut sovellukset"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Tämä poistaa kaikki puhelimesi "<b>"sisäisen tallennustilan"</b>" tiedot, kuten:\n\n"<li>"Google-tilisi"</li>\n<li>"Järjestelmä- ja sovellustiedot ja -asetukset"</li>\n<li>"Ladatut sovellukset"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Olet kirjautunut sisään seuraaviin tileihin:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Tällä laitteella on muita paikalla olevia käyttäjiä.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musiikki"</li>\n<li>"Valokuvat"</li>\n<li>"Muut käyttäjän tiedot"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIMiä käyttävät operaattorit"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMit"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Tämä ei peruuta mobiilipalvelupakettiasi."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Jos haluat poistaa musiikin, kuvat ja muut käyttäjän tiedot, "<b>"USB-tallennustila"</b>" tulee tyhjentää."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Jos haluat poistaa musiikin, kuvat ja muut käyttäjän tiedot, "<b>"SD-kortti"</b>" tulee tyhjentää."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Muodosta yhteys internetiin"</string>
<string name="location_title" msgid="1029961368397484576">"Oma sijainti"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Työprofiilin sijainti"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Tila"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Suuri tarkkuus"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Virransäästötila"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Vain laite"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Sijainti ei käytössä"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Sovellustason käyttöoikeudet"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Viimeisimmät sijaintipyynnöt"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Mikään sovellus ei ole pyytänyt sijaintia äskettäin"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Sijaintipalvelut"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Suuri akun kulutus"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Vähäinen akun kulutus"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Paikannustila"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Paikanna GPS:llä sekä Wi-Fi-, Bluetooth- ja mobiiliverkoilla."</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Paikanna Wi-Fi-, Bluetooth- ja mobiiliverkoilla."</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Käytä GPS:ää ja laitteen antureita sijainnin määrittämiseen."</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Analysoidaan"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi-haku"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Paranna sijaintipalveluita antamalla järjestelmäsovellusten ja -palveluiden havaita Wi-Fi-verkkoja milloin tahansa."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Sijainnin lähteet"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Tietoja tabletista"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Tietoja puhelimesta"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Tietoja laitteesta"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Tietoja jäljitellystä laitteesta"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Näytä lakitiedot, tila, ohjelmiston versio"</string>
<string name="legal_information" msgid="5769301644270604095">"Oikeudelliset tiedot"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Näytä kaikki <xliff:g id="COUNT">%1$d</xliff:g> sovellusta"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tuntemattomista lähteistä tulevat sovellukset voivat helpommin kaapata tablettisi ja henkilötietosi. Lataamalla sovelluksia tästä lähteestä hyväksyt, että olet itse vastuussa tabletillesi aiheutuvista vahingoista tai tietojen katoamisesta, joka saattaa johtua sovellusten käytöstä."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Tuntemattomista lähteistä tulevat sovellukset voivat helpommin kaapata puhelimesi ja henkilötietosi. Lataamalla sovelluksia tästä lähteestä hyväksyt, että olet itse vastuussa puhelimellesi aiheutuvista vahingoista tai tietojen katoamisesta, joka saattaa johtua sovellusten käytöstä."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Tuntemattomista lähteistä tulevat sovellukset voivat helpommin kaapata laitteesi ja henkilötietosi. Lataamalla sovelluksia tästä lähteestä hyväksyt, että olet itse vastuussa laitteellesi aiheutuvista vahingoista tai tietojen katoamisesta, joka saattaa johtua sovellusten käytöstä."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Lisäasetukset"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Ota lisää asetuksia käyttöön."</string>
<string name="application_info_label" msgid="5736524913065714880">"Sovelluksen tiedot"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Voi vaikuttaa suorituskykyyn"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Klikkaa, kun osoitin ei enää liiku"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Viive ennen klikkausta"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Käytä palvelua"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Käytä värinkorjausta"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Käytä tekstityksiä"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"KÄYTÖSSÄ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"POIS KÄYTÖSTÄ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Näytä pika-asetuksissa"</string>
@@ -1905,7 +1925,7 @@
<string name="captioning_standard_options_title" msgid="3284211791180335844">"Vakioasetukset"</string>
<string name="captioning_locale" msgid="4559155661018823503">"Kieli"</string>
<string name="captioning_text_size" msgid="6737002449104466028">"Tekstin koko"</string>
- <string name="captioning_preset" msgid="8939737196538429044">"Tekstin tyyli"</string>
+ <string name="captioning_preset" msgid="8939737196538429044">"Tekstityksen tyyli"</string>
<string name="captioning_custom_options_title" msgid="5067500939930322405">"Omat asetukset"</string>
<string name="captioning_background_color" msgid="9053011212948992570">"Taustaväri"</string>
<string name="captioning_background_opacity" msgid="6029993616419971202">"Taustan läpinäkyvyys"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> jäljellä"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> latausaikaa jäljellä"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Taustatoiminta"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Rajoitettu"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Salli sovelluksen toimia taustalla"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Sovellus saa toimia taustalla myös silloin, kun se ei ole käytössä."</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Kun sovellus ei ole käytössä, sen taustatoimintaa rajoitetaan."</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Käynnistää näytön taustalla"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Pyytää sijaintitietoja usein"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> sovellusta ei toimi oikein"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Akku on hyvässä kunnossa"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Sovellukset toimivat normaalisti"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Huono akunkesto"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Akku ei kestä kauaa"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ota käyttöön älykäs virranhallinta"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Ota käyttöön virrankäytön optimoimiseksi"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Ota Akku vähissä ‑tila käyttöön"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Paranna akunkestoa"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Akku vähissä ‑tila on päällä"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Jotkin ominaisuudet ovat rajoitettuja"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Puhelinta käytetty paljon"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablettia käytetty paljon"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Laitetta käytetty paljon"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Käytetty noin <xliff:g id="HOUR">%1$s</xliff:g> edellisen täyden latauksen jälkeen"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Puhelintasi käytettiin paljon ja tämä kulutti paljon akkua. Akku toimii normaalisti.\n\n Puhelinta käytettiin noin <xliff:g id="HOUR">%1$s</xliff:g> edellisen täyden latauksen jälkeen.\n\n Käyttö yhteensä:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Tablettiasi käytettiin paljon ja tämä kulutti paljon akkua. Akku toimii normaalisti.\n\n Tablettia käytettiin noin <xliff:g id="HOUR">%1$s</xliff:g> edellisen täyden latauksen jälkeen.\n\n Käyttö yhteensä:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Laitettasi käytettiin paljon ja tämä kulutti paljon akkua. Akku toimii normaalisti.\n\n Laitetta käytettiin noin <xliff:g id="HOUR">%1$s</xliff:g> edellisen täyden latauksen jälkeen.\n\n Käyttö yhteensä:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Älykäs virranhallinta"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Automaattinen virranhallinta"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Säädä sovellusten virrankulutusta automaattisesti käytön mukaan"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Rajoitetut sovellukset"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d sovellusta</item>
+ <item quantity="one">%1$d sovellus</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Lopetetaanko sovellus?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Puhelin ei voi hallita akunkäyttöä normaalisti, koska <xliff:g id="APP">%1$s</xliff:g> pitää näyttöä aktivoituna.\n\nOngelman korjaamiseksi voit pakottaa sovelluksen lopetuksen.\n\nJos tämä tapahtuu toistuvasti, akun optimointi voi edellyttää sovelluksen poistamista."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Tabletti ei voi hallita akunkäyttöä normaalisti, koska <xliff:g id="APP">%1$s</xliff:g> pitää näyttöä aktivoituna.\n\nOngelman korjaamiseksi voit pakottaa sovelluksen lopetuksen.\n\nJos tämä tapahtuu toistuvasti, akun optimointi voi edellyttää sovelluksen poistamista."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediapalvelin"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Sovellusoptimointi"</string>
<string name="battery_saver" msgid="8172485772238572153">"Virransäästö"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Käytä virransäästöä"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Käynnistä automaattisesti"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Ei koskaan"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"kun akun varaus on <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Synkronoinnissa on tällä hetkellä ongelmia. Palvelu palaa käyttöön hetken kuluttua."</string>
<string name="add_account_label" msgid="7811707265834013767">"Lisää tili"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Työprofiili ei ole vielä käytettävissä"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Työtila"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Sallii työprofiiliin toiminnan, esimerkiksi sovellukset ja taustasynkronoinnin."</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Työprofiili"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Organisaatiosi hallinnoima"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Sovellukset ja ilmoitukset ovat poissa käytöstä"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Poista työprofiili"</string>
<string name="background_data" msgid="5779592891375473817">"Taustatiedonsiirto"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Sovell. voivat synkr., läh. & vast.ottaa tietoa milloin vain"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Poistetaanko tili?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Poistamalla tämän tilin poistat kaikki sen viestit, kontaktit ja muut tiedot tablet-laitteesta."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Poistamalla tämän tilin poistat kaikki sen viestit, kontaktit ja muut tiedot puhelimesta."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Poistamalla tämän tilin poistat kaikki sen viestit, yhteystiedot ja muut tiedot laitteelta."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Järjestelmänvalvoja ei salli tätä muutosta."</string>
<string name="provider_label" msgid="7724593781904508866">"Push-tilaukset"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">Tarkista varmenteet</item>
<item quantity="one">Tarkista varmenne</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Käyttäjät"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Useita käyttäjiä"</string>
<string name="user_list_title" msgid="7937158411137563543">"Käyttäjät ja profiilit"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Lisää käyttäjä tai profiili"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Lisää käyttäjä"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Sovellukset ja ilmoitukset"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Käyttöoikeudet, oletussovellukset"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Käyttäjät ja tilit"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Tilit"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Oletussovellukset"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Kielet, aika, varmuuskopiointi, päivitykset"</string>
<string name="search_results_title" msgid="1796252422574886932">"Asetukset"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"älä häiritse, keskeytä, keskeytys, tauko"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nearby, sijaintihistoria, sijainnin ilmoittaminen"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"tarkkuus"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"tili"</string>
<string name="keywords_users" msgid="3434190133131387942">"rajoitus, rajoittaa, rajoitettu"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"tekstin korjaus, korjaa, ääni, värinä, automaattinen, kieli, ele, ehdottaa, ehdotus, teema, loukkaava, sana, kirjoita, emoji, kansainvälinen"</string>
@@ -2829,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"verkko, mobiiliverkon tila, yhteyden tila, signaalinvoimakkuus, mobiiliverkon tyyppi, verkkovierailu, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"sarjanumero, laitteistoversio"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android-tietoturvakorjauksen taso, baseband-versio, kernel-versio"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Lepotilanäyttö, lukitusnäyttö"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Määritä Wi-Fi ja NFC-tagi"</string>
<string name="write_tag" msgid="8571858602896222537">"Kirjoita"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Kirjoita napauttamalla tagia…"</string>
@@ -2872,6 +2914,7 @@
<item quantity="one">1 sääntö</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Älä häiritse"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Ota Älä häiritse ‑tila käyttöön"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Käyttäytyminen"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Salli äänet & värinä kohteesta"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Ei ääntä"</string>
@@ -2881,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Ota käyttöön automaattisesti"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automaattiset säännöt"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automaattinen sääntö"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Määritä Älä häiritse ‑säännöt"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Rajoita ääniä ja värinää tiettyinä aikoina."</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Hiljennä puhelin tiettyinä aikoina"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Määritä Älä häiritse ‑säännöt"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Käytä sääntöä"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Vain tärkeät"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Vain herätykset"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Täydellinen hiljaisuus"</string>
@@ -2890,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Estä näkyvät häiriötekijät"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Salli visuaaliset signaalit"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Lisää"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"KÄYNNISTÄ NYT"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"LOPETA NYT"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Ota käyttöön"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Ota käyttöön nyt"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Poista käytöstä nyt"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Älä häiritse ‑tila on käytössä <xliff:g id="FORMATTED_TIME">%s</xliff:g> asti."</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Älä häiritse ‑tila on käytössä, kunnes poistat sen käytöstä."</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Sääntö <xliff:g id="RULE_NAME">%s</xliff:g> otti käyttöön Älä häiritse ‑tilan."</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Sovellus <xliff:g id="APP_NAME">%s</xliff:g> otti automaattisesti käyttöön Älä häiritse ‑tilan."</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Vain tärkeät"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Työprofiilin äänet"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Käytä henk. koht. prof. ääniä"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Työ- ja henkilökohtaisessa profiilissa käytetään samoja ääniä."</string>
@@ -2911,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Soittoäänet"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Muut äänet ja värinä"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Ilmoitukset"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Äskettäin lähetetyt"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Lisäasetukset"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Työilmoitukset"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Salli pistemerkit"</string>
@@ -2930,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Sovellusilmoitukset"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Ilmoituksen luokka"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Ilmoitusluokka"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Tärkeys"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Käyttäytyminen"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Salli ääni"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Älä näytä ilmoituksia"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Ei ääntä tai näkyvää ilmoitusta"</string>
@@ -2948,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Melko tärkeä"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Hyvin tärkeä"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Kiireellinen"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Näytä ilmoitukset"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Ilmoitusapuri"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Pääsy ilmoituksiin"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Työprofiilin ilmoitusten käyttö on estetty."</string>
@@ -2978,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Älä häiritse -käyttöoikeudet"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Yksikään asennettu sovellus ei ole pyytänyt Älä häiritse -tilan käyttöoikeutta."</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Ladataan sovelluksia…"</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android estää tämän sovelluksen ilmoituksien näyttämisen tällä laitteella."</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android estää tähän luokkaan kuuluvien ilmoituksien näyttämisen tällä laitteella."</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android estää tähän ryhmään kuuluvien ilmoituksien näyttämisen tällä laitteella."</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Android estää pyynnöstäsi tämän sovelluksen ilmoituksien näyttämisen tällä laitteella."</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Android estää pyynnöstäsi tähän luokkaan kuuluvien ilmoituksien näyttämisen tällä laitteella."</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Android estää pyynnöstäsi tähän ryhmään kuuluvien ilmoituksien näyttämisen tällä laitteella."</string>
<string name="notification_channels" msgid="5346841743182627500">"Luokat"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Muut"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Sormenjäljellä avaamisen lisäksi voit parantaa laitteen suojausta entisestään pyytämällä salasanaa ennen käynnistymistä. Laite ei vastaanota puheluita, viestejä tai ilmoituksia, esimerkiksi herätyksiä, ennen kuin se on käynnistynyt.\n\nTämä auttaa suojaamaan kadonneen tai varastetun laitteen tietoja. Otetaanko salasanan pyytäminen käynnistettäessä käyttöön?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Kyllä"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ei"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Kyllä"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ei"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Vaaditaanko PIN-koodi?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Vaaditaanko kuvio?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Vaaditaanko salasana?"</string>
@@ -3271,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Hylkää"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Tämän laitteen lataaminen"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Lataa vain tämä laite."</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Virtalähde"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Lataa yhdistettyä laitetta. Toimii vain, jos toinen laite tukee USB-latausta."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Tiedostojen siirtäminen"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Siirrä tiedostoja toiselle laitteelle."</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Kuvien siirtäminen (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Siirrä valokuvia tai tiedostoja, jos MTP:tä ei tueta (PTP)."</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI-tila"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Käytä tätä laitetta MIDI-tilassa."</string>
- <string name="usb_use" msgid="3256040963685055320">"USB:n käyttötila"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Käytä USB:tä:"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Laitteen lataaminen"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Yhdistetyn laitteen lataaminen"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Tiedostojen siirtäminen"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Kuvien siirtäminen (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Laitteen käyttö MIDI-tilassa"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Tekstiviestien peilaus"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Taustatarkistus"</string>
<string name="background_check_title" msgid="4534254315824525593">"Täydet taustakäyttöoikeudet"</string>
@@ -3394,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Taustakuva, virransäästö, fonttikoko"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Jos laitetta ei käytetä, se siirtyy virransäästötilaan, kun 10 minuuttia on kulunut."</string>
<string name="memory_summary" msgid="8080825904671961872">"Muistia käytetty keskimäärin <xliff:g id="USED_MEMORY">%1$s</xliff:g>/<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Nykyinen käyttäjä: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Kirjautunut sisään käyttäjänä <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> on oletus."</string>
- <string name="location_on_summary" msgid="5127631544018313587">"KÄYTÖSSÄ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"PÄÄLLÄ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"POIS KÄYTÖSTÄ"</string>
<string name="backup_disabled" msgid="485189128759595412">"Varmuuskopiointi poistettu käytöstä"</string>
- <string name="about_summary" msgid="924181828102801010">"Päivitetty Android-versioon <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Toiminto ei ole sallittu"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Äänenvoimakkuutta ei voi muuttaa"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Puheluja ei sallita"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Tekstiviestejä ei sallita"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kameraa ei sallita"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Kuvakaappauksia ei sallita"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Varmuuskopioimista ei voi poistaa käytöstä"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Toiminto on poistettu käytöstä. Kysy lisätietoja organisaatiosi järjestelmänvalvojalta."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Lisätietoja"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Järjestelmänvalvoja voi valvoa ja hallita työprofiiliisi liittyviä sovelluksia ja tietoja, mukaan lukien asetuksia, käyttöoikeuksia, yrityskäyttöä, verkkotoimintaa ja laitteen sijaintitietoja."</string>
@@ -3420,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Kannettava Wi-Fi-hotspot <xliff:g id="ID_1">%1$s</xliff:g> on aktiivinen, tämän laitteen Wi-Fi on poistettu käytöstä."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Lentokonetila on käytössä"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth ja mobiiliverkko ovat poissa käytöstä. Et voi soittaa puheluita tai muodostaa internetyhteyttä."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Älä häiritse -tila on päällä (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Virransäästö on päällä"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Suorituskykyä pienennetään. Sijaintipalvelut ja taustatiedonsiirto poistetaan käytöstä."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobiilidata on poissa käytöstä"</string>
@@ -3430,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Työprofiili on pois päältä."</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Työprofiiliin liittyvät ominaisuudet, kuten sovellukset ja taustasynkronointi, ovat pois päältä."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Määritä Yövalon aikataulu"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Käytä nukahtamista helpottavaa värisävyä"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Muuta näytön väriä automaattisesti iltaisin"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Yövalo otettiin käyttöön."</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Näyttö on keltasävyinen. Tämä voi auttaa sinua nukahtamaan."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sinulle ehdotetut"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Ehdotukset"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> muuta"</string>
@@ -3537,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ei mitään"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Sijoitustiedot puuttuvat."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Tätä avainta ei ole sijoitustiedoissa."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Jäljittele näyttöä, jossa on aukko"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"–"</string>
<string name="special_access" msgid="3458780842491881155">"Sovellusten erikoiskäyttö"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> sovelluksen datankäyttöä ei rajoiteta.</item>
@@ -3559,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Yhdistetty useisiin laitteisiin"</string>
<string name="demo_mode" msgid="2798762752209330277">"Käyttöliittymän esittelytila"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Pika-asetusosiot kehittäjille"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Autamme mielellämme"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Autamme milloin tahansa"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Autamme milloin tahansa."</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Tukitiimimme vastaa kysymyksiin ja huolenaiheisiin."</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Tukitiimimme on valmiina auttamaan kellon ympäri vuoden jokaisena päivänä."</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Etsi ohjeita tai palaa takaisin tukipalvelun aukioloaikoina (paikallista aikaa):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Puhelintuki palvelee <br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b> paikallista aikaa"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Hae ohjeita tai tutki vinkkejä."</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Tuki:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Ikkunan jäljitys"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Pinnan jäljitys"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Matkustatko ulkomailla?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Kansainvälisiä maksuja saatetaan periä."</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Puhelin"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chattaa"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Tutki vinkkejä"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Etsi ohjeista ja lähetä palautetta"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Ota yhteyttä tukeen"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Kirjaudu sisään"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Eikö sisäänkirjautuminen onnistu?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Lähetä järjestelmätiedot"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Älä näytä uudelleen"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Pyytäjä"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Lisää tili"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Järjestelmätiedot"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Työprofiilin asetukset"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Yhteystietohaku"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Salli organisaatiosi yhteystietohakujen tunnistaa soittajia ja yhteystietoja."</string>
@@ -3599,11 +3659,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekuntia</item>
<item quantity="one">1 sekunti</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Odotusaika ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Tallennustilan hallinnointi"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Tallennustilan hallinta vapauttaa tilaa poistamalla varmuuskopioituja kuvia ja videoita laitteeltasi."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Poista kuvia ja videoita"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Tallennustilan hallinta"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Käytä tallennustilan hallintaa"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automaattinen"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manuaalinen"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Vapauta tilaa"</string>
@@ -3614,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Kameraan siirtyminen"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Avaa kamera nopeasti painamalla virtapainiketta kahdesti. Tämä toimii miltä tahansa näytöltä."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Avaa kamera nopeasti"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Paina virtapainiketta kahdesti, niin kamera avataan."</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Kameran vaihtaminen"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Ota selfieitä nopeasti"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Käännä puhelinta kahdesti, niin selfie-tila käynnistyy."</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Käännä tablettia kahdesti, niin selfie-tila käynnistyy."</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Käännä laitetta kahdesti, niin selfie-tila käynnistyy."</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tarkista ilmoitukset kaksoisnapauttamalla puhelimen näyttöä"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tarkista ilmoitukset kaksoisnapauttamalla tabletin näyttöä"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tarkista ilmoitukset kaksoisnapauttamalla laitteen näyttöä"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Kaksoisnapauta näyttöä, niin näet ajan, ilmoituskuvakkeet ja muita tietoja."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Näytä ilmoitukset, vaikka näyttö on pois päältä."</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Tarkista ilmoitukset nostamalla puhelimesi"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Tarkista ilmoitukset nostamalla tablettisi"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Tarkista ilmoitukset nostamalla laitteesi"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ota puhelin käteesi, niin näet ajan, ilmoituskuvakkeet ja muita tietoja."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ota tabletti käteesi, niin näet ajan, ilmoituskuvakkeet ja muita tietoja."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ota laite käteesi, niin näet ajan, ilmoituskuvakkeet ja muita tietoja."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Näytä ilmoitukset, vaikka näyttö on pois päältä."</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Pyyhkäise ilmoitukset esiin"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Sormenjäljen pyyhkäisy"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Voit katsoa ilmoitukset pyyhkäisemällä puhelimen takaosassa olevasta sormenjälkitunnistimesta alaspäin."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Voit katsoa ilmoitukset pyyhkäisemällä tabletin takaosassa olevasta sormenjälkitunnistimesta alaspäin."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Voit katsoa ilmoitukset pyyhkäisemällä laitteen takaosassa olevasta sormenjälkitunnistimesta alaspäin."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Katso ilmoitukset nopeasti"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Pyyhkäise alas sormenjälkitunnistimesta."</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Käytössä"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Ei käytössä"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Käynnistysohjelman lukitus on jo avattu."</string>
@@ -3769,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Tutustu uuteen tablettiisi"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Tutustu uuteen laitteeseesi"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ominaisuus ei ole käytettävissä tällä laitteella."</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Pakota täydet GNSS-mitat"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Seuraa kaikkia GNSS-kuvioita ja ‑taajuuksia, joissa ei ole pulssisuhdetta"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Näytä aina kaatumisikkuna"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Näytä valintaikkuna aina, kun sovellus kaatuu"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Hakemiston käyttöoikeus"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"hakemiston käyttöoikeus"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Oma puhelin"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Oma tabletti"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Oma laite"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Tili"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Laitteen nimi"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Käytä Bluetoothia ajon aikana"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Ota Bluetooth automaattisesti käyttöön ajon aikana"</string>
</resources>
diff --git a/res/values-fr-rCA/arrays.xml b/res/values-fr-rCA/arrays.xml
index 4a60086..bf49b06 100644
--- a/res/values-fr-rCA/arrays.xml
+++ b/res/values-fr-rCA/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Bouton de commande"</item>
<item msgid="1624323946324499595">"NIP de l\'appareil associé"</item>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index d8e8922..9935755 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Message écran verrouillage"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Activer les widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Désactivé par l\'administrateur"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Afficher l\'option de verrouillage"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Afficher l\'option de l\'interrupteur qui désactive l\'accès prolongé et le déverrouillage à l\'aide d\'une empreinte digitale."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Aucun"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Par exemple : le téléphone Android de Jonathan"</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Le mot de passe entré est correct. Malheureusement, vos données sont corrompues.\n\nPour continuer d\'utiliser votre tablette, vous devez rétablir sa configuration d\'usine. Une fois cette opération terminée, vous pourrez restaurer toutes les données que vous aviez sauvegardées dans votre compte Google lors de la nouvelle configuration de votre tablette."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Le mot de passe entré est correct. Malheureusement, vos données sont corrompues.\n\nPour continuer d\'utiliser votre téléphone, vous devez rétablir sa configuration d\'usine. Une fois cette opération terminée, vous pourrez restaurer toutes les données que vous aviez sauvegardées dans votre compte Google lors de la nouvelle configuration de votre téléphone."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Changer le mode de saisie"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Configurer le verrouillage de l\'écran"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protégez votre appareil"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Utiliser le capteur d\'empreinte digitale"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Déverrouiller avec votre empreinte digitale"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Définir verr. d\'écran pour sécurité"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Empêcher les autres d\'utiliser votre tablette"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Empêcher les autres d\'utiliser votre appareil"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Empêcher les autres d\'utiliser votre téléphone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Déverrouillage avec empreinte"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Déverrouiller avec votre empreinte digitale"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Déverrouiller avec votre empreinte digitale"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Déverrouiller avec votre empreinte digitale"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Verrouillage de l\'écran"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Verrouill. profil pro"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protégez votre tablette"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Mot de passe"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Afficher le mot de passe"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Sélectionner la bande du point d\'accès"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Bande de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Bande de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Paramètres IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Appels Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Activer les appels Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Utiliser le Wi-Fi au lieu du réseau cellulaire"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Étendre la couverture avec les appels Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Préférences d\'appel"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Mode d\'appel Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Préférences d\'itinérance"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Type de réseau mobile"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informations sur l\'opérateur"</string>
<string name="status_data_state" msgid="5503181397066522950">"État du réseau mobile"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"État du service"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Intensité du signal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Itinérance"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Impossible de réinitialiser le réseau, les applications ou l\'appareil"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Réinitialiser les paramètres Wi-Fi, cellulaires et Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Cette opération entraîne la réinitialisation de tous les paramètres réseau, y compris :\n\n"<li>"Le Wi‑Fi"</li>\n<li>"Les données cellulaires"</li>\n<li>"Le Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Réinitialiser aussi les cartes eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Effacer toutes les cartes eSIM sur le téléphone. Vous devrez communiquer avec votre fournisseur de services pour télécharger de nouveau vos cartes eSIM. Cela n\'annulera pas votre forfait de services cellulaires."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Réinitialiser les paramètres"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Réinitialiser tous les paramètres réseau? Cette action est irréversible."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Réinitialiser les paramètres"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Réinitialiser?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"La réinitialisation du réseau n\'est pas disponible pour cet utilisateur."</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Les paramètres réseau ont été réinitialisés"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Impossible de réinitialiser les cartes eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Les cartes eSIM ne peuvent pas être réinitialisées à cause d\'une erreur."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Effacer toutes les données (réinitialisation d\'usine)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Cette action effacera toutes les données de la "<b>"mémoire de stockage interne"</b>" de votre tablette, y compris :\n\n"<li>"Votre compte Google"</li>\n<li>"Les données et paramètres du système et de l\'application"</li>\n<li>"Les applications téléchargées"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Cette action effacera toutes les données du "<b>"stockage interne"</b>" de votre téléphone, y compris :\n\n"<li>"Votre compte Google"</li>\n<li>"Les données et paramètres du système et de l\'application"</li>\n<li>"Les applications téléchargées"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Vous êtes actuellement connecté aux comptes suivants :\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"D\'autres personnes utilisent cet appareil.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musique"</li>\n<li>"Photos"</li>\n<li>"Autres données utilisateur"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Fournisseurs de services sur la carte eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"Cartes eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Cela n\'annulera pas votre forfait de services cellulaires."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Pour supprimer la musique, les photos et les autres données utilisateur, vous devez effacer la "<b>"mémoire de stockage USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Pour supprimer la musique, les photos et les autres données utilisateur, vous devez effacer la "<b>"carte SD"</b>"."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Connectez-vous à Internet."</string>
<string name="location_title" msgid="1029961368397484576">"My Location"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Position pour profil profess."</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Haute précision"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Économie de la pile"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Appareil uniquement"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Localisation désactivée"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Autor. à l\'échelle des applis"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Demandes localisation récentes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Aucune application n\'a récemment demandé l\'accès à votre position"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Services de localisation"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Forte utilisation de la pile"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Faible utilisation de la pile"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Mode de localisation"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Utiliser le GPS, le Wi‑Fi, le Bluetooth ou les réseaux cellulaires pour déterminer la position"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Utiliser le Wi‑Fi, le Bluetooth ou les réseaux cellulaires pour déterminer la position"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Utiliser le GPS et les capteurs de l\'appareil pour déterminer la position"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Recherche"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Recherche de réseaux Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Améliorer la précision de la localisation en autorisant les applications et les services système à rechercher les réseaux Wi-Fi à tout moment."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Temps restant : <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> avant le chargement complet"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Activité en arrière-plan"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Limité."</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Autoriser l\'application à fonctionner en arrière-plan"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"L\'application peut fonctionner en arrière-plan lorsqu\'elle n\'est pas utilisée"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"L\'activité en arrière-plan de l\'application est limitée quand elle n\'est pas utilisée"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"La pile ne peut pas fournir une autonomie suffisante"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Activer le gestionnaire de pile intelligent"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Activer ce mode pour optimiser l\'utilisation de la pile"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Activer le mode Pile faible"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Prolongez l\'autonomie de la pile"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Le mode Pile faible est activé"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Certaines fonctionnalités sont limitées"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Téléphone utilisé intensément"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablette utilisée intensément"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Appareil utilisé intensément"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"La synchronisation rencontre actuellement des problèmes. Elle sera rétablie sous peu."</string>
<string name="add_account_label" msgid="7811707265834013767">"Ajouter un compte"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Le profil professionnel n\'est pas encore disponible"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Mode Travail"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Autoriser le fonctionnement du profil professionnel, y compris les applications, la synchronisation en arrière-plan et les fonctionnalités associées"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Profil professionnel"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Géré par votre organisation"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Les applications et les notifications sont désactivées"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Supprimer le profil professionnel"</string>
<string name="background_data" msgid="5779592891375473817">"Données en arrière-plan"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Synchronisation, envoi et réception de données à tout moment"</string>
@@ -2624,7 +2624,7 @@
<item quantity="one">Vérifier le certificat</item>
<item quantity="other">Vérifier les certificats</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Utilisateurs"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Plusieurs utilisateurs"</string>
<string name="user_list_title" msgid="7937158411137563543">"Utilisateurs et profils"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Ajouter un utilisateur ou un profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Ajouter un utilisateur"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, diffuser"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Applications et notifications"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Autorisations, applications par défaut"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Utilisateurs et comptes"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Comptes"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Applications par défaut"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Langues, sauvegardes, mises à jour"</string>
<string name="search_results_title" msgid="1796252422574886932">"Paramètres"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ne pas déranger, interrompre, interruption, pause"</string>
<string name="keywords_app" msgid="6334757056536837791">"Mémoire vive"</string>
<string name="keywords_location" msgid="6615286961552714686">"à proximité, position, historique, signalement"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"précision"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"compte"</string>
<string name="keywords_users" msgid="3434190133131387942">"restriction, restreindre, restreint"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"correction de texte, corriger, son, vibreur, automatique, langue, geste, suggérer, suggestion, thème, choquant, mot, type, emoji, international"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"réseau, état du réseau cellulaire, état du service, puissance du signal, type de réseau cellulaire, itinérance, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"numéro de série, version matérielle"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"niveau du correctif de sécurité android, version de la bande de base, version du noyau"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Affichage en mode Veille, écran de verrouillage"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Créer une balise NFC par Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Écrire"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Touchez une balise pour pour écrire..."</string>
@@ -2912,6 +2914,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> règles</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ne pas déranger"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Activer la fonction « Ne pas déranger »"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportement"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Autoriser sons et vibrations de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Aucun son"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Activer automatiquement"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Règles automatiques"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Règle automatique"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Créer règles Ne pas déranger"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limiter sons et vibrations à certains moments"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Tél. en silence à certains moments"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Créer des règles pour le mode Ne pas déranger"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Utiliser la règle"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Prioritaires seulement"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Alarmes seulement"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Aucune interruption"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquer dérangements visuels"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Autoriser les signaux visuels"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Ajouter"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Activer"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Activer maintenant"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Désactiver maintenant"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Le mode Ne pas déranger est activé jusqu\'à <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Le mode Ne pas déranger restera actif jusqu\'à ce que vous le désactiviez"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Le mode Ne pas déranger a été activé par une règle (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Le mode Ne pas déranger a été activé par une application (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Priorités seulement"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sons du profil professionnel"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Utiliser sons du profil perso"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Les sons du profil professionnel sont les mêmes que ceux du profil personnel"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Sonneries"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Autres sons et vibrations"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifications"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Envoyées récemment"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Paramètres avancés"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notifications professionnelles"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Autoriser points de notification"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Vous pouvez ajouter un niveau de protection pour le déverrouillage de cet appareil en exigeant votre mot de passe avant que l\'appareil ne démarre, en plus de la lecture de votre empreinte digitale. L\'appareil ne peut pas recevoir d\'appel, de message, de notification, ni d\'alarme tant qu\'il n\'a pas démarré.\n\nCela permet de protéger les données de vos appareils en cas de perte ou de vol. Exiger un mot de passe pour démarrer l\'appareil?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Oui"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Non"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Oui"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Non"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Exiger le NIP?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Exiger le schéma?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Exiger le mot de passe?"</string>
@@ -3296,7 +3308,7 @@
<string name="high_power_system" msgid="7362862974428225301">"L\'optimisation de la pile n\'est pas disponible"</string>
<string name="high_power_desc" msgid="6283926163708585760">"N\'appliquer aucune optimisation de la pile. Cela risque de décharger la pile plus rapidement."</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"Autoriser l\'application à toujours fonctionner en arrière-plan?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Si vous autorisez <xliff:g id="APP_NAME">%1$s</xliff:g> à toujours fonctionner en arrière-plan, cela peut réduire l\'autonomie de la pile. \n\nVous pouvez modifier cela plus tard sous Paramètres > Applications et notifications."</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Si vous autorisez <xliff:g id="APP_NAME">%1$s</xliff:g> à toujours fonctionner en arrière-plan, l\'autonomie de la pile peut être réduite. \n\nVous pouvez modifier cette option plus tard dans Paramètres > Applications et notifications."</string>
<string name="battery_summary" msgid="8044042095190688654">"Usage depuis la dernière charge complète : <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Gestion de l\'alimentation"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Aucune utilisation de la pile depuis la dernière charge complète"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Refuser"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Charger cet appareil"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Charger cet appareil seulement"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Fournir l\'alimentation"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Charger l\'appareil connecté. Ne fonctionne qu\'avec les appareils compatibles avec le chargement USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transférer les fichiers"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transférer des fichiers vers un autre appareil"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transférer des photos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferer des photos ou des fichiers si MTP n\'est pas pris en charge (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Utiliser l\'appareil en tant que MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Utiliser cet appareil en tant que MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Utiliser la connexion USB pour"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Utiliser la connexion USB pour :"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Chargement de l\'appareil"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Fournir de l\'alimentation"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transfert de fichiers"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transfert de photos (profil PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Utiliser l\'appareil comme dispositif MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Duplication de messages texte"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Vérification en arrière-plan"</string>
<string name="background_check_title" msgid="4534254315824525593">"Accès complet à l\'arrière-plan"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Fond d\'écran, mode sommeil, taille de la police"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Veille après 10 minutes d\'inactivité"</string>
<string name="memory_summary" msgid="8080825904671961872">"Mémoire utilisée en moyenne : <xliff:g id="USED_MEMORY">%1$s</xliff:g> sur <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Utilisateur actuel : <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Connecté en tant que <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> est l\'application par défaut"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ACTIVÉ : <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ACTIVÉ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DÉSACTIVÉ"</string>
<string name="backup_disabled" msgid="485189128759595412">"Sauvegardes désactivées"</string>
- <string name="about_summary" msgid="924181828102801010">"Mis à jour vers Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Action interdite"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Impossible de modifier le volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Les appels sont désactivés"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"La messagerie texte est désactivée"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"L\'appareil photo est désactivé"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Les captures d\'écran sont désactivées"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Impossible de désactiver les sauvegardes"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Cette action est désactivée. Communiquez avec l\'administrateur de votre organisation pour en savoir plus."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Détails supplémentaires"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Votre administrateur peut surveiller et gérer les applications et les données associées à votre profil professionnel, y compris les paramètres, les autorisations, l\'accès aux contenus de l\'entreprise, l\'activité réseau et les données de localisation de l\'appareil."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Le point d\'accès Wi-Fi mobile « <xliff:g id="ID_1">%1$s</xliff:g> » est actif. Le Wi-Fi est désactivé pour cet appareil."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Le mode Avion est activé"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Le Wi-Fi, le Bluetooth et le réseau cellulaire sont désactivés. Vous ne pouvez pas faire d\'appels téléphoniques ni vous connecter à Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Mode « Ne pas déranger » activé (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Économie d\'énergie activée"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Les performances sont réduites. Les services de localisation et les données en arrière-plan sont désactivés."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Données cellulaires désactivées"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profil professionnel désactivé"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Les applications, la synchronisation en arrière-plan et d\'autres fonctionnalités liées à votre profil professionnel sont désactivées."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Créer un horaire pour le mode Éclairage nocturne"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Écran ambre pour vous aider à vous endormir"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Donner automatiquement des tons ambrés à l\'écran tous les soirs"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Éclairage nocturne activé"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"L\'écran a une teinte ambre qui peut vous aider à vous endormir."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suggestions personnalisées"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggestions"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> autre(s)"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"aucun(e)"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"L\'objet de classement est manquant."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"L\'objet de classement ne contient pas cette touche."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simuler un écran avec une découpe"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Aucun"</string>
<string name="special_access" msgid="3458780842491881155">"Accès spéciaux aux applis"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> application peut utiliser les données sans restriction</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Mode de démonstration de l\'interface système"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Paramètres rapides, tuiles de concepteur"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Trace de fenêtre"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Trace de couche"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Trace de surface"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Paramètres du profil professionnel"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Recherche de contacts"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Autoriser les recherches de contacts dans votre organisation à identifier les appelants et les contacts"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Accès rapide à l\'appareil photo"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Pour ouvrir rapidement l\'appareil photo, il vous suffit d\'appuyer deux fois sur l\'interrupteur. Cela fonctionne à partir de n\'importe quel écran."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Ouvrez l\'appareil photo rapidement"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Appuyez deux fois sur l\'interrupteur pour ouvrir l\'app. photo"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Changer d\'appareil photo"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Prenez des égoportraits plus rapidement"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Pivotez deux fois le téléphone pour prendre un égoportrait"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Pivotez deux fois la tablette pour prendre un égoportrait"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Pivotez deux fois l\'appareil pour prendre un égoportrait"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Toucher deux fois le téléphone pour le consulter"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Touchez l\'écran deux fois pour consulter votre tablette"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Touchez l\'écran deux fois pour consulter votre appareil"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Pour vérifier l\'heure, les icônes de notification et d\'autres renseignements, touchez deux fois l\'écran."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Consulter les notifications lorsque l\'écran est éteint"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Saisir pour consulter le téléphone"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Saisissez la tablette pour consulter les notifications"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Saisissez l\'appareil pour consulter les notifications"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Pour vérifier l\'heure, les icônes de notification et d\'autres renseignements, saisir votre téléphone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Pour vérifier l\'heure, les icônes de notification et d\'autres renseignements, saisissez votre tablette."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Pour vérifier l\'heure, les icônes de notification et d\'autres renseignements, saisissez votre appareil."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Consulter les notifications lorsque l\'écran est éteint"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Balayer lecteur d\'empreintes pour voir notif."</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Balayez empreinte digitale"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Pour consulter vos notifications, passez votre doigt de haut en bas sur le capteur d\'empreintes digitales à l\'arrière du téléphone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Pour consulter vos notifications, passez votre doigt de haut en bas sur le capteur d\'empreintes digitales à l\'arrière de la tablette."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Pour consulter vos notifications, passez votre doigt de haut en bas sur le capteur d\'empreintes digitales à l\'arrière de l\'appareil."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Affichez les notifications rapidement"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Glissez un doigt vers le bas sur le capteur d\'empr. digitales"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Activé"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Désactivé"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Le programme d\'amorçage est déjà déverrouillé"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Cette fonctionnalité n\'est pas accessible sur cet appareil."</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forcer les mesures GNSS complètes"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Faire le suivi de toutes les constellations et les fréquences GNSS sans cycle de tâches"</string>
- <string name="storage_access" msgid="8905018810338984531">"Accès au répertoire de stockage"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"stockage accès évalué répertoire"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Toujours afficher la fenêtre de plantage"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Afficher la fenêtre chaque fois qu\'une application plante"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Accès au répertoire"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"accès au répertoire"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Mon téléphone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Ma tablette"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Mon appareil"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Compte"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nom de l\'appareil"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Utiliser le Bluetooth lors de la conduite"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Activer automatiquement le Bluetooth lorsque vous conduisez"</string>
</resources>
diff --git a/res/values-gl/arrays.xml b/res/values-gl/arrays.xml
index b619da0..1907e41 100644
--- a/res/values-gl/arrays.xml
+++ b/res/values-gl/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pulsar o botón"</item>
<item msgid="1624323946324499595">"PIN do dispositivo mesmo nivel"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 hora"</item>
<item msgid="5198271470953124739">"Sen tempo de espera"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (predeterminado)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Baixa"</item>
<item msgid="2042505933058940139">"Baixa"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"De máis de 60 días"</item>
<item msgid="5692284879054004388">"De máis de 90 días"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Utilizar as preferencias da rede"</item>
+ <item msgid="8745603368609022803">"Tratar como rede de pago por consumo"</item>
+ <item msgid="2266114985518865625">"Tratar como rede sen límite de datos"</item>
+ </string-array>
</resources>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index 03dce16..3c3fae6 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Os teus dispositivos"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Sincronizar dispositivo novo"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Permite que o dispositivo se sincronice e conecte con dispositivos Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Desactivar a función de soar na mesma banda"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"No se reproducen tons de chamada personalizados nos auriculares Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Conectado actualmente"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Dispositivos gardados"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Engadir dispositivo"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Definir data"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Ordenar alfabeticamente"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Ordenar por zona horaria"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"Data de comezo de cambio do fuso horario <xliff:g id="TIME_TYPE">%1$s</xliff:g>: <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Horario de verán"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Horario estándar"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Fuso horario por rexión"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fusos horarios cunha diferenza horaria fixa"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Data"</string>
<string name="time_picker_title" msgid="483460752287255019">"Hora"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Bloquear automaticamente"</string>
@@ -340,6 +347,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mensaxe en pantalla de bloqueo"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Activar os widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Desactivado polo administrador"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ningunha"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Por exemplo: Android de Xoán."</string>
@@ -348,6 +359,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Información do perfil"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Contas"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Localización"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Usar a localización"</string>
<string name="account_settings_title" msgid="626177544686329806">"Contas"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Seguranza e localización"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Encriptación e credenciais"</string>
@@ -459,9 +471,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"O contrasinal que introduciches é correcto, pero lamentablemente os teus datos están danados. \n\nPara continuar usando a túa tableta, necesitas realizar un restablecemento de fábrica. Cando configures a túa tableta despois do restablecemento, poderás restaurar os datos dos que se fixo unha copia de seguranza na túa conta de Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"O contrasinal que introduciches é correcto, pero lamentablemente os teus datos están danados. \n\nPara continuar usando o teu teléfono, necesitas realizar un restablecemento de fábrica. Cando configures o teu teléfono despois do restablecemento, poderás restaurar os datos dos que se fixo unha copia de seguranza na túa conta de Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Cambiar de método de introdución"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Definir bloqueo da pantalla"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protexe o teu dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Utilizar impresión dixital"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desbloqueo coa túa impresión dixital"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Bloqueo de pantalla"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Bloqueo do traballo"</string>
@@ -691,6 +710,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Como altofalante"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Para música e contido multimedia"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Lembrar configuración"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Número máximo de dispositivos de audio Bluetooth conectados"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Selecciona o número máximo de dispositivos de audio Bluetooth conectados"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Emisión"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Activar visualización sen fíos"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Non hai dispositivos cerca."</string>
@@ -705,6 +726,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Nome"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Iniciar sesión"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> quere activar a wifi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> quere desactivar a wifi"</string>
@@ -722,6 +744,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wifi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Activar a wifi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wifi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Usar a wifi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Configuración da wifi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wifi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Configura e xestiona puntos de acceso sen fíos"</string>
@@ -816,6 +839,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Contrasinal"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostrar contrasinal"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Seleccionar banda AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automaticamente"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Configuración IP"</string>
@@ -833,7 +857,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS dispoñible)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Introduce o contrasinal da túa rede"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Rede wifi do operador"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Conectar a través de <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Conectar a través de <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para mellorar a precisión da localización e para outros fins, <xliff:g id="APP_NAME">%1$s</xliff:g> quere activar a exploración de redes, aínda que a wifi estea desactivada.\n\nQueres permitilo para todas as aplicacións que queren buscar redes?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Para desactivar esta función, accede ás opcións avanzadas no menú adicional."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -921,7 +945,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Chamadas por wifi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Activa as chamadas por wifi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Utiliza a wifi en lugar da rede de telefonía móbil"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferencia de chamada"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modo de chamadas wifi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferencia de itinerancia"</string>
@@ -931,12 +956,12 @@
<string-array name="wifi_calling_mode_choices">
<item msgid="2124257075906188844">"Wifi preferida"</item>
<item msgid="1335127656328817518">"Datos móbiles preferidos"</item>
- <item msgid="3132912693346866895">"Só wifi"</item>
+ <item msgid="3132912693346866895">"Só por wifi"</item>
</string-array>
<string-array name="wifi_calling_mode_choices_v2">
<item msgid="742988808283756263">"Wifi"</item>
<item msgid="7715869266611010880">"Datos móbiles"</item>
- <item msgid="2838022395783120596">"Só wifi"</item>
+ <item msgid="2838022395783120596">"Só por wifi"</item>
</string-array>
<string-array name="wifi_calling_mode_values">
<item msgid="4799585830102342375">"2"</item>
@@ -959,6 +984,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Enderezo de emerxencia"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Utilízase como a túa localización cando fas unha chamada de emerxencia por wifi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Máis información"</annotation>" sobre as funcións de DNS privado"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Pantalla"</string>
<string name="sound_settings" msgid="5534671337768745343">"Son"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumes"</string>
@@ -1173,6 +1199,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo de rede de telefonía móbil"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Información do operador"</string>
<string name="status_data_state" msgid="5503181397066522950">"Estado da rede de telefonía móbil"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Estado do servizo"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Intensidade do sinal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Itinerancia"</string>
@@ -1306,6 +1334,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"A túa nova <xliff:g id="NAME">^1</xliff:g> funciona. \n\nPara migrar fotos, ficheiros e datos de aplicacións a este dispositivo, accede a Configuración > Almacenamento."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Migrar <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Migrar <xliff:g id="APP">^1</xliff:g> e os seus datos á <xliff:g id="NAME_0">^2</xliff:g> só tardará un momento. Non poderás usar a aplicación ata que finalice a migración. \n\nNon retires a <xliff:g id="NAME_1">^2</xliff:g> durante a migración."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Para mover os datos, debes desbloquear o usuario <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Migrando <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Non retires a <xliff:g id="NAME">^1</xliff:g> durante a migración. \n\nA aplicación <xliff:g id="APP">^2</xliff:g> deste dispositivo non estará dispoñible ata que finalice a migración."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Cancelar migración"</string>
@@ -1358,19 +1387,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Pódense restablecer a rede, as aplicacións ou o dispositivo"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Restablecer wifi, rede móbil e Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Con esta selección, restableceranse todas as opcións de configuración da rede, entre elas as referentes a:\n\n"<li>"Wifi"</li>\n<li>"Datos móbiles"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Restablecer tamén as eSIM"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Restablecer configuración"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Queres restablecer toda a configuración da rede? Esta acción non se pode desfacer."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Restablecer configuración"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Restablecer?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"O restablecemento de rede non está dispoñible para este usuario"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Restableceuse a configuración da rede"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Non se puideron restablecer as eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Non se puideron restablecer as eSIM debido a un erro."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Borrar todos os datos (restablecemento de fábrica)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Esta acción borrará todos os datos do "<b>"almacenamento interno"</b>" da túa tableta, como:\n\n"<li>"A túa conta de Google"</li>\n<li>"Os datos e a configuracións do sistema e das aplicacións"</li>\n<li>"Aplicacións descargadas"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Esta acción borrará todos os datos do "<b>"almacenamento interno"</b>" do teléfono, como:\n\n"<li>"A túa conta de Google"</li>\n<li>"Datos e configuración do sistema e das aplicacións"</li>\n<li>"Aplicacións descargadas"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Actualmente tes sesión iniciada nas seguintes contas:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Hai outros usuarios presentes neste dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Música"</li>\n<li>"Fotos"</li>\n<li>"Outros datos do usuario"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operadores da eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Con esta acción non se cancelará o teu plan de servizos móbiles."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Para borrar música, imaxes e outros datos do usuario, é necesario borrar o "<b>"almacenamento USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Para borrar música, imaxes e outros datos de usuario, é necesario borrar a "<b>"tarxeta SD"</b>"."</string>
@@ -1430,21 +1464,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Conéctate a Internet"</string>
<string name="location_title" msgid="1029961368397484576">"A miña localización"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Localización perfil traballo"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modo"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisión"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Aforro de batería"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Só dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Localización desactivada"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Permisos de nivel aplicación"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Solicitudes de localización recentes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Ningunha aplicación solicitou a túa localización recentemente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Servizos de localización"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Uso da batería elevado"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Uso da batería baixo"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Modo de localización"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Utiliza o GPS, a wifi, o Bluetooth ou as redes de telefonía móbil para determinar a localización"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Utiliza a wifi, o Bluetooth ou as redes de telefonía móbil para determinar a localización"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Usa o GPS e os sensores do dispositivo para determinar a localización"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Exploración de conexións"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Exploración de redes wifi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Mellora a localización permitindo que as aplicacións do sistema e os servizos detecten redes wifi en calquera momento."</string>
@@ -1466,6 +1491,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Fontes de localización"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Acerca da tableta"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Acerca do teléfono"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Acerca do dispositivo"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Acerca do dispositivo emulado"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Mostra información legal, o estado e a versión do software"</string>
<string name="legal_information" msgid="5769301644270604095">"Información legal"</string>
@@ -1571,8 +1597,9 @@
<string name="install_applications_title" msgid="4987712352256508946">"Permitir todas as fontes de aplicacións"</string>
<string name="recent_app_category_title" msgid="6673071268966003928">"Aplicacións abertas recentemente"</string>
<string name="see_all_apps_title" msgid="1317153498074308438">"Ver as <xliff:g id="COUNT">%1$d</xliff:g> aplicacións"</string>
- <string name="install_all_warning" product="tablet" msgid="8310489909586138165">"A tableta e os datos persoais son máis vulnerables aos ataques de aplicacións descoñecidas. Ao instalar aplicacións desta fonte, aceptas que es responsable dos danos ocasionados na tableta ou da perda dos datos que se poden derivar do seu uso."</string>
- <string name="install_all_warning" product="default" msgid="1952257127370115988">"O teléfono e os datos persoais son máis vulnerables aos ataques de aplicacións descoñecidas. Ao instalar aplicacións desta fonte, aceptas que es responsable dos danos ocasionados no teléfono ou da perda dos datos que se poden derivar do seu uso."</string>
+ <string name="install_all_warning" product="tablet" msgid="8310489909586138165">"A tableta e os datos persoais son máis vulnerables aos ataques de aplicacións descoñecidas. Ao instalar aplicacións desta fonte, aceptas que es responsable dos danos ocasionados na tableta ou da perda dos datos que se poidan derivar do seu uso."</string>
+ <string name="install_all_warning" product="default" msgid="1952257127370115988">"O teléfono e os datos persoais son máis vulnerables aos ataques de aplicacións descoñecidas. Ao instalar aplicacións desta fonte, aceptas que es responsable dos danos ocasionados no teléfono ou da perda dos datos que se poidan derivar do seu uso."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"O teu dispositivo e os datos persoais son máis vulnerables aos ataques de aplicacións descoñecidas. Ao instalar aplicacións desta fonte, aceptas que es responsable dos danos que se poidan producir no dispositivo ou da perda de datos que se poida derivar do seu uso."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Configuración avanzada"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Activa máis opcións de configuración"</string>
<string name="application_info_label" msgid="5736524913065714880">"Info da app"</string>
@@ -1872,6 +1899,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Pode afectar ao rendemento"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Clic cando o punteiro pare"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Retardo antes de facer clic"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Usar servizo"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Usar corrección da cor"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Usar subtítulos"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ACTIVADO"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"DESACTIVADO"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Mostrar en Configuración rápida"</string>
@@ -1985,7 +2015,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> restante(s)"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> para completar a carga"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Actividade en segundo plano"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restrinxido"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permite que a aplicación se execute en segundo plano"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"É posible que a aplicación se execute en segundo plano cando non se estea utilizando"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"A actividade en segundo plano da aplicación é limitada cando non se está utilizando"</string>
@@ -2030,10 +2060,29 @@
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> aplicacións funcionan incorrectamente"</string>
<string name="battery_tip_summary_title" msgid="7060523369832289878">"A batería funciona ben"</string>
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"As aplicacións estanse comportando con normalidade"</string>
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"A batería ten pouca capacidade"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"A batería dura pouco"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Activar o xestor de batería intelixente"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Activa a opción para optimizar o uso da batería"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Activa o modo Pouca batería"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Amplía a duración da batería"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Está activado o modo Pouca batería"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Algunhas funcións están limitadas"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Utilizaches moito o teléfono"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Utilizaches moito a tableta"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Utilizaches moito o dispositivo"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Utilizouse aproximadamente durante <xliff:g id="HOUR">%1$s</xliff:g> desde a última carga completa"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Utilizaches moito o teléfono e consumiches moita batería, a cal funciona con normalidade.\n\n O teléfono utilizouse aproximadamente durante <xliff:g id="HOUR">%1$s</xliff:g> desde a última carga completa.\n\n Uso total:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Utilizaches moito a tableta e consumiches moita batería, a cal funciona con normalidade.\n\n A tableta utilizouse aproximadamente durante <xliff:g id="HOUR">%1$s</xliff:g> desde a última carga completa.\n\n Uso total:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Utilizaches moito o dispositivo e consumiches moita batería, a cal funciona con normalidade.\n\n O dispositivo utilizouse aproximadamente durante <xliff:g id="HOUR">%1$s</xliff:g> desde a última carga completa.\n\n Uso total:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Xestor de batería intelixente"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Xestionar a batería automaticamente"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Axusta automaticamente o consumo de batería por parte das aplicacións en función do uso"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Aplicacións restrinxidas"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d aplicacións</item>
+ <item quantity="one">%1$d aplicación</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Queres deter a aplicación?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"O teléfono non pode xestionar o uso da batería con normalidade porque a aplicación <xliff:g id="APP">%1$s</xliff:g> manteno activo.\n\nPara tentar solucionar este problema, podes deter a aplicación.\n\nSe o problema persiste, é posible que necesites desinstalala para mellorar o rendemento da batería."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"A tableta non pode xestionar o uso da batería con normalidade porque a aplicación <xliff:g id="APP">%1$s</xliff:g> mantena activa.\n\nPara tentar solucionar este problema, podes deter a aplicación.\n\nSe o problema persiste, é posible que necesites desinstalala para mellorar o rendemento da batería."</string>
@@ -2142,6 +2191,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Servidor multimedia"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimización da aplicación"</string>
<string name="battery_saver" msgid="8172485772238572153">"Aforro de batería"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Usar Aforro de batería"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Activar automaticamente"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nunca"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"coa batería ao <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2329,8 +2379,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"A sincronización experimenta problemas actualmente. Recuperarase en breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Engadir conta"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"O perfil de traballo aínda non está dispoñible"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modo de traballo"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permite que funcione o perfil de traballo, incluídas as aplicacións, a sincronización en segundo plano e as funcións relacionadas"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Eliminar perfil de traballo"</string>
<string name="background_data" msgid="5779592891375473817">"Datos en segundo plano"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplicacións poden sincronizar, enviar e recibir datos sempre"</string>
@@ -2356,12 +2410,13 @@
<string name="header_data_and_synchronization" msgid="5165024023936509896">"Datos e sincronización"</string>
<string name="preference_change_password_title" msgid="8955581790270130056">"Cambiar contrasinal"</string>
<string name="header_account_settings" msgid="5382475087121880626">"Configuración da conta"</string>
- <string name="remove_account_label" msgid="5921986026504804119">"Eliminar conta"</string>
+ <string name="remove_account_label" msgid="5921986026504804119">"Quitar conta"</string>
<string name="header_add_an_account" msgid="756108499532023798">"Engadir unha conta"</string>
<string name="finish_button_label" msgid="481587707657751116">"Finalizar"</string>
- <string name="really_remove_account_title" msgid="8800653398717172460">"Eliminar conta?"</string>
+ <string name="really_remove_account_title" msgid="8800653398717172460">"Queres quitar a conta?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"A eliminación desta conta eliminará todas as súas mensaxes, contactos e demais datos da tableta."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Se eliminas esta conta borraranse todas as súas mensaxes, contactos e demais datos do teléfono."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Se quitas esta conta, eliminaranse todas as súas mensaxes, contactos e demais datos do dispositivo."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"O administrador non admite este cambio"</string>
<string name="provider_label" msgid="7724593781904508866">"Subscricións push"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2580,7 +2635,8 @@
<item quantity="other">Comprobar certificados</item>
<item quantity="one">Comprobar certificado</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Usuarios"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Usuarios e perfís"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Engadir usuario ou perfil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Engadir usuario"</string>
@@ -2770,7 +2826,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplicacións e notificacións"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permisos, aplicacións predeterminadas"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Usuarios e contas"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplicacións predeterminadas"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Idiomas, hora, copia de seguranza, actualizacións"</string>
<string name="search_results_title" msgid="1796252422574886932">"Configuración"</string>
@@ -2801,7 +2858,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"non non molestar, interromper, interrupción, pausa"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"cerca, localización, historial, informe"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisión"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"conta"</string>
<string name="keywords_users" msgid="3434190133131387942">"restrición, restrinxir, restrinxido"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"corrección de texto, correcto, son, vibrar, automático, idioma, xesto, suxerir, suxestión, tema, ofensivo, palabra, escribir, emoji, internacional"</string>
@@ -2868,6 +2924,7 @@
<item quantity="one">1 norma</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Non molestar"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Activar modo Non molestar"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permitir sons e vibracións de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Ningún son"</string>
@@ -2877,8 +2934,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Activar automaticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Normas automáticas"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Norma automática"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Definir normas de Non molestar"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limita sons e vibracións en certos momentos"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Usar norma"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Só prioridade"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Só alarmas"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silencio total"</string>
@@ -2886,12 +2946,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear ruído visual"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permitir sinais visuais"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Engadir"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"ACTIVAR AGORA"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"DESACTIVAR AGORA"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Activar"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Activar agora"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desactivar agora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"O modo Non molestar estará activado ata a seguinte hora: <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"O modo Non molestar permanecerá activado ata que o desactives"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Unha norma (<xliff:g id="RULE_NAME">%s</xliff:g>) activou automaticamente o modo Non molestar"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Unha aplicación (<xliff:g id="APP_NAME">%s</xliff:g>) activou automaticamente o modo Non molestar"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Só prioridade"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de traballo"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil persoal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons son iguais para o perfil persoal e o de traballo"</string>
@@ -2907,6 +2970,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Tons de chamada"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Outros sons e vibracións"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificacións"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Notificacións enviadas recentemente"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Configuración avanzada"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificacións do traballo"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permitir puntos de notificación"</string>
@@ -2926,7 +2990,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Notificacións de aplicacións"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Categoría da notificación"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Grupo de categoría de notificación"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Importancia"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Comportamento"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Permitir son"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Non mostra nunca as notificacións"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Nin son nin interrupción visual"</string>
@@ -2944,6 +3008,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Importancia media"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Importancia alta"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Importancia urxente"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Mostrar notificacións"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asistente de notificacións"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Acceso a notificacións"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"O acceso ás notificacións do perfil de traballo está bloqueado"</string>
@@ -2974,9 +3039,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Acceso en modo Non molestar"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Ningunha aplicación instalada solicitou acceso en modo Non molestar"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Cargando aplicacións..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android bloquea a visualización de notificacións desta aplicación neste dispositivo"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android bloquea a visualización de notificacións desta categoría neste dispositivo"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android bloquea a visualización deste grupo de notificacións neste dispositivo"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Segundo solicitaches, Android bloquea a visualización de notificacións desta aplicación neste dispositivo"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Segundo solicitaches, Android bloquea a visualización desta categoría de notificacións neste dispositivo"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Segundo solicitaches, Android bloquea a visualización deste grupo de notificacións neste dispositivo"</string>
<string name="notification_channels" msgid="5346841743182627500">"Categorías"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Outro"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3121,6 +3186,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Ademais de usar a túa impresión dixital para desbloquear o dispositivo, tamén podes protexelo solicitando o teu contrasinal antes de inicialo. Ata que o dispositivo se inicie, non pode recibir chamadas, mensaxes, notificacións, nin tan sequera alarmas.\n\nDeste xeito, axúdache a protexer os datos en caso de perda ou roubo dos dispositivos. Queres solicitar o contrasinal para iniciar o dispositivo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Si"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Non"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Si"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Non"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Requirir PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Requirir padrón?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Requirir contrasinal?"</string>
@@ -3251,7 +3318,7 @@
<string name="high_power_system" msgid="7362862974428225301">"A optimización da batería non está dispoñible"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Non aplicar a optimización da batería, xa que esta pode esgotarse máis rápido."</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"Queres permitir que esta aplicación se execute sempre en segundo plano?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"É posible que permitir a <xliff:g id="APP_NAME">%1$s</xliff:g> executarse sempre en segundo plano reduza a duración da batería. \n\nPodes cambiar esta opción máis tarde en Configuración > Aplicacións e notificacións."</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Se permites que <xliff:g id="APP_NAME">%1$s</xliff:g> estea executándose sempre en segundo plano, é posible que se reduza a duración da batería. \n\nPodes cambiar esta opción máis tarde en Configuración > Aplicacións e notificacións."</string>
<string name="battery_summary" msgid="8044042095190688654">"Uso do <xliff:g id="PERCENTAGE">%1$s</xliff:g> desde a última carga completa"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Xestión da batería"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Non hai uso da batería desde a última carga completa"</string>
@@ -3393,7 +3460,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Usuario actual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Iniciaches sesión como <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"Aplicación predeterminada: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ACTIVADA/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"DESACTIVADA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Desactivouse a función de copia de seguranza"</string>
<string name="about_summary" msgid="924181828102801010">"Actualizouse a Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3403,6 +3471,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"As SMS non están permitidas"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"O uso da cámara non está permitido"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"As capturas de pantalla non están permitidas"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Non se poden desactivar as copias de seguranza"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Esta acción está desactivada. Para obter máis información, contacta co administrador da túa organización."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Máis detalles"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"O teu administrador pode supervisar e xestionar as aplicacións e os datos asociados ao teu perfil de traballo, mesmo os permisos, a configuración, o acceso corporativo, a actividade da rede e a información de localización do dispositivo."</string>
@@ -3420,15 +3489,17 @@
<string name="condition_battery_title" msgid="3272131008388575349">"Aforro de batería activado"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Reduciuse o rendemento. Desactiváronse os servizos de localización e os datos en segundo plano."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Datos móbiles desactivados"</string>
- <string name="condition_cellular_summary" msgid="1818046558419658463">"Só hai Internet a través de wifi"</string>
+ <string name="condition_cellular_summary" msgid="1818046558419658463">"Só hai Internet a través da wifi"</string>
<string name="condition_bg_data_title" msgid="2483860304802846542">"Economizador de datos activado"</string>
- <string name="condition_bg_data_summary" msgid="656957852895282228">"Os datos en segundo plano só están dispoñibles a través de wifi. Esta opción pode afectar a algunhas aplicacións ou servizos cando non haxa wifi."</string>
+ <string name="condition_bg_data_summary" msgid="656957852895282228">"Os datos en segundo plano só están dispoñibles a través da wifi. Esta opción pode afectar a algunhas aplicacións ou servizos cando non haxa wifi."</string>
<string name="condition_work_title" msgid="7293722361184366648">"Perfil de traballo desactivado"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"As aplicacións, a sincronización en segundo plano e outras funcións relacionadas co teu perfil de traballo están desactivadas."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Define a programación da Luz nocturna"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Ton ámbar na pantalla para coller o sono"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"A luz nocturna está activada"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"A pantalla ten un ton ámbar que che pode axudar a coller o sono."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Suxestións personalizadas"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suxestións"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> máis"</string>
@@ -3533,6 +3604,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ningún"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Falta o obxecto do ranking."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"O obxecto do ranking non contén esta clave."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simular unha pantalla cun recorte"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Ningunha simulación"</string>
<string name="special_access" msgid="3458780842491881155">"Acceso especial ás aplicacións"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplicacións poden usar datos sen restricións</item>
@@ -3555,31 +3628,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Conectado a varios dispositivos"</string>
<string name="demo_mode" msgid="2798762752209330277">"Modo de demostración da IU do sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Mosaicos para programadores de configuración rápida"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Se precisas axuda, conta connosco"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Estamos á túa disposición as 24 horas do día, os 7 días da semana"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Estamos á túa disposición as 24 horas do día, os 7 días da semana"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"O noso equipo de asistencia está dispoñible para resolver os problemas que xurdan"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"O noso equipo de asistencia está dispoñible as 24 horas do día, os 7 días da semana"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Busca axuda ou téntao de novo durante o horario de asistencia (hora local):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Horario de asistencia telefónica (hora local)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Busca axuda ou consulta consellos e trucos"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Asistencia telefónica para:"</string>
- <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Vas viaxar ao estranxeiro?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"É posible que se apliquen tarifas internacionais"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Teléfono"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Chat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Consultar consellos e trucos"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Buscar axuda e enviar comentarios"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Contacta co servizo de asistencia"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Iniciar sesión"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Non podes iniciar sesión?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Enviar información do sistema"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Non mostrar de novo"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Enviar solicitude desde a conta"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Engadir conta"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Información do sistema"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Seguimento de ventás"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Seguimento de superficie"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Configuración do perfil de traballo"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Busca de contactos"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permite buscas de contactos por parte da túa organización para identificar os emisores das chamadas e os contactos"</string>
@@ -3595,11 +3645,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> segundos</item>
<item quantity="one">1 segundo</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Espera de aproximadamente <xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Xestionar almacenamento"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Para axudar a liberar espazo de almacenamento, o xestor de almacenamento elimina as fotos e vídeos con copia de seguranza do teu dispositivo."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Eliminar fotos e vídeos"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Xestor de almacenamento"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Usar xestor de almacenamento"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automático"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Liberar espazo agora"</string>
@@ -3610,32 +3660,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Acceso rápido á cámara"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Para abrir rapidamente a cámara, preme dúas veces o botón de acendido. Isto funciona en calquera pantalla."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Abre a cámara rapidamente"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Preme o botón de acendido dúas veces para abrir a cámara"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Voltear a cámara"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Fai autofotos máis rápido"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Xira o teléfono dúas veces para acceder ao modo autofoto"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Xira a tableta dúas veces para acceder ao modo autofoto"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Xira o dispositivo dúas veces para acceder ao modo autofoto"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocar dúas veces para consultar o teléfono"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocar dúas veces para consultar a tableta"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocar dúas veces para consultar o dispositivo"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Para consultar a hora, as iconas de notificación e outra información, toca a pantalla dúas veces."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Consulta as notificacións coa pantalla apagada"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Levantar teléfono para consultalo"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Levantar a tableta para consultala"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Levantar o dispositivo para consultalo"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Para consultar a hora, as iconas de notificación e outros datos, colle o teléfono."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Para consultar a hora, as iconas de notificación e outros datos, colle a tableta."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Para consultar a hora, as iconas de notificación e outros datos, colle o dispositivo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Consulta as notificacións coa pantalla apagada"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Dedo no sensor para ver notificacións"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Pasar dedo impr. dixital"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Para consultar as notificacións, pasa o dedo cara abaixo sobre o sensor de impresión dixital situado na parte traseira do teléfono."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Para consultar as notificacións, pasa o dedo cara abaixo sobre o sensor de impresión dixital situado na parte traseira da tableta."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Para consultar as notificacións, pasa o dedo cara abaixo sobre o sensor de impresión dixital situado na parte traseira do dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Consultar notificacións rapidamente"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Pasa o dedo cara abaixo no sensor de impresión dixital"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Activado"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desactivado"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"O cargador de inicio xa está desbloqueado"</string>
@@ -3765,8 +3808,26 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Realiza unha visita guiada pola túa nova tableta"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Realiza unha visita guiada polo teu novo dispositivo"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Esta función non está dispoñible neste dispositivo"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forzar medicións completas de GNSS"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Realiza un seguimento de todas as frecuencias e constelacións de satélites de GNSS sen ciclos"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Mostrar sempre o cadro de diálogo de fallos"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostra o cadro de diálogo cada vez que falla unha aplicación"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acceso ao directorio"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acceso ao directorio"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-gu/arrays.xml b/res/values-gu/arrays.xml
index a1ea9c4..2594b0a 100644
--- a/res/values-gu/arrays.xml
+++ b/res/values-gu/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"પુશ બટન"</item>
<item msgid="1624323946324499595">"પીઅર ઉપકરણ પરથી પિન"</item>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 8d40cfb..ab4047f 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"તારીખ સેટ કરો"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"મૂળાક્ષરો પ્રમાણે સૉર્ટ કરો"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"સમય ઝોન પ્રમાણે સૉર્ટ કરો"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TRANSITION_DATE">%2$s</xliff:g> ના રોજથી <xliff:g id="TIME_TYPE">%1$s</xliff:g> શરૂ થાય છે."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ડેલાઇટ સેવિંગ ટાઇમ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"માનક સમય"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"પ્રદેશ દ્વારા સમય ઝોન"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"ઑફસેટ સમય ઝોન ઠીક કર્યા"</string>
<string name="date_picker_title" msgid="1338210036394128512">"તારીખ"</string>
<string name="time_picker_title" msgid="483460752287255019">"સમય"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"આપમેળે લૉક"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"લૉક સ્ક્રીન સંદેશ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"વિજેટ્સને સક્ષમ કરો"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"વ્યવસ્થાપકે અક્ષમ કરેલ"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"લોકડાઉનનો વિકલ્પ બતાવો"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"ડિસ્પ્લે પાવર બટનનો વિકલ્પ જે અતિરિક્ત ઍક્સેસ અને ફિંગરપ્રિન્ટ અનલૉક કરવાનું બંધ કરે છે."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"કોઈ નહીં"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"દા.ત., જો નું Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"પ્રોફાઇલ માહિતી"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"એકાઉન્ટ્સ"</string>
<string name="location_settings_title" msgid="1369675479310751735">"સ્થાન"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"સ્થાનનો ઉપયોગ કરો"</string>
<string name="account_settings_title" msgid="626177544686329806">"એકાઉન્ટ્સ"</string>
<string name="security_settings_title" msgid="4918904614964215087">"સુરક્ષા અને સ્થાન"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"એન્ક્રિપ્શન અને ઓળખપત્રો"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"તમે દાખલ કરેલ પાસવર્ડ સાચો છે, પરંતુ કમનસીબે તમારો ડેટા દુષિત છે. \n\nતમારા ટેબ્લેટનો ઉપયોગ ફરી શરૂ કરવા માટે, તમારે ફેક્ટરી રીસેટ કરવાની જરૂર છે. જ્યારે તમે રીસેટ પછી તમારા ટેબ્લેટને સેટ કરો ત્યારે, તમારી પાસે તમારા Google એકાઉન્ટ પર બેકઅપ લેવાયેલ તમારા કોઈપણ ડેટાને પુનઃસ્થાપિત કરવાની એક તક હશે."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"તમે દાખલ કરેલ પાસવર્ડ સાચો છે, પરંતુ કમનસીબે તમારો ડેટા દુષિત છે. \n\nતમારા ફોનનો ઉપયોગ ફરી શરૂ કરવા માટે, તમારે ફેક્ટરી રીસેટ કરવાની જરૂર છે. જ્યારે તમે રીસેટ પછી તમારા ફોનને સેટ કરો ત્યારે, તમારી પાસે તમારા Google એકાઉન્ટ પર બેકઅપ લેવાયેલ તમારા કોઈપણ ડેટાને પુનઃસ્થાપિત કરવાની એક તક હશે."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ઇનપુટ પદ્ધતિ સ્વિચ કરો"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"સ્ક્રીન લૉક સેટ કરો"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"તમારા ઉપકરણને સુરક્ષિત કરો"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ફિંગરપ્રિન્ટનો ઉપયોગ કરો"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"તમારી ફિંગરપ્રિંટ વડે અનલૉક કરો"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"સુરક્ષા માટે સ્ક્રીન લૉક સેટ કરો"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"અન્ય લોકોને તમારા ટૅબ્લેટનો ઉપયોગ કરવાથી અટકાવો"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"અન્ય લોકોને તમારા ઉપકરણનો ઉપયોગ કરવાથી અટકાવો"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"અન્ય લોકોને તમારા ફોનનો ઉપયોગ કરવાથી અટકાવો"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ફિંગરપ્રિન્ટથી અનલૉક કરો"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"તમારી ફિંગરપ્રિંટ વડે અનલૉક કરો"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"તમારી ફિંગરપ્રિંટ વડે અનલૉક કરો"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"તમારી ફિંગરપ્રિંટ વડે અનલૉક કરો"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"સ્ક્રીન લૉક પસંદ કરો"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"કાર્ય લૉક પસંદ કરો"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ટેબ્લેટની સુરક્ષા કરો"</string>
@@ -581,7 +581,7 @@
<string name="lockpassword_pin_too_long" msgid="2079396149560490458">"<xliff:g id="NUMBER">%d</xliff:g>થી ઓછા અંક હોવા આવશ્યક છે"</string>
<string name="lockpassword_pin_contains_non_digits" msgid="7284664023164191198">"માત્ર 0-9 અંક શામેલ હોવા આવશ્યક છે"</string>
<string name="lockpassword_pin_recently_used" msgid="1401569207976460727">"ઉપકરણ વ્યવસ્થાપક તાજેતરનાં પિનનો ઉપયોગ કરવાની મંજૂરી આપતા નથી"</string>
- <string name="lockpassword_pin_blacklisted_by_admin" msgid="8563366383328811472">"સામાન્ય પિન તમારા IT વ્યવસ્થાપક દ્વારા બ્લૉક કરવામાં આવે છે.એક અલગ પિન અજમાવી જુઓ."</string>
+ <string name="lockpassword_pin_blacklisted_by_admin" msgid="8563366383328811472">"સામાન્ય પિન તમારા IT વ્યવસ્થાપક દ્વારા બ્લૉક કરવામાં આવે છે. એક અલગ પિન અજમાવી જુઓ."</string>
<string name="lockpassword_illegal_character" msgid="8049611046639943217">"આમાં અમાન્ય અક્ષરોનો સમાવેશ થઈ શકતો નથી"</string>
<string name="lockpassword_password_requires_alpha" msgid="3036589522150097731">"ઓછામાં ઓછો એક વર્ણ હોવો આવશ્યક છે"</string>
<string name="lockpassword_password_requires_digit" msgid="5140062925787058765">"ઓછામાં ઓછો એક અંક હોવો આવશ્યક છે"</string>
@@ -611,7 +611,7 @@
<item quantity="other">ઓછામાં ઓછા <xliff:g id="COUNT">%d</xliff:g> વર્ણ સિવાયના અક્ષર ધરાવતો હોવો જોઈએ</item>
</plurals>
<string name="lockpassword_password_recently_used" msgid="942665351220525547">"ઉપકરણ વ્યવસ્થાપક તાજેતરનાં પાસવર્ડનો ઉપયોગ કરવાની મંજૂરી આપતા નથી"</string>
- <string name="lockpassword_password_blacklisted_by_admin" msgid="9105101266246197027">"સામાન્ય પાસવર્ડ તમારા IT વ્યવસ્થાપક દ્વારા બ્લૉક કરવામાં આવે છે.એક અલગ પાસવર્ડ અજમાવી જુઓ."</string>
+ <string name="lockpassword_password_blacklisted_by_admin" msgid="9105101266246197027">"સામાન્ય પાસવર્ડ તમારા IT વ્યવસ્થાપક દ્વારા બ્લૉક કરવામાં આવે છે. એક અલગ પાસવર્ડ અજમાવી જુઓ."</string>
<string name="lockpassword_pin_no_sequential_digits" msgid="680765285206990584">"અંકોના ચઢતા ક્રમની, ઉતરતા ક્રમની અથવા પુનરાવર્તિત અનુક્રમની મંજૂરી નથી"</string>
<string name="lockpassword_confirm_label" msgid="8176726201389902380">"પુષ્ટિ કરો"</string>
<string name="lockpassword_cancel_label" msgid="8818529276331121899">"રદ કરો"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"નામ"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"સાઇન ઇન કરો"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g>, વાઇ-ફાઇ ચાલુ કરવા માગે છે"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g>, વાઇ-ફાઇ બંધ કરવા માગે છે"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"વાઇ-ફાઇ"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"વાઇ-ફાઇ ચાલુ કરો"</string>
<string name="wifi_settings" msgid="29722149822540994">"વાઇ-ફાઇ"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"વાઇ-ફાઇનો ઉપયોગ કરો"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"વાઇ-ફાઇ સેટિંગ્સ"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"વાઇ-ફાઇ"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"વાયરલેસ ઍક્સેસ બિંદુઓને સેટ અને સંચાલિત કરો"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"પાસવર્ડ"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"પાસવર્ડ બતાવો"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP બેન્ડ પસંદ કરો"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"આપમેળે"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz બેન્ડ"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz બેન્ડ"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP સેટિંગ્સ"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"વાઇ-ફાઇ કૉલિંગ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"વાઇ-ફાઇ કૉલિંગ ચાલુ કરો"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"મોબાઇલ નેટવર્કને બદલે વાઇ-ફાઇ નો ઉપયોગ કરો"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"વાઇ-ફાઇ પરથી કૉલ કરીને કવરેજને વધારો"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"કૉલિંગ પસંદગી"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"વાઇ-ફાઇ કૉલિંગ મોડ"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"રોમિંગ પસંદગી"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"મોબાઇલ નેટવર્ક પ્રકાર"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ઓપરેટર માહિતી"</string>
<string name="status_data_state" msgid="5503181397066522950">"મોબાઇલ નેટવર્ક સ્થિતિ"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"ઈદ"</string>
<string name="status_service_state" msgid="2323931627519429503">"સેવા સ્થિતિ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"સિગ્નલ પ્રબળતા"</string>
<string name="status_roaming" msgid="2638800467430913403">"રોમિંગ"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"નેટવર્ક, ઍપ અથવા ઉપકરણ રીસેટ કરી શકાય છે"</string>
<string name="reset_network_title" msgid="6166025966016873843">"વાઇ-ફાઇ, મોબાઇલ અને બ્લૂટૂથ રીસેટ કરો"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"આ બધી નેટવર્ક સેટિંગ્સ ફરીથી સેટ કરશે, જેમાં સમાવિષ્ટ છે: \n\n"<li>"Wi‑Fi"</li>\n<li>"મોબાઇલ ડેટા"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"ઇ-સિમને પણ રીસેટ કરો"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ફોન પરના બધા ઇ-સિમ કાઢી નાખો. તમારા ઇ-સિમ ફરી ડાઉનલોડ કરવા માટે તમારે તમારા કૅરિઅરનો સંપર્ક કરવો પડશે. આમ કરવાથી તમારો મોબાઇલ સેવા પ્લાન રદ થશે નહીં."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"સેટિંગ્સ ફરીથી સેટ કરો"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"બધી નેટવર્ક સેટિંગ્સ ફરીથી સેટ કરીએ? તમે આ ક્રિયાને પૂર્વવત્ કરી શકતાં નથી!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"સેટિંગ્સ ફરીથી સેટ કરો"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ફરીથી સેટ કરીએ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"આ વપરાશકર્તા માટે નેટવર્ક ફરીથી સેટ કરો ઉપલબ્ધ નથી"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"નેટવર્ક સેટિંગ્સ ફરીથી સેટ કરવામાં આવી છે"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ઇ-સિમ રીસેટ કરી શકાતા નથી"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"એક ભૂલને કારણે ઇ-સિમ રીસેટ કરી શકાતા નથી."</string>
<string name="master_clear_title" msgid="3531267871084279512">"બધો ડેટા ભૂંસી નાખો (ફેક્ટરી રીસેટ)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"આ તમારા ટેબ્લેટનાં "<b>"આંતરિક સંગ્રહ"</b>"માંથી તમામ ડેટા કાઢી નાંખશે, જેમાં આનો સમાવેશ થાય છે:\n\n"<li>"તમારું Google એકાઉન્ટ"</li>\n<li>"સિસ્ટમ અને ઍપ્લિકેશન ડેટા અને સેટિંગ્સ"</li>\n<li>"ડાઉનલોડ કરેલ ઍપ્લિકેશનો"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"આ તમારા ફોનનાં "<b>"આંતરિક સંગ્રહ"</b>"માંથી તમામ ડેટા કાઢી નાંખશે, જેમાં આનો સમાવેશ થાય છે:\n\n"<li>"તમારું Google એકાઉન્ટ"</li>\n<li>"સિસ્ટમ અને ઍપ્લિકેશન ડેટા અને સેટિંગ્સ"</li>\n<li>"ડાઉનલોડ કરેલ ઍપ્લિકેશનો"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"તમે હાલમાં નીચેના એકાઉન્ટ્સમાં સાઇન ઇન થયેલાં છો:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"આ ઉપકરણ પર અન્ય વપરાશકર્તા હાજર છે.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"સંગીત"</li>\n<li>"ફોટા"</li>\n<li>"અન્ય વપરાશકર્તા ડેટા"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM પરના કૅરિઅર"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"ઇ-સિમ"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"આનાથી તમારો મોબાઇલ સેવા પ્લાન રદ થશે"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"સંગીત, ચિત્રો અને અન્ય વપરાશકર્તા ડેટા સાફ કરવા માટે, "<b>"USB સંગ્રહ"</b>"ને કાઢી નાખવાની જરૂર છે."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"સંગીત, ચિત્રો અને અન્ય વપરાશકર્તા ડેટા સાફ કરવા માટે, "<b>"SD કાર્ડ"</b>"ને કાઢી નાખવાની જરૂર છે."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"કૃપા કરીને ઇન્ટરનેટ સાથે કનેક્ટ કરો"</string>
<string name="location_title" msgid="1029961368397484576">"મારું સ્થાન"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"કાર્યાલયની પ્રોફાઇલ માટે સ્થાન"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"મોડ"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ઉચ્ચ સચોટતા"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"બૅટરી બચત"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"ફક્ત ઉપકરણ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"સ્થાન બંધ"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ઍપ્લિકેશન સ્તરની મંજૂરી"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"તાજેતરની સ્થાન વિનંતિ"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"હાલમાં કોઈ એપ્લિકેશને સ્થાન વિનંતી કરી નથી"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"સ્થાન સેવાઓ"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"વધુ બૅટરી ઉપયોગ"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ઓછો બૅટરી ઉપયોગ"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"સ્થાન મોડ"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"સ્થાન નક્કી કરવા માટે GPS, વાઇ-ફાઇ, બ્લૂટૂથ અથવા મોબાઇલ નેટવર્કોનો ઉપયોગ કરો"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"સ્થાન નક્કી કરવા માટે વાઇ-ફાઇ, બ્લૂટૂથ અથવા મોબાઇલ નેટવર્કોનો ઉપયોગ કરો"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"સ્થાન નક્કી કરવા માટે GPS અને ઉપકરણ સેન્સરનો ઉપયોગ કરો"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"સ્કેન કરી રહ્યું છે"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"વાઇ-ફાઇ સ્કેનિંગ"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"કોઈપણ સમયે વાઇ-ફાઇ નેટવર્ક્સને શોધવા માટે સિસ્ટમ ઍપ્લિકેશનો અને સેવાઓને મંજૂરી આપીને સ્થાન બહેતર બનાવો."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"સ્થાન સ્ત્રોતો"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ટેબ્લેટ વિશે"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ફોન વિશે"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ઉપકરણ વિશે"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ઇમ્યુલેટ કરેલ ઉપકરણ વિશે"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"કાનૂની માહિતી, સ્થિતિ, સોફ્ટવેર સંસ્કરણ જુઓ"</string>
<string name="legal_information" msgid="5769301644270604095">"કાનૂની માહિતી"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"બધી <xliff:g id="COUNT">%1$d</xliff:g> ઍપ્લિકેશન જુઓ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"તમારું ટૅબ્લેટ અને વ્યક્તિગત ડેટા અજાણી ઍપ્લિકેશનોના હુમલા પ્રતિ વધુ સંવેદનશીલ છે. આ સ્રોત પરથી ઍપ્લિકેશનો ઇન્સ્ટૉલ કરીને તમે સંમત થાઓ છો કે તેમનો ઉપયોગ કરવાના પરિણામે તમારા ટૅબ્લેટને થતી કોઈ પણ ક્ષતિ કે ડેટાના નુકસાન માટે તમે જવાબદાર છો."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"તમારો ફોન અને વ્યક્તિગત ડેટા અજાણી ઍપ્લિકેશનોના હુમલા પ્રતિ વધુ સંવેદનશીલ છે. આ સ્રોત પરથી ઍપ્લિકેશનો ઇન્સ્ટૉલ કરીને તમે સંમત થાઓ છો કે તેમનો ઉપયોગ કરવાના પરિણામે તમારા ફોનને થતી કોઈ પણ ક્ષતિ કે ડેટાના નુકસાન માટે તમે જવાબદાર છો."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"તમારું ઉપકરણ અને વ્યક્તિગત ડેટા અજાણી ઍપના હુમલા પ્રતિ વધુ સંવેદનશીલ છે. આ સ્રોત પરથી ઍપ ઇન્સ્ટૉલ કરીને, તમે સંમત થાઓ છો કે તેમનો ઉપયોગ કરવાના પરિણામે તમારા ઉપકરણને થતી કોઈ પણ ક્ષતિ કે ડેટાના નુકસાન માટે તમે જવાબદાર છો."</string>
<string name="advanced_settings" msgid="1777249286757067969">"વિગતવાર સેટિંગ્સ"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"વધુ સેટિંગ્સ વિકલ્પો સક્ષમ કરો"</string>
<string name="application_info_label" msgid="5736524913065714880">"ઍપ્લિકેશન માહિતી"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"કાર્યપ્રદર્શનને અસર થઈ શકે છે"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"પોઇન્ટર અટકે પછી ક્લિક કરો"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ક્લિક કરતાં પહેલાં વિલંબ"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"સેવાનો ઉપયોગ કરો"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"રંગ સુધારણાનો ઉપયોગ કરો"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"કૅપ્શનનો ઉપયોગ કરો"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ચાલુ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"બંધ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"ઝડપી સેટિંગ્સમાં બતાવો"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> બાકી"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"ચાર્જ થવામાં <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"પૃષ્ઠભૂમિની પ્રવૃત્તિ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"પ્રતિબંધિત"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ઍપ્લિકેશનને પૃષ્ઠભૂમિમાં ચાલવાની મંજૂરી આપો"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ઍપ્લિકેશન ઉપયોગમાં ન હોય ત્યારે પૃષ્ઠભૂમિમાં ચાલે છે"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ઍપ્લિકેશનની બૅકગ્રાઉન્ડ પ્રવૃત્તિ ઉપયોગમાં ન હોય ત્યારે મર્યાદિત હોય છે"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ઍપ સામાન્ય રીતે વર્તન કરે છે"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"બેટરીની ક્ષમતા ઓછી છે"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"આ બૅટરી બહુ લાંબી ચાલશે નહીં"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"સ્માર્ટ બૅટરી મેનેજર ચાલુ કરો"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"બૅટરી વપરાશ ઑપ્ટિમાઇઝ કરવા માટે ચાલુ કરો"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"ઓછી બૅટરી મોડ ચાલુ કરો"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"તમારી બૅટરીની આવરદા વધારો"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ઓછી બૅટરી મોડ ચાલુ છે"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"અમુક સુવિધાઓ મર્યાદિત છે"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ફોનનો ભારે ઉપયોગ કર્યો"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ટૅબ્લેટનો ભારે ઉપયોગ કર્યો"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ઉપકરણનો ભારે ઉપયોગ કર્યો"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ઍપ્લિકેશન ઓપ્ટિમાઇઝેશન"</string>
<string name="battery_saver" msgid="8172485772238572153">"બૅટરી સેવર"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"બૅટરી સેવરનો ઉપયોગ કરો"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"આપમેળે ચાલુ કરો"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ક્યારેય નહીં"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> બૅટરી પર"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"સમન્વયનમાં હાલમાં સમસ્યા આવી રહી છે. તે ટૂંક સમયમાં પાછું આવશે."</string>
<string name="add_account_label" msgid="7811707265834013767">"એકાઉન્ટ ઉમેરો"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"કાર્યાલયની પ્રોફાઇલ હજી સુધી ઉપલબ્ધ નથી"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"કાર્ય મોડ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"કાર્ય પ્રોફાઇલને ઍપ્લિકેશનો, બૅકગ્રાઉન્ડ સમન્વયન અને સંબંધિત સુવિધાઓ સહિતનું કાર્ય કરવાની મંજૂરી આપો"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"કાર્યાલયની પ્રોફાઇલ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"તમારી સંસ્થા દ્વારા મેનેજ કરેલ"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ઍપ અને નોટિફિકેશન બંધ છે"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"કાર્યાલયની પ્રોફાઇલ દૂર કરો"</string>
<string name="background_data" msgid="5779592891375473817">"બૅકગ્રાઉન્ડ ડેટા"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ઍપ્લિકેશનો કોઈપણ સમયે ડેટાને સમન્વયિત, મોકલી અને પ્રાપ્ત કરી શકે છે"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"એકાઉન્ટ દૂર કરીએ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"આ એકાઉન્ટને દૂર કરવું તેનાં તમામ સંદેશા, સંપર્કો અને ટેબ્લેટમાંના અન્ય ડેટાને કાઢી નાંખશે!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"આ એકાઉન્ટને દૂર કરવું તેનાં તમામ સંદેશા, સંપર્કો અને ફોનમાંના અન્ય ડેટાને કાઢી નાંખશે!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"આ એકાઉન્ટને કાઢી નાખવાથી તેના બધા સંદેશા, સંપર્કો તેમજ ઉપકરણમાંનો અન્ય ડેટા ડિલીટ થઈ જશે!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"તમારા વ્યવસ્થાપકે આ ફેરફારની મંજૂરી આપી નથી"</string>
<string name="provider_label" msgid="7724593781904508866">"સબ્સ્ક્રિપ્શન્સ પુશ કરો"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">પ્રમાણપત્રો તપાસો</item>
<item quantity="other">પ્રમાણપત્રો તપાસો</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"વપરાશકર્તાઓ"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"એકથી વધુ વપરાશકર્તાઓ"</string>
<string name="user_list_title" msgid="7937158411137563543">"વપરાશકર્તાઓ અને પ્રોફાઇલ્સ"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"વપરાશકર્તા અથવા પ્રોફાઇલ ઉમેરો"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"વપરાશકર્તા ઉમેરો"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"બ્લૂટૂથ, કાસ્ટ કરો"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ઍપ્લિકેશનો અને સૂચનાઓ"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"પરવાનગીઓ, ડિફૉલ્ટ ઍપ્લિકેશનો"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"વપરાશકર્તાઓ અને એકાઉન્ટો"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"એકાઉન્ટ"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ડિફૉલ્ટ ઍપ્લિકેશનો"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ભાષાઓ, સમય, બૅકઅપ, અપડેટ"</string>
<string name="search_results_title" msgid="1796252422574886932">"સેટિંગ્સ"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ખલેલ પાડવી નહીં ખલેલ પાડશો નહીં, વિક્ષેપ કરો, વિક્ષેપ, વિરામ"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"નજીકના, સ્થાન, ઇતિહાસ, જાણ કરવી"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"સચોટતા"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"એકાઉન્ટ"</string>
<string name="keywords_users" msgid="3434190133131387942">"પ્રતિબંધ, પ્રતિબંધિત કરો, પ્રતિબંધિત"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ટેક્સ્ટ સુધારણા, સુધારો, સાઉન્ડ, વાઇબ્રેટ, સ્વતઃ, ભાષા, હાવભાવ, સૂચવો, સૂચન, થીમ, અપમાનકારક, શબ્દ, પ્રકાર, ઇમોજી, આંતરરાષ્ટ્રીય"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"નેટવર્ક, મોબાઇલ નેટવર્કની સ્થિતિ, સેવાની સ્થિતિ, સિગ્નલ પ્રબળતા, મોબાઇલ નેટવર્કનો પ્રકાર, રોમિંગ, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"અનુક્રમ નંબર, હાર્ડવેર વર્ઝન"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android સુરક્ષા પૅચ સ્તર, બેઝબૅન્ડ વર્ઝન, કર્નેલ વર્ઝન"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"વાઇ-ફાઇ NFC ટૅગ સેટ કરો"</string>
<string name="write_tag" msgid="8571858602896222537">"લખો"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"લખવા માટે ટેગ પર ટેપ કરો..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> નિયમ</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ખલેલ પાડશો નહીં"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"ખલેલ પાડશો નહીં ચાલુ કરો"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"વર્તણૂક"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"આના ધ્વનિ અને વાઇબ્રેશનની મંજૂરી આપો"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"કોઈ ધ્વનિ નહીં"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"આપમેળે ચાલુ કરો"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ઑટોમૅટિક નિયમો"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"આપમેળે નિયમ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"ખલેલ પાડશો નહીં નિયમો સેટ કરો"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"અમુક સમયે ધ્વનિ અને વાઇબ્રેશન મર્યાદિત કરો"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"ચોક્કસ સમયે ફોનના અવાજને મ્યૂટ કરો"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"ખલેલ પાડશો નહીંના નિયમો સેટ કરો"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"નિયમનો ઉપયોગ કરો"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ફક્ત પ્રાધાન્યતા"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ફક્ત એલાર્મ્સ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"સાવ શાંતિ"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"દૃશ્ય વિક્ષેપોને બ્લૉક કરો"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"વિઝ્યુઅલ સંકેતોને મંજૂરી આપો"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ઉમેરો"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ચાલુ કરો"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"હમણાં ચાલુ કરો"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"હમણાં બંધ કરો"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"ખલેલ પાડશો નહીં મોડ <xliff:g id="FORMATTED_TIME">%s</xliff:g> સુધી ચાલુ છે"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"ખલેલ પાડશો નહીં મોડને તમે જ્યાં સુધી બંધ નહીં કરો ત્યાં સુધી તે ચાલુ રહેશે."</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"ખલેલ પાડશો નહીં મોડ એક <xliff:g id="RULE_NAME">%s</xliff:g> નિયમ દ્વારા આપમેળે ચાલુ કરવામાં આવ્યું હતું"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ખલેલ પાડશો નહીં મોડ એક <xliff:g id="APP_NAME">%s</xliff:g> ઍપ દ્વારા આપમેળે ચાલુ કરવામાં આવ્યું હતું"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"માત્ર પ્રાધાન્યતા"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"કાર્યાલયની પ્રોફાઇલની ધ્વનિઓ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"વ્યક્તિગત પ્રોફાઇલ ધ્વનિઓ વાપરો"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"કાર્ય અને વ્યક્તિગત પ્રોફાઇલો માટે ધ્વનિ સમાન રહે છે"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"રિંગટોન"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"અન્ય ધ્વનિ અને વાઇબ્રેશન"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"નોટિફિકેશનો"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"તાજેતરમાં મોકલેલ"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"વિગતવાર"</string>
<string name="profile_section_header" msgid="2320848161066912001">"કાર્યની સૂચનાઓ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"નોટિફિકેશનના ચિહ્નને મંજૂરી આપો"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"તમારા ઉપકરણને અનલૉક કરવા માટે તમારી ફિંગરપ્રિન્ટનો ઉપયોગ કરવા ઉપરાંત, તમે આ ઉપકરણ શરૂ થાય તે પહેલા તમારો પાસવર્ડ જરૂરી બનાવીને તેને વધુ સુરક્ષિત કરી શકો છો. ઉપકરણ શરૂ ન થાય ત્યાં સુધી, તે અલાર્મ સહિત કૉલ, સંદેશા અથવા સૂચનાઓ પ્રાપ્ત કરી શકતું નથી.\n\nઆ ઉપકરણો ખોવાઈ કે ચોરાઈ જાય ત્યારે ડેટા સુરક્ષિત કરવામાં સહાય કરે છે. શું તમારું ઉપકરણ શરૂ કરવા માટે પાસવર્ડ આવશ્યક છે?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"હા"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"નહીં"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"હા"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ના"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"પિનની જરૂર છે?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"પૅટર્ન જરૂરી છે?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"પાસવર્ડ આવશ્યક છે?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"નકારો"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"આ ઉપકરણને ચાર્જ કરો"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"બસ આ ઉપકરણને ચાર્જ કરો"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"પાવર સપ્લાય"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"કનેક્ટ કરેલ ઉપકરણને ચાર્જ કરો. USB ચાર્જિંગનું સમર્થન કરતાં ઉપકરણો સાથે જ કાર્ય કરે છે."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ફાઇલો ટ્રાન્સફર કરો"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ફાઇલોને બીજા ઉપકરણ પર ટ્રાન્સફર કરો"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ફોટો ટ્રાન્સફર કરો (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"જો MTP સમર્થિત ન હોય તો ફોટો અથવા ફાઇલો ટ્રાન્સફર કરો (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI તરીકે ઉપકરણનો ઉપયોગ કરો"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"MIDI તરીકે આ ઉપકરણનો ઉપયોગ કરો"</string>
- <string name="usb_use" msgid="3256040963685055320">"આના માટે USB નો ઉપયોગ કરો"</string>
+ <string name="usb_use" msgid="3372728031108932425">"આ માટે USB નો ઉપયોગ કરો"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"આ ઉપકરણને ચાર્જ કરવું"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"પાવર પૂરો પાડવો"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ફાઇલો ટ્રાન્સફર કરવી"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ફોટો ટ્રાન્સફર કરવા (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"ઉપકરણનો MIDI તરીકે ઉપયોગ કરવો"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS મિરરિંગ"</string>
<string name="background_check_pref" msgid="7550258400138010979">"બૅૅકગ્રાઉન્ડ ચેક"</string>
<string name="background_check_title" msgid="4534254315824525593">"પૂર્ણ બૅકગ્રાઉન્ડ ઍક્સેસ"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"વૉલપેપર, નિષ્ક્રિય થાઓ, ફૉન્ટનું કદ"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 મિનિટ સુધી કોઈ પ્રવૃત્તિ ન થવા પર નિષ્ક્રિય કરો"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> માંથી સરેરાશ <xliff:g id="USED_MEMORY">%1$s</xliff:g> મેમરીનો ઉપયોગ કર્યો"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"હાલના વપરાશકર્તા: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> તરીકે સાઇન ઇન કર્યું"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ડિફોલ્ટ છે"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ચાલુ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ચાલુ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"બંધ"</string>
<string name="backup_disabled" msgid="485189128759595412">"બેક અપ અક્ષમ કર્યું"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> પર અપડેટ કરેલ"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"ક્રિયાને મંજૂરી નથી"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"વૉલ્યૂમ બદલી શકાતું નથી"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"કૉલ કરવાની મંજૂરી નથી"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMSની મંજૂરી નથી"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"કૅમેરાની મંજૂરી નથી"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"સ્ક્રીનશૉટની મંજૂરી નથી"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"બૅકઅપ બંધ કરી શકતા નથી"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"આ ક્રિયા અક્ષમ કરેલ છે. વધુ જાણવા માટે તમારી સંસ્થાના વ્યવસ્થાપકનો સંપર્ક કરો."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"વધુ વિગતો"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"તમારા વ્યવસ્થાપક સેટિંગ્સ, પરવાનગીઓ, કૉર્પોરેટ ઍક્સેસ, નેટવર્ક પ્રવૃત્તિ અને ઉપકરણની સ્થાન માહિતી સહિત તમારી કાર્યાલયની પ્રોફાઇલ સાથે સંકળાયેલ ઍપ્લિકેશનો અને ડેટાનું નિયમન અને સંચાલન કરી શકે છે."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"પોર્ટેબલ વાઇ-ફાઇ હૉટસ્પૉટ <xliff:g id="ID_1">%1$s</xliff:g> સક્રિય છે, આ ઉપકરણ માટે વાઇ-ફાઇ બંધ કરેલ છે."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"એરપ્લેન મોડ ચાલુ છે"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"વાઇ-ફાઇ, બ્લૂટૂથ અને મોબાઇલ નેટવર્ક બંધ કરેલ છે. તમે ફોન કૉલ અથવા ઇન્ટરનેટ સાથે કનેક્ટ કરી શકશો નહીં."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"ખલેલ પાડશો નહીં ચાલુ છે (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"બૅટરી સેવર ચાલુ છે"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"પ્રદર્શનમાં ઘટાડો થયો છે. સ્થાન સેવાઓ અને બૅકગ્રાઉન્ડ ડેટા બંધ કરેલા છે."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"મોબાઇલ ડેટા બંધ છે"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"કાર્યાલયની પ્રોફાઇલ બંધ છે"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"તમારી કાર્ય પ્રોફાઇલને સંબંધિત ઍપ્લિકેશનો, બૅકગ્રાઉન્ડ સમન્વયન અને અન્ય સુવિધાઓ બંધ છે."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"રાત્રિ પ્રકાશ માટે શેડ્યૂલ સેટ કરો"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ઊંઘવામાં સહાય માટે સ્ક્રીન અમ્બર રંગછટા બનાવો"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"દરરોજ રાત્રે સ્ક્રીનની રંગછટા આપમેળે ઓછીવધતી કરો"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"રાત્રિ પ્રકાશ ચાલુ છે"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"સ્ક્રીનની રંગછટા પીળાશ પડતી નારંગી કરેલ છે. તે તમને ઊંઘવામાં સહાય કરી શકે છે."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"તમારા માટે સૂચવેલ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"સૂચનો"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+વધુ <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"કોઈ નહીં"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"રેંકિંગ ઑબ્જેક્ટ ખૂટે છે."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"રેંકિંગ ઑબ્જેક્ટમાં આ કી શામેલ નથી."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"કટઆઉટ વડે એક ડિસ્પ્લેનું અનુકરણ કરો"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"કોઈ નહીં"</string>
<string name="special_access" msgid="3458780842491881155">"વિશિષ્ટ ઍપ્લિકેશનની ઍક્સેસ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ઍપ્લિકેશન અપ્રતિબંધિત ડેટાનો ઉપયોગ કરી શકે છે</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"બહુવિધ ઉપકરણો સાથે કનેક્ટ કરેલું છે"</string>
<string name="demo_mode" msgid="2798762752209330277">"સિસ્ટમ UI ડેમો મોડ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ઝપડી સેટિંગ્સ વિકાસકર્તા ટાઇલ"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"વિંડો ટ્રેસ"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"સપાટી ટ્રેસ"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"કાર્યાલયની પ્રોફાઇલની સેટિંગ્સ"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"સંપર્ક શોધ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"કૉલર્સ અને સંપર્કોને ઓળખવા માટે તમારી સંસ્થા દ્વારા સંપર્ક શોધની મંજૂરી આપો"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"સ્ટોરેજ સ્થાન ખાલી કરવામાં સહાય માટે, સ્ટોરેજ સંંચાલક તમારા ઉપકરણમાંથી બેક અપ લીધેલા ફોટો અને વિડિઓઝને દૂર કરો."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ફોટો અને વિડિઓઝ દૂર કરો"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"સ્ટોરેજ સંચાલક"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"સ્ટોરેજ મેનેજરનો ઉપયોગ કરો"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"સ્વચાલિત"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"મેન્યુઅલ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"હમણાં સ્થાન ખાલી કરો"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"કૅમેરા પર જાઓ"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"વધુ ઝડપથી કૅમેરો ખોલવા માટે, પાવર બટનને બે વાર દબાવો. કોઈપણ સ્ક્રીન પરથી કામ કરે છે."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"કૅમેરા ઝડપથી ખોલો"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"કૅમેરા ચાલુ કરવા માટે પાવર બટન બે વાર દબાવો"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"કૅમેરો ફ્લિપ કરો"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"વધે ઝડપથી સેલ્ફીઓ લો"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"સેલ્ફી મોડ માટે ફોનને બે વાર વાંકો કરો"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"સેલ્ફી મોડ માટે ટૅબ્લેટને બે વાર વાંકું કરો"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"સેલ્ફી મોડ માટે ઉપકરણને બે વાર વાંકું કરો"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ફોનને જોવા માટે બે વાર ટૅપ કરો"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ટેબ્લેટને જોવા માટે બે વાર ટૅપ કરો"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ઉપકરણને જોવા માટે બે વાર ટૅપ કરો"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"સમય, સૂચનાના આઇકનો અને અન્ય માહિતી તપાસવા માટે તમારી સ્ક્રીન પર બે વાર ટૅપ કરો."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"જ્યારે સ્ક્રીન બંધ હોય, ત્યારે સૂચનાઓ તપાસો"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ફોનને જોવા માટે ઉઠાવો"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ટેબ્લેટને જોવા માટે ઉઠાવો"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"ઉપકરણને જોવા માટે ઉઠાવો"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"સમય, સૂચનાના આઇકનો અને અન્ય માહિતી તપાસવા માટે તમારો ફોન ઉપાડો."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"સમય, સૂચનાના આઇકનો અને અન્ય માહિતી તપાસવા માટે તમારું ટૅબ્લેટ ઉપાડો."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"સમય, સૂચનાના આઇકનો અને અન્ય માહિતી તપાસવા માટે તમારું ઉપકરણ ઉપાડો."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"જ્યારે સ્ક્રીન બંધ હોય, ત્યારે સૂચનાઓ તપાસો"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"નોટિફિકેશનો માટે ફિંગરપ્રિન્ટને સ્વાઇપ કરો"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ફિંગરપ્રિન્ટને સ્વાઇપ કરો"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"તમારી સૂચનાઓને જોવા માટે, તમારા ફોનની પાછળની બાજુએ ફિંગરપ્રિન્ટ સેન્સર પર નીચે સ્વાઇપ કરો."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"તમારી સૂચનાઓને જોવા માટે, તમારા ટેબ્લેટની પાછળની બાજુએ ફિંગરપ્રિન્ટ સેન્સર પર નીચે સ્વાઇપ કરો."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"તમારી સૂચનાઓને જોવા માટે, તમારા ઉપકરણની પાછળની બાજુએ ફિંગરપ્રિન્ટ સેન્સર પર નીચે સ્વાઇપ કરો."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"સૂચનાઓ ઝડપથી જુઓ"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"ફિંગરપ્રિન્ટ સેન્સર પર નીચે સ્વાઇપ કરો"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ચાલુ"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"બંધ"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"બૂટલોડર પહેલાંથી અનલૉક કરેલ છે"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"આ ઉપકરણ પર આ સુવિધા ઉપલબ્ધ નથી"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"સંપૂર્ણ GNSS માપને લાગુ કરો"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"કોઈપણ ડ્યૂટી-સાઈક્લિંગ વગર બધા GNSS તારામંડળો અને આવર્તનો ટ્રૅક કરો"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"હંમેશા ક્રૅશ સંવાદ બતાવો"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"જયારે પણ કોઈ ઍપ ક્રૅશ થાય ત્યારે સંવાદ બતાવો"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ડિરેક્ટરીનો ઍક્સેસ"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ડિરેક્ટરીનો ઍક્સેસ"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"મારા ફોન વિશે"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"મારા ટૅબ્લેટ વિશે"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"મારા ઉપકરણ વિશે"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"એકાઉન્ટ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ઉપકરણનું નામ"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ડ્રાઇવિંગ વખતે બ્લૂટૂથનો ઉપયોગ કરો"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ડ્રાઇવિંગ કરતી વખતે આપમેળે બ્લૂટૂથ ચાલુ કરો"</string>
</resources>
diff --git a/res/values-hi/arrays.xml b/res/values-hi/arrays.xml
index 3051579..3ca644d 100644
--- a/res/values-hi/arrays.xml
+++ b/res/values-hi/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"पुश बटन"</item>
<item msgid="1624323946324499595">"साथी डिवाइस से पिन"</item>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 39d66d3..186200e 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"दिनांक सेट करें"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"वर्णानुक्रम में क्रमित करें"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"समय क्षेत्र द्वारा क्रमित करें"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g>, <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> को शुरू होगा"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"डेलाइट सेविंग टाइम"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"मानक समय"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"क्षेत्र के हिसाब से समय क्षेत्र"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"तय ऑफ़सेट समय क्षेत्र"</string>
<string name="date_picker_title" msgid="1338210036394128512">"तारीख"</string>
<string name="time_picker_title" msgid="483460752287255019">"समय"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"अपने आप लॉक करें"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"लॉक स्क्रीन संदेश"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"शॉर्टकट चालू करें"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"व्यवस्थापक ने अक्षम किया है"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"लॉक करने के विकल्प दिखाएं"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"पावर बटन का वह विकल्प दिखाएं, जो फिंगरप्रिंट के ज़रिए अनलॉक करने की सुविधा और दूसरी सुविधाएं (जैसे वाई-फ़ाई से जुड़ना, लॉक स्क्रीन पर सूचनाएं दिखाना, ब्लूटूथ से जुड़ना वगैरह) बंद कर देता है."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"कोई नहीं"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"उदाहरण, जो का Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"प्रोफ़ाइल की जानकारी"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"खाते"</string>
<string name="location_settings_title" msgid="1369675479310751735">"जगह"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"जगह का इस्तेमाल करें"</string>
<string name="account_settings_title" msgid="626177544686329806">"खाते"</string>
<string name="security_settings_title" msgid="4918904614964215087">"सुरक्षा और जगह"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"सुरक्षित करना और क्रेडेंशियल"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"आपके द्वारा डाला गया पासवर्ड सही है, लेकिन दुर्भाग्य से आपका डेटा दूषित है. \n\nअपने टैबलेट का उपयोग फिर से शुरू करने के लिए आपको फ़ैक्टरी रीसेट करना होगा. जब आप रीसेट के बाद अपना टैबलेट रीसेट करते हैं, तो आपके पास अपने Google खाते में बैकअप लिए गए किसी भी डेटा को पुन: स्थापित करने का अवसर होगा."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"आपके द्वारा डाला गया पासवर्ड सही है, लेकिन दुर्भाग्य से आपका डेटा दूषित है. \n\nअपने फ़ोन का उपयोग फिर से शुरू करने के लिए आपको फ़ैक्टरी रीसेट करना होगा. जब आप रीसेट के बाद अपना फ़ोन सेट करते हैं, तो आपके पास अपने Google खाते में बैकअप किए गए किसी भी डेटा को पुन: स्थापित करने का अवसर होगा."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"इनपुट का तरीका बदलें"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"स्क्रीन लॉक सेट करना"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"अपने डिवाइस की सुरक्षा करें"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"फ़िंगरप्रिंट का उपयोग करना"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"अपने फ़िंगरप्रिंट से अनलॉक करें"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"सुरक्षा के लिए स्क्रीन लॉक सेट करें"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"लोगों को अपने टैबलेट का इस्तेमाल करने से रोकें"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"लोगों को अपने डिवाइस का इस्तेमाल करने से रोकें"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"लोगों को अपने फ़ोन का इस्तेमाल करने से रोकें"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"फ़िंगरप्रिंट से अनलॉक करें"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"अपने फ़िंगरप्रिंट से अनलॉक करें"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"अपने फ़िंगरप्रिंट से अनलॉक करें"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"अपने फ़िंगरप्रिंट से अनलॉक करें"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"स्क्रीन लॉक चुनें"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"कार्य लॉक चुनें"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"टैबलेट की सुरक्षा करें"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"नाम"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"साइन इन करें"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> वाई-फ़ाई को चालू करना चाहता है"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> वाई-फ़ाई को बंद करना चाहता है"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"वाई-फ़ाई"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"वाई-फ़ाई चालू करें"</string>
<string name="wifi_settings" msgid="29722149822540994">"वाई-फ़ाई"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"वाई-फ़ाई इस्तेमाल करें"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"वाई-फ़ाई सेटिंग"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"वाई-फ़ाई"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"वायरलेस पहुंच बिंदुओं को सेट अप और प्रबंधित करें"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"पासवर्ड"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"पासवर्ड दिखाएं"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP बैंड चुनें"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"अपने आप"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz बैंड"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz बैंड"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP सेटिंग"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"वाई-फ़ाई कॉलिंग"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"वाई-फ़ाई कॉलिंग चालू करें"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"मोबाइल नेटवर्क के बजाय वाई-फ़ाई का उपयोग करें"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"वाई-फ़ाई के ज़रिए कॉल करके अपनी पहुंच बढ़ाएं"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"कॉल को प्राथमिकता"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"वाई-फ़ाई कॉलिंग मोड"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"रोमिंग की प्राथमिकताएं"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"मोबाइल नेटवर्क प्रकार"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ऑपरेटर की जानकारी"</string>
<string name="status_data_state" msgid="5503181397066522950">"मोबाइल नेटवर्क की स्थिति"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"ईआईडी"</string>
<string name="status_service_state" msgid="2323931627519429503">"सेवा स्थिति"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"सिग्नल शक्ति"</string>
<string name="status_roaming" msgid="2638800467430913403">"रोमिंग"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"नेटवर्क, ऐप्लिकेशन या डिवाइस रीसेट किए जा सकते हैं"</string>
<string name="reset_network_title" msgid="6166025966016873843">"वाई-फ़ाई, मोबाइल और ब्लूटूथ रीसेट करें"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"इससे सभी नेटवर्क सेटिंग रीसेट हो जाएंगी, जिनमें ये भी शामिल हैं:\n\n"<li>"वाई-फ़ाई"</li>\n<li>"मोबाइल डेटा"</li>\n<li>"ब्लूटूथ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"ई-सिम भी रीसेट करें"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"फ़ोन पर मौजूद सभी ई-सिम(eSIM) मिटाएं. ई-सिम (eSIM) दोबारा डाउनलोड करने के लिए आपको मोबाइल और इंटरनेट सेवा देने वाली कंपनी से संपर्क करना होगा. इससे आपका मोबाइल सेवा प्लान रद्द नहीं होगा."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"सेटिंग रीसेट करें"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"सभी नेटवर्क सेटिंग रीसेट करें? आप इस कार्रवाई को वापस नहीं ला सकते!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"सेटिंग रीसेट करें"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"रीसेट करें?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"इस उपयोगकर्ता के लिए नेटवर्क रीसेट मौजूद नहीं है"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"नेटवर्क सेटिंग रीसेट कर दी गई हैं"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ई-सिम रीसेट नहीं किया जा सकता."</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"किसी गड़बड़ी की वजह से ई-सिम रीसेट नहीं किया जा सकता."</string>
<string name="master_clear_title" msgid="3531267871084279512">"सभी डेटा मिटाएं (फ़ैक्टरी रीसेट)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"इससे आपके टैबलेट के "<b>"मोबाइल मेमोरी"</b>" से सभी डेटा मिट जाएगा, जिसमें शामिल है:\n\n"<li>"आपका Google खाता"</li>\n<li>"सिस्टम और ऐप्स डेटा और सेटिंग"</li>\n<li>"डाउनलोड किए गए ऐप्स"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"इससे आपके फ़ोन के "<b>"मोबाइल मेमोरी"</b>" से सभी डेटा मिट जाएगा, जिसमें शामिल है:\n\n"<li>"आपका Google खाता"</li>\n<li>"सिस्टम और ऐप्स डेटा और सेटिंग"</li>\n<li>"डाउनलोड किए गए ऐप्स"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"आप वर्तमान में निम्न खातों में प्रवेश किए हुए हैं:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"इस डिवाइस पर अन्य उपयोगकर्ता मौजूद हैं.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"संगीत"</li>\n<li>"फ़ोटो"</li>\n<li>"अन्य उपयोगकर्ता डेटा"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM पर मौजूद मोबाइल और इंटरनेट सेवा देने वाली कंपनियां"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"ई-सिम"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"इससे आपकी मोबाइल सेवा योजना रद्द नहीं होगी."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"संगीत, तस्वीर और अन्य उपयोगकर्ता डेटा साफ़ करने के लिए "<b>" USB मैमोरी"</b>" मिटाना होगा."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"संगीत, तस्वीर और अन्य उपयोगकर्ता डेटा साफ़ करने के लिए "<b>"SD कार्ड"</b>" को साफ़ करना होगा."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"कृपया इंटरनेट से कनेक्ट करें"</string>
<string name="location_title" msgid="1029961368397484576">"मेरी जगह"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"वर्क प्रोफ़ाइल की जगह"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"मोड"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"बहुत ज़्यादा सही"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"बैटरी की बचत"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"केवल डिवाइस"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"जगह की जानकारी बंद"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ऐप्लिकेशन-स्तरीय अनुमतियां"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"हाल में किये गए जगह (लोकेशन) के अनुरोध"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"किसी भी ऐप ने हाल में जगह का अनुरोध नहीं किया है"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"जगह की जानकारी"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"अधिक बैटरी उपयोग"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"कम बैटरी उपयोग"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"जगह मोड"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"जगह का पता करने के लिए जीपीएस, वाई-फ़ाई, ब्लूटूथ या मोबाइल नेटवर्क का इस्तेमाल करें"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"जगह का पता करने के लिए वाई-फ़ाई, ब्लूटूथ या मोबाइल नेटवर्क का इस्तेमाल करें"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"जगह का पता करने के लिए जीपीएस और डिवाइस के सेंसर का इस्तेमाल करें"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"स्कैन करना"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"वाई-फ़ाई स्कैन करना"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"सिस्टम ऐप और सेवाओं को किसी भी समय वाई-फ़ाई नेटवर्कों का पता लगाने की अनुमति देकर जगह की बेहतर जानकारी पाएं."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"स्थानीय स्रोत"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"टैबलेट के बारे में"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"फ़ोन के बारे में"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"डिवाइस के बारे में जानकारी"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"एम्युलेट किए गए डिवाइस के बारे में"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"क़ानूनी जानकारी, स्थिति, सॉफ़्टवेयर वर्शन देखें"</string>
<string name="legal_information" msgid="5769301644270604095">"कानूनी जानकारी"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"सभी <xliff:g id="COUNT">%1$d</xliff:g> ऐप देखें"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"आपके टैबलेट और व्यक्तिगत डेटा पर अनजान ऐप्लिकेशन की ओर से हमला किए जाने का जोखिम ज़्यादा है. इस स्रोत से आने वाले ऐप्लिकेशन इंस्टॉल करके, आप सहमति देते हैं कि उनके उपयोग के कारण आपके टैबलेट को होने वाले किसी भी नुकसान या डेटा की हानि के लिए आप ही ज़िम्मेदार हैं."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"आपके फ़ोन और व्यक्तिगत डेटा पर अनजान ऐप्लिकेशन की ओर से हमला किए जाने का जोखिम ज़्यादा है. इस स्रोत से आने वाले ऐप्लिकेशन इंस्टॉल करके, आप सहमति देते हैं कि उनके उपयोग के कारण आपके फ़ोन को होने वाले किसी भी नुकसान या डेटा की हानि के लिए आप ही ज़िम्मेदार हैं."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"आपके डिवाइस और निजी डेटा पर अनजान ऐप्लिकेशन के ज़रिए हमला किए जाने का खतरा ज़्यादा होता है. इस स्रोत से ऐप्लिकेशन इंस्टॉल करके, आप मंज़ूरी देते हैं कि उनके इस्तेमाल की वजह से आपके डिवाइस को होने वाले किसी भी नुकसान या डेटा मिट जाने पर आप ही ज़िम्मेदार होंगे."</string>
<string name="advanced_settings" msgid="1777249286757067969">"बेहतर सेटिंग"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"और सेटिंग विकल्प चालू करें"</string>
<string name="application_info_label" msgid="5736524913065714880">"ऐप की जानकारी"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"डिसप्ले पर असर पड़ सकता है"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"पॉइंटर के रुकने के बाद क्लिक करें"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"क्लिक करने से पहले का विलंब"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"सेवा इस्तेमाल करें"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"रंग में सुधार करने की सुविधा इस्तेमाल करें"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"कैप्शन इस्तेमाल करें"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"चालू"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"बंद"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"त्वरित सेटिंग में दिखाएं"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> शेष"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"चार्ज होने में <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> शेष"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"बैकग्राउंड गतिविधि"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"पाबंदी लगी है"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ऐप्लिकेशन को बैकग्राउंड में चलने दें"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"उपयोग में नहीं होने पर ऐप्लिकेशन बैकग्राउंड में चल सकता है"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"उपयोग में नहीं होने पर ऐप्लिकेशन की बैकग्राउंड गतिविधि सीमित होती है"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ऐप्लिकेशन सामान्य तरीके से काम कर रहे हैं"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"बहुत कम बैटरी बची है"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"बहुत कम बैटरी बची है"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"स्मार्ट बैटरी मैनेजर चालू करें"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"बैटरी के बेहतर इस्तेमाल के लिए चालू करें"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"\'कम बैटरी वाला मोड\' चालू करें"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"बैटरी लाइफ़ बढ़ाएं"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"\'कम बैटरी वाला मोड\' चालू है"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"कुछ सुविधाएं सीमित हैं"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"फ़ोन का बहुत ज़्यादा इस्तेमाल किया गया"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"टैबलेट का बहुत ज़्यादा इस्तेमाल किया गया"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"डिवाइस का बहुत ज़्यादा इस्तेमाल किया गया"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"मीडिया सर्वर"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ऐप्स ऑप्टिमाइज़ेशन"</string>
<string name="battery_saver" msgid="8172485772238572153">"बैटरी सेवर"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"बैटरी सेवर इस्तेमाल करें"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"अपने आप चालू करें"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"कभी नहीं"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> बैटरी होने पर"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"किसी समस्या के कारण अभी समन्वयन नहीं हो पाया.यह शीघ्र ही उपलब्ध होगा."</string>
<string name="add_account_label" msgid="7811707265834013767">"खाता जोड़ें"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"कार्य प्रोफ़ाइल अभी तक उपलब्ध नहीं है"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"कार्य मोड"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"ऐप्स, पृष्ठभूमि समन्वयन और संबंधित सुविधाओं सहित कार्य प्रोफ़ाइल को काम करने की अनुमति दें"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"कार्य प्रोफ़ाइल"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"आपका संगठन प्रबंधित कर रहा है"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ऐप्लिकेशन और सूचनाएं बंद हैं"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"कार्य प्रोफ़ाइल निकालें"</string>
<string name="background_data" msgid="5779592891375473817">"पृष्ठभूमि डेटा"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ऐप्स किसी भी समय डेटा समन्वयित, भेज और प्राप्त कर सकते हैं"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"खाता मिटाएं?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"यह खाता निकालने से, टैबलेट से खाते के सभी संदेश, संपर्क और अन्य डेटा हट जाएंगे!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"यह खाता निकालने से, फ़ोन से इसके सभी संदेश, संपर्क और अन्य डेटा हट जाएंगे!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"यह खाता हटाने से इसके सभी मैसेज, संपर्क और दूसरा डेटा डिवाइस से मिट जाएगा!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"आपका व्यवस्थापक इस बदलाव की अनुमति नहीं देता"</string>
<string name="provider_label" msgid="7724593781904508866">"पुश सदस्यता"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">प्रमाणपत्रों की जाँच करें</item>
<item quantity="other">प्रमाणपत्रों की जाँच करें</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"उपयोगकर्ता"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"एक से ज़्यादा उपयोगकर्ता"</string>
<string name="user_list_title" msgid="7937158411137563543">"उपयोगकर्ता और प्रोफ़ाइल"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"उपयोगकर्ता या प्रोफ़ाइल जोड़ें"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"उपयोगकर्ता जोड़ें"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ब्लूटूथ, कास्ट करें"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ऐप और सूचनाएं"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"अनुमतियां, डिफ़ॉल्ट ऐप"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"उपयोगकर्ता और खाते"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"खाते"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"डिफ़ॉल्ट ऐप"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"भाषाएं, समय, बैकअप, अपडेट"</string>
<string name="search_results_title" msgid="1796252422574886932">"सेटिंग"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"न करें, परेशान न करें, बाधा डालें, बाधा, विराम"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"आस-पास की जगह, जगह, इतिहास, रिपोर्ट करना"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"सटीकता"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"खाता"</string>
<string name="keywords_users" msgid="3434190133131387942">"प्रतिबंध, प्रतिबंधित करें, प्रतिबंधित"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"लिखी हुई सामग्री में सुधार, सही आवाज़, वाइब्रेशन (कंपन), अपने आप आने वाले भाषा के सुझाव, हाथ के जेस्चर(स्पर्श) के सुझाव, थीम, आपत्तिजनक शब्द, लिखना, इमोजी, अंतर्राष्ट्रीय"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"नेटवर्क, मोबाइल नेटवर्क किस राज्य का है, सेवा किस राज्य से ली जा रही है, सिग्नल की ताकत, मोबाइल नेटवर्क का प्रकार, रोमिंग, ICCID"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"सीरियल नंबर, हार्डवेयर वर्शन"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android सुरक्षा पैच लेवल, मोबाइल रेडियो (बेसबैंड वर्शन), kernel वर्शन"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"वाई-फ़ाई NFC टैग सेट करें"</string>
<string name="write_tag" msgid="8571858602896222537">"लिखें"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"लिखने के लिए टैग टैप करें..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> नियम</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"परेशान न करें"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'परेशान न करें\' चालू करें"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"व्यवहार"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"आवाज़ और वाइब्रेशन की अनुमति दें"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"कोई आवाज़ नहीं"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"अपने आप चालू करें"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"अपने आप लागू होने वाले नियम"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"अपने आप लागू होने वाला नियम"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"परेशान न करें के नियम सेट करें"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"तय समय पर आवाज़ और वाइब्रेशन को सीमित करें"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"खास समय पर फ़ोन साइलेंट करें"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'परेशान न करें\' सुविधा के नियम सेट करें"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"नियम इस्तेमाल करें"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"सिर्फ़ प्राथमिकता"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"केवल अलार्म"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"पूरी तरह शांत"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"मैसेज पर स्क्रीन चमकने से रोकें"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"संकेत दिखाए जाने की अनुमति दें"</string>
<string name="zen_mode_add" msgid="90014394953272517">"जोड़ें"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"चालू करें"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"अभी चालू करें"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"अभी बंद करें"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"\'परेशान न करें\' <xliff:g id="FORMATTED_TIME">%s</xliff:g> तक चालू है"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"\'परेशान न करें\' तब तक चालू रहेगा जब तक आप इसे बंद नहीं करते"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"(<xliff:g id="RULE_NAME">%s</xliff:g>) नियम से \'परेशान न करें\' अपने आप चालू हो गया था"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ऐप्लिकेशन (<xliff:g id="APP_NAME">%s</xliff:g>) से \'परेशान न करें\' अपने आप चालू हो गया था"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"सिर्फ़ ज़रूरी"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"कार्य प्रोफ़ाइल की ध्वनियां"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"व्यक्तिगत प्रोफाइल ध्वनि काम में लें"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"कार्य और व्यक्तिगत प्रोफ़ाइल के लिए ध्वनियां एक समान होती हैं"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"रिंगटोन"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"और आवाज़ें और कंपन (वाइब्रेशन)"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"सूचनाएं"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"हाल ही में सूचनाएं भेजने वाले ऐप्लिकेशन"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"बेहतर"</string>
<string name="profile_section_header" msgid="2320848161066912001">"वर्क प्रोफ़ाइल सूचनाएं"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"सूचना बिंदुओं की अनुमति दें"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"अपने डिवाइस का लॉक खोलने के लिए अपने फ़िंगरप्रिंट का इस्तेमाल करने के अलावा, आप इस डिवाइस के चालू होने से पहले अपना पासवर्ड डालना ज़रूरी बनाकर इसे और भी सुरक्षित कर सकते हैं. डिवाइस के चालू होने तक, उस पर कॉल, मैसेज या सूचनाएं नहीं मिलेंगी और अलार्म भी काम नहीं करेगा.\n\nइससे खोए हुए या चोरी हो गए डिवाइस पर डेटा की सुरक्षा करने में सहायता मिलती है. अपना डिवाइस चालू करने के लिए पासवर्ड डालना ज़रूरी बनाना चाहते हैं?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"हां"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"नहीं"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"हां"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"नहीं"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"पिन आवश्यक है?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"पैटर्न आवश्यक है?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"पासवर्ड आवश्यक है?"</string>
@@ -3280,9 +3276,9 @@
<string name="system_default_app" msgid="3091113402349739037">"(सिस्टम डिफ़ॉल्ट)"</string>
<string name="apps_storage" msgid="4353308027210435513">"ऐप मेमोरी"</string>
<string name="usage_access" msgid="5479504953931038165">"उपयोग की एक्सेस"</string>
- <string name="permit_usage_access" msgid="4012876269445832300">"डेटा का इस्तेमाल देखने की अनुमति दें"</string>
+ <string name="permit_usage_access" msgid="4012876269445832300">"\'डेटा खर्च\' देखने की इजाज़त दें"</string>
<string name="app_usage_preference" msgid="7065701732733134991">"ऐप उपयोग की प्राथमिकताएं"</string>
- <string name="usage_access_description" msgid="1352111094596416795">"डेटा का इस्तेमाल देखने की अनुमति से कोई ऐप्लिकेशन यह ट्रैक कर पाता है कि आप कौनसे एेप्लिकेशन चला रहे हैं और उन्हें कितनी बार इस्तेमाल करते हैं. साथ ही, ऐप्लिकेशन आपकी मोबाइल और इंटरनेट सेवा देने वाली कंपनी, भाषा सेटिंग और दूसरी जानकारी पर नज़र रख पाता है."</string>
+ <string name="usage_access_description" msgid="1352111094596416795">"\'डेटा खर्च\' देखने की इजाज़त से कोई ऐप्लिकेशन इस बात पर नज़र रख पाता है कि आप कौनसे एेप्लिकेशन चला रहे हैं और उन्हें कितनी बार इस्तेमाल करते हैं. साथ ही, ऐप्लिकेशन आपकी मोबाइल और इंटरनेट सेवा देने वाली कंपनी, भाषा सेटिंग और दूसरी जानकारी देख पाता है."</string>
<string name="memory_settings_title" msgid="7490541005204254222">"मेमोरी"</string>
<string name="memory_details_title" msgid="8542565326053693320">"मेमोरी का विवरण"</string>
<string name="always_running" msgid="6042448320077429656">"हमेशा चलने वाला (<xliff:g id="PERCENTAGE">%s</xliff:g>)"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"अस्वीकार करें"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"इस डिवाइस को चार्ज करें"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"केवल इस डिवाइस को चार्ज करें"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"पावर आपूर्ति के लिए"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"कनेक्ट किए गए डिवाइस को चार्ज करें. यह सिर्फ़ उन डिवाइस पर काम करता है जिनमें USB चार्जिंग होती है."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"फ़ाइलें स्थानान्तरित करें"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"किसी अन्य डिवाइस पर फ़ाइलें स्थानान्तरित करें"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"फ़ोटो का ट्रांसफ़र (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP समर्थित नहीं होने पर फ़ोटो या फ़ाइलें ट्रांसफर करें (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"डिवाइस का उपयोग MIDI के रूप में करें"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"इस डिवाइस का उपयोग MIDI के रूप में करें"</string>
- <string name="usb_use" msgid="3256040963685055320">"इसके लिए USB का उपयोग करें"</string>
+ <string name="usb_use" msgid="3372728031108932425">"USB का उपयोग इसके लिए करें"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"इस डिवाइस को चार्ज करना"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"पावर सप्लाय करना"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"फ़ाइलें स्थानान्तरित करना"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"फ़ोटो स्थानान्तरित करना (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"डिवाइस का उपयोग MIDI के रूप में करना"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"मैसेज (एसएमएस) नकल"</string>
<string name="background_check_pref" msgid="7550258400138010979">"बैकग्राउंड चैक"</string>
<string name="background_check_title" msgid="4534254315824525593">"पूरे बैकग्राउंड की एक्सेस"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"वॉलपेपर, सुलाएं (कम बैटरी मोड), फ़ॉन्ट आकार"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 मिनट तक कोई गतिविधि ना होने पर कम बैटरी मोड में जाएं"</string>
<string name="memory_summary" msgid="8080825904671961872">"औसतन <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> में से <xliff:g id="USED_MEMORY">%1$s</xliff:g> मेमोरी उपयोग की गई"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"मौजूदा उपयोगकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> के रूप में प्रवेश किया हुआ है"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> डिफ़ॉल्ट है"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"चालू / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"चालू है"</string>
<string name="location_off_summary" msgid="6474350053215707957">"बंद"</string>
<string name="backup_disabled" msgid="485189128759595412">"बैक अप बंद किया गया"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> में अपडेट किया गया"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"कार्रवाई की अनुमति नहीं"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"आवाज़ बदली नहीं जा सकती"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"कॉल करने की अनुमति नहीं है"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"मैसेज (एसएमएस) की अनुमति नहीं है"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"कैमरा की अनुमति नहीं है"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"स्क्रीनशॉट की अनुमति नहीं है"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"बैकअप लेना बंद नहीं किया जा सकता"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"यह कार्रवाई बंद है. और जानने के लिए, अपने संगठन के एडमिन से संपर्क करें."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"अधिक विवरण"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"आपका एडमिन आपकी वर्क प्रोफ़ाइल से जुड़े ऐप और डेटा की निगरानी और उनका प्रबंधन कर सकता है, जिनमें सेटिंग, अनुमतियां, कॉर्पोरेट पहुंच, नेटवर्क गतिविधि और डिवाइस के जगह की जानकारी शामिल हैं."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"पोर्टेबल वाई-फ़ाई हॉटस्पॉट <xliff:g id="ID_1">%1$s</xliff:g> सक्रिय है, इस डिवाइस के लिए वाई-फ़ाई बंद है."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"हवाई जहाज़ मोड चालू है"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"वाई-फ़ाई, ब्लूटूथ और मोबाइल नेटवर्क बंद हैं. आप कॉल नहीं कर सकते और इंटरनेट से भी कनेक्ट नहीं कर सकते."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"परेशान न करें चालू है (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"बैटरी सेवर चालू है"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"प्रदर्शन कम कर दिया गया है. जगह की जानकारी और बैकग्राउंड डेटा बंद हैं."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"मोबाइल डेटा बंद है"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"कार्य प्रोफ़ाइल बंद है"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"आपकी कार्य प्रोफ़ाइल से संबंधित ऐप्स, पृष्ठभूमि समन्वयन और अन्य सुविधाएं बंद हैं."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"नाइट लाइट शेड्यूल सेट करें"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"टिंट स्क्रीन एम्बर की मदद से आप सो जाते हैं"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"हर रात, कमरे की रोशनी के हिसाब से स्क्रीन का रंग और चमक अपने आप बदलें"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"नाइट लाइट चालू है"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"स्क्रीन हल्की एम्बर है. इससे आपको नींद आने में सहायता मिल सकती है."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"आपके लिए सुझाए गए"</string>
<string name="suggestions_title" msgid="7280792342273268377">"सुझाव"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> और"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"कोई नहीं"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"रैंकिंग ऑब्जेक्ट अनुपलब्ध है."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"रैंकिंग ऑब्जेक्ट में यह कुंजी शामिल नहीं है."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"डिसप्ले कटआउट की नकल करें"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"कोई नहीं"</string>
<string name="special_access" msgid="3458780842491881155">"ख़ास ऐप की एक्सेस"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ऐप अप्रतिबंधित डेटा का उपयोग कर सकते हैं</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"कई डिवाइस से कनेक्ट है"</string>
<string name="demo_mode" msgid="2798762752209330277">"सिस्टम यूज़र इंटरफ़ेस (यूआई) डेमो मोड"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"त्वरित सेटिंग डेवलपर टाइल"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"विंडो ट्रेस"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"सर्फ़ेस ट्रेस"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"कार्य प्रोफ़ाइल सेटिंग"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"संपर्क सर्च"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"कॉल करने वालों (कॉलर) और संपर्कों की पहचान करने के लिए अपने संगठन को संपर्क खोजने दें"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"मेमोरी में जगह खाली करने में मदद करने के लिए, मेमोरी प्रबंधक आपके डिवाइस से बैकअप ली गई फ़ोटो और वीडियो निकाल देता है."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"फ़ोटो और वीडियो निकालें"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"मेमोरी प्रबंधक"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"मेमोरी मैनेजर इस्तेमाल करें"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"स्वचालित"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"मैन्युअल"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"अभी स्पेस खाली करें"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"सीधे कैमरे पर जाएं"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"कैमरा तुरंत खोलने के लिए, पावर बटन दो बार दबाएं. ऐसा किसी भी स्क्रीन से किया जा सकता है."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"झटपट कैमरा खोलें"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"कैमरा खोलने के लिए पावर बटन को दो बार दबाएं"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"कैमरा फ़्लिप करें"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"और तेज़ी से खुद से स्वयं की फ़ोटो लें"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"खुद ली गई स्वयं की फ़ोटो मोड के लिए फ़ोन को दो बार घुमाएं"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"खुद ली गई स्वयं की फ़ोटो मोड के लिए टैबलेट को दो बार घुमाएं"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"खुद ली गई स्वयं की फ़ोटो मोड के लिए डिवाइस को दो बार घुमाएं"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"फ़ोन देखने के लिए दो बार छूएं"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"टैबलेट देखने के लिए दो बार छूएं"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"डिवाइस देखने के लिए दो बार छूएं"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"समय, सूचना आइकॉन और अन्य जानकारी देखने के लिए, अपनी स्क्रीन को दो बार छूएं."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"स्क्रीन बंद होने पर सूचनाएं देखें"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"फ़ोन देखने के लिए लिफ़्ट करें"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"टैबलेट देखने के लिए लिफ़्ट करें"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"डिवाइस देखने के लिए लिफ़्ट करें"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"समय, नोटिफ़िकेशन आइकॉन और अन्य जानकारी देखने के लिए, अपने फ़ोन का इस्तेमाल करें."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"समय, नोटिफ़िकेशन आइकॉन और अन्य जानकारी देखने के लिए, अपना टैबलेट का इस्तेमाल करें."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"समय, नोटिफ़िकेशन आइकॉन और अन्य जानकारी देखने के लिए, अपने डिवाइस का इस्तेमाल करें."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"स्क्रीन बंद होने पर सूचनाएं देखें"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"सूचनाओं के लिए फ़िंगरप्रिंट स्वाइप करें"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"फ़िंगरप्रिंट स्वाइप करें"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"अपने सूचना देखने के लिए, अपने फ़ोन के पीछे फ़िंगरप्रिंट सेंसर पर नीचे की तरफ़ स्वाइप करें."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"अपने सूचना देखने के लिए, अपने टैबलेट के पीछे फ़िंगरप्रिंट सेंसर पर नीचे की तरफ़ स्वाइप करें."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"अपनी सूचनाएं देखने के लिए, अपने डिवाइस के पीछे फ़िंगरप्रिंट सेंसर पर नीचे की तरफ़ स्वाइप करें."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"झटपट सूचनाएं देखें"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"फ़िंगरप्रिंट सेंसर पर नीचे स्वाइप करें"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"चालू"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"बंद"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"बूटलोडर पहले से ही अनलाॅक किया हुआ है"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"यह सुविधा इस डिवाइस पर उपलब्ध नहीं है"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"GNSS माप को पूरी तरह लागू करें"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"बिना ड्यूटी-साइक्लिंग के GNSS की सभी तारामंडल (कॉन्स्टलेशन) और फ़्रीक्वेंसी ट्रैक करें"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"क्रैश होने की सूचना हर बार दिखाएं"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"जब भी कोई ऐप्लिकेशन क्रैश हो, उसकी सूचना दिखाएं"</string>
+ <string name="directory_access" msgid="4722237210725864244">"निर्देशिका का एक्सेस"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"निर्देशिका का एक्सेस"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"मेरा फ़ोन"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"मेरा टैबलेट"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"मेरा डिवाइस"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"खाता"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"डिवाइस का नाम"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"गाड़ी चलाते समय ब्लूटूथ इस्तेमाल करें"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"गाड़ी चलाते समय अपने आप ब्लूटूथ चालू करें"</string>
</resources>
diff --git a/res/values-in/arrays.xml b/res/values-in/arrays.xml
index 0cdaef4..564eaa9 100644
--- a/res/values-in/arrays.xml
+++ b/res/values-in/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Tekan tombol"</item>
<item msgid="1624323946324499595">"PIN dari perangkat rekan"</item>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index ca150bc..f18c617 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Pesan kunci layar"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Aktifkan widget"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Dinonaktifkan oleh admin"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Tampilkan opsi penguncian"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Tampilkan opsi tombol power yang menonaktifkan akses diperluas dan buka kunci dengan sidik jari."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Tidak ada"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Misalnya, Android Joko."</string>
@@ -467,9 +469,11 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Sandi yang Anda masukkan benar, namun sayangnya data rusak. \n\nUntuk melanjutkan dengan tablet, Anda perlu mengembalikannya ke setelan pabrik. Saat menyiapkan tablet setelah disetel ulang, akan ada kesempatan untuk memulihkan data apa pun yang telah dicadangkan ke Akun Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Sandi yang Anda masukkan benar, namun sayangnya data rusak. \n\nUntuk melanjutkan dengan ponsel, Anda perlu mengembalikannya ke setelan pabrik. Jika Anda menyiapkan ponsel setelah setel ulang, akan ada kesempatan untuk memulihkan data apa pun yang telah dicadangkan ke Akun Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Beralih metode masukan"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Setel kunci layar"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Lindungi perangkat"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Gunakan sidik jari"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Setel kunci layar untuk keamanan"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Cegah orang lain menggunakan tablet Anda"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Cegah orang lain menggunakan perangkat Anda"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Cegah orang lain menggunakan ponsel Anda"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Buka kunci dengan sidik jari"</string>
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Membuka kunci dengan sidik jari"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Pilih kunci layar"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Pilih kunci profil kerja"</string>
@@ -828,6 +832,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Sandi"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Tampilkan sandi"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Pilih Pita AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Otomatis"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Pita 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Pita 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Setelan IP"</string>
@@ -933,7 +938,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Panggilan Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Mengaktifkan Panggilan Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Gunakan Wi-Fi, alih-alih jaringan seluler"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Perluas cakupan dengan menghubungi melalui Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferensi panggilan telepon"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Mode panggilan Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferensi roaming"</string>
@@ -1186,6 +1191,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Jenis jaringan seluler"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Info operator"</string>
<string name="status_data_state" msgid="5503181397066522950">"Kondisi jaringan seluler"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Status layanan"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Kekuatan sinyal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1372,19 +1378,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Jaringan, aplikasi, atau perangkat dapat disetel ulang"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Setel ulang Wi-Fi, data seluler & Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Tindakan ini akan menyetel ulang semua setelan jaringan, termasuk:\n\n"<li>"Wi‑Fi"</li>\n<li>"Data seluler"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Setel ulang juga eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Hapus semua eSIM di ponsel. Anda harus menghubungi operator untuk mendownload ulang eSIM. Tindakan ini tidak akan membatalkan paket layanan seluler."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Setel ulang setelan"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Setel ulang semua setelan jaringan? Tindakan ini tidak dapat diurungkan!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Setel ulang setelan"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Setel ulang?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Setel ulang jaringan tidak tersedia untuk pengguna ini"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Setelan jaringan telah disetel ulang"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Tidak dapat menyetel ulang eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIM tidak dapat disetel ulang karena terjadi error."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Hapus semua data (reset ke setelan pabrik)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Ini akan menghapus semua data dari "<b>"penyimpanan internal"</b>" tablet Anda, termasuk:\n\n"<li>"Akun Google Anda"</li>\n<li>"Data sistem dan apl serta setelan"</li>\n<li>"Apl download"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Ini akan menghapus semua data dari "<b>"penyimpanan internal"</b>" ponsel Anda, termasuk:\n\n"<li>"Akun Google Anda"</li>\n<li>"Data sistem dan apl serta setelan"</li>\n<li>"Apl download"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Saat ini Anda telah login ke akun berikut:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Ada pengguna lain yang aktif di perangkat ini.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musik"</li>\n<li>"Foto"</li>\n<li>"Data pengguna lainnya"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operator di eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Tindakan ini tidak akan membatalkan paket layanan seluler."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Untuk menghapus gambar, musik, dan data pengguna lainnya, "<b>"penyimpanan USB"</b>" perlu dihapus."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Untuk menghapus musik, gambar, dan data pengguna lainnya, "<b>"kartu SD"</b>" perlu dihapus."</string>
@@ -1444,21 +1454,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Sambungkan ke internet"</string>
<string name="location_title" msgid="1029961368397484576">"Lokasiku"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Lokasi untuk profil kerja"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mode"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Akurasi tinggi"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Hemat baterai"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Perangkat saja"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Lokasi nonaktif"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Izin tingkat aplikasi"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Permintaan lokasi terbaru"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Tidak ada aplikasi yang meminta lokasi baru-baru ini"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Layanan lokasi"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Penggunaan baterai tinggi"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Penggunaan baterai rendah"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Mode lokasi"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Menggunakan GPS, Wi-Fi, Bluetooth, atau jaringan seluler untuk menentukan lokasi"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Pakai Wi-Fi, Bluetooth, atau jaringan seluler untuk menentukan lokasi"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Gunakan sensor perangkat dan GPS untuk menentukan lokasi"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Memindai"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Pemindaian Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Meningkatkan akurasi lokasi dengan mengizinkan aplikasi dan layanan sistem untuk mendeteksi jaringan Wi-Fi kapan saja"</string>
@@ -1868,8 +1869,8 @@
<string name="accessibility_preference_magnification_summary" msgid="5867883657521404509">"Zoom in di layar"</string>
<string name="accessibility_screen_magnification_short_summary" msgid="3411979839172752057">"Ketuk 3 kali untuk memperbesar"</string>
<string name="accessibility_screen_magnification_navbar_short_summary" msgid="3693116360267980492">"Tap tombol untuk zoom"</string>
- <string name="accessibility_screen_magnification_summary" msgid="5258868553337478505"><b>"Untuk melakukan zoom"</b>", tap layar 3 kali dengan cepat.\n"<ul><li>"Seret menggunakan 2 jari atau lebih untuk men-scroll"</li>\n<li>"Cubit menggunakan 2 jari atau lebih untuk menyesuaikan zoom"</li></ul>\n\n<b>"Untuk melakukan zoom sementara"</b>", tap layar 3 kali dengan cepat dan tahan jari pada tap ke-3.\n"<ul><li>"Seret untuk memindahkan zoom ke bagian layar yang lain"</li>\n<li>"Angkat jari untuk memperkecil"</li></ul>\n\n"Anda tidak dapat memperbesar keyboard dan menu navigasi."</string>
- <string name="accessibility_screen_magnification_navbar_summary" msgid="1996584694050087161">"Jika pembesaran diaktifkan, gunakan tombol Aksesibilitas di bagian bawah layar untuk memperbesar dengan cepat.\n\n"<b>"Untuk melakukan zoom"</b>", tap tombol Aksesibilitas, kemudian tap layar di bagian mana saja.\n"<ul><li>"Seret menggunakan 2 jari atau lebih untuk men-scroll"</li>\n<li>"Cubit menggunakan 2 jari atau lebih untuk menyesuaikan zoom"</li></ul>\n\n<b>"Untuk melakukan zoom sementara"</b>", tap tombol Aksesibilitas, kemudian sentuh & tahan layar di bagian mana saja.\n"<ul><li>"Seret untuk memindahkan zoom ke bagian layar yang lain"</li>\n<li>"Angkat jari untuk memperkecil"</li></ul>\n\n"Anda tidak dapat memperbesar keyboard atau menu navigasi."</string>
+ <string name="accessibility_screen_magnification_summary" msgid="5258868553337478505"><b>"Untuk melakukan zoom"</b>", tap layar 3 kali dengan cepat.\n"<ul><li>"Tarik menggunakan 2 jari atau lebih untuk men-scroll"</li>\n<li>"Cubit menggunakan 2 jari atau lebih untuk menyesuaikan zoom"</li></ul>\n\n<b>"Untuk melakukan zoom sementara"</b>", tap layar 3 kali dengan cepat dan tahan jari pada tap ke-3.\n"<ul><li>"Tarik untuk memindahkan zoom ke bagian layar yang lain"</li>\n<li>"Angkat jari untuk memperkecil"</li></ul>\n\n"Anda tidak dapat memperbesar keyboard dan menu navigasi."</string>
+ <string name="accessibility_screen_magnification_navbar_summary" msgid="1996584694050087161">"Jika pembesaran diaktifkan, gunakan tombol Aksesibilitas di bagian bawah layar untuk memperbesar dengan cepat.\n\n"<b>"Untuk melakukan zoom"</b>", tap tombol Aksesibilitas, kemudian tap layar di bagian mana saja.\n"<ul><li>"Tarik menggunakan 2 jari atau lebih untuk men-scroll"</li>\n<li>"Cubit menggunakan 2 jari atau lebih untuk menyesuaikan zoom"</li></ul>\n\n<b>"Untuk melakukan zoom sementara"</b>", tap tombol Aksesibilitas, kemudian sentuh & tahan layar di bagian mana saja.\n"<ul><li>"Tarik untuk memindahkan zoom ke bagian layar yang lain"</li>\n<li>"Angkat jari untuk memperkecil"</li></ul>\n\n"Anda tidak dapat memperbesar keyboard atau menu navigasi."</string>
<string name="accessibility_screen_magnification_navbar_configuration_warning" msgid="70533120652758190">"Tombol Aksesibilitas disetel ke <xliff:g id="SERVICE">%1$s</xliff:g>. Untuk menggunakan fitur pembesaran, sentuh & tahan tombol Aksesibilitas, kemudian pilih pembesaran."</string>
<string name="accessibility_global_gesture_preference_title" msgid="2048884356166982714">"Pintasan tombol volume"</string>
<string name="accessibility_shortcut_service_title" msgid="4779360749706905640">"Layanan pintasan"</string>
@@ -2004,7 +2005,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> tersisa"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> lagi agar terisi penuh"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktivitas latar belakang"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Dibatasi"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Izinkan aplikasi berjalan di latar belakang"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Aplikasi dapat berjalan di background ketika tidak digunakan"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Aktivitas background aplikasi dibatasi ketika tidak digunakan"</string>
@@ -2053,14 +2054,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Masa pakai baterai kurang lama"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Aktifkan pengelola baterai cerdas"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Aktifkan untuk mengoptimalkan penggunaan baterai"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Aktifkan Mode Baterai Rendah"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Perpanjang masa pakai baterai"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Mode Baterai Rendah aktif"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Beberapa fitur terbatas"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Ponsel digunakan terlalu lama"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet digunakan terlalu lama"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Perangkat digunakan terlalu lama"</string>
@@ -2372,8 +2369,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Saat ini sinkronisasi mengalami masalah. Sinkronisasi akan segera berfungsi kembali."</string>
<string name="add_account_label" msgid="7811707265834013767">"Tambahkan akun"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Profil kerja belum tersedia"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Mode kerja"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Izinkan profil kerja berfungsi, termasuk aplikasi, sinkronisasi latar belakang, dan fitur terkait"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Profil kerja"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Dikelola oleh organisasi"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Aplikasi dan notifikasi dinonaktifkan"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Buang profil kerja"</string>
<string name="background_data" msgid="5779592891375473817">"Data latar belakang"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apl dapat menyinkronkan, mengirimkan, dan menerima data kapan saja"</string>
@@ -2624,7 +2622,8 @@
<item quantity="other">Periksa sertifikat</item>
<item quantity="one">Periksa sertifikat</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Pengguna"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Pengguna & profil"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Tambahkan pengguna atau profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Tambahkan pengguna"</string>
@@ -2814,7 +2813,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikasi & notifikasi"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Izin, aplikasi default"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Pengguna & akun"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplikasi default"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Bahasa, waktu, backup, update"</string>
<string name="search_results_title" msgid="1796252422574886932">"Setelan"</string>
@@ -2845,7 +2845,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"jangan jangan ganggu, mengganggu, gangguan, putus"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"di sekitar, lokasi, riwaya, pelaporan"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"akurasi"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"akun"</string>
<string name="keywords_users" msgid="3434190133131387942">"pembatasan, membatasi, dibatasi"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"koreksi teks, benar suara, getar otomatis, bahasa, isyarat, sarankan, saran, tema, menyinggung, kata, jenis, emoji, internasional"</string>
@@ -2912,6 +2911,7 @@
<item quantity="one">1 aturan</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Jangan Ganggu"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Aktifkan mode Jangan Ganggu"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Perilaku"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Izinkan suara dan getaran dari"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Tanpa suara"</string>
@@ -2921,8 +2921,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Aktifkan secara otomatis"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Aturan otomatis"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Aturan otomatis"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Setel aturan Jangan Ganggu"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Batasi suara & getaran pada waktu tertentu"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Nonaktifkan notifikasi ponsel pada waktu tertentu"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Setel aturan Jangan Ganggu"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Gunakan aturan"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Hanya untuk prioritas"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Hanya alarm"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Senyap total"</string>
@@ -2930,12 +2931,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokir gangguan visual"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Izinkan sinyal visual"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Tambahkan"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Aktifkan"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Aktifkan sekarang"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Nonaktifkan sekarang"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Mode Jangan Ganggu aktif hingga <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Mode Jangan Ganggu akan tetap aktif hingga Anda menonaktifkannya"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Mode Jangan Ganggu otomatis diaktifkan oleh aturan <xliff:g id="RULE_NAME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Mode Jangan Ganggu otomatis diaktifkan oleh aplikasi <xliff:g id="APP_NAME">%s</xliff:g>"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Hanya untuk prioritas"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Suara profil kerja"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Gunakan suara profil pribadi"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Suara profil kerja dan pribadi sama"</string>
@@ -2951,6 +2955,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Nada dering"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Suara dan getaran lain"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifikasi"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Dikirim baru-baru ini"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Lanjutan"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notifikasi kerja"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Izinkan titik notifikasi"</string>
@@ -3166,6 +3171,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Selain menggunakan sidik jari untuk membuka kunci perangkat, Anda dapat melindungi perangkat ini lebih lanjut dengan meminta sandi sebelum mulai mengaktifkan perangkat. Jika perangkat belum aktif, panggilan telepon, SMS, atau notifikasi, termasuk alarm, tidak dapat diterima.\n\nIni membantu melindungi data di perangkat yang hilang atau dicuri. Minta sandi untuk mulai mengaktifkan perangkat?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ya"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Tidak"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ya"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Tidak"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Perlu PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Perlu pola?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Perlu sandi?"</string>
@@ -3438,7 +3445,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Pengguna saat ini: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Login sebagai <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> default"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"AKTIF / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"NONAKTIF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Cadangan dinonaktifkan"</string>
<string name="about_summary" msgid="924181828102801010">"Diupdate ke Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3448,6 +3456,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS tidak diizinkan"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kamera tidak diizinkan"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot tidak diizinkan"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Tidak dapat menonaktifkan backup"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Tindakan ini dinonaktifkan. Untuk mempelajari lebih lanjut, hubungi admin organisasi."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Detail selengkapnya"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Admin dapat memantau serta mengelola aplikasi dan data yang terkait dengan profil kerja, termasuk setelan, izin, akses perusahaan, aktivitas jaringan, dan informasi lokasi perangkat."</string>
@@ -3471,9 +3480,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profil kerja nonaktif"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Aplikasi, sinkronisasi latar belakang, dan fitur lainnya yang terkait dengan profil kerja Anda dinonaktifkan."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Setel jadwal Cahaya Malam"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Ronai layar dengan warna coklat keemasan untuk membantu Anda tidur"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Otomatis mewarnai layar setiap malam"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Mode Cahaya Malam aktif"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Layar berona kuning. Mungkin dapat membantu Anda tidur."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Disarankan untuk Anda"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Saran"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"Lebih dari +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> lagi"</string>
@@ -3578,6 +3588,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"tidak ada"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Objek peringkat tidak ada."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Objek peringkat tidak berisi kunci ini."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulasikan tampilan dengan potongan"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Tak Ada"</string>
<string name="special_access" msgid="3458780842491881155">"Akses aplikasi khusus"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplikasi dapat menggunakan data yang tidak dibatasi</item>
@@ -3601,7 +3613,7 @@
<string name="demo_mode" msgid="2798762752209330277">"Mode demo UI sistem"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Ubin developer setelan cepat"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Jejak Jendela"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Jejak Lapisan"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Pelacakan Permukaan"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Setelan profil kerja"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Penelusuran kontak"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Izinkan penelusuran kontak oleh organisasi untuk mengidentifikasi penelepon dan kontak"</string>
@@ -3632,32 +3644,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Beralih ke kamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Untuk membuka kamera dengan cepat, tekan tombol power 2 kali. Berfungsi di layar mana pun."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Buka kamera dengan cepat"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Tekan tombol power dua kali untuk membuka kamera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Balik kamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Mengambil foto selfie dengan lebih cepat"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Putar ponsel dua kali untuk mode selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Putar tablet dua kali untuk mode selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Putar perangkat dua kali untuk mode selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tap dua kali untuk memeriksa ponsel"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tap dua kali untuk memeriksa tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tap dua kali untuk memeriksa perangkat"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Untuk memeriksa waktu, ikon notifikasi, dan info lainnya, tap layar dua kali."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Periksa notifikasi saat layar nonaktif"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Angkat untuk memeriksa ponsel"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Angkat untuk memeriksa tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Angkat untuk memeriksa perangkat"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Untuk memeriksa waktu, ikon notifikasi, dan info lainnya, ambil ponsel."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Untuk memeriksa waktu, ikon notifikasi, dan info lainnya, ambil tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Untuk memeriksa waktu, ikon notifikasi, dan info lainnya, ambil perangkat."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Periksa notifikasi saat layar nonaktif"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Geserkan sidik jari untuk melihat notifikasi"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Geser sidik jari"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Untuk memeriksa notifikasi, geserkan jari ke bawah pada sensor sidik jari di bagian belakang ponsel."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Untuk memeriksa notifikasi, geserkan jari ke bawah pada sensor sidik jari di bagian belakang tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Untuk memeriksa notifikasi, geserkan jari ke bawah pada sensor sidik jari di bagian belakang perangkat."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Melihat notifikasi dengan lebih cepat"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Geser ke bawah pada sensor sidik jari"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Aktif"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Nonaktif"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader telah dibuka kuncinya"</string>
@@ -3789,6 +3794,17 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Fitur ini tidak tersedia di perangkat"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Paksa ukuran GNSS penuh"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Melacak semua konstelasi dan frekuensi GNSS tanpa siklus tugas"</string>
- <string name="storage_access" msgid="8905018810338984531">"Akses penyimpanan"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"direktori cakupan akses penyimpanan"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Selalu tampilkan dialog error"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Tampilkan dialog setiap kali aplikasi tidak bekerja"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Akses direktori"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"akses direktori"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
+ <skip />
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Ponsel Saya"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Tablet Saya"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Perangkat Saya"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Akun"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nama perangkat"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Gunakan Bluetooth saat berkendara"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Aktifkan Bluetooth secara otomatis saat mengemudi"</string>
</resources>
diff --git a/res/values-it/arrays.xml b/res/values-it/arrays.xml
index 1ce70eb..ea9a82d 100644
--- a/res/values-it/arrays.xml
+++ b/res/values-it/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pulsante di comando"</item>
<item msgid="1624323946324499595">"PIN del dispositivo peer"</item>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 10e107d..fe5d449 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Messaggio schermata blocco"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Abilita widget"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Disattivati dall\'amministratore"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Mostra opzione di blocco"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Visualizza l\'opzione del tasto di accensione che disattiva l\'accesso esteso e lo sblocco tramite impronta digitale."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Nessuno"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Ad es. Dispositivo Android di Anna"</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"La password inserita è corretta ma purtroppo i tuoi dati sono danneggiati. \n\nPer riprendere a utilizzare il tablet, devi eseguire un ripristino dei dati di fabbrica. Durante la configurazione del tablet dopo il ripristino, potrai ripristinare i dati di cui hai effettuato il backup nel tuo account Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"La password inserita è corretta ma purtroppo i tuoi dati sono danneggiati. \n\nPer riprendere a utilizzare il telefono, devi eseguire un ripristino dei dati di fabbrica. Durante la configurazione del telefono dopo il ripristino, potrai ripristinare i dati di cui hai effettuato il backup nel tuo account Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Cambia metodo di immissione"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Imposta il blocco schermo"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Proteggi il tuo dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Usa l\'impronta digitale"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Sblocca il dispositivo con l\'impronta digitale"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Imposta il blocco schermo per sicurezza"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Impedisci ad altri di utilizzare il tuo tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Impedisci ad altri di utilizzare il tuo dispositivo"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Impedisci ad altri di utilizzare il tuo telefono"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Sblocca con l\'impronta digitale"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Sblocca il dispositivo con l\'impronta digitale"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Sblocca il dispositivo con l\'impronta digitale"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Sblocca il dispositivo con l\'impronta digitale"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Blocco schermo"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Scegli blocco lavoro"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Proteggi il tuo tablet"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Password"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostra password"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Seleziona banda AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatico"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda a 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda a 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Impostazioni IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"HotspotAndroid"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Chiamate Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Attiva chiamate Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Utilizza il Wi-Fi anziché la rete mobile"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Estendi la copertura telefonando tramite Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferenza di chiamata"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modalità di chiamata Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferenze durante il roaming"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo di rete cellulare"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Info operatore"</string>
<string name="status_data_state" msgid="5503181397066522950">"Stato rete cellulare"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Stato servizio"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Intensità segnale"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"È possibile reimpostare la rete, le app o il dispositivo"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Reimposta Wi-Fi, dati mobili e Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Verranno reimpostate tutte le impostazioni di rete, tra cui:\n\n"<li>"Wi‑Fi"</li>\n<li>"Dati mobili"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Reimposta anche le eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Resetta tutte le eSIM del telefono. Dovrai contattare il tuo operatore per riscaricare le eSIM. Il tuo piano di servizio dati mobile non verrà annullato."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Reimposta"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reimpostare tutte le impostazioni di rete? Questa azione è irreversibile."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Reimposta impostazioni"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Reimpostare?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"La reimpostazione della rete non è disponibile per questo utente"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Le impostazioni di rete sono state reimpostate"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Impossibile reimpostare le eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Impossibile reimpostare le eSIM a causa di un errore."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Cancella tutti i dati (ripristino dati fabbrica)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Questa operazione cancellerà tutti i dati dalla "<b>"memoria interna"</b>" del tablet, compresi:\n\n"<li>"Il tuo account Google"</li>\n<li>"Dati e impostazioni del sistema e delle app"</li>\n<li>"App scaricate"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Questa operazione cancellerà tutti i dati dalla "<b>"memoria interna"</b>" del telefono, compresi:\n\n"<li>"Il tuo account Google"</li>\n<li>"Dati e impostazioni del sistema e delle app"</li>\n<li>"App scaricate"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Al momento sei collegato ai seguenti account:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Sono presenti altri utenti su questo dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musica"</li>\n<li>"Foto"</li>\n<li>"Altri dati utente"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operatori su eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Il tuo piano di servizio dati mobile non verrà annullato."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Per cancellare musica, foto e altri dati dell\'utente, è necessario cancellare i dati dell\'"<b>"archivio USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Per cancellare musica, foto e altri dati dell\'utente, è necessario cancellare i dati della "<b>"scheda SD"</b>"."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Connettiti a Internet"</string>
<string name="location_title" msgid="1029961368397484576">"La mia posizione"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Posizione per profilo di lavoro"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modalità"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisione"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Basso consumo"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Solo dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Geolocalizzazione non attiva"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Autorizz. a livello di app"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Richieste di posizione recenti"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nessuna applicazione ha richiesto la posizione di recente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Servizi di geolocalizzazione"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Elevato utilizzo della batteria"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Basso utilizzo della batteria"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Modalità geolocalizzazione"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Utilizza reti mobili, Bluetooth, Wi-Fi o GPS per stabilire la posizione"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Utilizza reti mobili, Bluetooth o Wi-Fi per stabilire la posizione"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Utilizza il GPS e i sensori del dispositivo per stabilirne la posizione"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Ricerca"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Ricerca di reti Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Migliora la geolocalizzazione consentendo ad app e servizi di sistema di rilevare reti Wi-Fi in qualsiasi momento."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> rimanenti"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> alla ricarica"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Attività in background"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Limitata"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Consenti l\'esecuzione in background dell\'app"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Esecuzione in background consentita quando l\'app non è in uso"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Attività in background limitata quando l\'app non è in uso"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"La batteria non può fornire una buona durata"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Attiva gestione batteria intelligente"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Attiva per ottimizzare l\'utilizzo della batteria"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Attiva la modalità Batteria in esaurimento"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Fai durare di più la batteria"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Modalità Batteria in esaurimento attiva"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Alcune funzioni sono limitate"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefono usato in modo massiccio"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet usato in modo massiccio"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Dispositivo usato in modo massiccio"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"La sincronizzazione presenta dei problemi. Riprenderà a breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Aggiungi account"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Profilo di lavoro non ancora disponibile"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modalità Lavoro"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Attiva il profilo di lavoro, incluse app, sincronizzazione in background e funzioni correlate"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Profilo di lavoro"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Gestito dalla tua organizzazione"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Le app e le notifiche sono disattivate"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Rimuovi profilo di lavoro"</string>
<string name="background_data" msgid="5779592891375473817">"Dati in background"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Sincron., invio e ricezione dati possibili in ogni momento"</string>
@@ -2624,7 +2624,7 @@
<item quantity="other">Controlla i certificati</item>
<item quantity="one">Controlla il certificato</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Utenti"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Più utenti"</string>
<string name="user_list_title" msgid="7937158411137563543">"Utenti e profili"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Aggiungi utente o profilo"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Aggiungi utente"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Trasmetti"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"App e notifiche"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Autorizzazioni, app predefinite"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Utenti e account"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Account"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"App predefinite"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Lingue, ora, backup, aggiornamenti"</string>
<string name="search_results_title" msgid="1796252422574886932">"Impostazioni"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"non disturbare, interrompere, interruzione, pausa"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"nelle vicinanze, posizione, cronologia, segnalazione"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisione"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"account"</string>
<string name="keywords_users" msgid="3434190133131387942">"limitazione, limitare, limitato"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"correzione del testo, correggere, suono, vibrazione, auto, lingua, gesto, suggerire, suggerimento, tema, offensivo, parola, digitazione, emoji, internazionale"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"rete, stato rete mobile, stato servizio, intensità segnale, tipo di rete mobile, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"numero di serie, versione hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"livello patch di sicurezza android, versione banda di base, versione kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Display ambient, display della schermata di blocco"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configura tag NFC Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Modifica"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Tocca un tag per impostarlo..."</string>
@@ -2912,6 +2914,7 @@
<item quantity="one">1 regola</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Non disturbare"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Attiva Non disturbare"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Consenti suoni/vibrazioni per"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Nessun suono"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Attiva automaticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Regole automatiche"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regola automatica"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Imposta regole Non disturbare"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limita suoni e vibrazioni in determinate ore"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Disattiva la suoneria in orari specifici"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Imposta regole Non disturbare"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Usa la regola"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Solo con priorità"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Solo sveglie"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silenzio totale"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blocca interruzioni visive"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Consenti segnali visivi"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Aggiungi"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Attiva"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Attiva ora"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Disattiva ora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"La funzione Non disturbare è attiva fino alle ore <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"La funzione Non disturbare rimarrà attiva fino alla disattivazione"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"La funzione Non disturbare è stata attivata automaticamente da una regola (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"La funzione Non disturbare è stata attivata automaticamente da un\'app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Solo con priorità"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Suoni profilo di lavoro"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usa suoni profilo personale"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"I suoni dei profili di lavoro e personale sono gli stessi"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Suonerie"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Altri suoni e vibrazioni"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notifiche"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Inviate di recente"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avanzate"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notifiche di lavoro"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Consenti indicatori notifica"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Oltre a usare la tua impronta digitale per sbloccare il dispositivo, puoi proteggere ulteriormente il dispositivo richiedendo la password prima dell\'avvio. Fino all\'avvio, il dispositivo non può ricevere chiamate, messaggi o notifiche, incluse le sveglie.\n\nIn questo modo puoi proteggere i dati memorizzati su dispositivi rubati o persi. Vuoi richiedere la password per avviare il dispositivo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Sì"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Sì"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Richiedere il PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Richiedere la sequenza?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Richiedere la password?"</string>
@@ -3296,7 +3308,7 @@
<string name="high_power_system" msgid="7362862974428225301">"Ottimizzazione della batteria non disponibile"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Non applicare l\'ottimizzazione della batteria. La batteria potrebbe scaricarsi più rapidamente."</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"Consentire sempre di eseguire l\'app in background?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Consentire sempre l\'esecuzione di <xliff:g id="APP_NAME">%1$s</xliff:g> in background potrebbe ridurre la durata della batteria. \n\nPuoi cambiare più tardi da Impostazioni > App e notifiche."</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Consentire sempre l\'esecuzione di <xliff:g id="APP_NAME">%1$s</xliff:g> in background potrebbe ridurre la durata della batteria. \n\nPuoi cambiare la tua scelta più tardi da Impostazioni > App e notifiche."</string>
<string name="battery_summary" msgid="8044042095190688654">"Utilizzo dall\'ultima ricarica completa: <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Gestione alimentazione"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Nessun utilizzo della batteria dall\'ultima ricarica completa"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Rifiuto"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Caricare il dispositivo"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Solo per la ricarica del dispositivo"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Fornire elettricità"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Ricarica del dispositivo collegato. Funziona soltanto con dispositivi che supportano la ricarica tramite USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Trasferire file"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Trasferisci i file su un altro dispositivo"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Trasferire foto (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Trasferisci foto o file se la modalità MTP non è supportata (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Usare il dispositivo come MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Utilizzare questo dispositivo per la modalità MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Utilizza USB per"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Utilizza connessione USB per"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Ricarica del dispositivo"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Alimentazione"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Trasferimento di file"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Trasferimento di foto (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Utilizzo del dispositivo in modalità MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Mirroring SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Controllo background"</string>
<string name="background_check_title" msgid="4534254315824525593">"Accesso completo in background"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Sfondo, sospensione, dimensione carattere"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Sospendi dopo 10 minuti di inattività"</string>
<string name="memory_summary" msgid="8080825904671961872">"Utilizzo medio di <xliff:g id="USED_MEMORY">%1$s</xliff:g> di memoria su <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Utente corrente: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Accesso eseguito come <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> è l\'app predefinita"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ON/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ON"</string>
<string name="location_off_summary" msgid="6474350053215707957">"OFF"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup disattivato"</string>
- <string name="about_summary" msgid="924181828102801010">"Aggiornato ad Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Azione non consentita"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Impossibile modificare il volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Chiamate non consentite"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS non consentiti"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Fotocamera non consentita"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Screenshot non consentiti"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Impossibile disattivare i backup"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Questa azione è stata disattivata. Per ulteriori informazioni, contatta l\'amministratore della tua organizzazione."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Altri dettagli"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"L\'amministratore può monitorare e gestire le app e i dati associati al profilo di lavoro, inclusi accesso aziendale, impostazioni, autorizzazioni, attività di rete e informazioni sulla posizione del dispositivo."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Hotspot Wi-Fi portatile <xliff:g id="ID_1">%1$s</xliff:g> attivo; Wi-Fi di questo dispositivo attivo."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Modalità aereo attiva"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Le reti mobile, Wi-Fi e Bluetooth non sono attive. Non puoi fare telefonate o connetterti a Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Mod. Non disturbare attiva (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Risparmio energetico attivo"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Prestazioni ridotte. Servizi di geolocalizzazione e dati in background disattivati."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Dati mobili disattivati"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profilo di lavoro non attivo"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"App, sincronizzazione in background e altre funzioni relative al tuo profilo di lavoro sono disattivate."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Programma Luminosità notturna"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Imposta schermo color ambra per conciliare il sonno"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Riduci automaticamente la luminosità dello schermo ogni notte"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Luminosità notturna attiva"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Lo schermo è diventato color ambra. Potrebbe conciliare il sonno."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Consigliate per te"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Suggerimenti"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+ <xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+ altri <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"nessuno"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Oggetto di ranking mancante."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"L\'oggetto di ranking non contiene questa chiave."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simula un display con ritaglio"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Nessuno"</string>
<string name="special_access" msgid="3458780842491881155">"Accesso speciale alle app"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> app possono usare dati senza limitazioni</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Modalità demo dell\'interfaccia utente di sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Riquadri sviluppatore per impostazioni rapide"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Traccia finestra"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Traccia livello"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Acquisizione dati superficie"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Impostazioni profilo di lavoro"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Ricerca di contatti"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Consenti ricerche di contatti in base all\'organizzazione per identificare chiamanti e contatti"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Apri la fotocamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Per aprire velocemente la fotocamera, premi due volte il tasto di accensione da qualsiasi schermata."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Apri rapidamente la fotocamera"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Premi due volte il tasto accensione per aprire la fotocamera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Cambia fotocamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Scatta selfie più rapidamente"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Ruota due volte il telefono per la modalità selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Ruota due volte il tablet per la modalità selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Ruota due volte il dispositivo per la modalità selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocca due volte il telefono per controllare le notifiche"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocca due volte il tablet per controllare le notifiche"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocca due volte il dispositivo per controllare le notifiche"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Per controllare l\'ora, le icone di notifica e altre informazioni, tocca due volte lo schermo."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Controlla le notifiche con lo schermo spento"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Solleva il telefono per controllare le notifiche"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Solleva il tablet per controllare le notifiche"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Solleva il dispositivo per controllare le notifiche"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Per controllare l\'ora, le icone di notifica e altre informazioni, solleva il telefono."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Per controllare l\'ora, le icone di notifica e altre informazioni, solleva il tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Per controllare l\'ora, le icone di notifica e altre informazioni, solleva il dispositivo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Controlla le notifiche con lo schermo spento"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Usa l\'impronta digitale per le notifiche"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Usa l\'impronta digitale"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Per controllare le notifiche, scorri verso il basso sul sensore di impronte digitali sul retro del telefono."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Per controllare le notifiche, scorri verso il basso sul sensore di impronte digitali sul retro del tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Per controllare le notifiche, scorri verso il basso sul sensore di impronte digitali sul retro del dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Visualizza rapidamente le notifiche"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Scorri verso il basso sul sensore di impronte digitali"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"On"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Off"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Il bootloader è già sbloccato"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Questa funzione non è disponibile su questo dispositivo"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forza esecuzione completa delle misurazioni GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Monitora tutte le costellazioni e le frequenze GNSS senza ciclo di lavoro utile"</string>
- <string name="storage_access" msgid="8905018810338984531">"Accesso allo spazio di archiviazione"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"directory per l\'accesso allo spazio di archiviazione"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Mostra sempre finestra di dialogo di arresti anomali"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostra finestra di dialogo a ogni arresto anomalo delle app"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Accesso alla directory"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"accesso alla directory"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Il mio telefono"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Il mio tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Il mio dispositivo"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Account"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nome dispositivo"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Utilizza il Bluetooth alla guida"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Attiva il Bluetooth automaticamente durante la guida"</string>
</resources>
diff --git a/res/values-kk/arrays.xml b/res/values-kk/arrays.xml
index 80dff56..069e988 100644
--- a/res/values-kk/arrays.xml
+++ b/res/values-kk/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Итеру түймесі"</item>
<item msgid="1624323946324499595">"Басқа құрылғының PIN коды"</item>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index b54c9a2..f992502 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Күнді реттеу"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Әліппе бойынша сұрыптау"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Уақыт белдеуі бойынша сұрыптау"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> күні өзгереді."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Жазғы уақыт"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Қысқы уақыт"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Аймақ бойынша уақыт белдеуі"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Уақыт белдеуінің тұрақты ығысуы"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Күн-айы"</string>
<string name="time_picker_title" msgid="483460752287255019">"Уақыт"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Aвтоматты құлыптау"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Құлып экраны хабары"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Виджеттерді қосу"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Әкімші өшірген"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Құлыптау опциясын көрсету"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Кеңейтілген кіру мүмкіндігі мен саусақ ізімен құлыпты ашу функциясын өшіретін қуат түймесі опциясын көрсету."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ешқандай"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Мысалы, Джоның Android құрылғысы."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Профильдік ақпарат"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Есептік жазбалар"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Орын"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Орналасуды пайдалану"</string>
<string name="account_settings_title" msgid="626177544686329806">"Есептік жазбалар"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Қауіпсіздік және орналасқан жер"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрлау және тіркелу деректері"</string>
@@ -473,9 +469,11 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Сіз енгізген құпия сөз дұрыс, бірақ, өкінішке орай, деректеріңіз бүлінген. \n\nПланшетті әрі қарай пайдалану үшін, зауыттық параметрлерді қалпына келтіруіңіз керек. Қалпына келтіргеннен кейін планшетті реттегенде, сізде Google есептік жазбаңызға сақтық көшірмесі жасалған барлық деректерді қалпына келтіру мүмкіндігі болады."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Сіз енгізген құпия сөз дұрыс, бірақ, өкінішке орай, деректеріңіз бүлінген. \n\nТелефонды әрі қарай пайдалану үшін, зауыттық параметрлерді қалпына келтіруіңіз керек. Қалпына келтіргеннен кейін телефонды реттегенде, сізде Google есептік жазбаңызға сақтық көшірмесі жасалған барлық деректерді қалпына келтіру мүмкіндігі болады."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Енгізу әдістерін ауыстыру"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Экран құлпын орнату"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Құрылғыны қорғау"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Саусақ ізін пайдалану"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Қауіпсіздік үшін құлып орнатыңыз"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Планшетті сіздің рұқсатыңызсыз басқалардың пайдалануына жол бермеңіз"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Құрылғыны сіздің рұқсатыңызсыз басқалардың пайдалануына жол бермеңіз"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Телефонды сіздің рұқсатыңызсыз басқалардың пайдалануына жол бермеңіз"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Саусақ ізімен құлыпты ашу"</string>
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Саусақ ізімен құлыпты ашу"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Экран құлпын таңдау"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Жұмыс құлпын таңдау"</string>
@@ -721,8 +719,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Атауы"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 ГГц"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 ГГц"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Кіру"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Мб/с"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi желісінің қосылуын сұрайды"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi желісінің өшірілуін сұрайды"</string>
@@ -740,8 +737,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi‑Fi қосу"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fi пайдалану"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi параметрлері"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Сымсыз қол жетімділік нүктесін орнату және басқару"</string>
@@ -836,6 +832,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Құпия сөз"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Кілтсөзді көрсету"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Wi-Fi жиілік ауқымын таңдау"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Авто"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 ГГц диапазоны"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 ГГц диапазоны"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP параметрлері"</string>
@@ -941,7 +938,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android хот-споты"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi қоңыраулары"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi қоңырауларын қосу"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Мобильді желі орнына Wi-Fi желісін пайдалану"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi арқылы қоңырау шалып, аумақты кеңейтіңіз"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Қоңырау шалу қалауы"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi қоңырау шалу режимі"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Роуминг параметрі"</string>
@@ -1194,6 +1191,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Ұялы желі түрі"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Oператор туралы ақпарат"</string>
<string name="status_data_state" msgid="5503181397066522950">"Ұялы желі күйі"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Қызмет күйі"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Сигнал қуаты"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роуминг"</string>
@@ -1380,19 +1378,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Желіні, қолданбаны не құрылғыны бастапқы күйіне қайтаруға болады"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, мобильдік деректер және Bluetooth параметрлерін бастапқы күйіне қайтару"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Мұның нәтижесінде барлық желі параметрлері бастапқы күйіне қайтарылады, соның ішінде:\n\n"<li>"Wi‑Fi"</li>\n<li>"мобильдік деректер"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Сонымен қатар eSIM карталарының деректерін қайтару"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Телефондағы барлық eSIM картасындағы деректер өшіріледі. eSIM карталарындағы деректерді қайта жүктеп алу үшін оператормен хабарласуыңыз қажет. Мобильдік қызмет жоспары бұрынғы қалпында қалады."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Параметрлерді қалпына келтіру"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Барлық желі параметрлері қалпына келтірілсін бе? Бұл әрекетті кері қайтару мүмкін емес!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Параметрлерді қалпына келтіру"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Қалпына келтіру қажет пе?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Бұл пайдаланушы желіні қалпына келтіре алмайды"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Желі параметрлері қалпына келтірілген"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM карталарының деректері қайтарылмайды"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Қате пайда болғандықтан, eSIM карталарының деректері қайтарылмайды."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Барлық деректерді өшіру (зауыттық параметрлерді қайтару)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Бұл сіздің планшетіңіздің "<b>"ішкі жадынан"</b>" барлық дерекқорды өшіреді, келесі деректерді қоса:\n\n"<li>"Google есептік жазбаңыз"</li>\n<li>"Жүйе және қолданба дерекқоры және параметрлері"</li>\n<li>"Жүктелген қолданбалар"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Бұл телефонның "<b>"ішкі жадынан"</b>" барлық деректерді өшіреді:\n\n"<li>" Google есептік жазбаңызды"</li>\n<li>"Жүйе және қолданба дерекқоры мен параметрлерін"</li>\n<li>"Жүктелген қолданбаларды"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Сіз келесі есептік жазбаларға кірдіңіз:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Осы құрылғыда басқа пайдаланушылар бар.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Mузыка"</li>\n<li>"Фотосуреттер"</li>\n<li>"Басқа пайдаланушы деректері"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM картасының операторлары"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM карталары"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Мұның нәтижесінде мобильдік қызмет жоспарыңыздан бас тартылмайды."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Музыка, фотосуреттер және басқа деректерді өшіру үшін, "<b>"USB жадын"</b>" өшіру қажет."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Музыка, фотосуреттер және басқа пайдаланушы деректерін тазалау үшін "<b>"SD картасы"</b>" өшірілуі тиіс."</string>
@@ -1452,21 +1454,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Интернетке қосылыңыз"</string>
<string name="location_title" msgid="1029961368397484576">"Mенің аймағым"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Жұмыс профилінің орны"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Режим"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Жоғары дәлдік"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Батарея үнемдеу"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Құрылғы ғана"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Орын өшірулі"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Қолданба деңгейіндегі рұқсаттар"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Соңғы аймақ өтініштері"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Жуықта ешқандай қолданба аймақ туралы өтініш жасамаған"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Орын қызметтері"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Жоғары деңгейде батарея қолдану"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Батарея шығыны аз"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Орын режимі"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Орынды анықтау үшін GPS, Wi‑Fi, Bluetooth немесе мобильдік желілерді пайдалану"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Орынды анықтау үшін Wi‑Fi, Bluetooth немесе мобильдік желілерді пайдалану"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Орынды анықтау үшін GPS және құрылғы датчиктерін пайдалану"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Тексеруде"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi іздеу"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Орын дәлірек анықталуы үшін жүйелік қолданбаларға және қызметтерге Wi‑Fi желілерін толассыз іздеп отыруға рұқсат етіңіз."</string>
@@ -1488,8 +1481,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Орын дереккөздері"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Планшет туралы"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Телефон туралы"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Құрылғы туралы"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Эмуляцияланған құрылғы туралы"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Заңнамалық ақпарат, күйін, бағдарлама нұсқасын қарау"</string>
<string name="legal_information" msgid="5769301644270604095">"Заңнамалық ақпараттар"</string>
@@ -1597,8 +1589,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Барлық <xliff:g id="COUNT">%1$d</xliff:g> қолданбаны көру"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Планшет және жеке деректер белгісіз қолданбалар шабуылына ұшырауы мүмкін. Бұл қолданбаларды пайдалану нәтижесінде телефонға келетін залалға немесе деректердің жоғалуына өзіңіз ғана жауапты боласыз."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Телефон және жеке деректер белгісіз қолданбалар шабуылына ұшырауы мүмкін. Бұл қолданбаларды пайдалану нәтижесінде телефонға келетін залалға немесе деректердің жоғалуына өзіңіз ғана жауапты боласыз."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Құрылғыңыз және жеке деректеріңіз белгісіз қолданбалар шабуылына ұшырауы мүмкін. Осы көзден орнатып алған қолданбаларды пайдалану салдарынан құрылғыға келген залал не дерек жоғалту жағдайларына өзіңіз ғана жауапты боласыз."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Қосымша параметрлер"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Басқа параметр опцияларын қосу"</string>
<string name="application_info_label" msgid="5736524913065714880">"Қолданба ақпараты"</string>
@@ -1898,12 +1889,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Жұмыс өнімділігіне әсерін тигізуі мүмкін"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Меңзер тоқтағаннан кейін басу"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Басу алдындағы кешігу"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Қызметті пайдалану"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Түс жөндеуді пайдалану"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Субтитрлер пайдалану"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ҚОСУЛЫ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ӨШІРУЛІ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Жылдам параметрлер арқылы көрсету"</string>
@@ -2017,7 +2005,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> қалды"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Зарядталғанша <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Фондық режимдегі әрекет"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Шектелген"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Қолданбаға фондық режимде іске қосылуға рұқсат беру"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Қолданба пайдаланылмайтын кезде фондық режимде жұмыс істей алады"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Қолданба пайдаланылмайтын кезде, ол фондық режимде шектеулі жұмыс істейді"</string>
@@ -2064,18 +2052,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Қолданбалар қалыпты жұмыс істеп тұр"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Батарея заряды аз қалды"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Батарея заряды ұзаққа жетпейді"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ақылды батарея менеджерін қосыңыз"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Батарея қолданысын оңтайландыру үшін қосыңыз"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Батареяны аз пайдалану режимін қосыңыз"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Батареяның қызмет көрсету мерзімін ұзартыңыз"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Батареяны аз пайдалану режимі қосулы"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Кейбір функциялар шектеулі"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Телефон ұзақ пайдаланылды"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Планшет ұзақ пайдаланылды"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Құрылғы ұзақ пайдаланылды"</string>
@@ -2199,8 +2181,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Meдиасервері"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Қолданбаны оңтайландыру"</string>
<string name="battery_saver" msgid="8172485772238572153">"Battery Saver"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"\"Battery Saver\" функциясын пайдалану"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Автоматты түрде қосу"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Ешқашан"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"батарея заряды <xliff:g id="PERCENT">%1$s</xliff:g> болғанда"</string>
@@ -2388,8 +2369,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Синх мәселесі орын алуда. Біраз уақыттан кейін оралады."</string>
<string name="add_account_label" msgid="7811707265834013767">"Есептік жазба қосу"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Жұмыс профилі әлі қол жетімді емес"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Жұмыс режимі"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Жұмыс профиліне, соның ішінде, қолданбаларға, фондық синхрондауға және қатысты мүмкіндіктерге жұмыс істеуге рұқсат ету"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Жұмыс профилі"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Ұйым арқылы басқарылады"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Қолданбалар мен хабарландырулар өшірулі"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Жұмыс профилін жою"</string>
<string name="background_data" msgid="5779592891375473817">"Жалпы мағлұматтар дерекқоры"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Қолданбалар деректерді синхрондау, жіберу жұмыстарын орындайды және кез келген уақытта қабылдай алады."</string>
@@ -2421,8 +2403,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Есептік жазба алынсын ба?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Бұл есептік жазбаны алып тастау нәтижесінде оның хабарлары, контактілері және басқа планшет деректері жойылады!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Бұл есептік жазбаны алып тастаса, телефоннан барлық хабарлар, контактілер мен басқа деректер жойылады!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Бұл есептік жазба жойылса, құрылғыдағы барлық хабарлар, контактілер және басқа деректер қоса жойылады!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Әкімші бұл өзгертуге рұқсат бермеген"</string>
<string name="provider_label" msgid="7724593781904508866">"Итеру жазылымдары"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2622,8 @@
<item quantity="other">Сертификаттарға құсбелгі қою</item>
<item quantity="one">Сертификатқа құлбелгі қою</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Пайдаланушылар"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Пайдаланушылар мен профайлдар"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Пайдаланушы немесе профиль қосу"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Пайдаланушы қосу"</string>
@@ -2831,7 +2813,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Қолданбалар мен хабарландырулар"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Рұқсаттар, әдепкі қолданбалар"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Пайдаланушылар мен есептік жазбалар"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Әдепкі қолданбалар"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Тілдер, уақыт, сақтық көшірме, жаңартылған нұсқалар"</string>
<string name="search_results_title" msgid="1796252422574886932">"Параметрлер"</string>
@@ -2862,7 +2845,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"мазаламау үзу, үзу, үзіліс"</string>
<string name="keywords_app" msgid="6334757056536837791">"ЖЖҚ"</string>
<string name="keywords_location" msgid="6615286961552714686">"маңайдағы, орын, тарих, есептер"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"дәлдік"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"есептік жазба"</string>
<string name="keywords_users" msgid="3434190133131387942">"шектеу, шектелген"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"мәтінді түзету, түзету, дыбыс, дірілдету, авто, тіл, қимыл, ұсыну, ұсыныс, тақырып, тіл тигізетін, сөз, түрі, эмодзи, халықаралық"</string>
@@ -2929,6 +2911,7 @@
<item quantity="one">1 ереже</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Мазаламау"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\"Мазаламау\" режимін қосу"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Мінез-құлық"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Келесіден шыққан дыбыстар мен дірілдерге рұқсат беру"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Дыбыссыз"</string>
@@ -2938,8 +2921,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Автоматты түрде қосу"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Автоматты ережелер"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Автоматты ереже"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\"Мазаламау\" ережесін орнату"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Белгілі бір уақытта дыбысты және дірілді шектеу"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Телефонды дыбыссыз режимге қою"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\"Мазаламау\" ережесін орнату"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Ережені пайдалану"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Маңыздылары ғана"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Тек дабылдар"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Толық тыныштық"</string>
@@ -2947,12 +2931,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Көрнекі мазалағыштарды бөгеу"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Визуалды сигналдарды қосу"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Қосу"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Қосу"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Қазір қосу"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Қазір өшіру"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"\"Мазаламау\" режимі <xliff:g id="FORMATTED_TIME">%s</xliff:g> дейін қосулы болады"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"\"Мазаламау\" режимі өшірілгенше қосулы болады"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"\"Мазаламау\" режимі \"<xliff:g id="RULE_NAME">%s</xliff:g>\" ережесі арқылы автоматты түрде қосылды"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"\"Мазаламау\" режимі <xliff:g id="APP_NAME">%s</xliff:g> қолданбасы арқылы автоматты түрде қосылды"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Маңыздылары ғана"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Жұмыс профилінің дыбыстары"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Жеке профиль дыбыстарын пайдалану"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Жұмыс пен жеке профильдер үшін дыбысы қолданылады"</string>
@@ -2968,6 +2955,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Рингтондар"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Басқа дыбыстар мен дірілдер"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Хабарландырулар"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Жақында жіберілді"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Кеңейтілген"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Жұмыс хабарландырулары"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Хабарландыру белгілеріне рұқсат беру"</string>
@@ -3183,6 +3171,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Құрылғы құлпын ашу үшін саусақ ізін пайдаланумен бірге, іске қосардың алдында құпия сөз талап ету арқылы оны қорғай аласыз. Құрылғы іске қосылмайынша, қоңырауларды, хабарларды немесе хабарландыруларды, соның ішінде дабылдарды қабылдай алмайды.\n\nБұл жоғалған немесе ұрланған құрылғылардағы деректерді қорғауға көмектеседі. Құрылғыны іске қосу үшін құпия сөз талап ету керек пе?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Иә"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Жоқ"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Иә"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Жоқ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN коды қажет пе?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Өрнек қажет пе?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Құпия сөз қажет пе?"</string>
@@ -3312,7 +3302,7 @@
<string name="high_power_off" msgid="3393904131961263278">"Батареяны пайдалануды оңтайландыру"</string>
<string name="high_power_system" msgid="7362862974428225301">"Батареяны оңтайландыру мүмкіндігі жоқ"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Батареяны оңтайландыруды қолданбаңыз. Батарея заряды тезірек таусылуы мүмкін."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Қолданбаның үнемі фондық режимде жұмыс істеуіне рұқсат ету керек пе?"</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Қолданба үнемі фондық режимде істей берсін бе?"</string>
<string name="high_power_prompt_body" msgid="1031422980602565049">"<xliff:g id="APP_NAME">%1$s</xliff:g> қолданбасына үнемі фондық режимде жұмыс істеуіне рұқсат ету батареяны пайдалану уақытын қысқартуы мүмкін. \n\nОны кейін \"Параметрлер\" > \"Қолданбалар және хабарландырулар\" ішінен өзгерте аласыз."</string>
<string name="battery_summary" msgid="8044042095190688654">"Соңғы толық зарядталғаннан бері <xliff:g id="PERCENTAGE">%1$s</xliff:g> пайдаланылды"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Қуат басқару"</string>
@@ -3455,7 +3445,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Ағымдағы пайдаланушы: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> болып кірдіңіз"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> әдепкі болып табылады"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ҚОСУЛЫ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"ӨШІРУЛІ"</string>
<string name="backup_disabled" msgid="485189128759595412">"Сақтық көшірме жасау өшірілген"</string>
<string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> нұсқасына жаңартылған"</string>
@@ -3465,6 +3456,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS жіберуге рұқсат берілмеген"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Камераны пайдалануға рұқсат берілмеген"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Скриншот жасауға рұқсат берілмеген"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Сақтық көшірме өшірілмейді"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Бұл әрекет өшірулі. Толығырақ ақпарат алу үшін, ұйым әкімшісіне хабарласыңыз."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Қосымша мәліметтер"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Әкімші қолданбаларды және жұмыс профиліңізбен байланысты деректерді, соның ішінде, параметрлерді, рұқсаттарды, корпоративтік кіру рұқсаттарын, желілік белсенділікті және құрылғының орны туралы ақпаратты бақылай және басқара алады."</string>
@@ -3488,9 +3480,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Жұмыс профилі өшірулі"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Қолданбалар, фондық синхрондау және жұмыс профиліңізге қатысты басқа мүмкіндіктер өшіріледі."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"\"Түнгі жарық\" кестесін орнату"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Жылдам ұйықтап кету үшін экранға ашық сары реңк беріңіз"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Әр түн сайын экранға автоматты түрде реңк беру"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Түнгі жарық режимі қосулы"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Экранға ашық сары реңк берілді. Бұл жылдам ұйықтап кетуіңізге көмектеседі."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Ұсынылады"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Ұсыныстар"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"тағы +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3595,6 +3588,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ешқайсысы"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Рейтинг нысаны жоқ."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Рейтинг нысанында бұл кілт табылмады."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Ойығы бар дисплей симуляциясы"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Ешқайсысы"</string>
<string name="special_access" msgid="3458780842491881155">"Арнайы қолданбаға кіру"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> қолданба деректерді шексіз пайдалана алады</item>
@@ -3617,10 +3612,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Түрлі құрылғыларға қосылған"</string>
<string name="demo_mode" msgid="2798762752209330277">"Жүйе интерфейсінің демо режимі"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Әзірлеуші блоктарының жылдам параметрлері"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Терезе трассасы"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Бетті трассирлеу"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Жұмыс профилінің параметрлері"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Контакт іздеу"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Қоңырау шалушылар мен контактілерді анықтау үшін ұйым бойынша контакт іздеуге рұқсат беру"</string>
@@ -3640,8 +3633,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Жад кеңістігін босату үшін жад реттегіші құрылғыдағы сақтық көшірмесі жасалған фотосуреттер мен бейнелерді өшіреді."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Фотосуреттер мен бейнелерді жою"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Жад реттегіші"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Жад менеджерін пайдалану"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Aвтоматты"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Қолмен"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Орынды қазір босату"</string>
@@ -3652,32 +3644,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Камераға өту"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Камераны жылдам ашу үшін қуат түймесін екі рет басыңыз. Кез келген экраннан жұмыс істейді."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Камераны жылдам ашу"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Камераны ашу үшін қуат түймесін екі рет басыңыз"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Камераны аудару"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Жылдам селфи түсіру"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Селфи режимі үшін телефонды екі рет айналдырыңыз"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Селфи режимі үшін планшетті екі рет айналдырыңыз"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Селфи режимі үшін құрылғыны екі рет айналдырыңыз"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Телефонды тексеру үшін екі рет түртіңіз"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Планшетті тексеру үшін екі рет түртіңіз"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Құрылғыны тексеру үшін екі рет түртіңіз"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Уақытты, хабарландыру белгішелерін және басқа ақпаратты тексеру үшін экранды екі рет түртіңіз."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Экран өшірулі кезде хабарландыруларды тексеру"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Телефонды тексеру үшін көтеру"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Планшетті тексеру үшін оны көтеріңіз"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Құрылғыны тексеру үшін оны көтеріңіз"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Уақытты, хабарландыру белгішелерін және басқа ақпаратты тексеру үшін телефонды көтеріңіз."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Уақытты, хабарландыру белгішелерін және басқа ақпаратты тексеру үшін планшетті көтеріңіз."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Уақытты, хабарландыру белгішелерін және басқа ақпаратты тексеру үшін құрылғыны көтеріңіз."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Экран өшірулі кезде хабарландыруларды тексеру"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Саусақ ізімен хабарландыруды көріңіз"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Саусағыңызбен сырғытыңыз"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Хабарландыруларды көру үшін телефонның артындағы саусақ ізін оқу сканерін саусақпен төмен қарай сипап өтіңіз."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Хабарландыруларды көру үшін планшеттің артындағы саусақ ізін оқу сканерін саусақпен төмен қарай сипап өтіңіз."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Хабарландыруларды көру үшін құрылғының артындағы саусақ ізін оқу сканерін саусақпен төмен қарай сипап өтіңіз."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Хабарландыруларды жылдам көру"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Саусақ ізін оқу сканерінде саусақты төмен сырғыту"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Қосулы"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Өшірулі"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Операциялық жүйені жүктеу құралының құлпы ашылған"</string>
@@ -3809,8 +3794,17 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Бұл мүмкіндік құрылғыда жоқ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"GNSS толық өлшемдерін қосу"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Барлық жұмыс циклінсіз GNSS тізбектері мен жиіліктерін қадағалау"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Ақау туралы хабарларды әрдайым көрсету"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Қолданбадағы ақауды болған сайын көрсету"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Каталогке кіру"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"каталогке кіру"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Телефоным"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Планшетім"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Құрылғым"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Есептік жазба"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Құрылғы атауы"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Көлік жүргізуде Bluetooth пайдалану"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Көлік жүргізгенде Bluetooth функциясын автоматты түрде қосу"</string>
</resources>
diff --git a/res/values-km/arrays.xml b/res/values-km/arrays.xml
index a63e07d..65a50a4 100644
--- a/res/values-km/arrays.xml
+++ b/res/values-km/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"ប៊ូតុងចុច"</item>
<item msgid="1624323946324499595">"កូដ PIN ពីឧបករណ៍"</item>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index 53b83ff..3c0a876 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"កំណត់កាលបរិច្ឆេទ"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"តម្រៀបតាមអក្សរក្រម"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"តម្រៀបតាមតំបន់ពេលវេលា"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> ចាប់ផ្តើមនៅថ្ងៃទី <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>។"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"អំឡុងពេលសន្សំពេលថ្ងៃ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"ម៉ោងស្តង់ដារ"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"តំបន់ម៉ោងតាមតំបន់"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"តំបន់ម៉ោងដែលមានគម្លាតថេរ"</string>
<string name="date_picker_title" msgid="1338210036394128512">"កាលបរិច្ឆេទ"</string>
<string name="time_picker_title" msgid="483460752287255019">"ពេលវេលា"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"ចាក់សោស្វ័យប្រវត្តិ"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"សារអេក្រង់ចាក់សោ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"បើកធាតុក្រាហ្វិក"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"បិទដោយអ្នកគ្រប់គ្រង"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"បង្ហាញជម្រើសចាក់សោ"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"បង្ហាញជម្រើសប៊ូតុងថាមពលដែលបិទការចូលប្រើបន្ថែម និងការដោះសោស្នាមម្រាមដៃ។"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"គ្មាន"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ឧ. ទូរសព្ទ Android របស់ Joe ។"</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"ព័ត៌មានប្រវត្តិរូប"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"គណនី"</string>
<string name="location_settings_title" msgid="1369675479310751735">"ទីតាំង"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"ប្រើទីតាំង"</string>
<string name="account_settings_title" msgid="626177544686329806">"គណនី"</string>
<string name="security_settings_title" msgid="4918904614964215087">"សុវត្ថិភាព និងទីតាំង"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ការអ៊ិនគ្រីប និងព័ត៌មានសម្គាល់ខ្លួន"</string>
@@ -473,9 +469,11 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ពាក្យសម្ងាត់ដែលអ្នកបានបញ្ចូលត្រឹមត្រូវ ប៉ុន្តែសំណាងមិនល្អទិន្នន័យរបស់អ្នកខូច។ \n\n ដើម្បីបន្តប្រើថេប្លេតរបស់អ្នក អ្នកចាំបាច់ត្រូវធ្វើការកំណត់ដូចចេញពីរោចចក្រឡើងវិញ។ នៅពេលដែលអ្នកដំឡើងថេប្លេតរបស់អ្នកបន្ទាប់ពីកំណត់ឡើងវិញនោះ អ្នកនឹងមានឱកាសដើម្បីស្តារទិន្នន័យទាំងឡាយដែលបានបម្រុងទុកទៅគណនី Google របស់អ្នក។"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ពាក្យសម្ងាត់ដែលអ្នកបានបញ្ចូលត្រឹមត្រូវ ប៉ុន្តែសំណាងមិនល្អទិន្នន័យរបស់អ្នកខូច។ \n\nដើម្បីបន្តប្រើទូរស័ព្ទរបស់អ្នក អ្នកចាំបាច់ត្រូវធ្វើការកំណត់ដូចចេញពីរោចចក្រឡើងវិញ។ នៅពេលដែលអ្នកដំឡើងទូរស័ព្ទរបស់អ្នកបន្ទាប់ពីកំណត់ឡើងវិញនោះ អ្នកនឹងមានឱកាសដើម្បីស្តារទិន្នន័យទាំងឡាយដែលបានបម្រុងទុកទៅគណនី Google របស់អ្នក។"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ប្ដូរវិធីសាស្ត្របញ្ចូល"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"កំណត់ការចាក់សោអេក្រង់"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"ការពារឧបករណ៍របស់អ្នក"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ប្រើស្នាមម្រាមដៃ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"កំណត់ការចាក់សោអេក្រង់ដើម្បីការពារសុវត្ថិភាព"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"ទប់ស្កាត់អ្នកផ្សេងទៀតមិនឱ្យប្រើថេប្លេតរបស់អ្នក"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"ទប់ស្កាត់អ្នកផ្សេងទៀតមិនឱ្យប្រើឧបករណ៍របស់អ្នក"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"ទប់ស្កាត់អ្នកផ្សេងទៀតមិនឱ្យប្រើទូរសព្ទរបស់អ្នក"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ដោះសោដោយប្រើស្នាមម្រាមដៃ"</string>
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"ដោះសោដោយប្រើស្នាមម្រាមដៃរបស់អ្នក"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"ជ្រើសរើសការចាក់សោអេក្រង់"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"ជ្រើសការចាក់សោការងារ"</string>
@@ -721,8 +719,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"ឈ្មោះ"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"ចូល"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> ចង់បើក Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> ចង់បិទ Wi-Fi"</string>
@@ -740,8 +737,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"បើកវ៉ាយហ្វាយ"</string>
<string name="wifi_settings" msgid="29722149822540994">"វ៉ាយហ្វាយ"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"ប្រើ Wi‑Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"ការកំណត់វ៉ាយហ្វាយ"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"រៀបចំ & គ្រប់គ្រងចំណុចចូលដំណើរការឥតខ្សែ"</string>
@@ -836,6 +832,7 @@
<string name="wifi_password" msgid="5948219759936151048">"ពាក្យសម្ងាត់"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"បង្ហាញពាក្យសម្ងាត់"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"ជ្រើសរើសប៉ុស្តិ៍ AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ស្វ័យប្រវត្តិ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"ក្រុម 2.4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"ក្រុម 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"ការកំណត់ IP"</string>
@@ -941,7 +938,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"ការហៅតាម Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"បើកការហៅតាម Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"ប្រើ Wi-Fi ជំនួសឲ្យបណ្តាញទូរស័ព្ទចល័ត"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"ពង្រីកដែនសេវាដោយធ្វើការហៅតាម Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ចំណូលចិត្តលើការហៅ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"របៀបហៅតាម Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ចំណូលចិត្តរ៉ូមីង"</string>
@@ -1194,6 +1191,7 @@
<string name="status_network_type" msgid="3279383550222116235">"ប្រភេទបណ្ដាញចល័ត"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ព័ត៌មានប្រតិបត្តិការ"</string>
<string name="status_data_state" msgid="5503181397066522950">"ស្ថានភាពបណ្ដាញចល័ត"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"ស្ថានភាពសេវាកម្ម"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"កម្លាំងសញ្ញា"</string>
<string name="status_roaming" msgid="2638800467430913403">"រ៉ូមីង"</string>
@@ -1380,19 +1378,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"បណ្ដាញ កម្មវិធី ឬឧបករណ៍ដែលអាចកំណត់ឡើងវិញបាន"</string>
<string name="reset_network_title" msgid="6166025966016873843">"កំណត់ Wi-Fi ឧបករណ៍ចល័ត និងប៊្លូធូសឡើងវិញ"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"វានឹងកំណត់ការកំណត់បណ្តាញទាំងអស់ឡើងវិញ រួមមាន៖\n\n"<li>"Wi‑Fi"</li>\n<li>"ទិន្នន័យចល័ត"</li>\n<li>"ប៊្លូធូស"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"កំណត់ eSIM ឡើងវិញផងដែរ"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"លុប eSIM ទាំងអស់នៅលើទូរសព្ទ។ អ្នកនឹងត្រូវទាក់ទងទៅក្រុមហ៊ុនសេវាទូរសព្ទរបស់អ្នក ដើម្បីទាញយក eSIM របស់អ្នកឡើងវិញ។ សកម្មភាពនេះនឹងមិនបោះបង់គម្រោងសេវាកម្មទិន្នន័យចល័តរបស់អ្នកទេ។"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"កំណត់ការកំណត់ឡើងវិញ"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"កំណត់ការកំណត់បណ្តាញទាំងអស់ឡើងវិញ? អ្នកមិនអាចធ្វើសកម្មភាពនេះវិញបានទេ!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"កំណត់ការកំណត់ឡើងវិញ"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"កំណត់ឡើងវិញ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ការកំណត់បណ្តាញឡើងវិញមិនមានសម្រាប់អ្នកប្រើនេះទេ"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"បានកំណត់ការកំណត់បណ្តាញឡើងវិញ"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"មិនអាចកំណត់ eSIM ឡើងវិញបានទេ"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"មិនអាចកំណត់ eSIM ឡើងវិញបានទេ ដោយសារមានបញ្ហា។"</string>
<string name="master_clear_title" msgid="3531267871084279512">"លុបទិន្នន័យទាំងអស់ (កំណត់ឡើងវិញដូចថ្មី)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"វានឹងលុបទិន្នន័យពី "<b>"ឧបករណ៍ផ្ទុកខាងក្នុង"</b>"នៃកុំព្យូទ័របន្ទះរបស់អ្នក រួមមាន៖\n\n"<li>"គណនី Google របស់អ្នក"</li>\n<li>"ការកំណត់ និងទិន្នន័យកម្មវិធី និងប្រព័ន្ធ"</li>\n<li>"កម្មវិធីបានទាញយក"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"វានឹងលុបទិន្នន័យទាំងអស់ពី "<b>"ទំហំផ្ទុកខាងក្នុង"</b>"នៃទូរសព្ទរបស់អ្នក រួមមាន៖\n\n"<li>"គណនី Google របស់អ្នក"</li>\n<li>"ការកំណត់ និងទិន្នន័យប្រព័ន្ធ ព្រមទាំងកម្មវិធី"</li>\n<li>"កម្មវិធីបានទាញយក"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"បច្ចុប្បន្ន អ្នកបានចូលគណនីដូចខាងក្រោម៖ \n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"មានអ្នកផ្សេងច្រើនទៀតមានវត្តមាននៅលើឧបករណ៍នេះ។\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"តន្ត្រី"</li>\n<li>"រូបថត"</li>\n<li>"ទិន្នន័យអ្នកប្រើផ្សេងទៀត"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"ក្រុមហ៊ុនបម្រើសេវាទូរសព្ទដែលប្រើ eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"វានឹងមិនបោះបង់គម្រោងសេវាកម្មទូរសព្ទរបស់អ្នកទេ។"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"ដើម្បីសម្អាតតន្ត្រី រូបថត និងទិន្នន័យអ្នកប្រើផ្សេងៗ តម្រូវឲ្យលុប"<b>"ឧបករណ៍ផ្ទុកយូអេសប៊ី"</b>" ។"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"ដើម្បីសម្អាតតន្ត្រី, រូបភាព និងទិន្នន័យអ្នកប្រើផ្សេងទៀត "<b>"ចាំបាច់ត្រូវ"</b>" លុបកាតអេសឌី។"</string>
@@ -1452,21 +1454,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"សូមភ្ជាប់អ៊ីនធឺណិត"</string>
<string name="location_title" msgid="1029961368397484576">"ទីតាំងខ្ញុំ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"ទីតាំងសម្រាប់ប្រវត្តិរូបការងាររបស់អ្នក"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"របៀបកំណត់"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ភាពត្រឹមត្រូវខ្ពស់"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ការសន្សំថ្ម"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"តែឧបករណ៍ប៉ុណ្ណោះ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"បិទទីតាំង"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ការអនុញ្ញាតកម្រិតកម្មវិធី"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"សំណើទីតាំងថ្មី"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"បច្ចុប្បន្នគ្មានកម្មវិធីបានស្នើទីតាំង"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"សេវាកម្មទីតាំង"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ប្រើថ្មច្រើន"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ប្រើថ្មតិច"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"របៀបកំណត់ទីតាំង"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"ប្រើ GPS, Wi‑Fi, ប៊្លូធូស ឬបណ្តាញទូរសព្ទចល័តដើម្បីកំណត់ទីតាំង"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"ប្រើ Wi‑Fi, ប៊្លូធូស ឬបណ្តាញទូរសព្ទចល័តដើម្បីកំណត់ទីតាំង"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ប្រើ GPS និងឧបករណ៍ចាប់សញ្ញារបស់ឧបករណ៍ ដើម្បីកំណត់ទីតាំង"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ការស្កេន"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"ការស្កេន Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ធ្វើឲ្យការចាប់ទីតាំងប្រសើរឡើងដោយអនុញ្ញាតឲ្យកម្មវិធី និងសេវាកម្មប្រព័ន្ធចាប់យកបណ្តាញ Wi-Fi បានគ្រប់ពេល។"</string>
@@ -1488,8 +1481,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"ប្រភពទីតាំង"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"អំពីកុំព្យូទ័របន្ទះ"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"អំពីទូរសព្ទ"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"អំពីឧបករណ៍"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"អំពីឧបករណ៍ត្រាប់តាម"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"មើលព័ត៌មានផ្លូវច្បាប់, ស្ថានភាព, កំណែកម្មវិធី"</string>
<string name="legal_information" msgid="5769301644270604095">"ព័ត៌មានផ្លូវច្បាប់"</string>
@@ -1597,8 +1589,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"មើលកម្មវិធីទាំង <xliff:g id="COUNT">%1$d</xliff:g>"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"ថេប្លេត និងទិន្នន័យផ្ទាល់ខ្លួនរបស់អ្នកងាយនឹងរងគ្រោះពីការវាយប្រហារពីកម្មវិធីដែលមិនស្គាល់។ ប្រសិនបើដំឡើងកម្មវិធីពីប្រភពនេះ មានន័យថាអ្នកទទួលខុសត្រូវលើការខូចខាតណាមួយចំពោះទូរសព្ទ ឬការបាត់បង់ទិន្នន័យ ដែលអាចបណ្តាលមកពីការប្រើប្រាស់កម្មវិធីទាំងនោះ។"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"ទូរសព្ទ និងទិន្នន័យផ្ទាល់ខ្លួនរបស់អ្នកងាយនឹងរងគ្រោះពីការវាយប្រហារពីកម្មវិធីដែលមិនស្គាល់។ ប្រសិនបើដំឡើងកម្មវិធីពីប្រភពនេះ មានន័យថាអ្នកនឹងទទួលខុសត្រូវលើការខូចខាតណាមួយចំពោះទូរសព្ទ ឬការបាត់បង់ទិន្នន័យរបស់អ្នក ដែលអាចបណ្តាលមកពីការប្រើប្រាស់កម្មវិធីទាំងនោះ។"</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"ឧបករណ៍ និងទិន្នន័យផ្ទាល់ខ្លួនរបស់អ្នកងាយនឹងរងគ្រោះពីការវាយប្រហារពីកម្មវិធីដែលមិនស្គាល់។ ប្រសិនបើដំឡើងកម្មវិធីពីប្រភពនេះ មានន័យថាអ្នកទទួលខុសត្រូវលើការខូចខាតទាំងឡាយចំពោះឧបករណ៍ ឬការបាត់បង់ទិន្នន័យ ដែលអាចបណ្តាលមកពីការប្រើប្រាស់កម្មវិធីទាំងនោះ។"</string>
<string name="advanced_settings" msgid="1777249286757067969">"ការកំណត់កម្រិតខ្ពស់"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"បើកជម្រើសកំណត់ច្រើនទៀត"</string>
<string name="application_info_label" msgid="5736524913065714880">"ព័ត៌មានកម្មវិធី"</string>
@@ -1898,12 +1889,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"អាចប៉ះពាល់ដល់ប្រតិបត្តិការ"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"ចុចបន្ទាប់ពីទ្រនិចឈប់ផ្លាស់ទី"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ពន្យារពេលមុនពេលចុច"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"ប្រើសេវាកម្ម"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"ប្រើការកែតម្រូវពណ៌"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"ប្រើអក្សររត់"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"បើក"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"បិទ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"បង្ហាញនៅក្នុងការកំណត់រហ័ស"</string>
@@ -2017,7 +2005,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"នៅសល់ <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> ដើម្បីបញ្ចូលថ្ម"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"សកម្មភាពផ្ទៃខាងក្រោយ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"បានដាក់កំហិត"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"អនុញ្ញាតឲ្យកម្មវិធីនេះដំណើរការនៅផ្ទៃខាងក្រោយ"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"កម្មវិធីអាចដំណើរការនៅផ្ទៃខាងក្រោយនៅពេលមិនមានការប្រើប្រាស់"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"សកម្មភាពផ្ទៃខាងក្រោយរបស់កម្មវិធីត្រូវបានកម្រិតនៅពេលមិនមានការប្រើប្រាស់"</string>
@@ -2064,18 +2052,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"កម្មវិធីកំពុងដំណើរការជាធម្មតា"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"កម្លាំងថ្មខ្សោយ"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ថ្មមិនអាចផ្តល់កម្រិតថាមពលថ្មខ្លាំងទេ"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"បើកកម្មវិធីគ្រប់គ្រងថ្មឆ្លាតវៃ"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"បើកដើម្បីបង្កើនប្រសិទ្ធភាពការប្រើប្រាស់ថ្ម"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"បើកមុខងារកម្រិតថ្មទាប"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ធ្វើឱ្យថាមពលថ្មរបស់អ្នកប្រើបានយូរជាងមុន"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"មុខងារកម្រិតថ្មទាបបានបើក"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"មុខងារមួយចំនួនត្រូវបានកម្រិត"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ទូរសព្ទត្រូវបានប្រើច្រើន"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ថេប្លេតត្រូវបានប្រើច្រើន"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ឧបករណ៍ត្រូវបានប្រើច្រើន"</string>
@@ -2199,8 +2181,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"បង្កើនប្រសិទ្ធិភាពកម្មវិធី"</string>
<string name="battery_saver" msgid="8172485772238572153">"កម្មវិធីសន្សំថ្ម"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ប្រើកម្មវិធីសន្សំថ្ម"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"បើកដោយស្វ័យប្រវត្តិ"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"កុំ"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"នៅពេលដែលថ្មសល់ <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2388,8 +2369,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"បច្ចុប្បន្នការធ្វើសមកាលកម្មមានបញ្ហា។ វានឹងដំណើរការក្នុងពេលឆាប់ៗនេះ។"</string>
<string name="add_account_label" msgid="7811707265834013767">"បញ្ចូលគណនី"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"មិនទាន់មានប្រវត្តិរូបការងារនៅឡើយទេ"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"របៀបការងារ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"អនុញ្ញាតឲ្យប្រវត្តិរូបការងារដំណើរការ ដោយរាប់បញ្ចូលទាំងកម្មវិធី ការធ្វើសមកាលកម្មផ្ទៃខាងក្រោយ និងលក្ខណៈពិសេសដែលពាក់ព័ន្ធ"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"កម្រងព័ត៌មានការងារ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"គ្រប់គ្រងដោយស្ថាប័នរបស់អ្នក"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"កម្មវិធី និងការជូនដំណឹងបានបិទ"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"លុបប្រវត្តិរូបការងារ"</string>
<string name="background_data" msgid="5779592891375473817">"ទិន្នន័យផ្ទៃខាងក្រោយ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"កម្មវិធីអាចធ្វើសមកាលកម្ម ផ្ញើ និងទទួលទិន្នន័យនៅពេលណាមួយ"</string>
@@ -2421,8 +2403,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"លុបគណនី?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"លុបគណនីនេះ នឹងលុបសារ, ទំនាក់ទំនង និងទិន្នន័យផ្សេងៗទៀតទាំងអស់ពីកុំព្យូទ័របន្ទះរបស់អ្នក!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ការលុបគណនីនេះនឹងលុបសារ ទំនាក់ទំនង និងទិន្នន័យផ្សេងៗរបស់គណនីនេះទាំងអស់ពីទូរស័ព្ទ!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ការលុបគណនីនេះនឹងលុបសារ ទំនាក់ទំនង និងទិន្នន័យផ្សេងៗរបស់គណនីនេះទាំងអស់ចេញពីឧបករណ៍!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ការផ្លាស់ប្តូរនេះមិនត្រូវបានអនុញ្ញាតដោយអ្នកគ្រប់គ្រងរបស់អ្នក"</string>
<string name="provider_label" msgid="7724593781904508866">"ការជាវជាក្រុម"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2622,8 @@
<item quantity="other">ពិនិត្យវិញ្ញាបនបត្រ</item>
<item quantity="one">ពិនិត្យវិញ្ញាបនបត្រ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"អ្នកប្រើប្រាស់"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"អ្នកប្រើ & ប្រវត្តិរូប"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"បន្ថែមអ្នកប្រើ ឬប្រវត្តិរូប"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"បន្ថែមអ្នកប្រើ"</string>
@@ -2831,7 +2813,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ប៊្លូធូស ការបញ្ជូន"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"កម្មវិធី និងការជូនដំណឹង"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ការអនុញ្ញាត កម្មវិធីលំនាំដើម"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"អ្នកប្រើប្រាស់ និងគណនី"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"កម្មវិធីលំនាំដើម"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ភាសា ពេលវេលា ការបម្រុងទុក កំណែថ្មី"</string>
<string name="search_results_title" msgid="1796252422574886932">"ការកំណត់"</string>
@@ -2862,7 +2845,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"កុំ កុំ រំខាន, ផ្អាក, ការផ្អាក, បំបែក"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"នៅក្បែ, ទីតាំង, ប្រវត្តិ, ការរាយការណ៍"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ភាពត្រឹមត្រូវ"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"គណនី"</string>
<string name="keywords_users" msgid="3434190133131387942">"ការដាក់កម្រិត, ដាក់កម្រិត, បានដាក់កម្រិត"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ការកែអត្ថបទ, កែ, សំឡេង, ញ័រ, ស្វ័យប្រវត្តិ, ភាសា, កាយវិការ, ផ្តល់យោបល់, ការផ្តល់យោបល់, ធីម, បំពាន, ពាក្យ, វាយបញ្ចូល, សញ្ញាអារម្មណ៍, អន្តរជាតិ"</string>
@@ -2929,6 +2911,7 @@
<item quantity="one">ច្បាប់ 1</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"កុំរំខាន"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"បើកមុខងារកុំរំខាន"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"សកម្មភាព"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"អនុញ្ញាតឱ្យឮសំឡេង និងញ័រពី"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"គ្មានសំឡេង"</string>
@@ -2938,8 +2921,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"បើកដោយស្វ័យប្រវត្តិ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ច្បាប់ស្វ័យប្រវត្តិ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ច្បាប់ស្វ័យប្រវត្តិ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"កំណត់ច្បាប់សម្រាប់មុខងារកុំរំខាន"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ដាក់កម្រិតលើសំឡេង និងការញ័រក្នុងពេលណាមួយ"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"បិទសំឡេងទូរសព្ទក្នុងពេលជាក់លាក់"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"កំណត់ច្បាប់សម្រាប់មុខងារកុំរំខាន"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"ប្រើច្បាប់"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"អាទិភាពប៉ុណ្ណោះ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ម៉ោងរោទ៍ប៉ុណ្ណោះ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ស្ងៀមស្ងាត់ទាំងស្រុង"</string>
@@ -2947,12 +2931,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"រារាំងការរំខានក្នុងការមើល"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"អនុញ្ញាតសញ្ញាដែលមើលឃើញ"</string>
<string name="zen_mode_add" msgid="90014394953272517">"បញ្ចូល"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"បើក"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"បើកឥឡូវនេះ"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"បិទឥឡូវនេះ"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"មុខងារកុំរំខានបើករហូតដល់ម៉ោង <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"មុខងារកុំរំខាននឹងនៅបន្តបើករហូតទាល់តែអ្នកបិទវា"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"មុខងារកុំរំខានត្រូវបានបើកតាមរយៈច្បាប់ (<xliff:g id="RULE_NAME">%s</xliff:g>) ដោយស្វ័យប្រវត្តិ"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"មុខងារកុំរំខានត្រូវបានបើកតាមរយៈកម្មវិធី <xliff:g id="APP_NAME">%s</xliff:g> ដោយស្វ័យប្រវត្តិ"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"អាទិភាពប៉ុណ្ណោះ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"សំឡេងប្រវត្តិរូបការងារ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ប្រើសំឡេងប្រវត្តិរូបផ្ទាល់ខ្លួន"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"សំឡេងសម្រាប់កម្រងព័ត៌មានការងារ និងផ្ទាល់ខ្លួនគឺដូចគ្នា"</string>
@@ -2968,6 +2955,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"សំឡេងរោទ៍"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"សំឡេង និងការញ័រផ្សេងទៀត"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"ការជូនដំណឹង"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"បានផ្ញើថ្មីៗ"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"កម្រិតខ្ពស់"</string>
<string name="profile_section_header" msgid="2320848161066912001">"ការជូនដំណឹងពីកន្លែងធ្វើការ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"អនុញ្ញាតស្លាកជូនដំណឹង"</string>
@@ -3183,6 +3171,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ក្រៅពីប្រើម្រាមដៃរបស់អ្នកដើម្បីដោះសោឧបករណ៍របស់អ្នក អ្នកអាចបន្ថែមការការពារលើឧបករណ៍នេះ ដោយកំណត់ឲ្យប្រើពាក្យសម្ងាត់មុនពេលដែលវាចាប់ផ្តើម។ ប្រសិនបើឧបករណ៍មិនទាន់ចាប់ផ្ដើមទេ វាមិនអាចទទួលការហៅទូរសព្ទ សារ ឬការជូនដំណឹងក៏ដូចជាម៉ោងរោទ៍បានទេ។\n\nវាជួយការពារទិន្នន័យនៅលើឧបករណ៍ដែលបាត់ ឬត្រូវគេលួច។ កំណត់ឲ្យប្រើពាក្យសម្ងាត់ដើម្បីចាប់ផ្តើមឧបករណ៍របស់អ្នក?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"បាទ/ចាស"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"ទេ"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"បាទ/ចាស"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ទេ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"ទាមទារកូដ PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ទាមទារលំនាំ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"ទាមទារពាក្យសម្ងាត់?"</string>
@@ -3313,7 +3303,7 @@
<string name="high_power_system" msgid="7362862974428225301">"មិនមានការបង្កើនប្រសិទ្ធភាពថ្ម"</string>
<string name="high_power_desc" msgid="6283926163708585760">"កុំប្រើការបង្កើនប្រសិទ្ធភាពថ្ម។ អាចនឹងស៊ីថ្មរបស់អ្នកលឿនជាងមុន។"</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"អនុញ្ញាតឲ្យកម្មវិធីដំណើរការនៅផ្ទៃខាងក្រោយជានិច្ច?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"ការអនុញ្ញាតឲ្យ <xliff:g id="APP_NAME">%1$s</xliff:g> ដំណើរការនៅផ្ទៃខាងក្រោយជានិច្ចអាចនឹងធ្វើឲ្យកម្រិតថាមពលថ្មថយចុះ។ \n\nអ្នកអាចប្តូរវាបាននៅពេលក្រោយពី ការកំណត់ > កម្មវិធី > ការជូនដំណឹង។"</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"ការអនុញ្ញាតឲ្យ <xliff:g id="APP_NAME">%1$s</xliff:g> ដំណើរការនៅផ្ទៃខាងក្រោយជានិច្ចអាចនឹងធ្វើឲ្យកម្រិតថាមពលថ្មថយចុះ។ \n\nអ្នកអាចប្តូរវាបាននៅពេលក្រោយពីការកំណត់ > កម្មវិធី > ការជូនដំណឹង។"</string>
<string name="battery_summary" msgid="8044042095190688654">"ប្រើអស់ <xliff:g id="PERCENTAGE">%1$s</xliff:g> ចាប់តាំងពីសាកថ្មពេញលើកចុងក្រោយ"</string>
<string name="battery_power_management" msgid="5571519699679107523">"ការគ្រប់គ្រងថាមពល"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"គ្មានការប្រើប្រាស់ថ្មចាប់តាំងពីសាកពេញលើកចុងក្រោយ"</string>
@@ -3455,7 +3445,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"អ្នកប្រើប្រាស់បច្ចុប្បន្ន៖ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"ចូលជា <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ជាកម្មវិធីលំនាំដើម"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"បើក / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"បិទ"</string>
<string name="backup_disabled" msgid="485189128759595412">"បានបិទដំណើរការការបម្រុងទុក"</string>
<string name="about_summary" msgid="924181828102801010">"បានធ្វើបច្ចុប្បន្នភាពទៅ Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3465,6 +3456,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"មិនអនុញ្ញាតសារ SMS ទេ"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"មិនអនុញ្ញាតឲ្យប្រើកាមេរ៉ាទេ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"មិនអនុញ្ញាតឲ្យប្រើមុខងារថតអេក្រង់ទេ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"មិនអាចបិទការបម្រុងទុកបានទេ"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"សកម្មភាពនេះត្រូវបានបិទ។ ដើម្បីស្វែងយល់បន្ថែម សូមទាក់ទងទៅអ្នកគ្រប់គ្រងរបស់ស្ថាប័នអ្នក។"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"ព័ត៌មានលម្អិតបន្ថែម"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"អ្នកគ្រប់គ្រងរបស់អ្នកអាចតាមដាន និងគ្រប់គ្រងកម្មវិធី និងទិន្នន័យដែលពាក់ព័ន្ធជាមួយកម្រងព័ត៌មានការងាររបស់អ្នក ដោយរាប់បញ្ចូលទាំងការកំណត់ ការអនុញ្ញាត ការចូលលក្ខណៈក្រុមហ៊ុន សកម្មភាពបណ្តាញ និងព័ត៌មានអំពីទីតាំងរបស់ឧបករណ៍នេះផងដែរ។"</string>
@@ -3488,9 +3480,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"ប្រវត្តិរូបការងារត្រូវបានបិទ"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"កម្មវិធី ការធ្វើសមកាលកម្មផ្ទៃខាងក្រោយ និងលក្ខណៈពិសេសផ្សេងទៀតដែលពាក់ព័ន្ធនឹងប្រវត្តិរូបការងាររបស់អ្នកត្រូវបានបិទ។"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"កំណត់កាលវិភាគពន្លឺពេលរាត្រី"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"អេក្រង់ពណ៌លឿងព្រឿងៗជួយឲ្យអ្នកឆាប់គេងលក់"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ប្តូរពណ៌អេក្រង់ដោយស្វ័យប្រវត្តិរៀងរាល់យប់"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"បានបើកពន្លឺពេលយប់"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"អេក្រង់មានពណ៌លឿងទុំព្រឿងៗ វាអាចជួយឲ្យអ្នកឆាប់គេងលក់។"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ណែនាំសម្រាប់អ្នក"</string>
<string name="suggestions_title" msgid="7280792342273268377">"ការណែនាំ"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ទៀត"</string>
@@ -3595,6 +3588,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"គ្មាន"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"បានបាត់វត្ថុដាក់ចំណាត់ថ្នាក់"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"វត្ថុដាក់ចំណាត់ថ្នាក់មិនផ្ទុកគន្លឹះនេះទេ"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"ធ្វើតាមរបៀបដាច់ផ្ទាំងអេក្រង់"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"គ្មាន"</string>
<string name="special_access" msgid="3458780842491881155">"ការចូលប្រើប្រាស់កម្មវិធីពិសេស"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other">កម្មវិធី <xliff:g id="COUNT">%d</xliff:g> អាចប្រើទិន្នន័យដែលលែងមានការដាក់កំហិតបាន</item>
@@ -3617,10 +3612,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"បានភ្ជាប់ទៅឧបករណ៍ច្រើន"</string>
<string name="demo_mode" msgid="2798762752209330277">"មុខងារសាកល្បង UI ប្រព័ន្ធ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ប្រអប់ការកំណត់រហ័សសម្រាប់អ្នកអភិវឌ្ឍន៍"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"ដានវិនដូ"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ដានផ្ទៃ"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"ការកំណត់ប្រវត្តិរូបការងារ"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"ការស្វែងរកទំនាក់ទំនង"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"អនុញ្ញាតការស្វែងរកទំនាក់ទំនងដោយស្ថាប័នរបស់អ្នកដើម្បីកំណត់អត្តសញ្ញាណអ្នកហៅ និងលេខទំនាក់ទំនង"</string>
@@ -3640,8 +3633,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"ដើម្បីបង្កើនទំហំផ្ទុក កម្មវិធីគ្រប់គ្រងទំហំផ្ទុកយករូបថត និងវីដេអូដែលបានបម្រុងទុកចេញពីឧបករណ៍របស់អ្នក។"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"យករូបថត និងវីដេអូចេញ"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"កម្មវិធីគ្រប់គ្រងទំហំផ្ទុក"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"ប្រើកម្មវិធីគ្រប់គ្រងទំហំផ្ទុក"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"ស្វ័យប្រវត្តិ"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"ឯកសារណែនាំ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"បង្កើនទំហំផ្ទុកឥឡូវនេះ"</string>
@@ -3652,32 +3644,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"លោតទៅកាមេរ៉ា"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ដើម្បីបើកកាមេរ៉ាឲ្យបានរហ័ស សូមចុចប៊ូតុងថាមពលពីរដង។ ដំណើរការនៅលើអេក្រង់ណាមួយក៏បាន។"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"បើកកាមេរ៉ាយ៉ាងរហ័ស"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ចុចប៊ូតុងថាមពលពីរដងដើម្បីបើកកាមេរ៉ា"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ត្រឡប់កាមេរ៉ា"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"ថតរូបពីមុខកាន់តែរហ័សជាងមុន"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"បង្វិលទូរសព្ទពីរដងសម្រាប់មុខងារថតពីមុខ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"បង្វិលថេប្លេតពីរដងសម្រាប់មុខងារថតពីមុខ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"បង្វិលឧបករណ៍ពីរដងសម្រាប់មុខងារថតពីមុខ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ប៉ះពីរដងដើម្បីពិនិត្យទូរសព្ទ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ប៉ះពីរដងដើម្បីពិនិត្យថេប្លេត"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ប៉ះពីរដងដើម្បីពិនិត្យឧបករណ៍"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"ដើម្បីពិនិត្យមើលម៉ោង រូបជូនដំណឹង និងព័ត៌មានផ្សេងទៀត សូមចុចអេក្រង់របស់អ្នកពីរដង។"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ពិនិត្យមើលការជូនដំណឹងនៅពេលដែលអេក្រង់បិទ"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"លើកដើម្បីពិនិត្យទូរសព្ទ"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"លើកដើម្បីពិនិត្យថេប្លេត"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"លើកដើម្បីពិនិត្យឧបករណ៍"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"ដើម្បីពិនិត្យមើលម៉ោង រូបជូនដំណឹង និងព័ត៌មានផ្សេងទៀត សូមលើកទូរសព្ទរបស់អ្នក។"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"ដើម្បីពិនិត្យមើលម៉ោង រូបជូនដំណឹង និងព័ត៌មានផ្សេងទៀត សូមជ្រើសរើសថេប្លេតរបស់អ្នក។"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"ដើម្បីពិនិត្យមើលម៉ោង រូបជូនដំណឹង និងព័ត៌មានផ្សេងទៀត សូមជ្រើសរើសឧបករណ៍របស់អ្នក។"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ពិនិត្យមើលការជូនដំណឹងនៅពេលដែលអេក្រង់បិទ"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"អូសស្នាមម្រាមដៃសម្រាប់ការជូនដំណឹង"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"អូសស្នាមម្រាមដៃ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"ដើម្បីពិនិត្យមើលការជូនដំណឹងរបស់អ្នក សូមអូសចុះក្រោមនៅលើឧបករណ៍ចាប់ស្នាមម្រាមដៃ ដែលស្ថិតនៅផ្នែកខាងក្រោយទូរសព្ទរបស់អ្នក។"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"ដើម្បីពិនិត្យមើលការជូនដំណឹងរបស់អ្នក សូមអូសចុះក្រោមនៅលើឧបករណ៍ចាប់ស្នាមម្រាមដៃ ដែលស្ថិតនៅផ្នែកខាងក្រោយថេប្លេតរបស់អ្នក។"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"ដើម្បីពិនិត្យមើលការជូនដំណឹងរបស់អ្នក សូមអូសចុះក្រោមនៅលើឧបករណ៍ចាប់ស្នាមម្រាមដៃ ដែលស្ថិតនៅផ្នែកខាងក្រោយឧបករណ៍របស់អ្នក។"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"មើលការជូនដំណឹងយ៉ាងឆាប់រហ័ស"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"អូសចុះក្រោមលើឧបករណ៍ចាប់ស្នាមម្រាមដៃ"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"បើក"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"បិទ"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader ត្រូវបានដោះសោរួចហើយ"</string>
@@ -3809,8 +3794,17 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"មុខងារនេះមិនមាននៅលើឧបករណ៍នេះទេ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"ជំរុញការវាស់ GNSS ពេញលេញ"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"តាមដានក្រុមរូបថត និងហ្រេ្វកង់ GNSS ទាំងអស់ដែលគ្មានការបែងចែករយៈពេលដំណើរការ"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"បង្ហាញប្រអប់បញ្ចូលនៃការគាំងជានិច្ច"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"បង្ហាញប្រអប់បញ្ចូលរាល់ពេលដែលកម្មវិធីគាំង"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ការចូលប្រើបញ្ជី"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ការចូលប្រើបញ្ជី"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"ទូរសព្ទរបស់ខ្ញុំ"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"ថេប្លេតរបស់ខ្ញុំ"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"ឧបករណ៍របស់ខ្ញុំ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"គណនី"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ឈ្មោះឧបករណ៍"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ប្រើប៊្លូធូសនៅពេលបើកបរ"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"បើកប៊្លូធូសដោយស្វ័យប្រវត្តិ នៅពេលបើកបរ"</string>
</resources>
diff --git a/res/values-kn/arrays.xml b/res/values-kn/arrays.xml
index 43a6150..ede6bee 100644
--- a/res/values-kn/arrays.xml
+++ b/res/values-kn/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"ಒತ್ತುವ ಬಟನ್"</item>
<item msgid="1624323946324499595">"ಪೀರ್ ಸಾಧನದಿಂದ ಪಿನ್"</item>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 99721c3..32eae8d 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"ದಿನಾಂಕವನ್ನು ಹೊಂದಿಸಿ"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"ವರ್ಣಮಾಲೆಯಾನುಸಾರ ವಿಂಗಡಿಸು"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"ಸಮಯ ವಲಯದ ಅನುಸಾರ ವಿಂಗಡಿಸು"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> ಸಮಯದಲ್ಲಿ <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> ಗೆ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ಹಗಲು ಉಳಿತಾಯ ಸಮಯ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"ಪ್ರಮಾಣಿತ ಸಮಯ"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"ಪ್ರದೇಶದ ಮೂಲಕ ಸಮಯ ವಲಯ"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"ನಿಶ್ಚಿತ ಆಫ್ಸೆಟ್ ಸಮಯ ವಲಯಗಳು"</string>
<string name="date_picker_title" msgid="1338210036394128512">"ದಿನಾಂಕ"</string>
<string name="time_picker_title" msgid="483460752287255019">"ಸಮಯ"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಲಾಕ್ ಮಾಡು"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"ಲಾಕ್ ಸ್ಕ್ರೀನ್ ಸಂದೇಶ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ವಿಜೆಟ್ಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"ನಿರ್ವಾಹಕರು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ್ದಾರೆ"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"ಲಾಕ್ಡೌನ್ ಆಯ್ಕೆಯನ್ನು ತೋರಿಸಿ"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"ಪ್ರದರ್ಶನ ಪವರ್ ಬಟನ್ ಆಯ್ಕೆಯು ವಿಸ್ತರಣೆ ಪ್ರವೇಶವನ್ನು ಆಫ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಫಿಂಗರ್ ಫ್ರಿಂಟ್ ಅನ್ನು ಅನ್ಲಾಕ್ ಮಾಡುತ್ತದೆ."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ಯಾವುದೂ ಇಲ್ಲ"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ಉದಾ. ಜೋ ಅವರ Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"ಪ್ರೊಫೈಲ್ ಮಾಹಿತಿ"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"ಖಾತೆಗಳು"</string>
<string name="location_settings_title" msgid="1369675479310751735">"ಸ್ಥಳ"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"ಸ್ಥಳ ಬಳಸಿ"</string>
<string name="account_settings_title" msgid="626177544686329806">"ಖಾತೆಗಳು"</string>
<string name="security_settings_title" msgid="4918904614964215087">"ಭದ್ರತೆ ಮತ್ತು ಸ್ಥಳ"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ಎನ್ಕ್ರಿಪ್ಶನ್ ಮತ್ತು ರುಜುವಾತುಗಳು"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ನೀವು ನಮೂದಿಸಿದ ಪಾಸ್ವರ್ಡ್ ಸರಿಯಾಗಿದೆ, ಆದರೆ ದುರದೃಷ್ಟವಶಾತ್ ನಿಮ್ಮ ಡೇಟಾ ದೋಷಪೂರಿತವಾಗಿದೆ. \n\nನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಬಳಕೆಯನ್ನು ಮುಂದುವರಿಸಲು, ನೀವು ಫ್ಯಾಕ್ಟರಿ ಮರುಹೊಂದಿಸುವಿಕೆಯನ್ನು ನಿರ್ವಹಿಸುವ ಅಗತ್ಯವಿದೆ. ಮರುಹೊಂದಿಕೆಯ ನಂತರ ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ನೀವು ಹೊಂದಿಸಿದಾಗ, ನಿಮ್ಮ Google ಖಾತೆಗೆ ಬ್ಯಾಕಪ್ ಮಾಡಲಾದ ಆ ಯಾವುದೇ ಡೇಟಾವನ್ನು ಮರುಸ್ಥಾಪಿಸಲು ನೀವು ಅವಕಾಶವನ್ನು ಹೊಂದಿರುತ್ತೀರಿ."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ನೀವು ನಮೂದಿಸಿದ ಪಾಸ್ವರ್ಡ್ ಸರಿಯಾಗಿದೆ, ಆದರೆ ದುರದೃಷ್ಟವಶಾತ್ ನಿಮ್ಮ ಡೇಟಾ ದೋಷಪೂರಿತವಾಗಿದೆ. \n\nನಿಮ್ಮ ಫೋನ್ ಬಳಸಿಕೊಂಡು ಪುನರಾರಂಭಿಸಲು, ನೀವು ಫ್ಯಾಕ್ಟರಿ ಮರುಹೊಂದಿಸುವಿಕೆಯನ್ನು ಮಾಡಬೇಕಾದ ಅಗತ್ಯವಿರುತ್ತದೆ. ಮರುಹೊಂದಿಸಿದ ನಂತರ ನಿಮ್ಮ ಫೋನ್ ಅನ್ನು ನೀವು ಹೊಂದಿಸಿದಾಗ, ನಿಮ್ಮ Google ಖಾತೆಗೆ ಬ್ಯಾಕಪ್ ಮಾಡಲಾದ ಆ ಯಾವುದೇ ಡೇಟಾವನ್ನು ಮರುಸ್ಥಾಪಿಸಲು ನೀವು ಅವಕಾಶವನ್ನು ಹೊಂದಿರುತ್ತೀರಿ."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ಇನ್ಪುಟ್ ವಿಧಾನ ಬದಲಿಸಿ"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"ಪರದೆ ಲಾಕ್ ಹೊಂದಿಸಿ"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ರಕ್ಷಿಸಿ"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಬಳಸಿ"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"ನಿಮ್ಮ ಫಿಂಗರ್ಫ್ರಿಂಟ್ನೊಂದಿಗೆ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"ಭದ್ರತೆಗಾಗಿ ಪರದೆ ಲಾಕ್ ಸೆಟಪ್ ಮಾಡಿ"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಇತರರು ಬಳಸದಂತೆ ತಡೆಯಿರಿ"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಇತರರು ಬಳಸದಂತೆ ತಡೆಯಿರಿ"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"ನಿಮ್ಮ ಫೋನ್ನ್ನು ಇತರರು ಬಳಸದಂತೆ ತಡೆಯಿರಿ"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ಬೆರಳಚ್ಚು ಮೂಲಕ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"ನಿಮ್ಮ ಫಿಂಗರ್ಫ್ರಿಂಟ್ನೊಂದಿಗೆ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"ನಿಮ್ಮ ಫಿಂಗರ್ಫ್ರಿಂಟ್ನೊಂದಿಗೆ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"ನಿಮ್ಮ ಫಿಂಗರ್ಫ್ರಿಂಟ್ನೊಂದಿಗೆ ಅನ್ಲಾಕ್ ಮಾಡಿ"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"ಸ್ಕ್ರೀನ್ ಲಾಕ್ ಆಯ್ಕೆಮಾಡಿ"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"ಕೆಲಸದ ಲಾಕ್ ಆಯ್ಕೆ ಮಾಡಿ"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ರಕ್ಷಿಸಿ"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"ಹೆಸರು"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"ಸೈನ್ ಇನ್"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"ವೈ-ಫೈ ಆನ್ ಮಾಡಲು <xliff:g id="REQUESTER">%s</xliff:g> ಬಯಸುತ್ತದೆ"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"ವೈ-ಫೈ ಆಫ್ ಮಾಡಲು <xliff:g id="REQUESTER">%s</xliff:g> ಬಯಸುತ್ತದೆ"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi‑Fi ಆನ್ ಮಾಡಿ"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"ವೈ-ಫೈ ಬಳಸಿ"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"ವಯರ್ಲೆಸ್ ಪ್ರವೇಶಿಸುವಿಕೆ ಅಂಶಗಳನ್ನು ಹೊಂದಿಸಿ & ನಿರ್ವಹಿಸಿ"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"ಪಾಸ್ವರ್ಡ್"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"ಪಾಸ್ವರ್ಡ್ ತೋರಿಸು"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP ಬ್ಯಾಂಡ್ ಆಯ್ಕೆಮಾಡಿ"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ಸ್ವಯಂ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz ಬ್ಯಾಂಡ್"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz ಬ್ಯಾಂಡ್"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"ವೈ-ಫೈ ಕರೆ ಮಾಡುವಿಕೆ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"ವೈ-ಫೈ ಕರೆ ಮಾಡುವಿಕೆ ಆನ್ ಮಾಡಿ"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಬದಲಿಗೆ ವೈ-ಫೈ ಬಳಸಿ"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"ವೈ-ಫೈ ಮೂಲಕ ಕರೆಗಳನ್ನು ಮಾಡಲು ಅದರ ವ್ಯಾಪ್ತಿಯನ್ನು ವಿಸ್ತರಿಸಿ"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ಕರೆ ಮಾಡುವಿಕೆ ಪ್ರಾಶಸ್ತ್ಯ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"ವೈ-ಫೈ ಕರೆ ಮಾಡುವಿಕೆ ಮೋಡ್"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ರೋಮಿಂಗ್ ಪ್ರಾಶಸ್ತ್ಯ"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಪ್ರಕಾರ"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ಆಪರೇಟರ್ ಮಾಹಿತಿ"</string>
<string name="status_data_state" msgid="5503181397066522950">"ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಸ್ಥಿತಿ"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"ಸೇವೆ ಸ್ಥಿತಿ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"ಸಿಗ್ನಲ್ ಸಾಮರ್ಥ್ಯ"</string>
<string name="status_roaming" msgid="2638800467430913403">"ರೋಮಿಂಗ್"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"ನೆಟ್ವರ್ಕ್, ಅಪ್ಲಿಕೇಶನ್ಗಳು ಅಥವಾ ಸಾಧನವನ್ನು ಮರುಹೊಂದಿಸಬಹುದಾಗಿದೆ"</string>
<string name="reset_network_title" msgid="6166025966016873843">"ವೈ-ಫೈ, ಮೊಬೈಲ್ ಮತ್ತು ಬ್ಲೂಟೂತ್ ಮರುಹೊಂದಿಸಿ"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"ಕೆಳಗಿನವುಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಇದು ಎಲ್ಲಾ ನೆಟ್ವರ್ಕ್ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಮರುಹೊಂದಿಸುತ್ತದೆ:\n\n"<li>"ವೈ-ಫೈ"</li>\n<li>"ಮೊಬೈಲ್ ಡೇಟಾ"</li>\n<li>"ಬ್ಲೂಟೂತ್"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM ಗಳನ್ನು ಸಹ ಮರುಹೊಂದಿಸಿ"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ಫೋನ್ನಲ್ಲಿರುವ ಎಲ್ಲ eSIMಗಳನ್ನು ಅಳಿಸಿಹಾಕಿ. ನಿಮ್ಮ eSIMs ಅನ್ನು redownload ಮಾಡಲು ನಿಮ್ಮ ವಾಹಕವನ್ನು ನೀವು ಸಂಪರ್ಕಿಸಬೇಕು. ಇದು ನಿಮ್ಮ ಮೊಬೈಲ್ ಸೇವಾ ಯೋಜನೆಯನ್ನು ರದ್ದುಗೊಳಿಸುವುದಿಲ್ಲ."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಮರುಹೊಂದಿಸು"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"ಎಲ್ಲಾ ನೆಟ್ವರ್ಕ್ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಮರುಹೊಂದಿಸುವುದೇ? ನಿಮಗೆ ಈ ಕ್ರಮವನ್ನು ರದ್ದುಪಡಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಮರುಹೊಂದಿಸು"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ಮರುಹೊಂದಿಸುವುದೇ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ಈ ಬಳಕೆದಾರರಿಗೆ ನೆಟ್ವರ್ಕ್ ಮರುಹೊಂದಿಕೆ ಲಭ್ಯವಿಲ್ಲ"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"ನೆಟ್ವರ್ಕ್ ಸೆಟ್ಟಿಂಗ್ ಮರುಹೊಂದಿಸಲಾಗಿದೆ"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM ಗಳನ್ನು ಮರುಹೊಂದಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"ದೋಷದ ಕಾರಣದಿಂದಾಗಿ eSIM ಅನ್ನು ಮರುಹೊಂದಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
<string name="master_clear_title" msgid="3531267871084279512">"ಎಲ್ಲಾ ಡೇಟಾ ಅಳಿಸಿ (ಫ್ಯಾಕ್ಟರಿ ಮರುಹೊಂದಿಸಿ)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ಇದು ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ನ "<b>"ಆಂತರಿಕ ಸಂಗ್ರಹಣೆಯ"</b>" ಎಲ್ಲ ಡೇಟಾವನ್ನು ಅಳಿಸುತ್ತದೆ, ಅವುಗಳೆಂದರೆ:\n\n"<li>"ನಿಮ್ಮ Google ಖಾತೆ"</li>\n<li>"ಸಿಸ್ಟಂ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಡೇಟಾ ಹಾಗೂ ಸೆಟ್ಟಿಂಗ್ಗಳು"</li>\n<li>"ಡೌನ್ಲೋಡ್ ಮಾಡಿರುವ ಅಪ್ಲಿಕೇಶನ್ಗಳು"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ಇದು ನಿಮ್ಮ ಫೋನ್ನ "<b>"ಆಂತರಿಕ ಸಂಗ್ರಹಣೆಯಲ್ಲಿರುವ"</b>"ಎಲ್ಲ ಡೇಟಾವನ್ನು ಅಳಿಸಿ ಹಾಕುತ್ತದೆ. ಡೇಟಾ ಇವುಗಳನ್ನೂ ಒಳಗೊಂಡಿರಬಹುದು:\n\n"<li>"ನಿಮ್ಮ Google ಖಾತೆ"</li>\n<li>"ಸಿಸ್ಟಂ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಡೇಟಾ ಹಾಗೂ ಸೆಟ್ಟಿಂಗ್ಗಳು"</li>\n<li>"ಡೌನ್ಲೋಡ್ ಮಾಡಲಾದ ಅಪ್ಲಿಕೇಶನ್ಗಳು"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"ನೀವು ಪ್ರಸ್ತುತ ಕೆಳಗಿನ ಖಾತೆಗಳಿಗೆ ಸೈನ್ ಇನ್ ಆಗಿರುವಿರಿ:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ಈ ಸಾಧನದಲ್ಲಿ ಪ್ರಸ್ತುತ ಇತರ ಬಳಕೆದಾರರಿದ್ದಾರೆ.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"ಸಂಗೀತ"</li>\n<li>"ಫೋಟೋಗಳು"</li>\n<li>"ಇತರ ಬಳಕೆದಾರರ ಡೇಟಾ"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM ನಲ್ಲಿನ ವಾಹಕಗಳು"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM ಗಳು"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"ಇದು ನಿಮ್ಮ ಮೊಬೈಲ್ ಸೇವಾ ಯೋಜನೆಯನ್ನು ರದ್ದುಗೊಳಿಸುವುದಿಲ್ಲ."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"ಸಂಗೀತ, ಚಿತ್ರಗಳು, ಮತ್ತು ಇತರ ಬಳಕೆದಾರರ ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲು, "<b>"USB ಸಂಗ್ರಹಣೆಯನ್ನು"</b>" ಅಳಿಸಬೇಕಾಗುತ್ತದೆ."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"ಸಂಗೀತ, ಚಿತ್ರಗಳು, ಮತ್ತು ಬಳಕೆದಾರರ ಇತರೆ ಡೇಟಾವನ್ನು ತೆರವುಗೊಳಿಸಲು, "<b>"SD ಕಾರ್ಡ್ ಅನ್ನು"</b>" ಅಳಿಸಬೇಕಾಗುತ್ತದೆ."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"ದಯವಿಟ್ಟು ಇಂಟರ್ನೆಟ್ಗೆ ಸಂಪರ್ಕಿಸಿ"</string>
<string name="location_title" msgid="1029961368397484576">"ನನ್ನ ಸ್ಥಳ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್ನ ಸ್ಥಳ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"ಮೋಡ್"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ಅಧಿಕ ನಿಖರತೆ"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ಬ್ಯಾಟರಿ ಉಳಿತಾಯ"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"ಸಾಧನ ಮಾತ್ರ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"ಸ್ಥಳ ಆಫ್"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ಅಪ್ಲಿಕೇಶನ್ ಹಂತದ ಅನುಮತಿಗಳು"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"ಇತ್ತೀಚಿನ ಸ್ಥಳ ವಿನಂತಿಗಳು"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"ಇತ್ತೀಚೆಗೆ ಯಾವುದೇ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಸ್ಥಳವನ್ನು ವಿನಂತಿಸಿಲ್ಲ"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"ಸ್ಥಳ ಸೇವೆಗಳು"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ಹೆಚ್ಚು ಬ್ಯಾಟರಿಯ ಬಳಕೆ"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ಕಡಿಮೆ ಬ್ಯಾಟರಿಯ ಬಳಕೆ"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"ಸ್ಥಳ ಮೋಡ್"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"ಸ್ಥಳವನ್ನು ನಿರ್ಧರಿಸಲು GPS, ವೈ-ಫೈ, ಬ್ಲೂಟೂತ್ ಅಥವಾ ಮತ್ತು ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ಗಳನ್ನು ಬಳಸಿ"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"ಸ್ಥಳವನ್ನು ನಿರ್ಧರಿಸಲು ವೈ-ಫೈ, ಬ್ಲೂಟೂತ್ ಅಥವಾ ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ಗಳನ್ನು ಬಳಸಿ"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ಸ್ಥಳವನ್ನು ನಿರ್ಧರಿಸಲು, GPS ಹಾಗೂ ಸಾಧನದ ಸೆನ್ಸರ್ಗಳನ್ನು ಬಳಸಿ"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ಸ್ಕ್ಯಾನ್ ಮಾಡುವಿಕೆ"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"ವೈ-ಫೈ ಸ್ಕ್ಯಾನಿಂಗ್"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ವೈ-ಫೈ ನೆಟ್ವರ್ಕ್ಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು ಸಿಸ್ಟಂ ಸೇವೆಗಳು ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಅನುಮತಿಸುವುದರ ಮೂಲಕ ಸ್ಥಳ ಸುಧಾರಣೆ ಮಾಡಿ."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"ಸ್ಥಳ ಮೂಲಗಳು"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ಟ್ಯಾಬ್ಲೆಟ್ ಕುರಿತು"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ಫೋನ್ ಕುರಿತು"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ಸಾಧನದ ಕುರಿತು"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ಅನುಸರಿಸುವ ಸಾಧನದ ಕುರಿತು"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"ಕಾನೂನು ಮಾಹಿತಿ, ಸ್ಥಿತಿ, ಸಾಫ್ಟ್ವೇರ್ ಆವೃತ್ತಿಯನ್ನು ವೀಕ್ಷಿಸಿ"</string>
<string name="legal_information" msgid="5769301644270604095">"ಕಾನೂನು ಮಾಹಿತಿ"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"ಎಲ್ಲಾ <xliff:g id="COUNT">%1$d</xliff:g> ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ವೀಕ್ಷಿಸಿ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಹಾಗೂ ವೈಯಕ್ತಿಕ ಡೇಟಾ, ಅಪರಿಚಿತ ಅಪ್ಲಿಕೇಶನ್ಗಳ ದಾಳಿಗೆ ತುತ್ತಾಗುವ ಸಾಧ್ಯತೆ ಹೆಚ್ಚಾಗಿದೆ. ಈ ಮೂಲದ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಸ್ಥಾಪಿಸುವ ಮೂಲಕ, ನಿಮ್ಮ ಫೋನ್ಗೆ ಯಾವುದೇ ಹಾನಿ ಉಂಟಾದರೆ ಅಥವಾ ಅವುಗಳ ಬಳಕೆಯಿಂದ ಡೇಟಾ ನಷ್ಟವಾದರೆ, ಅದಕ್ಕೆ ನೀವೇ ಜವಾಬ್ದಾರರು ಎನ್ನುವುದನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೀರಿ."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"ನಿಮ್ಮ ಫೋನ್ ಹಾಗೂ ವೈಯಕ್ತಿಕ ಡೇಟಾ, ಅಪರಿಚಿತ ಅಪ್ಲಿಕೇಶನ್ಗಳ ದಾಳಿಗೆ ತುತ್ತಾಗುವ ಸಾಧ್ಯತೆ ಹೆಚ್ಚಾಗಿದೆ. ಈ ಮೂಲದ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಸ್ಥಾಪಿಸುವ ಮೂಲಕ, ನಿಮ್ಮ ಫೋನ್ಗೆ ಯಾವುದೇ ಹಾನಿ ಉಂಟಾದರೆ ಅಥವಾ ಅವುಗಳ ಬಳಕೆಯಿಂದ ಡೇಟಾ ನಷ್ಟವಾದರೆ, ಅದಕ್ಕೆ ನೀವೇ ಜವಾಬ್ದಾರರು ಎನ್ನುವುದನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೀರಿ."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"ನಿಮ್ಮ ಸಾಧನ ಹಾಗೂ ವೈಯಕ್ತಿಕ ಡೇಟಾ, ಅಪರಿಚಿತ ಅಪ್ಲಿಕೇಶನ್ಗಳ ದಾಳಿಗೆ ತುತ್ತಾಗುವ ಸಾಧ್ಯತೆ ಹೆಚ್ಚಾಗಿದೆ. ಈ ಮೂಲದ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಇನ್ಸ್ಟಾಲ್ ಮಾಡುವ ಮೂಲಕ, ನಿಮ್ಮ ಫೋನ್ಗೆ ಯಾವುದೇ ಹಾನಿ ಉಂಟಾದರೆ ಅಥವಾ ಅವುಗಳ ಬಳಕೆಯಿಂದ ಡೇಟಾ ನಷ್ಟವಾದರೆ, ಅದಕ್ಕೆ ನೀವೇ ಜವಾಬ್ದಾರರು ಎನ್ನುವುದನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೀರಿ."</string>
<string name="advanced_settings" msgid="1777249286757067969">"ಸುಧಾರಿತ ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"ಇನ್ನಷ್ಟು ಸೆಟ್ಟಿಂಗ್ಗಳ ಆಯ್ಕೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸು"</string>
<string name="application_info_label" msgid="5736524913065714880">"ಅಪ್ಲಿಕೇಶನ್ ಮಾಹಿತಿ"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರಬಹುದು"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"ಪಾಯಿಂಟರ್ ನಿಂತ ಬಳಿಕ ಕ್ಲಿಕ್"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ಕ್ಲಿಕ್ ಮಾಡುವ ಮೊದಲು ವಿಳಂಬ"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"ಸೇವೆಯನ್ನು ಬಳಸಿ"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"ಬಣ್ಣ ತಿದ್ದುಪಡಿಯನ್ನು ಬಳಸಿ"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"ಶೀರ್ಷಿಕೆಗಳನ್ನು ಬಳಸಿ"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ಆನ್"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ಆಫ್"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"ತ್ವರಿತ ಸೆಟ್ಟಿಂಗ್ಗಳಲ್ಲಿ ತೋರಿಸು"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ಉಳಿದಿದೆ"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"ಚಾರ್ಜ್ ಮಾಡಲು <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"ಹಿನ್ನೆಲೆ ಚಟುವಟಿಕೆ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ಹಿನ್ನೆಲೆಯಲ್ಲಿ ರನ್ ಆಗಲು ಅಪ್ಲಿಕೇಶನ್ಗೆ ಅನುಮತಿ ನೀಡಿ"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ಬಳಕೆಯಲ್ಲಿಲ್ಲದಿದ್ದಾಗ, ಅಪ್ಲಿಕೇಶನ್ ಹಿನ್ನೆಲೆಯಲ್ಲಿ ರನ್ ಆಗಬಹುದು"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ಬಳಕೆಯಲ್ಲಿಲ್ಲದಿದ್ದಾಗ, ಅಪ್ಲಿಕೇಶನ್ನ ಹಿನ್ನೆಲೆ ಚಟುವಟಿಕೆ ಸೀಮಿತವಾಗಿರುತ್ತದೆ"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ಅಪ್ಲಿಕೇಶನ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"ಕಡಿಮೆ ಬ್ಯಾಟರಿ ಸಾಮರ್ಥ್ಯ"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ಬ್ಯಾಟರಿ ಉತ್ತಮ ಬ್ಯಾಟರಿ ಬಾಳಿಕೆ ಒದಗಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ಸ್ಮಾರ್ಟ್ ಬ್ಯಾಟರಿ ನಿರ್ವಾಹಕವನ್ನು ಆನ್ ಮಾಡಿ"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ಬ್ಯಾಟರಿ ಬಳಕೆಯನ್ನು ಅಪ್ಟಿಮೈಸ್ ಮಾಡಲು ಆನ್ ಮಾಡಿ"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"ಕಡಿಮೆ ಬ್ಯಾಟರಿ ಮೋಡ್ ಅನ್ನು ಆನ್ ಮಾಡಿ"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ನಿಮ್ಮ ಬ್ಯಾಟರಿ ಬಾಳಿಕೆಯನ್ನು ವಿಸ್ತರಿಸಿ"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ಕಡಿಮೆ ಬ್ಯಾಟರಿ ಮೋಡ್ ಆನ್ ಆಗಿದೆ"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳು ಸೀಮಿತವಾಗಿವೆ"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ಫೋನ್ ಅನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗಿದೆ"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗಿದೆ"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ಸಾಧನವನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗಿದೆ"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"ಮಾಧ್ಯಮಸರ್ವರ್"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ಅಪ್ಲಿಕೇಶನ್ ಆಪ್ಟಿಮೈಸೇಷನ್"</string>
<string name="battery_saver" msgid="8172485772238572153">"ಬ್ಯಾಟರಿ ಸೇವರ್"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ಬ್ಯಾಟರಿ ಸೇವರ್ ಬಳಸಿ"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆನ್ ಆಗುವಿಕೆ"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ಎಂದಿಗೂ ಬೇಡ"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"ಬ್ಯಾಟರಿಯಲ್ಲಿ <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"ಸಿಂಕ್ ಈಗ ಕೊಂಚ ಸಮಸ್ಯೆ ಎದುರಿಸುತ್ತಿದೆ. ಶೀಘ್ರದಲ್ಲಿಯೇ ಅದು ಯಥಾಸ್ಥಿತಿಗೆ ಬರಲಿದೆ."</string>
<string name="add_account_label" msgid="7811707265834013767">"ಖಾತೆ ಸೇರಿಸಿ"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಇನ್ನೂ ಲಭ್ಯವಿಲ್ಲ"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"ಕೆಲಸದ ಮೋಡ್"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಹಿನ್ನೆಲೆ ಸಿಂಕ್ ಮತ್ತು ಇತರ ಸಂಬಂಧಿತ ವೈಶಿಷ್ಟ್ಯಗಳು ಸೇರಿದಂತೆ ನಿಮ್ಮ ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಅನುಮತಿಸಿ"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"ಉದ್ಯೋಗ ಪ್ರೊಫೈಲ್"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"ನಿಮ್ಮ ಸಂಸ್ಥೆಯ ಮೂಲಕ ನಿರ್ವಹಿಸಲಾಗಿದೆ"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ಅಪ್ಲಿಕೇಶನ್ಗಳು ಮತ್ತು ಅಧಿಸೂಚನೆಗಳು ಆಫ್ ಆಗಿವೆ"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"ಉದ್ಯೋಗ ಪ್ರೊಫೈಲ್ ತೆಗೆದುಹಾಕಿ"</string>
<string name="background_data" msgid="5779592891375473817">"ಹಿನ್ನೆಲೆ ಡೇಟಾ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ಡೇಟಾವನ್ನು ಅಪ್ಲಿಕೇಶನ್ಗಳು ಸಿಂಕ್ ಮಾಡಬಹುದು, ಕಳುಹಿಸಬಹುದು ಮತ್ತು ಸ್ವೀಕರಿಸಬಹುದು."</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕುವುದೇ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ಈ ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕುವುದರಿಂದ ಟ್ಯಾಬ್ಲೆಟ್ನಲ್ಲಿರುವ ಅದರ ಎಲ್ಲ ಸಂದೇಶಗಳು, ಸಂಪರ್ಕಗಳು ಮತ್ತು ಇತರೆ ಡೇಟಾವನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ಈ ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕುವುದರಿಂದ ಫೋನ್ನಲ್ಲಿರುವ ಅದರ ಸಂದೇಶಗಳು, ಸಂಪರ್ಕಗಳು, ಮತ್ತು ಇತರ ಡೇಟಾವನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ಈ ಖಾತೆಯನ್ನು ತೆಗೆದುಹಾಕುವುದರಿಂದ ಸಾಧನದಲ್ಲಿರುವ ಅದರ ಎಲ್ಲ ಸಂದೇಶಗಳು, ಸಂಪರ್ಕಗಳು ಮತ್ತು ಇತರೆ ಡೇಟಾವನ್ನು ಅಳಿಸಲಾಗುತ್ತದೆ!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ಈ ಬದಲಾವಣೆಗೆ ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಅನುಮತಿಸುವುದಿಲ್ಲ"</string>
<string name="provider_label" msgid="7724593781904508866">"ಚಂದಾದಾರಿಕೆಗಳನ್ನು ಒತ್ತಿ"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ಪರಿಶೀಲಿಸಿ</item>
<item quantity="other">ಪ್ರಮಾಣಪತ್ರಗಳನ್ನು ಪರಿಶೀಲಿಸಿ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ಬಳಕೆದಾರರು"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"ಬಹು ಬಳಕೆದಾರರು"</string>
<string name="user_list_title" msgid="7937158411137563543">"ಬಳಕೆದಾರರು & ಪ್ರೊಫೈಲ್ಗಳು"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ಬಳಕೆದಾರ ಅಥವಾ ಪ್ರೊಫೈಲ್ ಸೇರಿಸಿ"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ಬಳಕೆದಾರರನ್ನು ಸೇರಿಸಿ"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ಬ್ಲೂಟೂತ್, ಬಿತ್ತರಿಸುವಿಕೆ"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ಆಪ್ಗಳು ಮತ್ತು ಅಧಿಸೂಚನೆಗಳು"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ಅನುಮತಿಗಳು, ಡಿಫಾಲ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ಬಳಕೆದಾರರು ಮತ್ತು ಖಾತೆಗಳು"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"ಖಾತೆಗಳು"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ಡಿಫಾಲ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ಭಾಷೆಗಳು, ಸಮಯ, ಬ್ಯಾಕ್ಅಪ್, ಅಪ್ಡೇಟ್ಗಳು"</string>
<string name="search_results_title" msgid="1796252422574886932">"ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ತೊಂದರೆ ಮಾಡಬೇಡ, ತಡೆ, ತೊಂದರೆ, ವಿರಾಮ"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"ಸಮೀಪದ ಸಾಧನ, ಸ್ಥಳ, ಇತಿಹಾಸ, ವರದಿ ಮಾಡುವಿಕೆ"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ನಿಖರತೆ"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"ಖಾತೆ"</string>
<string name="keywords_users" msgid="3434190133131387942">"ನಿರ್ಬಂಧ, ನಿರ್ಬಂಧಿಸು, ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ಪಠ್ಯ ತಿದ್ದುಪಡಿ, ಸರಿಪಡಿಸು, ಶಬ್ದ, ವೈಬ್ರೇಟ್, ಸ್ವಯಂ, ಭಾಷೆ, ಗೆಸ್ಚರ್, ಸಲಹೆ ನೀಡಿ, ಸಲಹೆ, ಥೀಮ್, ಆಕ್ಷೇಪಾರ್ಹ, ಪದ, ಪ್ರಕಾರ, ಎಮೊಜಿ, ಅಂತರರಾಷ್ಟ್ರೀಯ"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"ನೆಟ್ವರ್ಕ್, ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ಸ್ಥಿತಿ, ಸೇವಾ ಸ್ಥಿತಿ, ಸಿಗ್ನಲ್ ಸಾಮರ್ಥ್ಯ, ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ ವಿಧ, ರೋಮಿಂಗ್, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"ಕ್ರಮ ಸಂಖ್ಯೆ, ಹಾರ್ಡ್ವೇರ್ ಆವೃತ್ತಿ"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android ಭದ್ರತೆ ಪ್ಯಾಚ್ ಮಟ್ಟ, ಬೇಸ್ಬ್ಯಾಂಡ್ ಆವೃತ್ತಿ, ಕೆರ್ನಲ್ ಆವೃತ್ತಿ"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ವೈ-ಫೈ NFC ಟ್ಯಾಗ್ ಹೊಂದಿಸಿ"</string>
<string name="write_tag" msgid="8571858602896222537">"ಬರೆಯಿರಿ"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ಬರೆಯಲು ಟ್ಯಾಗ್ ಅನ್ನು ಟ್ಯಾಪ್ ಮಾಡಿ..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> ನಿಯಮಗಳು</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಅನ್ನು ಆನ್ ಮಾಡಿ"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"ವರ್ತನೆ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ಧ್ವನಿ, ವೈಬ್ರೇಷನ್ಗೆ ಅನುಮತಿಸಿ"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ಧ್ವನಿ ಇಲ್ಲ"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆನ್ ಮಾಡಿ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ಸ್ವಯಂಚಾಲಿತ ನಿಯಮಗಳು"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ಸ್ವಯಂಚಾಲಿತ ನಿಯಮ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ನಿಯಮ ಹೊಂದಿಸಿ"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ಕೆಲವು ಸಲ ಧ್ವನಿ-ವೈಬ್ರೇಶನ್ ಸೀಮಿತ"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"ಕೆಲವು ಸಮಯ ಫೋನ್ ನಿಶ್ಯಬ್ಧವಾಗಿಸಿ"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ನಿಯಮ ಹೊಂದಿಸಿ"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"ನಿಯಮವನ್ನು ಬಳಸಿ"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ಪ್ರಾಶಸ್ತ್ಯ ಮಾತ್ರ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ಅಲಾರಮ್ಗಳು ಮಾತ್ರ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ಸಂಪೂರ್ಣ ನಿಶ್ಯಬ್ಧ"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ದೃಶ್ಯ ಅಡಚಣೆಗಳನ್ನು ನಿರ್ಬಂಧಿಸಿ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ದೃಶ್ಯ ಸಂಕೇತಗಳನ್ನು ಅನುಮತಿಸಿ"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ಸೇರಿಸಿ"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ಆನ್ ಮಾಡಿ"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ಇದೀಗ ಆನ್ ಮಾಡಿ"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ಈಗ ಆಫ್ ಮಾಡಿ"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ <xliff:g id="FORMATTED_TIME">%s</xliff:g> ವರೆಗೆ ಆನ್ ಆಗಿದೆ"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"ನೀವು ಅದನ್ನು ಆಫ್ ಮಾಡುವವರೆಗೆ ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಹಾಗೆಯೇ ಇರುತ್ತದೆ"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ (<xliff:g id="RULE_NAME">%s</xliff:g>) ನಿಯಮದ ಮೂಲಕ ಆನ್ ಮಾಡಲಾಗಿದೆ"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ಅಡಚಣೆ ಮಾಡಬೇಡಿ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಅಪ್ಲಿಕೇಶನ್ (<xliff:g id="APP_NAME">%s</xliff:g>) ಮೂಲಕ ಆನ್ ಮಾಡಲಾಗಿದೆ"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ಆದ್ಯತೆ ಮಾತ್ರ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಧ್ವನಿಗಳು"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ವೈಯಕ್ತಿಕ ಪ್ರೊಫೈಲ್ ಧ್ವನಿಗಳನ್ನು ಬಳಸಿ"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"ಕೆಲಸ ಮತ್ತು ವೈಯಕ್ತಿಕ ಪ್ರೊಫೈಲ್ಗಳಿಗೆ ಧ್ವನಿಗಳು ಒಂದೇ ಆಗಿವೆ"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"ರಿಂಗ್ಟೋನ್ಗಳು"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ಇತರ ಧ್ವನಿ ಮತ್ತು ವೈಬ್ರೇಷನ್ ಆದ್ಯತೆಗಳು"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"ಅಧಿಸೂಚನೆಗಳು"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"ಇತ್ತೀಚೆಗೆ ಕಳುಹಿಸಿರುವುದು"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"ಸುಧಾರಿತ"</string>
<string name="profile_section_header" msgid="2320848161066912001">"ಕೆಲಸದ ಅಧಿಸೂಚನೆಗಳು"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"ಅಧಿಸೂಚನೆ ಡಾಟ್ಗಳಿಗೆ ಅನುಮತಿಸಿ"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ನಿಮ್ಮ ಸಾಧನವನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಲು ನಿಮ್ಮ ಫಿಂಗರ್ ಪ್ರಿಂಟ್ ಬಳಸುವುದರ ಜೊತೆಗೆ, ಸಾಧನ ಪ್ರಾರಂಭವಾಗಲು ನಿಮ್ಮ ಪಾಸ್ವರ್ಡ್ ನಮೂದಿಸುವುದನ್ನು ಅವಶ್ಯಕಗೊಳಿಸುವ ಮೂಲಕ, ಈ ಸಾಧನಕ್ಕೆ ನೀವು ಹೆಚ್ಚಿನ ಸುರಕ್ಷೆ ಒದಗಿಸಬಹುದು. ಸಾಧನ ಪ್ರಾರಂಭಗೊಳ್ಳುವವರೆಗೆ ನೀವು ಅಲಾರ್ಮ್ಗಳೂ ಸೇರಿದಂತೆ ಯಾವುದೇ ಕರೆಗಳು, ಸಂದೇಶಗಳು, ಅಥವಾ ಅಧಿಸೂಚನೆಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. \n\nಕಳೆದುಹೋಗಿರುವ ಅಥವಾ ಕಳವಾಗಿರುವ ಸಾಧನಗಳಲ್ಲಿರುವ ಡೇಟಾವನ್ನು ಸಂರಕ್ಷಿಸಲು ಇದು ನೆರವಾಗುತ್ತದೆ. ನಿಮ್ಮ ಸಾಧನವನ್ನು ಪ್ರಾರಂಭಿಸಲು ಪಾಸ್ವರ್ಡ್ ನಮೂದಿಸುವುದನ್ನು ಅವಶ್ಯಕಗೊಳಿಸುವುದೇ?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ಹೌದು"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"ಇಲ್ಲ"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ಹೌದು"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ಇಲ್ಲ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN ಅಗತ್ಯವಿದೆಯೇ?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ಪ್ಯಾಟರ್ನ್ ಅಗತ್ಯವಿದೆಯೇ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"ಪಾಸ್ವರ್ಡ್ ಅಗತ್ಯವಿದೆಯೇ?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"ನಿರಾಕರಿಸಿ"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ಈ ಸಾಧನವನ್ನು ಚಾರ್ಜ್ ಮಾಡಿ"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ಈ ಸಾಧನವನ್ನು ಚಾರ್ಜ್ ಮಾಡಿ"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"ಪವರ್ ಪೂರೈಕೆ"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"ಸಂಪರ್ಕಪಡಿಸಿದ ಸಾಧನವನ್ನು ಚಾರ್ಜ್ ಮಾಡಿ. USB ಚಾರ್ಜಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುವ ಸಾಧನಗಳೊಂದಿಗೆ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ಫೈಲ್ಗಳನ್ನು ವರ್ಗಾಯಿಸಿ"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ಫೈಲ್ಗಳನ್ನು ಮತ್ತೊಂದು ಸಾಧನಕ್ಕೆ ವರ್ಗಾಯಿಸಿ"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ಫೋಟೋಗಳನ್ನು ವರ್ಗಾಯಿಸಿ (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"ಒಂದು ವೇಳೆ MTP ಬೆಂಬಲಿಸದೇ ಹೋದಲ್ಲಿ ಫೋಟೋಗಳೂ ಅಥವಾ ಫೈಲ್ಗಳನ್ನು ವರ್ಗಾಯಿಸಿ (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"ಸಾಧನವನ್ನು MIDI ಎಂದು ಬಳಸಿ"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ಈ ಸಾಧನವನ್ನು MIDI ಎಂದು ಬಳಸಿ"</string>
- <string name="usb_use" msgid="3256040963685055320">"ಇದಕ್ಕೆ USB ಬಳಸಿ"</string>
+ <string name="usb_use" msgid="3372728031108932425">"ಇದಕ್ಕಾಗಿ USB ಬಳಸಿ"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ಈ ಸಾಧನವನ್ನು ಚಾರ್ಜ್ ಮಾಡುವುದು"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"ಪವರ್ ವಿತರಣೆ"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ಫೈಲ್ಗಳನ್ನು ವರ್ಗಾಯಿಸುವುದು"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ಫೋಟೋಗಳನ್ನು ವರ್ಗಾಯಿಸುವುದು (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"MIDI ರೀತಿಯ ಸಾಧನಗಳನ್ನು ಬಳಸುವುದು"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"ಎಸ್ಎಂಎಸ್ ಪ್ರತಿಬಿಂಬಿಸುವಿಕೆ"</string>
<string name="background_check_pref" msgid="7550258400138010979">"ಹಿನ್ನೆಲೆ ಪರಿಶೀಲಿಸಿ"</string>
<string name="background_check_title" msgid="4534254315824525593">"ಪೂರ್ಣ ಹಿನ್ನೆಲೆ ಪ್ರವೇಶ"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"ವಾಲ್ಪೇಪರ್, ಸ್ಲೀಪ್, ಫಾಂಟ್ ಗಾತ್ರ"</string>
<string name="display_summary_example" msgid="9102633726811090523">"ನಿಷ್ಕ್ರಿಯತೆಯ 10 ನಿಮಿಷಗಳ ನಂತರ ನಿದ್ರಿಸು"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> ಯಲ್ಲಿ ಸರಾಸರಿ <xliff:g id="USED_MEMORY">%1$s</xliff:g> ಮೆಮೊರಿ ಬಳಸಲಾಗಿದೆ"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"ಪ್ರಸ್ತುತ ಬಳಕೆದಾರರು: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> ಎಂಬುದಾಗಿ ಸೈನ್ ಇನ್ ಮಾಡಲಾಗಿದೆ"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ಡಿಫಾಲ್ಟ್ ಆಗಿದೆ"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ಆನ್ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ಆನ್"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ಆಫ್"</string>
<string name="backup_disabled" msgid="485189128759595412">"ಬ್ಯಾಕ್ಅಪ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> ಗೆ ಅಪ್ಡೇಟ್ ಮಾಡಲಾಗಿದೆ"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"ಚಟುವಟಿಕೆಯನ್ನು ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"ವಾಲ್ಯೂಮ್ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"ಕರೆ ಮಾಡುವುದಕ್ಕೆ ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"ಎಸ್ಎಂಎಸ್ಗೆ ಅನುಮತಿಯಿಲ್ಲ"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ಕ್ಯಾಮರಾಗೆ ಅನುಮತಿಯಿಲ್ಲ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ಸ್ಕ್ರೀನ್ಶಾಟ್ಗೆ ಅನುಮತಿಯಿಲ್ಲ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ಬ್ಯಾಕ್ಅಪ್ಗಳನ್ನು ಆಫ್ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ಈ ಕ್ರಿಯೆಯನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ. ಇನ್ನಷ್ಟು ತಿಳಿಯಲು, ನಿಮ್ಮ ಸಂಸ್ಥೆಯ ನಿರ್ವಾಹಕರನ್ನು ಸಂಪರ್ಕಿಸಿ."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"ಇನ್ನಷ್ಟು ವಿವರಗಳು"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ಸೆಟ್ಟಿಂಗ್ಗಳು, ಅನುಮತಿಗಳು, ಕಾರ್ಪೊರೇಟ್ ಪ್ರವೇಶ, ನೆಟ್ವರ್ಕ್ ಚಟುವಟಿಕೆ ಮತ್ತು ಸಾಧನದ ಸ್ಥಳ ಮಾಹಿತಿಯನ್ನು ಒಳಗೊಂಡಂತೆ ನಿಮ್ಮ ಕೆಲಸದ ಪ್ರೊಫೈಲ್ಗೆ ಸಂಬಂಧಿಸಿದ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಮತ್ತು ಡೇಟಾವನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡಬಹುದು ಮತ್ತು ನಿರ್ವಹಿಸಬಹುದು."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"ಪೋರ್ಟಬಲ್ ವೈ-ಫೈ ಹಾಟ್ಸ್ಪಾಟ್ <xliff:g id="ID_1">%1$s</xliff:g> ಸಕ್ರಿಯವಾಗಿದೆ, ಈ ಸಾಧನಕ್ಕೆ ವೈ-ಫೈ ಆಫ್ ಮಾಡಲಾಗಿದೆ."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ಎರ್ಪ್ಲೇನ್ ಮೋಡ್ ಆನ್ ಆಗಿದೆ"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"ವೈ-ಫೈ, ಬ್ಲೂಟೂತ್ ಮತ್ತು ಮೊಬೈಲ್ ನೆಟ್ವರ್ಕ್ಗಳನ್ನು ಆಫ್ ಮಾಡಲಾಗಿದೆ. ನೀವು ಫೋನ್ ಕರೆಗಳನ್ನು ಮಾಡಲು ಅಥವಾ ಇಂಟರ್ನೆಟ್ಗೆ ಸಂಪರ್ಕಪಡಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"ಅಡಚಣೆ ಮಾಡಬೇಡ ಆನ್ ಆಗಿದೆ (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ಬ್ಯಾಟರಿ ರಕ್ಷಕ ಆನ್ ಆಗಿದೆ"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಕಡಿಮೆಗೊಳಿಸಲಾಗಿದೆ. ಸ್ಥಳದ ಸೇವೆಗಳು ಮತ್ತು ಹಿನ್ನೆಲೆಯ ಡೇಟಾವನ್ನು ಆಫ್ ಮಾಡಲಾಗಿದೆ."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"ಮೊಬೈಲ್ ಡೇಟಾ ಆಫ್ ಆಗಿದೆ"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಆಫ್ ಆಗಿದೆ"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"ನಿಮ್ಮ ಕೆಲಸದ ಪ್ರೊಫೈಲ್ಗೆ ಸಂಬಂಧಿಸಿದ ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಹಿನ್ನೆಲೆ ಸಿಂಕ್ ಮತ್ತು ಇತರ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಆಫ್ ಮಾಡಲಾಗಿದೆ."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"ನೈಟ್ ಲೈಟ್ ವೇಳಾಪಟ್ಟಿಯನ್ನು ಹೊಂದಿಸಿ"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ನಿದ್ರೆಗಾಗಿ, ಪರದೆಗೆ ಆಂಬರ್ ಟಿಂಟ್"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ಪ್ರತಿ ರಾತ್ರಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಪರದೆಯನ್ನು ಟಿಂಟ್ ಮಾಡಿ"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"ನೈಟ್ ಲೈಟ್ ಆನ್ ಆಗಿದೆ"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"ಪರದೆಯನ್ನು ಆಂಬರ್ ಬಣ್ಣದಿಂದ ಟಿಂಟ್ ಮಾಡಲಾಗಿದೆ. ಇದು ನಿಮಗೆ ನಿದ್ರಿಸಲು ಸಹಾಯ ಮಾಡಬಹುದು."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ನಿಮಗೆ ನೀಡಲಾದ ಸಲಹೆ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"ಸಲಹೆಗಳು"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ಹೆಚ್ಚು"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ಯಾವುದೂ ಇಲ್ಲ"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ದರ್ಜೆ ನೀಡುವಿಕೆ ಆಬ್ಜೆಕ್ಟ್ ಕಾಣೆಯಾಗಿದೆ."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ದರ್ಜೆ ನೀಡುವಿಕೆ ಆಬ್ಜೆಕ್ಟ್ ಈ ಕೀ ಒಳಗೊಂಡಿಲ್ಲ."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"ಕಟ್ಔಟ್ನೊಂದಿಗೆ ಪ್ರದರ್ಶನ ಅನುಕರಿಸಿ"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ಯಾವುದೂ ಅಲ್ಲ"</string>
<string name="special_access" msgid="3458780842491881155">"ವಿಶೇಷ ಅಪ್ಲಿಕೇಶನ್ ಪ್ರವೇಶ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಅನಿರ್ಬಂಧಿತ ಡೇಟಾ ಬಳಸಬಹುದು</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"ಹಲವು ಸಾಧನಗಳಿಗೆ ಸಂಪರ್ಕಿಸಲಾಗಿದೆ"</string>
<string name="demo_mode" msgid="2798762752209330277">"ಸಿಸ್ಟಂ UI ಡೆಮೋ ಮೋಡ್"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ಡೆವಲಪರ್ ಟೈಲ್ಸ್ನ ತ್ವರಿತ ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"ವಿಂಡೋ ಟ್ರೇಸ್"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ಮೇಲ್ಮೈ ಟ್ರೇಸ್ ಮಾಡಿ"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"ಕೆಲಸದ ಪ್ರೊಫೈಲ್ ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"ಸಂಪರ್ಕ ಹುಡುಕಿ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"ಕರೆದಾತರು ಮತ್ತು ಸಂಪರ್ಕಗಳನ್ನು ಗುರುತಿಸಲು ನಿಮ್ಮ ಸಂಸ್ಥೆಯ ಮೂಲಕ ಸಂಪರ್ಕ ಹುಡುಕಾಟಗಳಿಗೆ ಅನುಮತಿಸಿ"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"ಸಂಗ್ರಹಣೆ ಸ್ಥಳಾವಕಾಶ ಮುಕ್ತಗೊಳಿಸುವಲ್ಲಿ ಸಹಾಯ ಮಾಡಲು, ಸಂಗ್ರಹಣೆ ನಿರ್ವಾಹಕವು ಬ್ಯಾಕಪ್ ಮಾಡಲಾದ ಫೋಟೋಗಳು ಮತ್ತು ವೀಡಿಯೊಗಳನ್ನು ನಿಮ್ಮ ಸಾಧನದಿಂದ ತೆಗೆದುಹಾಕುತ್ತದೆ."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ಫೋಟೋಗಳು ಮತ್ತು ವೀಡಿಯೊಗಳನ್ನು ತೆಗೆದುಹಾಕಿ"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"ಸಂಗ್ರಹಣೆ ನಿರ್ವಾಹಕ"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"ಸಂಗ್ರಹಣೆ ನಿರ್ವಾಹಕವನ್ನು ಬಳಸಿ"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"ಸ್ವಯಂಚಾಲಿತ"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"ಹಸ್ತಚಾಲಿತ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"ಈಗ ಸ್ಥಳಾವಕಾಶವನ್ನು ಮುಕ್ತಗೊಳಿಸಿ"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ಕ್ಯಾಮರಾಗೆ ಹೋಗಿ"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ಕ್ಯಾಮರಾವನ್ನು ತ್ವರಿತವಾಗಿ ತೆರೆಯಲು, ಎರಡು ಬಾರಿ ಪವರ್ ಬಟನ್ ಒತ್ತಿ. ಯಾವುದೇ ಪರದೆಯಿಂದ ಕೆಲಸ ಮಾಡುತ್ತದೆ."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ತ್ವರಿತವಾಗಿ ಕ್ಯಾಮರಾ ತೆರೆಯಿರಿ"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ಕ್ಯಾಮರಾ ತೆರೆಯಲು ಪವರ್ ಬಟನ್ ಅನ್ನು ಎರಡು ಬಾರಿ ಒತ್ತಿ"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ಫ್ಲಿಪ್ ಕ್ಯಾಮರಾ"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"ವೇಗವಾಗಿ ಸೆಲ್ಫೀಗಳನ್ನು ತೆಗೆಯಿರಿ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"ಸೆಲ್ಫೀ ಮೋಡ್ಗಾಗಿ ಫೋನ್ ಅನ್ನು ಎರಡು ಬಾರಿ ತಿರುಗಿಸಿ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"ಸೆಲ್ಫೀ ಮೋಡ್ಗಾಗಿ ಟ್ಯಾಬ್ಲೆಟ್ ಅನ್ನು ಎರಡು ಬಾರಿ ತಿರುಗಿಸಿ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"ಸೆಲ್ಫೀ ಮೋಡ್ಗಾಗಿ ಸಾಧನವನ್ನು ಎರಡು ಬಾರಿ ತಿರುಗಿಸಿ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ಫೋನ್ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ಟ್ಯಾಬ್ಲೆಟ್ ಪರಿಶೀಲಿಸಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ಸಾಧನವನ್ನು ಪರಿಶೀಲಿಸಲು ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"ಸಮಯ, ಅಧಿಸೂಚನೆ ಐಕಾನ್ಗಳು ಮತ್ತು ಇತರೆ ಮಾಹಿತಿಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಪರದೆಯ ಮೇಲೆ ಡಬಲ್ ಟ್ಯಾಪ್ ಮಾಡಿ."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ಪರದೆ ಆಫ್ ಆಗಿರುವಾಗ ಅಧಿಸೂಚನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಿ"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ಫೋನ್ ಪರಿಶೀಲಿಸಲು ಕೈಗೆತ್ತಿಕೊಳ್ಳಿ"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ಟ್ಯಾಬ್ಲೆಟ್ ಪರಿಶೀಲಿಸಲು ಎತ್ತಿರಿ"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"ಸಾಧನ ಪರಿಶೀಲಿಸಲು ಕೈಗೆತ್ತಿಕೊಳ್ಳಿ"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"ಸಮಯ, ಅಧಿಸೂಚನೆ ಐಕಾನ್ಗಳು ಮತ್ತು ಇತರೆ ಮಾಹಿತಿಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಫೋನ್ ತೆಗೆದುಕೊಳ್ಳಿ."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"ಸಮಯ, ಅಧಿಸೂಚನೆ ಐಕಾನ್ಗಳು ಮತ್ತು ಇತರೆ ಮಾಹಿತಿಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ತೆಗೆದುಕೊಳ್ಳಿ."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"ಸಮಯ, ಅಧಿಸೂಚನೆ ಐಕಾನ್ಗಳು ಮತ್ತು ಇತರ ಮಾಹಿತಿಯನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಸಾಧನವನ್ನು ತೆಗೆದುಕೊಳ್ಳಿ."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ಪರದೆ ಆಫ್ ಆಗಿರುವಾಗ ಅಧಿಸೂಚನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಿ"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"ಅಧಿಸೂಚನೆಗೆ ಬೆರಳಚ್ಚು ಬಳಸಿ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸ್ವೈಪ್ ಮಾ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"ಅಧಿಸೂಚನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲು, ನಿಮ್ಮ ಫೋನ್ ಹಿಂಭಾಗದಲ್ಲಿನ ಬೆರಳಚ್ಚು ಸೆನ್ಸರ್ನಲ್ಲಿ ಕೆಳಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"ನಿಮ್ಮ ಅಧಿಸೂಚನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲು, ನಿಮ್ಮ ಟ್ಯಾಬ್ಲೆಟ್ ಹಿಂಬದಿಯಲ್ಲಿನ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್ನಲ್ಲಿ ಕೆಳಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"ಅಧಿಸೂಚನೆಗಳನ್ನು ಪರಿಶೀಲಿಸಲು, ನಿಮ್ಮ ಸಾಧನದ ಹಿಂಭಾಗದಲ್ಲಿನ ಬೆರಳಚ್ಚು ಸೆನ್ಸರ್ನಲ್ಲಿ ಕೆಳಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"ತ್ವರಿತವಾಗಿ ಅಧಿಸೂಚನೆಗಳನ್ನು ವೀಕ್ಷಿಸಿ"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಸೆನ್ಸರ್ನ ಕೆಳಗೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ಆನ್"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ಆಫ್"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"ಬೂಟ್ಲೋಡರ್ ಅನ್ನು ಈಗಾಗಲೇ ಅನ್ಲಾಕ್ ಮಾಡಲಾಗಿದೆ"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ಈ ಸಾಧನದಲ್ಲಿ ಈ ವೀಡಿಯೊ ಲಭ್ಯವಿಲ್ಲ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"ಫೋರ್ಸ್ ಫುಲ್ GNSS ಅಳತೆಗಳು"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ಯಾವುದೇ ಡ್ಯೂಟಿ ಸೈಕ್ಲಿಂಗ್ ಇಲ್ಲದೆ ಎಲ್ಲಾ GNSS ಕಾನ್ಸ್ಟಲೇಶನ್ಗಳು ಮತ್ತು ಆವರ್ತನೆಗಳನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಿ"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ಯಾವಾಗಲೂ ಕ್ರ್ಯಾಶ್ ಸಂವಾದವನ್ನು ತೋರಿಸಿ"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"ಅಪ್ಲಿಕೇಶನ್ ಕ್ರ್ಯಾಶ್ ಆಗುವಾಗ ಪ್ರತಿ ಬಾರಿ ಸಂವಾದವನ್ನು ತೋರಿಸಿ"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ಡೈರೆಕ್ಟರಿ ಪ್ರವೇಶ"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ಡೈರೆಕ್ಟರಿ ಪ್ರವೇಶ"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"ನನ್ನ ಫೋನ್"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"ನನ್ನ ಟ್ಯಾಬ್ಲೆಟ್"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"ನನ್ನ ಸಾಧನ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"ಖಾತೆ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ಸಾಧನದ ಹೆಸರು"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ಚಾಲನೆ ಮಾಡುವಾಗ ಬ್ಲೂಟೂತ್ ಬಳಸಿ"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ಚಾಲನೆ ಮಾಡುವಾಗ ಬ್ಲೂಟೂತ್ ಅನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆನ್ ಮಾಡಿ"</string>
</resources>
diff --git a/res/values-ky/arrays.xml b/res/values-ky/arrays.xml
index 443b55a..9f26b73 100644
--- a/res/values-ky/arrays.xml
+++ b/res/values-ky/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Баскычты басыңыз"</item>
<item msgid="1624323946324499595">"Туташуучу түзмөктүн PIN\'и"</item>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index b528e1c..6e7a441 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -331,16 +331,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Күндү коюу"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Алфавит боюнча иргөө"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Убакыт алкагы боюнча иргөө"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> күнү башталат."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Жайкы убакыт"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Стандарттык убакыт"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Аймак боюнча убакыт алкагы"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Туруктуу убакыт алкактары"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Күн"</string>
<string name="time_picker_title" msgid="483460752287255019">"Убакыт"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Автокулпу"</string>
@@ -351,6 +346,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Кулпу экрндгы текст"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Виджеттерди жандыруу"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Администратор өчүрүп койгон"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Кулпулоо опциясын көрсөтүү"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Толук кирүү мүмкүнчүлүгүн берген жана манжа изи менен кулпусун ачуу жөндөөсүн күйгүзүү/өчүрүү баскычы көрсөтүлсүн."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Эч бири"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Мисалы, Асандын Android түзмөгү."</string>
@@ -359,8 +356,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Профилдин чоо-жайы"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Каттоо эсептери"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Жайгашкан жер"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Жайгашкан жерди колдонуу"</string>
<string name="account_settings_title" msgid="626177544686329806">"Каттоо эсептери"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Коопсуздук жана жайгашкан жер"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрлөө жана эсептик дайындар"</string>
@@ -472,9 +468,11 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Сырсөздү туура киргиздиңиз, бирок тилекке каршы планшетиңиздеги дайындар бузулуп калган. \n\nПланшетиңизди пайдаланууну улантуу үчүн, аны баштапкы абалга кайтарышыңыз керек. Планшетиңиз баштапкы абалга кайтарылгандан кийин, дайындарды калыбына келтире аласыз жана алардын камдык көчүрмөсү Google каттоо эсебиңизде сакталат."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Сырсөздү туура киргиздиңиз, бирок тилекке каршы телефонуңуздагы дайындар бузулуп калган. \n\nТелефонуңузду пайдаланууну улантуу үчүн, аны баштапкы абалга кайтарышыңыз керек. Телефонуңуз баштапкы абалга кайтарылгандан кийин, дайындарды калыбына келтире аласыз жана алардын камдык көчүрмөсү Google каттоо эсебиңизде сакталат."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Киргизүү ыкмасын которуу"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Экран кулпусун коюу"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Түзмөгүңүздү коргоңуз"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Манжа изин колдонуу"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Коопсздк үчүн экрандн кулпсун коюу"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Планшетиңизди колдонуудан башкаларды бөгөттөңүз"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Түзмөгүңүздү колдонуудан башкаларды бөгөттөңүз"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Телефонуңузду колдонуудан башкаларды бөгөттөңүз"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Кулпуну манжа изи менен ачуу"</string>
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Манжа изиңиз менен кулпусун ачыңыз"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Экранды кулпулоо"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Жумш прф кулпсн тандоо"</string>
@@ -720,8 +718,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Аты"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 ГГц"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 ГГц"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Кирүү"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Мгб"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> бул түзмөктө WiFi\'ды күйгүзгөнү жатат"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> бул түзмөктө WiFi\'ды өчүргөнү жатат"</string>
@@ -739,8 +736,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi‑Fi\'ды жандыруу"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fi\'ды колдонуу"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi тууралоолору"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Зымсыз кошулуу түйүндөрүн орнотуу жана башкаруу"</string>
@@ -835,6 +831,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Сырсөз"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Сырсөздү көрсөтүү"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Wi-Fi жыштыгынын диапазону"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Авто"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 ГГц жыштыгы"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 ГГц жыштыгы"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP жөндөөлөрү"</string>
@@ -940,7 +937,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi чалуу"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi чалууну күйгүзүү"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Мобилдик тармак ордуна Wi-Fi колдонуңуз"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Байланыш аймагын кеңейтүү үчүн Wi-Fi аркылуу чалыңыз"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Чалуунун жеке жөндөөлөрү"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi чалуу режими"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Роуминг жөндөөлөрү"</string>
@@ -1027,8 +1024,8 @@
<string name="account_settings" msgid="6403589284618783461">"Эсептер"</string>
<string name="accessibility_category_work" msgid="4339262969083355720">"Жумуш профилинин каттоо эсептери - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
<string name="accessibility_category_personal" msgid="1263518850905945594">"Жеке профилдин каттоо эсептери"</string>
- <string name="accessibility_work_account_title" msgid="1231830766637939527">"Жумуштагы каттоо эсеби - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
- <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Жеке каттоо эсеби - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
+ <string name="accessibility_work_account_title" msgid="1231830766637939527">"Жумуш аккаунту - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
+ <string name="accessibility_personal_account_title" msgid="2169071663029067826">"Жеке аккаунт - <xliff:g id="MANAGED_BY">%s</xliff:g>"</string>
<string name="search_settings" msgid="1910951467596035063">"Издөө"</string>
<string name="search_settings_summary" msgid="9205656546570654169">"Издөөнүн жөндөөлөрүн жана таржымалын башкаруу"</string>
<string name="search_settings_no_results" msgid="8799027492641230999">"Бир да натыйжа жок"</string>
@@ -1193,6 +1190,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Мобилдик тармак түрү"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Оператор тууралуу"</string>
<string name="status_data_state" msgid="5503181397066522950">"Мобилдик тармак абалы"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Кызматтын абалы"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Сигналдын күчү"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роуминг"</string>
@@ -1379,19 +1377,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Тармактын, колдонмолордун же түзмөктүн жөндөөлөрүн баштапкы абалга келтирсеңиз болот"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi\'ды, мобилдик түзмөктү жана Bluetooth\'ду баштапкы абалга келтирүү"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Ушуну менен тармактын бардык жөндөөлөрү баштапкы абалга келет. Тактап айтканда: \n\n"<li>"Wi‑Fi"</li>\n<li>"Мобилдик Интернет"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Ошондой эле, eSIM-карталар кайра коюлсун"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Телефондогу бардык eSIM-карталар тазалансын. eSIM-карталарыңызды кайра жүктөп алуу үчүн байланыш операторуңузга кайрылышыңыз керек. Муну менен мобилдик кызматыңыз өчүрүлбөйт."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Жөндөөлөрдү баштапкы абалга келтирүү"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Тармак жөндөөлөрүнүн баары баштапкы абалга келтирилсинби? Бул аракетти кайра кайтара албайсыз!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Жөндөөлөрдү баштапкы абалга келтирүү"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Баштапкы абалга келтирилсинби?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Бул колдонуучу тармакты баштапкы абалына келтире албайт"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Тармак жөндөөлөрү баштапкы абалга келди"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM-карталар кайра коюлган жок"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Катадан улам eSIM-карталар кайра коюлган жок."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Бардык дайындарды тазалоо (заводдук абалына келтирүү)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Планшетиңиздин "<b>"ички сактагычындагы"</b>" бардык дайындар өчүрүлөт, ошону менен катар:\n\n"<li>"Google каттоо эсебиңиз"</li>\n<li>"Тутумдун жана колдонмолордун жөндөөлөрү жана дайындары"</li>\n<li>"Жүктөлүп алынган колдонмолор"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Телефонуңуздун "<b>"ички сактагычындагы"</b>" бардык дайындар өчүрүлөт, ошону менен катар:\n\n"<li>"Google каттоо эсебиңиз"</li>\n<li>"Тутумдун жана колдонмолордун жөндөөлөрү жана дайындары"</li>\n<li>"Жүктөлүп алынган колдонмолор"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Ушул түзмөктөгү каттоо эсептер:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Бул түзмөктө башка колдонуучулар бар.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Музыка"</li>\n<li>"Сүрөттөр"</li>\n<li>"Башка колдонуучу дайындары"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM-карта менен иштеген операторлор"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM-карталар"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Ушуну менен байланыш операторуңуздун тарифтик планы жокко чыгарылбайт."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Музыканы, сүрөттөрдү, жана башка колдонуучу берилиштерин өчүрүш үчүн, "<b>"USB сактагычты"</b>" тазалаш керек."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Музыканы, сүрөттөрдү, жана башка колдонуучу берилиштерин өчүрүш үчүн, "<b>"SD-картаны"</b>" тазалаш керек."</string>
@@ -1451,21 +1453,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Интернетке кошулуңуз"</string>
<string name="location_title" msgid="1029961368397484576">"Жайгашкан жерим"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Жумуш профилинин жайгашкн жери"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Режим"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Жогорку тактык"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Тармактын координаттары боюнча"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Түзмөк гана"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Жайгашкан жерди аныктоо өчүк"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Колдонмонун уруксаттары"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Жакында изделген жерлер"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Акыркы мезгилде жайгашууну сураган колдонмолор болгон жок"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Жайгашкан жерди аныктоо кызматы"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Батарейди көп колдонуу"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Батареянын кубаты үнөмдөлүүдө"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Жайгашкан жерди аныктоо"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Жайгашкан жерди аныктоо үчүн GPS, Wi‑Fi, Bluetooth же мобилдик Интернет колдонулат"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Жайгашкан жерди аныктоо үчүн GPS, Wi‑Fi, Bluetooth же мобилдик Интернет колдонулат"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"GPS жана түзмөктүн сенсорлору аркылуу жайгашкан жери аныкталат"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Издөө"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi тармактарын издөө"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Тутум колдонмолору менен кызматтарына Wi-Fi тармактарын такай издөөгө уруксат берүү менен жайгашкан жерди тагыраак аныктоого болот."</string>
@@ -1487,8 +1480,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Жайгаштыруу булактары"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Планшет жөнүндө"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Телефон жөнүндө"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Түзмөк тууралуу"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Эмуляцияланган түзмөк жөнүндө"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Юридикалык маалыматты, абалын, программа версиясын көрүү"</string>
<string name="legal_information" msgid="5769301644270604095">"Юридикалык маалыматтар"</string>
@@ -1596,8 +1588,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"<xliff:g id="COUNT">%1$d</xliff:g> колдонмонун баарын көрүү"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Планшетиңиз жана жеке дайындарыңыз белгисиз колдонмолордон зыян тартып калышы мүмкүн. Бул булактан келген колдонмолорду орнотуу менен, аларды пайдалануудан улам планшетиңизге кандайдыр бир зыян келтирилсе же дайындарыңызды жоготуп алсаңыз, өзүңүз жооптуу болосуз."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Телефонуңуз жана жеке дайындарыңыз белгисиз колдонмолордон зыян тартып калышы мүмкүн. Бул булактан келген колдонмолорду орнотуу менен, аларды пайдалануудан улам телефонуңузга кандайдыр бир зыян келтирилсе же дайындарыңызды жоготуп алсаңыз, өзүңүз жооптуу болосуз."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Түзмөгүңүз жана жеке дайындарыңыз белгисиз колдонмолордон зыян тартып калышы мүмкүн. Бул булактан келген колдонмолорду орнотуу менен, аларды пайдалануудан улам түзмөгүңүзгө кандайдыр бир зыян келтирилсе же дайындарыңызды жоготуп алсаңыз, өзүңүз жооптуу болосуз."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Өркүндөтүлгөн жөндөөлөр"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Көбүрөөк тууралоо опцияларын көрсөтүү"</string>
<string name="application_info_label" msgid="5736524913065714880">"Колдонмо тууралуу"</string>
@@ -1897,12 +1888,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Түзмөктүн иштешине кедергисин тийгизиши мүмкүн"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Көрсөткүч токтогондо басуу"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Баскыч басылганга чейин кармалган убакыт"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Кызматты колдонуу"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Түсүн тууралоону колдонуу"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Коштомо жазууларды колдонуу"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"КҮЙҮК"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ӨЧҮК"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Ылдам тууралоолор абалында көргөзүү"</string>
@@ -2016,7 +2004,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> калды"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> кубаттоо"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Фондогу активдүүлүк"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Чектелген"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Колдонмо фондо аткарылсын"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Колдонмо пайдаланылбаган учурда фондо иштей берет"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Колдонмо пайдаланылбаган учурда фондогу иши чектелет"</string>
@@ -2063,18 +2051,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Колдонмолор туура иштеп жатышат"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Батарея азыр отуруп калат"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Батарея бир аздан кийин отуруп калат"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Акылдуу батареяны үнөмдөгүчтү күйгүзүү"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Батареянын колдонулушун оптималдаштыруу үчүн күйгүзүү"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Батареяны үнөмдөгүч режимин күйгүзүү"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Батареяңыздын кубатынын мөөнөтүн узартыңыз"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Батареяны үнөмдөгүч режими күйүк"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Айрым функциялар чектелген"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Телефон өтө көп колдонулду"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Планшет өтө көп колдонулду"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Түзмөк өтө көп колдонулду"</string>
@@ -2198,8 +2180,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Медиа сервер"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Колдонмону оптималдаштыруу"</string>
<string name="battery_saver" msgid="8172485772238572153">"Батареяны үнөмдөгүч"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Батареяны үнөмдөгүчтү колдонуу"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Автоматтык түрдө күйгүзүү"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Эч качан"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> батарея менен"</string>
@@ -2319,7 +2300,7 @@
<string name="personal_data_section_title" msgid="7815209034443782061">"Жеке дайындар"</string>
<string name="backup_data_title" msgid="1239105919852668016">"Дайындарымдын камдык көчүрмөсү сакталсын"</string>
<string name="backup_data_summary" msgid="708773323451655666">"Колдонмолордун берилиштерин, Wi-Fi сырсөздөрүн жана башка тууралоолорду Google\'дун серверине сактап коюу."</string>
- <string name="backup_configure_account_title" msgid="3790872965773196615">"Көмөкчү каттоо эсеби"</string>
+ <string name="backup_configure_account_title" msgid="3790872965773196615">"Көмөкчү аккаунт"</string>
<string name="include_app_data_title" msgid="2829970132260278394">"Колдонмо дайындарын кошуу"</string>
<string name="auto_restore_title" msgid="5397528966329126506">"Автоматтык түрдө калыбына келтирүү"</string>
<string name="auto_restore_summary" msgid="4235615056371993807">"Колдонмону кайрадан орнотууда, бэкапталган тууралоолорду жана берилиштерди калыбына келтириңиз"</string>
@@ -2391,8 +2372,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Учурда шайкештирүү көйгөйгө дуушар болууда. Ал бир аздан кийин калыбына келет."</string>
<string name="add_account_label" msgid="7811707265834013767">"Каттоо эсебин кошуу"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Жумуш профили азырынча жеткиликтүү эмес"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Иштөө режими"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Жумуш профилин, ошондой эле колдонмолорду, фондо шайкештирүү жана ага байланыштуу функцияларды иштетүү"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Жумуш профили"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Уюмуңуз тарабынан башкарылат"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Колдонмолор менен эскертмелер өчүк"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Жумуш профилин алып салуу"</string>
<string name="background_data" msgid="5779592891375473817">"Фондук дайындар"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Колдонмолордо каалаган убакта синхрондошуу, берилиштерди жөнөтүп, кабыл алуу мүмкүнчүлүгү бар"</string>
@@ -2424,8 +2406,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Эсеп жок кылынсынбы?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Бул эсепти жок кылуу, анын бардык билдирүүлөрүн, байланыштарын жана башка берилиштерин планшеттен өчүрүлүшүнө алып келет!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Бул эсепти жок кылуу, анын бардык билдирүүлөрүн, байланыштарын жана башка берилиштерин телефондон өчүрүлүшүнө алып келет!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Бул аккаунт өчүрүлсө, түзмөктөн ага байланыштуу бардык билдирүүлөр, байланыштар жана башка дайындар жок болот!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Мындай өзгөртүүгө администраторуңуз тыюу салган"</string>
<string name="provider_label" msgid="7724593781904508866">"Жазылууларды көрсөтүү"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2644,7 +2625,8 @@
<item quantity="other">Тастыктамаларды текшерүү</item>
<item quantity="one">Тастыктаманы текшерүү</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Колдонуучулар"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Колдонуучулар жана профайлдар"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Колдонуучу же профиль кошуу"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Колдонуучу кошуу"</string>
@@ -2834,7 +2816,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Колдонмолор/эскертмелер"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Уруксаттар, демейки колдонмолор"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Колдонуучулар/каттоо эсептер"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Демейки колдонмолор"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Тилдер, убакыт, камдык көчүрмөлөр, жаңыртуулар"</string>
<string name="search_results_title" msgid="1796252422574886932">"Жөндөөлөр"</string>
@@ -2865,8 +2848,7 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"тынчымды алба, үзүү, үзгүлтүккө учуроо, тыныгуу"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"жакын, жайгашкан жер, таржымал, кабар берүү"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"тактык"</string>
- <string name="keywords_accounts" msgid="1957925565953357627">"каттоо эсеби"</string>
+ <string name="keywords_accounts" msgid="1957925565953357627">"аккаунт"</string>
<string name="keywords_users" msgid="3434190133131387942">"чектөө, чектөө, чектелген"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"текст тууралоо, туура, добуш, дирилдөө, авто, тил, жаңсоо, сунуштоо, сунуш, тема, адепсиз, сөз, түрү, быйтыкча, эларалык"</string>
<string name="keywords_reset_apps" msgid="5293291209613191845">"баштапкы абалга келтирүү, жеке жөндөөлөр, демейки"</string>
@@ -2932,6 +2914,7 @@
<item quantity="one">1 эреже</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Тынчымды албаңыз"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\"Тынчымды алба\" режимин күйгүзүү"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Аракеттери"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Үндөр жана дирилдөөгө уруксат"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Добушу жок"</string>
@@ -2941,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Автоматтык түрдө күйөт"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Автоматтык эрежелер"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Автоматтык эреже"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\"Тынчымды алба\" режиминин эрежелери"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Белгилүү бир убакыттарда эскертмелерди өчүрүү"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Телефондун үнүн өчүрүүнү жөндөө"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\"Тынчымды алба\" режиминин эрежелерин коюу"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Эреже колдонулсун"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Шашылыш эскертмелер гана"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Ойготкучтар гана"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Тымтырс"</string>
@@ -2950,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Визуалдык эскертмелерди бөгөттөө"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Визуалдык сигнал иштетилсин"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Кошуу"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Күйгүзүү"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Азыр күйгүзүлсүн"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Азыр өчүрүлсүн"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> чейин \"Тынчымды алба\" режими күйгүзүлгөн"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Сиз өчүрмөйүнчө, \"Тынчымды алба\" режими күйүп турат"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"\"Тынчымды алба\" режими автоматтык түрдө <xliff:g id="RULE_NAME">%s</xliff:g> эрежесине ылайык күйгүзүлдү"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"\"Тынчымды алба\" режимин автоматтык түрдө <xliff:g id="APP_NAME">%s</xliff:g> колдонмосу күйгүздү"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Шашылыш эскертмелер гана"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Жумуш профилиндеги үндөр"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Жеке профилдин үндөрүн колдонуу"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Жумуш жана жеке профилдер үчүн окшош добуштар колдонулат"</string>
@@ -2971,6 +2958,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Рингтондор"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Башка үндөр жана дирилдөөлөр"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Эскертмелер"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Акыркы жолу эскертмелерди жөнөткөн колдонмолор"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Өркүндөтүлгөн"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Жумуш боюнча эскертмелер"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Эскертме белгилерине уруксат"</string>
@@ -3186,6 +3174,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Түзмөгүңүздү коргоо үчүн аны манжа изи же сырсөз менен кулпулап койсоңуз болот. Түзмөк кулпуланып турганда, чалуулар, билдирүүлөр же эскертмелер, ошондой эле ойготкучтар жеткиликсиз болот.\n\nБул чаралар жоголгон же уурдалган түзмөктөрдөгү дайындарды коргоого жардам берет. Сырсөздү коёсузбу?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ооба"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Жок"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ооба"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Жок"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN талап кылынсынбы?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Үлгү талап кылынсынбы?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Сырсөз талап кылынсынбы?"</string>
@@ -3456,9 +3446,10 @@
<string name="display_summary_example" msgid="9102633726811090523">"Түзмөк 10 мүнөт колдонулбагандан кийин көшүү режимине өтөт"</string>
<string name="memory_summary" msgid="8080825904671961872">"Орто эсеп менен <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> ичинен <xliff:g id="USED_MEMORY">%1$s</xliff:g> эстутум колдонулууда"</string>
<string name="users_and_accounts_summary" msgid="245282689646897882">"Учурдагы колдонуучу: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
- <string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> каттоо эсеби аркылуу кирдиңиз"</string>
+ <string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> аккаунту менен кирдиңиз"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> демейки колдонмо"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"КҮЙҮК / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"ӨЧҮК"</string>
<string name="backup_disabled" msgid="485189128759595412">"Камдык көчүрмө өчүрүлгөн"</string>
<string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> версиясына жаңыртылды"</string>
@@ -3468,6 +3459,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS жөнөтүүгө тыюу салынган"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Камераны колдонууга тыюу салынган"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Скриншот колдонууга тыюу салынган"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Камдык көчүрмөнү сактоо функциясы өчүрүлбөй жатат"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Бул функция өчүрүлгөн. Көбүрөөк маалымат үчүн ишканаңыздын администраторуна кайрылыңыз."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Көбүрөөк маалымат"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Администратор жумуш профилиңизге байланыштуу колдонмолор менен дайындарды, анын ичинде жөндөөлөр, уруксаттар, корпоративдик кирүү мүмкүнчүлүгү, Интернеттеги аракеттери жана түзмөктүн жайгашкан жери тууралуу маалыматты көзөмөлдөй алат."</string>
@@ -3491,9 +3483,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Жумуш профили өчүрүлгөн"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Жумуш профилиңизге байланыштуу колдонмолор, фондо шайкештирүү сыяктуу функциялар өчүрүлгөн."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Түнкү режимдин графигин түзүү"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Экран саргыч түскө боёлуп, тезирээк уктап каласыз"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Экран автоматтык түрдө түн сайын күңүрттөлсүн"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Түнкү жарык күйүк"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Экран янтарь түскө боёлуп, күңүрт жерде көзүңүзгө күч келбей, тезирээк уктап каласыз."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Сизге сунушталгандар"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Сунуштар"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+ Дагы <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3598,6 +3591,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"эч бири"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Баалануучу объект жок болуп жатат."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Баалануучу объектте мындай ачкыч жок."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Кесилген дисплейди окшоштуруп көрсөтүү"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Жок"</string>
<string name="special_access" msgid="3458780842491881155">"Атайын мүмкүнчүлүк"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> колдонмо дайындарды чектөөсүз өткөрө алат</item>
@@ -3620,10 +3615,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Бир нече түзмөккө туташты"</string>
<string name="demo_mode" msgid="2798762752209330277">"Тутум интерфейсинин демо режими"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Иштеп чыгуучунун ыкчам жөндөөлөр такталары"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Терезеге көз салуу"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Калыпка көз салуу"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Жумуш профилинин жөндөөлөрү"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Байланыштарды издөө"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Чалуучуларды жана байланыштарды аныктоо үчүн ишканаңыз байланыштарды издешине уруксат бериңиз"</string>
@@ -3643,8 +3636,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Орун бошотуу үчүн сактагычты көзөмөлдөгүч камдык көчүрмөсү сакталган сүрөттөр менен видеолорду жок кылат."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Сүрөттөрдү жана видеолорду алып салуу"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Сактагычты көзөмөлдөгүч"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Сактагычты көзөмөлдөгүчтү колдонуу"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Автоматтык"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Нускама"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Орун бошотуу"</string>
@@ -3655,32 +3647,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Камерага өтүү"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Камераны тез ачуу үчүн каалаган экрандан кубат баскычын эки жолу басыңыз."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Камераны тез ачуу"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Камераны ачуу үчүн күйгүзүү/өчүрүү баскычын эки жолу басыңыз"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Камераны которуштуруу"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Селфилерди тез тартуу"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Селфи режимине өтүү үчүн телефонду эки жолу айландырыңыз"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Селфи режимине өтүү үчүн планшетти эки жолу айландырыңыз"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Селфи режимине өтүү үчүн түзмөктү эки жолу айландырып коюңуз"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Убакыт менен эскертмелерди текшерүү үчүн эки жолу басып коюңуз"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Планшетти текшерүү үчүн эки жолу таптаңыз"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Түзмөктү текшерүү үчүн эки жолу таптаңыз"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Убакытты, эскертме сүрөтчөлөрүн жана башка маалыматты көрүү үчүн экраныңызды эки жолу таптаңыз."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Эскертмелерди экран өчүп турганда көрүү"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Эскертмелерди текшерүү үчүн телефонду көтөрүү"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Планшетти текшерүү үчүн көтөрүңүз"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Түзмөктү текшерүү үчүн көтөрүңүз"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Убакытты, эскертме сүрөтчөлөрүн жана башка маалыматты көрүү үчүн телефонуңузду колуңузга алыңыз."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Убакытты, эскертме сүрөтчөлөрүн жана башка маалыматты көрүү үчүн планшетиңизди колуңузга алыңыз."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Убакытты, эскертме сүрөтчөлөрүн жана башка маалыматты көрүү үчүн түзмөгүңүздү колуңузга алыңыз."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Эскертмелерди экран өчүп турганда көрүү"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Эскертмелерди көрүү үчүн манжа изинин сенсорун колдонуу"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Манжа изин сүрүп коюу"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Эскертмелериңизди текшерүү үчүн телефондун аркасындагы манжа изинин сенсорун ылдый сүртүп коюңуз"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Эскертмелериңизди текшерүү үчүн планшеттин аркасындагы манжа изинин сенсорун ылдый сүртүп коюңуз."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Эскертмелериңизди текшерүү үчүн түзмөктүн аркасындагы манжа изинин сенсорун ылдый сүртүп коюңуз."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Эскертмелерди тез көрүү"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Манжа изинин сенсорун ылдый серпиңиз"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Күйүк"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Өчүк"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Иш тутумун жүктөгүчтүн кулпусу мурунтан эле ачылган"</string>
@@ -3812,8 +3797,17 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Бул функция бул түзмөктө иштебейт"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"GNSS көрсөткүчтөрүн иштетүү"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Милдеттүү иштөөнү өчүрүп, бардык GNSS топторуна жана жыштыктарга көз салуу"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Ката диалогун ар дайым көрсөтүү"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Колдонмо бузулган сайын диалогду көрсөтүү"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Каталогго мүмкүнчүлүк алуу"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"катталууга мүмкүнчүлүк алуу"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Телефонум"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Планшетим"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Түзмөгүм"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Аккаунт"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Түзмөктүн аталышы"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Унаа айдаганда, Bluetooth колднлсун"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Унаа айдап баратканда, Bluetooth автоматтык түрдө күйгүзүлсүн"</string>
</resources>
diff --git a/res/values-lo/arrays.xml b/res/values-lo/arrays.xml
index 546db87..72c6778 100644
--- a/res/values-lo/arrays.xml
+++ b/res/values-lo/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"ປຸ່ມ Push"</item>
<item msgid="1624323946324499595">"PIN ຈາກອຸປະກອນທີ່ເຊື່ອມຕໍ່ກັນ"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 ຊົ່ວໂມງ"</item>
<item msgid="5198271470953124739">"ບໍ່ມີໝົດເວລາ"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (ຄ່າເລີ່ມຕົ້ນ)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"ອ່ອນ"</item>
<item msgid="2042505933058940139">"ອ່ອນ"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"ເກີນ 60 ມື້ແລ້ວ"</item>
<item msgid="5692284879054004388">"ເກີນ 90 ມື້ແລ້ວ"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"ໃຊ້ການຕັ້ງຄ່າເຄືອຂ່າຍ"</item>
+ <item msgid="8745603368609022803">"ໃຊ້ແບບວັດແທກປະລິມານ"</item>
+ <item msgid="2266114985518865625">"ໃຊ້ແບບບໍ່ວັດແທກປະລິມານ"</item>
+ </string-array>
</resources>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index be04668..b38b9e8 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"ອຸປະກອນຂອງທ່ານ"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"ຈັບຄູ່ອຸປະກອນໃໝ່"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"ອະນຸຍາດໃຫ້ອຸປະກອນຈັບຄູ່ ແລະ ເຊື່ອມຕໍ່ຫາອຸປະກອນ Bluetooth ໄດ້"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"ປິດສຽງໂທເຂົ້າ"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"ຢ່າໃຊ້ຣິງໂທນໂທລະສັບແບບກຳນົດເອງຢູ່ຫູຟັງ Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"ຕອນນີ້ເຊື່ອມຕໍ່ແລ້ວ"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"ອຸປະກອນທີ່ບັນທຶກໄວ້"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"ເພີ່ມອຸປະກອນ"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"ຕັ້ງວັນທີ"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"ຮຽງຕາມຕົວອັກສອນ"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"ຮຽງຕາມເຂດເວລາ"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> ເລີ່ມເມື່ອ <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ການປ່ຽນເວລາກາງເວັນ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"ເວລາມາດຕະຖານ"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"ເຂດເວລາຕາມຂົງເຂດ"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"ເຂດເວລາຊົດເຊີຍຄົງທີ່"</string>
<string name="date_picker_title" msgid="1338210036394128512">"ວັນທີ"</string>
<string name="time_picker_title" msgid="483460752287255019">"ເວລາ"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"ລັອກໂດຍອັດຕະໂນມັດ"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"ຂໍ້ຄວາມລັອກໜ້າຈໍ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ເປີດນຳໃຊ້ວິດເຈັດ"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"ຖືກຜູ້ເບິ່ງແຍງລະບົບປິດໄວ້"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"ສະແດງຕົວເລືອກການລັອກ"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"ສະແດງຕົວເລືອກປຸ່ມເປີດປິດທີ່ປິດການເຂົ້າເຖິງແບບຂະຫຍາຍ ແລະ ການປົດລັອກລາຍນິ້ວມື."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ບໍ່ມີ"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ຕົວຢ່າງ, Android ຂອງໂຈ."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"ຂໍ້ມູນໂປຣໄຟລ໌"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"ບັນຊີ"</string>
<string name="location_settings_title" msgid="1369675479310751735">"ສະຖານທີ່"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"ໃຊ້ສະຖານທີ່"</string>
<string name="account_settings_title" msgid="626177544686329806">"ບັນຊີ"</string>
<string name="security_settings_title" msgid="4918904614964215087">"ຄວາມປອດໄພ & ສະຖານທີ່"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ການເຂົ້າລະຫັດ ແລະ ຂໍ້ມູນການເຂົ້າສູ່ລະບົບ"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ລະຫັດຜ່ານທີ່ທ່ານໃສ່ລົງໄປນັ້ນຖືກຕ້ອງແລ້ວ, ແຕ່ຂໍ້ມູນຂອງທ່ານເສຍຫາຍ. \n\n1ເພື່ອກັບໄປນຳໃຊ້ແທັບເລັດຂອງທ່ານ, ທ່ານຕ້ອງຕັ້ງຄ່າແທັບເລັດຂອງທ່ານກັບໄປເປັນຄ່າຈາກໂຮງງານຄືນ. ເມື່ອທ່ານຕັ້ງຄ່າແທັບເລັດຂອງທ່ານຫຼັງຈາກການຕັ້ງຄ່າຄືນ, ທ່ານຈະສາມາດດຶງຂໍ້ມູນທີ່ທ່ານສຳຮອງໄວ້ໃນບັນຊີ Google Account ຂອງທ່ານຄືນມາໄດ້."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ລະຫັດຜ່ານທີ່ທ່ານໃສ່ລົງໄປນັ້ນຖືກຕ້ອງແລ້ວ, ແຕ່ຂໍ້ມູນຂອງທ່ານເສຍຫາຍ. \n\nເພື່ອກັບໄປນຳໃຊ້ໂທລະສັບຂອງທ່ານ, ທ່ານຕ້ອງຕັ້ງຄ່າໂທລະສັບຂອງທ່ານກັບໄປເປັນຄ່າຈາກໂຮງງານຄືນ. ເມື່ອທ່ານຕັ້ງຄ່າໂທລະສັບຂອງທ່ານຫຼັງຈາກການຕັ້ງຄ່າຄືນ, ທ່ານຈະສາມາດດຶງຂໍ້ມູນທີ່ທ່ານສຳຮອງໄວ້ໃນບັນຊີ Google ຂອງທ່ານຄືນມາໄດ້."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ສະລັບຮູບແບບການປ້ອນຂໍ້ມູນ"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"ຕັ້ງການລັອກໜ້າຈໍ"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"ປົກປ້ອງອຸປະກອນຂອງທ່ານ"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ໃຊ້ລາຍນິ້ວມື"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"ປົດລັອກດ້ວຍລາຍນິ້ວມືຂອງທ່ານ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"ຕັ້ງໜ້າຈໍລັອກສຳລັບຄວາມປອດໄພ"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"ປ້ອງກັນບໍ່ໃຫ້ຄົນອື່ນໃຊ້ແທັບເລັດຂອງທ່ານ"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"ປ້ອງກັນບໍ່ໃຫ້ຄົນອື່ນໃຊ້ອຸປະກອນຂອງທ່ານ"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"ປ້ອງກັນບໍ່ໃຫ້ຄົນອື່ນໃຊ້ໂທລະສັບຂອງທ່ານ"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ປົດລັອກດ້ວຍລາຍນີ້ວມື"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"ປົດລັອກດ້ວຍລາຍນິ້ວມືຂອງທ່ານ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"ປົດລັອກດ້ວຍລາຍນິ້ວມືຂອງທ່ານ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"ປົດລັອກດ້ວຍລາຍນິ້ວມືຂອງທ່ານ"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"ເລືອກການລັອກໜ້າຈໍ"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"ເລືອກການລັອກບ່ອນເຮັດວຽກ"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ປົກປ້ອງແທັບເລັດຂອງທ່ານ"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"ເປັນລຳໂພງ"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"ສຳລັບເພງ ແລະສື່"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"ຈື່ການຕັ້ງຄ່າ"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"ອຸປະກອນສຽງ Bluetooth ທີ່ເຊື່ອມຕໍ່ສູງສຸດ"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"ເລືອກຈຳນວນອຸປະກອນສຽງ Bluetooth ທີ່ເຊື່ອມຕໍ່ສູງສຸດ"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"ການສົ່ງສັນຍານ"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"ເປີດໃຊ້ງານການສະແດງພາບໄຮ້ສາຍ"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"ບໍ່ມີອຸປະກອນຢູ່ໃນບໍລິເວນໃກ້ຄຽງ."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"ຊື່"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"ເຂົ້າສູ່ລະບົບ"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> ຕ້ອງການເປີດໃຊ້ Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> ຕ້ອງການປິດ Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"ເປີດໃຊ້ Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"ໃຊ້ Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"ການຕັ້ງຄ່າ Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"ຕັ້ງຄ່າ & ຈັດການຈຸດການເຂົ້າໃຊ້ລະບົບໄຮ້ສາຍ"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"ລະຫັດຜ່ານ"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"ສະແດງລະຫັດຜ່ານ"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"ເລືອກຄື້ນ AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ອັດຕະໂນມັດ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"ຄື້ນ 2.4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"ຄື້ນ 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"ຕັ້ງຄ່າ IP"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (ສາມາດໃຊ້ WPS ໄດ້)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"ໃສ່ລະຫັດເຄືອຂ່າຍຂອງທ່ານ"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"ເຄືອຂ່າຍ Wi‑Fi ຜູ້ໃຫ້ບໍລິການ"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"ເຊື່ອມຕໍ່ຜ່ານ <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"ເຊື່ອມຕໍ່ຜ່ານ <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"ເພື່ອປັບປຸງຄວາມຖືກຕ້ອງຂອງສະຖານທີ່ ແລະເພື່ອຈຸດປະສົງອື່ນໆ, <xliff:g id="APP_NAME">%1$s</xliff:g> ຕ້ອງການເປີດນຳໃຊ້ການສະແກນເຄືອຂ່າຍ ເຖິງແມ່ນວ່າ Wi-Fi ຈະປິດກໍຕາມ.\n\nອະນຸຍາດການດຳເນີນການນີ້ ໃຫ້ກັບທຸກແອັບຯທີ່ຕ້ອງການສະແກນບໍ່?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"ເພື່ອປິດ, ໃຫ້ໄປທີ່ຫົວຂໍ້ຂັ້ນສູງ ໃນເມນູໂອເວີໂຟລ."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"ອະນຸຍາດ"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"ຄື້ນ AP"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"ໃຊ້ຮັອດສະປອດເພື່ອສ້າງເຄືອຂ່າຍ Wi-Fi ສຳລັບອຸປະກອນອື່ນຂອງທ່ານ. ຮັອດສະປອດຈະສະໜອງອິນເຕີເນັດໂດຍໃຊ້ການເຊື່ອມຕໍ່ອິນເຕີເນັດມືຖືຂອງທ່ານ. ອາດມີການຮຽກເກັບຄ່າອິນເຕີເນັດມືຖືເພີ່ມເຕີມໄດ້."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"ແອັບຕ່າງໆສາມາດສ້າງຮັອດສະປອດເພື່ອແບ່ງປັນເນື້ອຫາກັບອຸປະກອນທີ່ຢູ່ໃກ້ຄຽງໄດ້."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"ປິດຮັອດສະປອດອັດຕະໂນມັດ"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Wi‑Fi ຮັອດສະປອດຈະປິດຫາກບໍ່ມີອຸປະກອນເຊື່ອມຕໍ່"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"ກຳລັງເປີດໃຊ້ຮັອດສະປອດ..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"ກຳລັງປິດຮັອດສະປອດ..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> ເຮັດວຽກຢູ່"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"ການໂທ Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"ເປີດໃຊ້ການໂທ Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"ໃຊ້ Wi-Fi ແທນເຄືອຂ່າຍມືຖື"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"ຂະຫຍາຍສັນຍານໂດຍການໂທຜ່ານ Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ຄວາມມັກການໂທ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"ໂໝດການໂທ Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ການຕັ້ງຄ່າໂຣມມິງ"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"ທີ່ຢູ່ສຸກເສີນ"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"ໃຊ້ເປັນສະຖານທີ່ຂອງທ່ານເມື່ອທ່ານໂທສຸກເສີນຜ່ານທາງ Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"ສຶກສາເພີ່ມເຕີມ"</annotation>" ກ່ຽວກັບຄຸນສົມບັດ DNS ສ່ວນຕົວ"</string>
<string name="display_settings_title" msgid="1708697328627382561">"ການສະແດງຜົນ"</string>
<string name="sound_settings" msgid="5534671337768745343">"ສຽງ"</string>
<string name="all_volume_title" msgid="4296957391257836961">"ລະດັບສຽງ"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"ປະເພດເຄືອຂ່າຍມືຖື"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ຂໍ້ມູນຜູ່ໃຫ້ບໍລິການ"</string>
<string name="status_data_state" msgid="5503181397066522950">"ສະຖານະເຄືອຂ່າຍມືຖື"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"ສະຖານະບໍລິການ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"ຄວາມແຮງສັນຍານ"</string>
<string name="status_roaming" msgid="2638800467430913403">"ໂຣມມິງ"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"<xliff:g id="NAME">^1</xliff:g> ໃໝ່ຂອງທ່ານກຳລັງເຮັດວຽກຢູ່. \n\nເພື່ອຍ້າຍຮູບ,ໄຟລ໌ ແລະຂໍ້ມູນແອັບໄປໃສ່ອຸປະກອນນີ້, ໄປທີ່ການຕັ້ງຄ່າ > ບ່ອນຈັດເກັບຂໍ້ມູນ."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"ຍ້າຍ <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"ການຍ້າຍ <xliff:g id="APP">^1</xliff:g> ແລະຂໍ້ມູນຂອງມັນໃສ່ <xliff:g id="NAME_0">^2</xliff:g> ຈະໃຊ້ເວລາພຽງບຶດດຽວ. ທ່ານຈະບໍ່ສາມາດໃຊ້ແອັບໄດ້ຈົນກ່ວາຈະຍ້າຍສຳເລັດ. \n\nຢ່າຍ້າຍ <xliff:g id="NAME_1">^2</xliff:g> ໃນລະຫວ່າງການຍ້າຍ."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"ເພື່ອຍ້າຍຂໍ້ມູນ, ທ່ານຈະຕ້ອງປົດລັອກຜູ້ໃຊ້ <xliff:g id="APP">^1</xliff:g> ກ່ອນ."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"ກຳລັງຍ້າຍ <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"ຢ່າເອົາ <xliff:g id="NAME">^1</xliff:g> ອອກໄປໃນລະຫວ່າງການຍ້າຍ. \n\nແອັບ <xliff:g id="APP">^2</xliff:g> ຢູ່ໃນອຸປະກອນຈະບໍ່ມີໃຫ້ຈົນກ່ວາສຳເລັດການຍ້າຍ."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"ຍົກເລີກການຍ້າຍ"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"ເຄືອຂ່າຍ, ແອັບ ຫຼື ອຸປະກອນທີ່ສາມາດຣີເຊັດໄດ້"</string>
<string name="reset_network_title" msgid="6166025966016873843">"ຣີເຊັດ Wi-Fi, ມືຖື ແລະ Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"ນີ້ຈະເປັນການຣີເຊັດການຕັ້ງຄ່າເຄືອຂ່າຍທັງໝົດ, ຮວມເຖິງ:\n\n"<li>"Wi‑Fi"</li>\n<li>"ອິນເຕີເນັດມືຖື"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"ຣີເຊັດ eSIM ນຳ"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ລຶບ eSIM ທັງໝົດຢູ່ໂທລະສັບ. ທ່ານຈະຕ້ອງຕິດຕໍ່ກັບຜູ້ໃຫ້ບໍລິການຂອງທ່ານເພື່ອດາວໂຫລດ eSIM ອີກຄັ້ງ. ນີ້ຈະບໍ່ເປັນການຍົກເລີກແພັກເກດບໍລິການມືຖືຂອງທ່ານ."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ຕັ້ງຄືນການຕັ້ງຄ່າ"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"ຕັ້ງຄືນທຸກການຕັ້ງຄ່າເຄືອຂ່າຍບໍ? ທ່ານບໍ່ສາມາດບໍ່ເຮັດການດຳເນີນການນີ້ໄດ້!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ຕັ້ງຄືນການຕັ້ງຄ່າ"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ຕັ້ງຄືນບໍ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ການຕັ້ງຄ່າເຄືອຂ່າຍຄືນໃໝ່ແມ່ນບໍ່ມີໃຫ້ສຳລັບຜູ້ໃຊ້ຄົນນີ້"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"ການຕັ້ງຄ່າເຄືອຂ່າຍຖືກຕັ້ງຄ່າຄືນໃໝ່ແລ້ວ."</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ບໍ່ສາມາດຣີເຊັດ eSIM ໄດ້"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"ບໍ່ສາມາດຣີເຊັດ eSIM ໄດ້ເນື່ອງຈາກເກີດຄວາມຜິດພາດ."</string>
<string name="master_clear_title" msgid="3531267871084279512">"ລຶບຂໍ້ມູນທັງໝົດ (ຣີເຊັດເປັນຄ່າຈາກໂຮງງານ)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ນີ້ຈະເປັນການລຶບຂໍ້ມູນທັງໝົດຈາກ "<b>"ໜ່ວຍຄວາມຈຳພາຍໃນ"</b>" ຂອງແທັບເລັດທ່ານ, ຮວມເຖິງ:\n\n"<li>"ບັນຊີ Google ຂອງທ່ານ"</li>\n<li>"ຂໍ້ມູນລະບົບ ແລະແອັບພລິເຄຊັນ ແລະການຕັ້ງຄ່າ"</li>\n<li>"ແອັບຯທີ່ດາວໂຫລດມາ"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ນີ້ຈະເປັນການລຶບຂໍ້ມູນທັງໝົດໃນ "<b>"ໜ່ວຍຄວາມຈຳພາຍໃນ"</b>" ຂອງໂທລະສັບທ່ານ ຮວມເຖິງ:\n\n"<li>"ບັນຊີ Google ຂອງທ່ານ"</li>\n<li>"ຂໍ້ມູນລະບົບ ແລະແອັບພລິເຄຊັນ ຮວມທັງການຕັ້ງຄ່າຕ່າງໆ"</li>\n<li>"ແອັບພລິເຄຊັນທີ່ດາວໂຫລດມາ"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"ປັດຈຸບັນທ່ານກຳລັງເຂົ້າສູ່ລະບົບບັນຊີຕໍ່ໄປນີ້:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ມີຜູ້ໃຊ້ອື່ນຢູ່ເທິງອຸປະກອນນີ້.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"ເພງ"</li>\n<li>"ຮູບພາບ"</li>\n<li>"ຂໍ້ມູນຜູ່ໃຊ້ອື່ນໆ"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"ຜູ້ໃຫ້ບໍລິການຢູ່ eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"ນີ້ຈະບໍ່ແມ່ນການຍົກເລີກແພັກເກດບໍລິການມືຖືຂອງທ່ານ."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"ເພື່ອລຶບເພງ, ຮູບພາບ ແລະຂໍ້ມູນຜູ່ໃຊ້ອື່ນໆ, ຈະຕ້ອງລຶບ "<b>"ບ່ອນຈັດເກັບຂໍ້ມູນ USB"</b>" ອອກນຳ."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"ເພື່ອລຶບເພງ, ຮູບພາບ ແລະຂໍ້ມູນຜູ່ໃຊ້ອື່ນໆ, ຈະຕ້ອງລຶບ "<b>"SD card"</b>" ອອກນຳ."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"ກະລຸນາເຊື່ອມຕໍ່ກັບອິນເຕີເນັດ"</string>
<string name="location_title" msgid="1029961368397484576">"ທີ່ຢູ່ຂອງຂ້ອຍ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"ຈຸດທີ່ຕັ້ງສຳລັບໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"ໂຫມດ"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ຄວາມຖືກຕ້ອງສູງ"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ປະຢັດໄຟ"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"ສະເພາະອຸປະກອນ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"ຂໍ້ມູນສະຖານທີ່ແມ່ນປິດຢູ່"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ສິດອະນຸຍາດລະດັບແອັບ"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"ການຮ້ອງຂໍຂໍ້ມູນສະຖານທີ່ຫຼ້າສຸດ"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"ຫຼ້າສຸດນີ້ບໍ່ມີແອັບຯໃດເອີ້ນໃຊ້ຂໍ້ມູນຕຳແໜ່ງ"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"ບໍລິການສະຖານທີ່"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ໃຊ້ແບັດເຕີຣີ່ຫຼາຍ"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ໃຊ້ແບັດເຕີຣີ່ໜ້ອຍ"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"ໂຫມດຂໍ້ມູນສະຖານທີ່"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"ໃຊ້ GPS, Wi‑Fi, Bluetooth ຫຼື ເຄືອຂ່າຍມືຖືເພື່ອລະບຸສະຖານທີ່"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"ໃຊ້ Wi‑Fi, Bluetooth ຫຼື ເຄືອຂ່າຍມືຖືເພື່ອລະບຸສະຖານທີ່"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ໃຊ້ GPS ແລະ ເຊັນເຊີຂອງອຸປະກອນເພື່ອລະບຸສະຖານທີ່"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ການສະແກນ"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"ການສະແກນ Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ປັບປຸງທີ່ຕັ້ງໂດຍການອະນຸຍາດໃຫ້ແອັບ ແລະ ການບໍລິການຂອງລະບົບເພື່ອກວດຫາເຄືອຂ່າຍ Wi‑Fi ໄດ້ທຸກເວລາ."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"ແຫລ່ງຂໍ້ມູນສະຖານທີ່"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ກ່ຽວກັບແທັບເລັດ"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ກ່ຽວກັບໂທລະສັບ"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ກ່ຽວກັບອຸປະກອນ"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ກ່ຽວກັບອຸປະກອນຮຽນແບບ"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"ເບິ່ງຂໍ້ມູນທາງກົດໝາຍ, ສະຖານະ, ເວີຊັນຊອບແວ"</string>
<string name="legal_information" msgid="5769301644270604095">"ຂໍ້ມູນທາງກົດໝາຍ"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"ເບິ່ງທັງໝົດ <xliff:g id="COUNT">%1$d</xliff:g> ແອັບ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"ແທັບເລັດ ແລະ ຂໍ້ມູນສ່ວນຕົວຂອງທ່ານຈະສາມາດຖືກແອັບທີ່ບໍ່ຮູ້ຈັກໂຈມຕີໄດ້ງ່າຍຂຶ້ນ. ໂດຍການຕິດຕັ້ງແອັບຕ່າງໆຈາກແຫລ່ງຂໍ້ມູນເຫຼົ່ານີ້, ແມ່ນທ່ານຍອມຮັບວ່າຈະຮັບຜິດຊອບຕໍ່ຄວາມເສຍຫາຍທີ່ເກີດຂຶ້ນກັບໂທລະສັບຂອງທ່ານ ຫຼື ການສູນເສຍຂໍ້ມູນທີ່ອາດເກີດຂຶ້ນຈາກການນຳໃຊ້ແອັບເຫຼົ່ານັ້ນ."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"ໂທລະສັບ ແລະ ຂໍ້ມູນສ່ວນຕົວຂອງທ່ານຈະສາມາດຖືກແອັບທີ່ບໍ່ຮູ້ຈັກໂຈມຕີໄດ້ງ່າຍຂຶ້ນ. ໂດຍການຕິດຕັ້ງແອັບຕ່າງໆຈາກແຫລ່ງຂໍ້ມູນເຫຼົ່ານີ້, ແມ່ນທ່ານຍອມຮັບວ່າຈະຮັບຜິດຊອບຕໍ່ຄວາມເສຍຫາຍທີ່ເກີດຂຶ້ນກັບໂທລະສັບຂອງທ່ານ ຫຼື ການສູນເສຍຂໍ້ມູນທີ່ອາດເກີດຂຶ້ນຈາກການນຳໃຊ້ແອັບເຫຼົ່ານັ້ນ."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"ອຸປະກອນ ແລະ ຂໍ້ມູນສ່ວນຕົວຂອງທ່ານຈະສາມາດຖືກແອັບທີ່ບໍ່ຮູ້ຈັກໂຈມຕີໄດ້ງ່າຍຂຶ້ນ. ໂດຍການຕິດຕັ້ງແອັບຕ່າງໆຈາກແຫລ່ງທີ່ມາເຫຼົ່ານີ້, ແມ່ນທ່ານຍອມຮັບວ່າຈະຮັບຜິດຊອບຕໍ່ຄວາມເສຍຫາຍທີ່ເກີດຂຶ້ນກັບອຸປະກອນຂອງທ່ານ ຫຼື ການສູນເສຍຂໍ້ມູນທີ່ອາດເກີດຂຶ້ນຈາກການນຳໃຊ້ແອັບເຫຼົ່ານັ້ນ."</string>
<string name="advanced_settings" msgid="1777249286757067969">"ການຕັ້ງຄ່າຂັ້ນສູງ"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"ເປີດໃຊ້ໂຕເລືອກການຕັ້ງຄ່າເພີ່ມເຕີມ."</string>
<string name="application_info_label" msgid="5736524913065714880">"ຂໍ້ມູນແອັບຯ"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"ອາດກະທົບກັບປະສິດທິພາບ"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"ຄລິກຫຼັງຈາກຕົວຊີ້ຢຸດເຄື່ອນໄຫວແລ້ວ"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ໜ່ວງເວລາກ່ອນຄລິກ"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"ໃຊ້ບໍລິການ"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"ໃຊ້ການແກ້ໄຂສີ"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"ໃຊ້ຄຳບັນຍາຍ"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ເປີດ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ປິດ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"ສະແດງໃນການຕັ້ງຄ່າດ່ວນ"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"ເຫຼືອອີກ <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> ກ່ອນຈະເຕັມ"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"ການເຄື່ອນໄຫວແອັບ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ຖືກຈຳກັດ"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ອະນຸຍາດໃຫ້ແອັບເຮັດວຽກໃນພື້ນຫຼັງໄດ້"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ແອັບສາມາດເຮັດວຽກໃນພື້ນຫຼັງໄດ້ເມື່ອບໍ່ມີການນຳໃຊ້"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ການເຄື່ອນໄຫວໃນພື້ນຫຼັງຂອງແອັບແມ່ນຖືກຈຳກັດເມື່ອບໍ່ມີການນຳໃຊ້"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"ປຸກໂທລະສັບຂຶ້ນໃນພື້ນຫຼັງ"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"ກຳລັງຮ້ອງຂໍສະຖານທີ່ເລື້ອຍໆ"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> ແອັບເຮັດວຽກຜິດປົກກະຕິ"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"ແບັດເຕີຣີເຮັດວຽກປົກກະຕິ"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"ແອັບເຮັດວຽກປົກກະຕິ"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"ຄວາມຈຸແບັດເຕີຣີເຫຼືອໜ້ອຍ"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ແບັດເຕີຣີບໍ່ສາມາດໃຫ້ອາຍຸການນຳໃຊ້ທີ່ດີໄດ້"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ເປີດໃຊ້ຕົວຈັດການແບັດເຕີຣີອັດສະລິຍະ"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ເປີດໃຊ້ເພື່ອປັບແຕ່ງການນຳໃຊ້ແບັດເຕີຣີ"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"ເປີດໂໝດແບັດເຕີຣີຕ່ຳ"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ເພີ່ມອາຍຸແບັດເຕີຣີຂອງທ່ານ"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ເປີດໂໝດແບັດເຕີຣີຕ່ຳແລ້ວ"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"ຄຸນສົມບັດບາງຢ່າງຖືກຈຳກັດໄວ້"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ໂທລະສັບຖືກໃຊ້ຢ່າງໜັກໜ່ວງ"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ແທັບເລັດຖືກໃຊ້ຢ່າງໜັກໜ່ວງ"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ອຸປະກອນຖືກໃຊ້ຢ່າງໜັກໜ່ວງ"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"ໃຊ້ໄປປະມານ <xliff:g id="HOUR">%1$s</xliff:g> ນັບຕັ້ງແຕ່ສາກໄຟເທື່ອຫຼ້າສຸດ"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"ໂທລະສັບຂອງທ່ານຖືກໃຊ້ຢ່າງໜັກໜ່ວງ ແລະ ເຮັດໃຫ້ໃຊ້ແບັດເຕີຣີຢ່າງຫຼວງຫຼາຍ. ແບັດເຕີຣີຂອງທ່ານເຮັດວຽກປົກກະຕິຢູ່.\n\n ໂທລະສັບຂອງທ່ານຖືກໃຊ້ປະມານ <xliff:g id="HOUR">%1$s</xliff:g> ນັບຕັ້ງແຕ່ສາກໄຟເຕັມເທື່ອຫຼ້າສຸດ.\n\n ການນຳໃຊ້ທັງໝົດ:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"ແທັບເລັດຂອງທ່ານຖືກໃຊ້ຢ່າງໜັກໜ່ວງ ແລະ ເຮັດໃຫ້ໃຊ້ແບັດເຕີຣີຢ່າງຫຼວງຫຼາຍ. ແບັດເຕີຣີຂອງທ່ານເຮັດວຽກປົກກະຕິຢູ່.\n\n ແທັບເລັດຂອງທ່ານຖືກໃຊ້ປະມານ <xliff:g id="HOUR">%1$s</xliff:g> ນັບຕັ້ງແຕ່ສາກໄຟເຕັມເທື່ອຫຼ້າສຸດ.\n\n ການນຳໃຊ້ທັງໝົດ:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"ອຸປະກອນຂອງທ່ານຖືກໃຊ້ຢ່າງໜັກໜ່ວງ ແລະ ເຮັດໃຫ້ໃຊ້ແບັດເຕີຣີຢ່າງຫຼວງຫຼາຍ. ແບັດເຕີຣີຂອງທ່ານເຮັດວຽກປົກກະຕິຢູ່.\n\n ອຸປະກອນຂອງທ່ານຖືກໃຊ້ປະມານ <xliff:g id="HOUR">%1$s</xliff:g> ນັບຕັ້ງແຕ່ສາກໄຟເຕັມເທື່ອຫຼ້າສຸດ.\n\n ການນຳໃຊ້ທັງໝົດ:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"ຕົວຈັດການແບັດເຕີຣີອັດສະລິຍະ"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"ຈັດການແບັດເຕີຣີອັດຕະໂນມັດ"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"ປັບລະດັບການໃຊ້ພະລັງງານຂອງແອັບຕ່າງໆໂດຍອັດຕະໂນມັດໂດຍອ້າງອີງຈາກການນຳໃຊ້"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"ແອັບທີ່ຈຳກັດໄວ້"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d ແອັບ</item>
+ <item quantity="one">%1$d ແອັບ</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"ຢຸດແອັບໄວ້ບໍ?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"ໂທລະສັບຂອງທ່ານບໍ່ສາມາດຈັດການແບັດເຕີຣີໄດ້ຕາມປົກກະຕິເນື່ອງຈາກ <xliff:g id="APP">%1$s</xliff:g> ພະຍາຍາມເປີດໜ້າຈໍໂທລະສັບຂອງທ່ານໄວ້.\n\nເພື່ອແກ້ໄຂບັນຫານີ້, ທ່ານສາມາດບັງຄັບປິດແອັບດັ່ງກ່າວໄວ້ໄດ້.\n\nຫາກບັນຫານີ້ຍັງຄົງເກີດຂຶ້ນເລື້ອຍໆ, ທ່ານອາດຈຳເປັນຕ້ອງຖອນການຕິດຕັ້ງແອັບດັ່ງກ່າວເພື່ອປັບປຸງປະສິດທິພາບແບັດເຕີຣີ."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"ແທັບເລັດຂອງທ່ານບໍ່ສາມາດຈັດການແບັດເຕີຣີໄດ້ຕາມປົກກະຕິເນື່ອງຈາກ <xliff:g id="APP">%1$s</xliff:g> ພະຍາຍາມເປີດໜ້າຈໍແທັບເລັດຂອງທ່ານໄວ້.\n\nເພື່ອແກ້ໄຂບັນຫານີ້, ທ່ານສາມາດບັງຄັບປິດແອັບດັ່ງກ່າວໄວ້ໄດ້.\n\nຫາກບັນຫານີ້ຍັງຄົງເກີດຂຶ້ນເລື້ອຍໆ, ທ່ານອາດຈຳເປັນຕ້ອງຖອນການຕິດຕັ້ງແອັບດັ່ງກ່າວເພື່ອປັບປຸງປະສິດທິພາບແບັດເຕີຣີ."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ການປັບແອັບໃຫ້ເໝາະສົມ"</string>
<string name="battery_saver" msgid="8172485772238572153">"ຕົວປະຢັດແບັດເຕີຣີ"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ໃຊ້ຕົວປະຢັດແບັດເຕີຣີ"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"ເປີດໃຊ້ອັດຕະໂນມັດ"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ບໍ່ມີປິດ"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"at <xliff:g id="PERCENT">%1$s</xliff:g>battery"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"ການຊິ້ງຂໍ້ມູນກຳລັງປະສົບບັນຫາຢູ່ໃນປັດຈຸບັນ. ມັນຈະກັບມາໃຊ້ໄດ້ໃນໄວໆນີ້."</string>
<string name="add_account_label" msgid="7811707265834013767">"ເພີ່ມບັນຊີ"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"ໂປຣໄຟລ໌ບ່ອນເຮັດວຽກບໍ່ສາມາດໃຊ້ໄດ້ເທື່ອ"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"ໂໝດບ່ອນເຮັດວຽກ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"ອະນຸຍາດໃຫ້ໂປຣໄຟລ໌ບ່ອນເຮັດວຽກສາມາດນຳໃຊ້ໄດ້ ເຊິ່ງຮວມທັງແອັບ, ການຊິ້ງຂໍ້ມູນໃນພື້ນຫຼັງ ແລະຄຸນສົມບັດທີ່ກ່ຽວຂ້ອງ"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"ໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"ຈັດການໂດຍອົງກອນຂອງທ່ານ"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ແອັບ ແລະ ການແຈ້ງເຕືອນຖືກປິດໄວ້ແລ້ວ"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"ລຶບໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
<string name="background_data" msgid="5779592891375473817">"ຂໍ້ມູນພື້ນຫຼັງ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ແອັບຯສາມາດຊິ້ງຂໍ້ມູນ, ສົ່ງ ແລະຮັບຂໍ້ມູນໄດ້ທຸກເວລາ"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"ລຶບບັນຊີອອກ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ການລຶບບັນຊີນີ້ຈະລຶບທຸກຂໍ້ຄວາມ, ລາຍຊື່ຜູ່ຕິດຕໍ່ ແລະຂໍ້ມູນອື່ນໆຂອງມັນຈາກແທັບເລັດ!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ການລຶບບັນຊີນີ້ຈະເປັນການລຶບຂໍ້ຄວາມ, ລາຍຊື່ຜູ່ຕິດຕໍ່ ແລະຂໍ້ມູນໂທລະສັບອື່ນໆທັງໝົດອອກ!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ການລຶບບັນຊີນີ້ຈະເປັນການລຶບຂໍ້ຄວາມ, ລາຍຊື່ຜູ້ຕິດຕໍ່ ແລະ ຂໍ້ມູນອື່ນໆທັງໝົດຂອງມັນອອກຈາກອຸປະກອນ!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານບໍ່ອະນຸຍາດໃຫ້ປ່ຽນແປງສິ່ງນີ້"</string>
<string name="provider_label" msgid="7724593781904508866">"ການຮັບຂໍ້ມູນແບບ Push"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">ກວດສອບໃບຮັບຮອງ</item>
<item quantity="one">ກວດສອບໃບຮັບຮອງ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ຜູ້ໃຊ້"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"ຫຼາຍຜູ້ໃຊ້"</string>
<string name="user_list_title" msgid="7937158411137563543">"ຜູ່ໃຊ້ & ໂປຣໄຟລ໌"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ເພີ່ມຜູ່ໃຊ້ ຫຼືໂປຣໄຟລ໌"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ເພີ່ມຜູ້ໃຊ້"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, ສົ່ງສັນຍານ"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ແອັບ ແລະ ການແຈ້ງເຕືອນ"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ສິດອະນຸຍາດ, ແອັບເລີ່ມຕົ້ນ"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ຜູ້ໃຊ້ ແລະ ບັນຊີ"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"ບັນຊີ"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ແອັບເລີ່ມຕົ້ນ"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ພາສາ, ເວລາ, ຂໍ້ມູນສຳຮອງ, ອັບເດດ"</string>
<string name="search_results_title" msgid="1796252422574886932">"ການຕັ້ງຄ່າ"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ຫ້າມ ຫ້າມລົບກວນ, ຂັດຈັງຫວະ, ການຂັດຈັງຫວະ, ຢຸດເຊົາ"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"ໃກ້ຄຽງ, ສະຖານທີ່, ປະຫວັດ, ການລາຍງານ"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ຄວາມຖືກຕ້ອງ"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"ບັນຊີ"</string>
<string name="keywords_users" msgid="3434190133131387942">"ຂໍ້ຈຳກັດ, ຈຳກັດ, ຈຳກັດແລ້ວ"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ການແກ້ໄຂຂໍ້ຄວາມໃຫ້ຖືກຕ້ອງ, ຖືກຕ້ອງ, ສຽງດັງ, ສັ່ນ, ສຽງ, ພາສາ, ທ່າທາງ, ແນະນຳ, ຄຳແນະນຳ, ຊຸດຮູບແບບ, ຫຍາບຄາຍ, ຄຳສັບ, ພິມ, ອີໂມຈິ, ສາກົນ"</string>
@@ -2829,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"ເຄືອຂ່າຍ, ສະຖານະເຄືອຂ່າຍມືຖື, ສະຖານະບໍລິການ, ຄວາມແຮງສັນຍນານ, ປະເພດເຄືອຂ່າຍມືຖື, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"ໝາຍເລກຊີຣຽວ, ເວີຊັນຮາດແວ"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android security patch level, ເວີຊັນ baseband, ເວີຊັນ kernel"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ຕັ້ງຄ່າແທັກ Wi-Fi NFC"</string>
<string name="write_tag" msgid="8571858602896222537">"ຂຽນ"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ແຕະທີ່ແທັກເພື່ອຂຽນ..."</string>
@@ -2872,6 +2915,7 @@
<item quantity="one">1 ກົດ</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ຫ້າມລົບກວນ"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"ເປີດໂໝດຫ້າມລົບກວນ"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"ພຶດຕິກຳ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ອະນຸຍາດສຽງ ແລະ ການສັ່ນເຕືອນຈາກ"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ບໍ່ມີສຽງ"</string>
@@ -2881,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"ເປີດໃຊ້ອັດຕະໂນມັດ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ກົດອັດຕະໂນມັດ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ກົດອັດຕະໂນມັດ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"ຕັ້ງກົດຂອງການຫ້າມລົບກວນ"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ຈຳກັດສຽງ ແລະ ການສັ່ງໃນບາງເວລາ"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"ປິດສຽງໂທລະສັບໃນບາງເວລາ"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"ຕັ້ງກົດຂອງການຫ້າມລົບກວນ"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"ໃຊ້ກົດ"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ບຸລິມະສິດເທົ່ານັ້ນ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ໂມງປຸກເທົ່ານັ້ນ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ຄວາມງຽບທັງໝົດ"</string>
@@ -2890,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ບລັອກການລົບກວນທາງພາບ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ອະນຸຍາດສັນຍານພາບ"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ເພີ່ມ"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"ເປີດດຽວນີ້"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"ປິດດຽວນີ້"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ເປີດ"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ເປີດດຽວນີ້"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ປິດດຽວນີ້"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"ໂໝດຫ້າມລົບກວນຈະເປີດໃຊ້ຈົນກວ່າຈະຮອດ <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"ໂໝດຫ້າມລົບກວນຈະເປີດໃຊ້ຈົນກວ່າທ່ານຈະປິດມັນ"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"ເປີດໃຊ້ໂໝດຫ້າມລົບກວນໂດຍອັດຕະໂນມັດແລ້ວໂດຍກົດ <xliff:g id="RULE_NAME">%s</xliff:g> ແລ້ວ"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ເປີດໃຊ້ໂໝດຫ້າມລົບກວນໂດຍອັດຕະໂນມັດແລ້ວໂດຍແອັບ <xliff:g id="APP_NAME">%s</xliff:g> ແລ້ວ"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ສຳຄັນເທົ່ານັ້ນ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"ສຽງໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ໃຊ້ສຽງໂປຣໄຟລ໌ສ່ວນຕົວ"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"ສຽງແມ່ນຄືກັນສຳລັບໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ ແລະ ໂປຣໄຟລ໌ສ່ວນຕົວ"</string>
@@ -2911,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"ຣິງໂທນ"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ສຽງ ແລະ ການສັ່ນເຕືອນອື່ນໆ"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"ການແຈ້ງເຕືອນ"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"ສົ່ງຫຼ້າສຸດ"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"ຂັ້ນສູງ"</string>
<string name="profile_section_header" msgid="2320848161066912001">"ການແຈ້ງເຕືອນວຽກ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"ອະນຸຍາດຈຸດການແຈ້ງເຕືອນ"</string>
@@ -2930,7 +2981,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"ການແຈ້ງເຕືອນແອັບຯ"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"ໝວດໝູ່ການແຈ້ງເຕືອນ"</string>
<string name="notification_group_title" msgid="7180506440133859601">"ກຸ່ມໝວດໝູ່ການແຈ້ງເຕືອນ"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"ຄວາມສໍາຄັນ"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"ພຶດຕິກຳ"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"ອະນຸຍາດສຽງ"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"ຢ່າສະແດງການແຈ້ງເຕືອນອີກ"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"ບໍ່ມີສຽງ ຫຼື ການລົບກວນໃນໜ້າຈໍ"</string>
@@ -2948,6 +2999,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"ຄວາມສຳຄັນປານກາງ"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"ຄວາມສໍາຄັນສູງ"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"ຄວາມສໍາຄັນດ່ວນ"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"ສະແດງການແຈ້ງເຕືອນ"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"ຕົວຊ່ວຍການແຈ້ງເຕືອນ"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"ການເຂົ້າເຖິງການແຈ້ງເຕືອນ"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"ການເຂົ້າເຖິງການແຈ້ງເຕືອນໂປຣໄຟລ໌ບ່ອນເຮັດວຽກຖືກບລັອກໄວ້"</string>
@@ -2978,9 +3030,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"ຫ້າມລົບກວນການເຂົ້າຫາ"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"ບໍ່ມີການຂໍແອັບທີ່ຕິດຕັ້ງໄວ້ ຫາຫ້າມລົບກວນການເຂົ້າ"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"ກຳລັງໂຫລດແອັບຯ..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android ກຳລັງບລັອກການແຈ້ງເຕືອນແອັບບໍ່ໃຫ້ປາກົດໃນອຸປະກອນນີ້"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android ກຳລັງບລັອກການແຈ້ງເຕືອນໃນໝວດໝູ່ນີ້ບໍ່ໃຫ້ປາກົດໃນອຸປະກອນນີ້"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android ກຳລັງບລັອກກຸ່ມການແຈ້ງເຕືອນນີ້ບໍ່ໃຫ້ສະແດງຢູ່ອຸປະກອນ"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"ຕາມຄຳຂໍຂອງທ່ານ, Android ຈະບລັອກການແຈ້ງເຕືອນຂອງແອັບນີ້ບໍ່ໃຫ້ປາກົດຢູ່ອຸປະກອນນີ້"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"ຕາມຄຳຂໍຂອງທ່ານ, Android ຈະບລັອກໝວດໝູ່ການແຈ້ງເຕືອນນີ້ບໍ່ໃຫ້ປາກົດຢູ່ອຸປະກອນນີ້"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"ຕາມຄຳຂໍຂອງທ່ານ, Android ຈະບລັອກກຸ່ມການແຈ້ງເຕືອນນີ້ບໍ່ໃຫ້ປາກົດຢູ່ອຸປະກອນນີ້"</string>
<string name="notification_channels" msgid="5346841743182627500">"ໝວດໝູ່"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"ອື່ນໆ"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ນອກເໜືອໄປຈາກການໃຊ້ລາຍນິ້ວມືເພື່ອປົດລັອກອຸປະກອນຂອງທ່ານແລ້ວ, ທ່ານສາມາດປ້ອງກັນອຸປະກອນນີ້ໃຫ້ຍິ້ງຂຶ້ນໂດຍການໃຫ້ໃສ່ລະຫັດຜ່ານກ່ອນເລີ່ມຕົ້ນມັນໄດ້. ຫາກບໍ່ເປີດໃຫ້ເລີ່ມເຮັດວຽກແລ້ວ, ມັນຈະບໍ່ສາມາດຮັບສາຍ, ຂໍ້ຄວາມ, ການແຈ້ງເຕືອນ ຫຼື ໂມງປຸກໄດ້.\n\nນີ້ຈະຊ່ວຍປ້ອງກັນຂໍ້ມູນເມື່ອອຸປະກອນເສຍ ຫຼື ຖືກລັກໄດ້. ຕ້ອງໃຫ້ໃສ່ລະຫັດຜ່ານເພື່ອເລີ່ມຕົ້ນອຸປະກອນຂອງທ່ານບໍ?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ແມ່ນແລ້ວ"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"ບໍ່"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ແມ່ນ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ບໍ່ແມ່ນ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"ຕ້ອງການລະຫັດ PIN ຫຼືບໍ່?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ຕ້ອງການຮູບແບບປົດລັອກບໍ່?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"ຕ້ອງການລະຫັດຜ່ານຫຼືບໍ່?"</string>
@@ -3271,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"ປະຕິເສດ"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ສາກໄຟອຸປະກອນນີ້"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ຫາກໍ່ສາກອຸປະກອນນີ້"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"ຈ່າຍໄຟ"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"ສາກອຸປະກອນທີ່ເຊື່ອມຕໍ່ໄວ້. ໃຊ້ໄດ້ສະເພາະອຸປະກອນທີ່ຮອງຮັບການສາກໄຟດ້ວຍ USB ເທົ່ານັ້ນ."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ໂອນຍ້າຍໄຟລ໌"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ໂອນຍ້າຍໄຟລ໌ໄປໃສ່ອຸປະກອນອື່ນ"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ໂອນຮູບ (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"ໂອນຮູບ ຫຼື ໄຟລ໌ ຖ້າ MTP ບໍ່ໄດ້ຮອງຮັບ (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"ໃຊ້ອຸປະກອນເປັນ MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ໃຊ້ອຸປະກອນນີ້ເປັນ MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"ໃຊ້ USB ເພື່ອ"</string>
+ <string name="usb_use" msgid="3372728031108932425">"ໃຊ້ USB ສຳລັບ"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ກຳລັງສາກໄຟອຸປະກອນນີ້"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"ກຳລັງຈ່າຍໄຟ"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ກຳລັງໂອນຍ້າຍໄຟລ໌"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ກຳລັງໂອນຍ້າຍຮູບ (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"ການໃຊ້ອຸປະກອນເປັນ MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"ການກວດໃນພື້ນຫຼັງ"</string>
<string name="background_check_title" msgid="4534254315824525593">"ການເຂົ້າເຖິງພື້ນຫຼັງເຕັມສ່ວນ"</string>
@@ -3394,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"ຮູບພື້ນຫຼັງ, ການປິດໜ້າຈໍ, ຂະໜາດຟອນ"</string>
<string name="display_summary_example" msgid="9102633726811090523">"ປິດໜ້າຈໍຫຼັງຈາກ 10 ນາທີຫາກບໍ່ໄດ້ເຮັດຫຍັງ"</string>
<string name="memory_summary" msgid="8080825904671961872">"ໂດຍສະເລ່ຍ ໃຊ້ຄວາມຈຳໄປແລ້ວ <xliff:g id="USED_MEMORY">%1$s</xliff:g> ຈາກທັງໝົດ <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"ຜູ້ໃຊ້ປັດຈຸບັນ: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"ເຂົ້າສູ່ລະບົບເປັນ <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ແມ່ນຄ່າເລີ່ມຕົ້ນ"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ເປີດ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ເປີດ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ປິດ"</string>
<string name="backup_disabled" msgid="485189128759595412">"ການສຳຮອງຂໍ້ມູນຖືກປິດໃຊ້ແລ້ວ"</string>
- <string name="about_summary" msgid="924181828102801010">"ອັບເດດເປັນ Android <xliff:g id="VERSION">%1$s</xliff:g> ແລ້ວ"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"ບໍ່ອະນຸຍາດໃຫ້ດຳເນີນການ"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"ບໍ່ສາມາດປ່ຽນລະດັບສຽງໄດ້"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"ບໍ່ອະນຸຍາດການໂທ"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"ບໍ່ອະນຸຍາດໃຫ້ໃຊ້ SMS"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ບໍ່ອະນຸຍາດໃຫ້ໃຊ້ກ້ອງຖ່າຍຮູບ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ບໍ່ອະນຸຍາດຖ່າຍຮູບໜ້າຈໍ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ບໍ່ສາມາດປິດການສຳຮອງຂໍ້ມູນໄດ້"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ຄຳສັ່ງນີ້ຖືກປິດໄວ້. ເພື່ອສຶກສາເພີ່ມເຕີມ, ໃຫ້ຕິດຕໍ່ຜູ້ເບິ່ງແຍງລະບົບອົງກອນຂອງທ່ານ."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"ລາຍລະອຽດເພີ່ມເຕີມ"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"ຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານສາມາດຕິດຕາມ ແລະ ຈັດການແອັບ ແລະ ຂໍ້ມູນທີ່ເຊື່ອມໂຍງກັບໂປຣໄຟລ໌ບ່ອນເຮັດວຽກຂອງທ່ານໄດ້ ເຊິ່ງຮວມເຖິງການຕັ້ງຄ່າ, ການອະນຸຍາດ, ການເຂົ້າເຖິງອົງກອນ, ການເຄື່ອນໄຫວເຄືອຂ່າຍ ແລະ ຂໍ້ມູນສະຖານທີ່ຂອງອຸປະກອນ."</string>
@@ -3420,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"ເປີດໃຊ້ຮັອດສະປອດ Wi-Fi ແບບພົກພາ <xliff:g id="ID_1">%1$s</xliff:g> ຢູ່, ດັ່ງນັ້ນ Wi-Fi ສຳລັບອຸປະກອນນີ້ຖືກປິດ."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ເປີດໂໝດເຄື່ອງບິນ"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth ແລະ ອິນເຕີເນັດມືຖືຖືກປິດໄວ້ຢູ່. ທ່ານຈະບໍ່ສາມາດໂທ ຫຼື ເຊື່ອມຕໍ່ກັບອິນເຕີເນັດໄດ້."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"ຫ້າມລົບກວນ ເປີດຢູ່ (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ຕົວປະຢັດແບັດເຕີຣີເປີດຢູ່"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"ປະສິດທິພາບການນຳໃຊ້ຫຼຸດລົງ. ການບໍລິການສະຖານທີ່ ແລະຂໍ້ມູນພື້ນຫຼັງຖືກປິດໄວ້ແລ້ວ."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"ປິດອິນເຕີເນັດມືຖືແລ້ວ"</string>
@@ -3430,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"ໂປຣໄຟລ໌ບ່ອນເຮັດວຽກປິດຢູ່"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"ແອັບ, ການຊິ້ງຂໍ້ມູນໃນພື້ນຫຼັງ ແລະຄຸນສົມບັດອື່ນທີ່ກ່ຽວຂ້ອງກັບໂປຣໄຟລ໌ຂອງທ່ານຖືກປິດໄວ້ແລ້ວ."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"ກຳນົດເວລາໄຟກາງຄືນ"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ການປັບສີຂອງແສງໜ້າຈໍຈະຊ່ວຍໃຫ້ທ່ານອນຫຼັບໄດ້ງ່າຍຂຶ້ນ"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ປັບສີໜ້າຈໍອັດຕະໂນມັດທຸກຄືນ"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"ເປີດໃຊ້ແສງກາງຄືນແລ້ວ"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"ໜ້າຈໍເປັນສີອົມແດງແລ້ວ. ນີ້ອາດຊ່ວຍໃຫ້ນອນຫຼັບໄດ້ດີຂຶ້ນ."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ຄຳແນະນຳສຳລັບທ່ານ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"ຄຳແນະນຳ"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ເພີ່ມເຕີມ"</string>
@@ -3537,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ບໍ່ມີ"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ບໍ່ມີອອບເຈັກການຈັດອັນດັບ."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ອອບເຈັກການຈັດອັນດັບບໍ່ມີກະແຈນີ້."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"ຈຳລອງໜ້າຈໍດ້ວຍແຜ່ນປ້າຍ"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ບໍ່ມີ"</string>
<string name="special_access" msgid="3458780842491881155">"ສິດການເຂົ້າເຖິງແອັບພິເສດ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ແອັບສາມາດໃຊ້ຂໍ້ມູນທີ່ບໍ່ຖືກຈຳກັດໄດ້</item>
@@ -3559,31 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"ເຊື່ອມຕໍ່ຫາຫຼາຍອຸປະກອນ"</string>
<string name="demo_mode" msgid="2798762752209330277">"ໂໝດເດໂມສ່ວນຕິດຕໍ່ຜູ້ໃຊ້ລະບົບ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Quick settings developer tiles"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"ພວກເຮົາຢູ່ນີ້ເພື່ອຊ່ວຍເຫຼືອ"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"ພວກເຮົາພ້ອມຊ່ວຍເຫຼືອທ່ານຕະຫຼອດ 24 ຊົ່ວໂມງ"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"ພວກເຮົາພ້ອມຊ່ວຍເຫຼືອທ່ານຕະຫຼອດ 24 ຊົ່ວໂມງ"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"ທີມງານຂອງພວກເຮົາຢູ່ນີ້ເພື່ອແກ້ໄຂທຸກບັນຫາ"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"ທີມງານຊ່ວຍເຫຼືອຂອງພວກເຮົາຈະຢູ່ບ່ອນນີ້ຕະຫຼອດເວລາທຸກໆມື້"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"ຊອກຫາຄວາມຊ່ວຍເຫຼືອ ຫຼື ກັບມາໃນຕອນທີ່ເປີດເຮັດວຽກ (ເວລາທ້ອງຖິ່ນ):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"ເວລາຊ່ວຍເຫຼືອທາງໂທລະສັບ (ເວລາທ້ອງຖິ່ນ)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"ຊອກຫາຄວາມຊ່ວຍເຫຼືອ ຫຼື ສຳຫຼວດເບິ່ງເຄັດລັບ ແລະ ເທັກນິກຕ່າງໆ"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"ຮອງຮັບ:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ຕິດຕາມພື້ນຜິວ"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"ກຳລັງເດີນທາງຢູ່ຕ່າງປະເທດບໍ?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"ອາດມີການຮຽກເກັບຄ່າບໍລິການແບບລະຫວ່າງປະເທດ"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"ໂທລະສັບ"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"ການສົນທະນາ"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"ສຳຫຼວດເຄັດລັບ ແລະ ເທັກນິກຕ່າງໆ"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"ຊອກຫາການຊ່ວຍເຫຼືອ ແລະ ສົ່ງຄຳຕິຊົມ"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"ຕິດຕໍ່ທີມງານຊ່ວຍເຫຼືອ"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"ເຂົ້າສູ່ລະບົບ"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"ບໍ່ສາມາດເຂົ້າສູ່ລະບົບບໍ?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"ສົ່ງຂໍ້ມູນລະບົບ"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"ບໍ່ຕ້ອງສະແດງອີກ"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"ກຳລັງຮ້ອງຂໍໃນນາມ"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"ເພີ່ມບັນຊີ"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"ຂໍ້ມູນລະບົບ"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"ການຕັ້ງຄ່າໂປຣໄຟລ໌ບ່ອນເຮັດວຽກ"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"ຊອກຫາລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"ອະນຸຍາດໃຫ້ລາຍຊື່ຜູ້ຕິດຕໍ່ຊອກຫາໂດຍອົງກອນຂອງທ່ານໄດ້ເພື່ອຢືນຢັນຜູ້ໂທ ແລະ ລາຍຊື່ຜູ້ຕິດຕໍ່ຕ່າງໆ"</string>
@@ -3599,11 +3660,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> ວິນາທີ</item>
<item quantity="one">1 ວິນາທີ</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"ລໍຖ້າ ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"ຈັດການບ່ອນຈັດເກັບຂໍ້ມູນ"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"ເພື່ອຊ່ວຍເພີ່ມພື້ນທີ່ຫວ່າງສຳລັບການຈັດເກັບຂໍ້ມູນ, ຕົວຈັດການບ່ອນຈັດເກັບຂໍ້ມູນຈະລຶບຮູບພາບ ແລະ ວິດີໂອທີ່ສຳຮອງຂໍ້ມູນໄວ້ອອກຈາກອຸປະກອນຂອງທ່ານ."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ລຶບຮູບພາບ ແລະ ວິດີໂອ"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"ຕົວຈັດການບ່ອນຈັດເກັບຂໍ້ມູນ"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"ໃຊ້ຕົວຈັດການບ່ອນຈັດເກັບຂໍ້ມູນ"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"ອັດຕະໂນມັດ"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"ຕັ້ງຄ່າເອງ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"ສ້າງພື້ນທີ່ຈັດເກັບຂໍ້ມູນເພີ່ມ"</string>
@@ -3614,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ໂດດໄປກ້ອງຖ່າຍຮູບ"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ເພື່ອເປີດກ້ອງຂຶ້ນມາແບບດ່ວນ, ໃຫ້ກົດປຸ່ມປິດເປີດສອງເທື່ອຕິດກັນ. ສາມາດເຮັດໄດ້ຈາກທຸກໜ້າຈໍ."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ເປີດກ້ອງຖ່າຍຮູບແບບດ່ວນ"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ກົດປຸ່ມເປີດປິດສອງເທື່ອຕິດກັນເພື່ອເປີດກ້ອງຖ່າຍຮູບ"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ປີ້ນກ້ອງ"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"ຖ່າຍເຊວຟີໄດ້ໄວຂຶ້ນ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"ພິກໂທລະສັບສອງເທື່ອຕິດກັນເພື່ອໃຊ້ໂໝດເຊວຟີ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"ພິກແທັບເລັດສອງເທື່ອຕິດກັນເພື່ອໃຊ້ໂໝດເຊວຟີ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"ພິກອຸປະກອນສອງເທື່ອຕິດກັນເພື່ອໃຊ້ໂໝດເຊວຟີ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ແຕະສອງເທືື່ອເພື່ອກວດສອບໂທລະສັບ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ແຕະສອງເທືື່ອເພື່ອກວດສອບແທັບເລັດ"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ແຕະສອງເທືື່ອເພື່ອກວດສອບອຸປະກອນ"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"ເພື່ອກວດສອບເວລາ, ໄອຄອນການແຈ້ງເຕືອນ ແລະ ຂໍ້ມູນອື່ນໆ, ໃຫ້ແຕະສອງເທື່ອໃສ່ໜ້າຈໍຂອງທ່ານ."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ກວດສອບການແຈ້ງເຕືອນເມື່ອປິດໜ້າຈໍໄວ້"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ຍົກຂຶ້ນເພື່ອກວດສອບໂທລະສັບ"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ຍົກຂຶ້ນເພື່ອກວດສອບແທັບເລັດ"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"ຍົກຂຶ້ນເພື່ອກວດສອບອຸປະກອນ"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"ເພື່ອກວດສອບເວລາ, ໄອຄອນການແຈ້ງເຕືອນ ແລະ ຂໍ້ມູນອື່ນໆ, ໃຫ້ຈັບໂທລະສັບຂອງທ່ານຂຶ້ນມາ."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"ເພື່ອກວດສອບເວລາ, ໄອຄອນການແຈ້ງເຕືອນ ແລະ ຂໍ້ມູນອື່ນໆ, ໃຫ້ຈັບແທັບເລັດຂອງທ່ານຂຶ້ນມາ."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"ເພື່ອກວດສອບເວລາ, ໄອຄອນການແຈ້ງເຕືອນ ແລະ ຂໍ້ມູນອື່ນໆ, ໃຫ້ຈັບອຸປະກອນຂອງທ່ານຂຶ້ນມາ."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ກວດສອບການແຈ້ງເຕືອນເມື່ອປິດໜ້າຈໍໄວ້"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"ປັດລາຍນິ້ວມືສຳລັບການແຈ້ງເຕືອນ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ປັດລາຍນິ້ວມື"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"ເພື່ອກວດເບິ່ງການແຈ້ງເຕືອນຂອງທ່ານ, ໃຫ້ເລື່ອນລົງໃສ່ເຊັນເຊີນລາຍນິ້ວມືທີ່ຢູ່ຫຼັງໂທລະສັບຂອງທ່ານ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"ເພື່ອກວດເບິ່ງການແຈ້ງເຕືອນຂອງທ່ານ, ໃຫ້ເລື່ອນລົງໃສ່ເຊັນເຊີນລາຍນິ້ວມືທີ່ຢູ່ຫຼັງແທັບເລັດຂອງທ່ານ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"ເພື່ອກວດເບິ່ງການແຈ້ງເຕືອນຂອງທ່ານ, ໃຫ້ເລື່ອນລົງໃສ່ເຊັນເຊີນລາຍນິ້ວມືທີ່ຢູ່ຫຼັງອຸປະກອນຂອງທ່ານ"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"ເບິ່ງການແຈ້ງເຕືອນແບບດ່ວນ"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"ເລື່ອນນິ້ວລົງໃສ່ເຊັນເຊີລາຍນິ້ວມື"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ເປີດ"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ປິດ"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader ຖືກປົດລັອກຢູ່ກ່ອນແລ້ວ"</string>
@@ -3769,8 +3823,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"ລອງເບິ່ງແທັບເລັດໃໝ່ຂອງທ່ານ"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"ລອງເບິ່ງອຸປະກອນໃໝ່ຂອງທ່ານ"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ຄຸນສົມບັດນີ້ບໍ່ສາມາດໃຊ້ໄດ້ໃນອຸປະກອນນີ້ໄດ້"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"ບັງຄັບການກວດສອບ GNSS ເຕັມຮູບແບບ"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ຕິດຕາມກຸ່ມ ແລະ ຄວາມຖີ່ GNSS ທັງໝົດໂດຍບໍ່ມີຮອບຕາມພັນທະ"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ສະແດງກ່ອງຂໍ້ຄວາມການເຮັດວຽກລົ້ມເຫລວທຸກເທື່ອ"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"ສະແດງກ່ອງຂໍ້ຄວາມທຸກເທື່ອທີ່ແອັບເຮັດວຽກລົ້ມເຫລວ"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ການເຂົ້າເຖິງໄດເຣັກທໍຣີ"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ການເຂົ້າເຖິງໄດເຣັກທໍຣີ"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"ໂທລະສັບຂອງຂ້ອຍ"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"ແທັບເລັດຂອງຂ້ອຍ"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"ອຸປະກອນຂອງຂ້ອຍ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"ບັນຊີ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ຊື່ອຸປະກອນ"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ໃຊ້ Bluetooth ໃນເວລາຂັບລົດ"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ເປີດໃຊ້ Bluetooth ໂດຍອັດຕະໂນມັດໃນເວລາຂັບລົດ"</string>
</resources>
diff --git a/res/values-mk/arrays.xml b/res/values-mk/arrays.xml
index 70ec3e2..de774f7 100644
--- a/res/values-mk/arrays.xml
+++ b/res/values-mk/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Копче „Притисни“"</item>
<item msgid="1624323946324499595">"PIN од спарен уред"</item>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index 8dd33a3..58a06fe 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Постави датум"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Подреди по азбучен ред"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Подреди по временска зона"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> почнува на <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Летно сметање на времето"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Стандардно време"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Временска зона според регионот"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Временски зони со фиксно отстапување"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Датум"</string>
<string name="time_picker_title" msgid="483460752287255019">"Време"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Автоматско заклучување"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Порака на закл.екран"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Овозможи виџети"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Оневозможено од администраторот"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Приказ на опцијата за заклучување"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Опција на копчето за вклучување на екранот што ги исклучува продолжениот пристап и отклучувањето со отпечаток."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Нема"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"На пр. Android-от на Миле."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Информации за профил"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Сметки"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Локација"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Користи ја локацијата"</string>
<string name="account_settings_title" msgid="626177544686329806">"Сметки"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Безбедност и локација"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрирање и акредитиви"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Лозинката што ја внесовте е правилна, но, за жал, податоците се оштетени. \n\nЗа да продолжите да го користите таблетот, треба да извршите фабричко ресетирање. Кога ќе го поставувате таблетот по ресетирањето, ќе имате можност да ги обновите сите податоци што имаат резервни копии на вашата сметка на Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Лозинката што ја внесовте е правилна, но, за жал, податоците се оштетени. \n\nЗа да продолжите да го користите телефонот, треба да извршите фабричко ресетирање. Кога ќе го поставувате телефонот по ресетирањето, ќе имате можност да ги обновите сите податоци што имаат резервни копии на вашата сметка на Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Префрли метод на внес"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Поставете заклучување на екранот"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Заштитете го уредот"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Користете отпечаток"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Отклучете со отпечаток"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Поставување заклучување екран"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Спречете другите да го користат вашиот таблет"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Спречете ги другите да го користат вашиот уред"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Спречете ги другите да го користат вашиот телефон"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Отклучи со отпечаток"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Отклучете со отпечаток"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Отклучете со отпечаток"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Отклучете со отпечаток"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Избери заклучување на екранот"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Избери закл. раб. профил"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Заштитете го таблетот"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Име"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Најави се"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> сака да ја вклучи Wi-Fi мрежата"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> сака да ја исклучи Wi-Fi мрежата"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Вклучи Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Користи Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Поставки за Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Постави и управувај со безжични пристапни точки"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Лозинка"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Прикажи лозинка"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Изберете појас на АП"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Автоматски"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Појас од 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Појас од 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Поставки на ИП"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Повикување преку Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Вклучете Повици преку Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Користете Wi-Fi наместо мобилна мрежа"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Зголемете ја покриеноста со повикување преку Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Параметар за повикување"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Режим – повикување преку Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Поставки за роаминг"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Тип мобилна мрежа"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Информации за операторот"</string>
<string name="status_data_state" msgid="5503181397066522950">"Состојба на мобилна мрежа"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Состојба на услуга"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Јачина на сигнал"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роаминг"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Може да се ресетира мрежа, апликации или уред"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Ресетирај Wi-Fi, мобилен интернет и Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Ова ќе ги ресетира сите мрежни поставки, вклучувајќи:\n\n"<li>"Wi‑Fi"</li>\n<li>"Мобилен интернет"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Ресетирај ги и eSIM-картичките"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Избришете ги сите eSIM-картички на телефонот. Треба да контактирате со операторот за повторно да ја преземете вашата eSIM-картичка. Тоа нема да го откаже вашиот план за мобилна услуга."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Ресетирај поставки"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Да се ресетираат сите мрежни поставки? Не може да се врати ова дејство!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Ресетирај поставки"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Ресетирај?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Мрежното ресетирање не е достапно за овој корисник"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Мрежните поставки се ресетирани"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Не може да се ресетираат eSIM-картичките"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIM-картичките не може да се ресетираат поради грешка."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Избриши ги сите податоци (фабричко ресетирање)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Ова ќе ги избрише сите податоци од "<b>"внатрешна меморија"</b>"на вашиот таблет, заедно со:\n\n"<li>"вашата сметка на Google"</li>\n<li>"податоци и поставки на систем и апликации"</li>\n<li>"преземени апликации"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Ова ќе ги избрише сите податоци од "<b>"внатрешната меморија"</b>" на телефонот, заедно со:\n\n"<li>"вашата сметка на Google"</li>\n<li>"податоци и поставки на систем и апликации"</li>\n<li>"преземени апликации"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Моментално сте најавени на следниве сметки:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Присутни се и други корисници на уредот.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Музика"</li>\n<li>"Фотографии"</li>\n<li>"Други податоци за корисникот"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Оператори на eSIM-картичката"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM-картички"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Тоа нема да го откаже вашиот пакет за мобилни услуги."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"За да исчистите музика, слики и други податоци на корисникот, "<b>"меморијата"</b>" треба да се избрише."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"За да исчистите музика, слики и други податоци на корисникот, "<b>"СД картичката"</b>" треба да се избрише."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Поврзете се на интернет"</string>
<string name="location_title" msgid="1029961368397484576">"Моја локација"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Локација за работен профил"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Режим"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Голема прецизност"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Заштеда на батерија"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Само уред"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Локацијата е исклучена"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Дозволи на ниво на апликација"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Последни барања за локација"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Нема апликации што скоро побарале локација"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Услуги за локација"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Голема употреба на батеријата"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Мала употреба на батеријата"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Режим на локација"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Користи GPS, Wi‑Fi, Bluetooth или мобилни мрежи за утврдување на локацијата"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Користи Wi‑Fi, Bluetooth или мобилни мрежи за утврдување на локацијата"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Користи GPS и сензорите на уредот за утврдување на локацијата"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Скенирање"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Скенирање на Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"За да ја подобрите локацијата, дозволете системските апликации и услуги да откриваат Wi‑Fi мрежи во секое време."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Извори на локација"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"За таблет"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"За телефонот"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"За уредот"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"За емулирани уреди"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Прикажи правни информации, статус, верзија на софтвер"</string>
<string name="legal_information" msgid="5769301644270604095">"Правни информации"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Видете ги сите <xliff:g id="COUNT">%1$d</xliff:g> апликации"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Вашиот таблет и личните податоци се повеќе подложни на напади од апликации од непознати извори. Ако инсталирате апликации од изворов, се согласувате дека сте одговорни за каква било штета на таблетот или губењето податоци што може да произлезат од користењето на овие апликации."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Вашиот телефон и личните податоци се повеќе подложни на напади од апликации од непознати извори. Ако инсталирате апликации од изворов, се согласувате дека сте одговорни за каква било штета на телефонот или губењето податоци што може да произлезат од користењето на овие апликации."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Вашиот уред и личните податоци се повеќе подложни на напади од непознати апликации. Ако инсталирате апликации од изворов, се согласувате дека сте одговорни за каква било штета на уредот или губење податоци што може да произлезат од користењето на апликациите."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Напредни поставки"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Овозможи повеќе опции за подесување"</string>
<string name="application_info_label" msgid="5736524913065714880">"Информации за апликацијата"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Може да влијае на изведбата"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Кликнување откако покажувачот ќе престане да се движи"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Одложување пред кликнување"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Користи ја услугата"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Користи корекција на боите"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Користи титлови"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ВКЛУЧЕНО"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ИСКЛУЧЕНО"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Прикажи во „Брзи поставки“"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Преостануваат <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> до полнење"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Активност во заднина"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Ограничено"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Дозволете апликацијата да работи во заднина"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Апликациите може да се извршуваат во заднина кога не се користат"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Активноста на апликациите во заднина е ограничена кога не се користат"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Апликациите се однесуваат нормално"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Низок капацитет на батеријата"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Батеријата не може да обезбеди добар век на траење"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Вклучете го паметниот управник со батерија"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Вклучете за да се оптимизира користењето на батеријата"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Вклучување режим на „Слаба батерија“"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Продолжете го траењето на вашата батерија"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Режимот на „Слаба батерија“ е вклучен"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Некои функции се ограничени"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Телефонот е користен интензивно"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Таблетот е користен интензивно"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Уредот е користен интензивно"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Оптимизација на апликација"</string>
<string name="battery_saver" msgid="8172485772238572153">"Штедач на батерија"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Користи го штедачот на батерија"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Вклучи автоматски"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Никогаш"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"при <xliff:g id="PERCENT">%1$s</xliff:g> батерија"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Во моментов има проблеми со синхронизацијата. Ќе се среди наскоро."</string>
<string name="add_account_label" msgid="7811707265834013767">"Додај сметка"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Работниот профил уште не е достапен"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Режим на работа"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Дозволете работниот профил да функционира, вклучувајќи ги апликациите, синхронизирањето во заднина и други поврзани карактеристики"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Работен профил"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Управувано од вашата организација"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Апликациите и известувањата се исклучени"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Отстрани го работниот профил"</string>
<string name="background_data" msgid="5779592891375473817">"Податоци во заднина"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Апл. може секогаш да се синхрон., праќаат и примаат податоци"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Отстрани сметка?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Со отстранување на оваа сметка ќе се избришат сите нејзини пораки, контакти и другите податоци од таблетот!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Со отстранување на оваа сметка ќе се избришат сите нејзини пораки, контакти и другите податоци од телефонот!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Со отстранување на оваа сметка ќе се избришат сите нејзини пораки, контакти и другите податоци од уредот!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Администраторот не ја дозволува промената"</string>
<string name="provider_label" msgid="7724593781904508866">"Рекламни претплати"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">Проверка на сертификати</item>
<item quantity="other">Проверка на сертификати</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Корисници"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Повеќе корисници"</string>
<string name="user_list_title" msgid="7937158411137563543">"Корисници и профили"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Додајте корисник или профил"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Додајте корисник"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Апликации и известувања"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Дозволи, стандардни апликации"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Корисници и сметки"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Сметки"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Стандардни апликации"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Јазици, време, бекап и ажурирања"</string>
<string name="search_results_title" msgid="1796252422574886932">"Поставки"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"не вознемирувај, прекини, прекинување, пауза"</string>
<string name="keywords_app" msgid="6334757056536837791">"РАМ"</string>
<string name="keywords_location" msgid="6615286961552714686">"во близина, локација, историја, известување"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"точност"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"сметка"</string>
<string name="keywords_users" msgid="3434190133131387942">"ограничување, ограничи, ограничено"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"поправка на текст, поправи, звук, вибрирај, автоматски, јазик, движење, предложи, предлог, тема, навредлив, збор, напиши, емотикон, меѓународно"</string>
@@ -2886,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"мрежа, состојба на мобилна мрежа, состојба на услуга, јачина на сигнал, тип на мобилна мрежа, роаминг, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"сериски број, верзија на хардвер"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"ниво на безбедносна лепенка на Android, верзија на радиомодул, верзија на кернел"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Амбиентален екран, Екран за заклучување на екранот"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Поставете Wi-Fi ознака за NFC"</string>
<string name="write_tag" msgid="8571858602896222537">"Пишувај"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Допрете ознака да пишувате…"</string>
@@ -2929,6 +2914,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> правила</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Не вознемирувај"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Исклучување на „Не вознемирувај“"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Однесување"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Дозволете звуци и вибрации од"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Без звук"</string>
@@ -2938,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Вклучи автоматски"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Автоматски правила"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Автоматско правило"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Правила за „Не вознемирувај“"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Ограничете звуци и вибрации"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Не вознемирувај во одредено време"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Правила за „Не вознемирувај“"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Користи го правилото"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Само приоритетно"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Само аларми"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Целосна тишина"</string>
@@ -2947,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокирајте визуелни нарушувања"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Дозволи визуелни сигнали"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Додај"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Вклучи"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Вклучи сега"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Исклучи сега"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Режимот „Не вознемирувај“ ќе биде вклучен до <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Режимот „Не вознемирувај“ ќе биде вклучен сѐ додека не го исклучите"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Дадено правило <xliff:g id="RULE_NAME">%s</xliff:g> го вклучи режимот „Не вознемирувај“ автоматски"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Дадена апликација <xliff:g id="APP_NAME">%s</xliff:g> го вклучи режимот „Не вознемирувај“ автоматски"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Само приоритетно"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Звуци на работниот профил"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Користи звуци од личен профил"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Звуците се исти за работниот и личниот профил"</string>
@@ -2968,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Мелодии"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Други звуци и вибрации"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Известувања"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Неодамна испратени"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Напредни"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Известувања за работен профил"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Дозволи точки за известување"</string>
@@ -3183,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Освен користењето на отпечатокот за отклучување на уредот, може дополнително да го заштитите ако бара лозинка пред да се стартува. Сѐ додека уредот не се стартува, не може да прима повици, пораки или известувања, вклучувајќи и аларми.\n\nТоа помага да се заштитат податоците на загубени или украдени уреди. Да се бара лозинка за стартување на уредот?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Да"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Не"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Да"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Не"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Барајте PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Барајте шема?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Барајте лозинка?"</string>
@@ -3312,8 +3307,8 @@
<string name="high_power_off" msgid="3393904131961263278">"Се оптимизира користењето на батеријата"</string>
<string name="high_power_system" msgid="7362862974428225301">"Оптимизација на батеријата не е достапна"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Не применувајте оптимизација на батеријата. Може побрзо да ја истроши вашата батерија."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Да се дозволи апликациите секогаш да се извршуваат во заднина?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Ако дозволите „<xliff:g id="APP_NAME">%1$s</xliff:g>“ секогаш да се извршува во заднина, тоа може да ја намали трајноста на батеријата. \n\nТоа може да го промените подоцна во Поставки > Апликации и известувања."</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Да се извршува во заднина?"</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Ако дозволите <xliff:g id="APP_NAME">%1$s</xliff:g> секогаш да се извршува во заднина, тоа може да ја намали трајноста на батеријата. \n\nТоа може да го промените подоцна во Поставки > Апликации и известувања."</string>
<string name="battery_summary" msgid="8044042095190688654">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> употреба од последното целосно полнење"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Управување со напојувањето"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Нема употреба на батерија од последното целосно полнење"</string>
@@ -3329,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Одбиј"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Полнење на уредов"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Само ја полни батеријата"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Напојување"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Полнење на поврзаниот уред. Функционира само со уреди што поддржуваат полнење преку USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Пренос на датотеки"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Пренесете ги датотеките на друг уред"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Пренос на фотографии (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Пренесувај фотографии или датотеки ако не е подржан MTP (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Користете го уредот како MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"МИДИ"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Користете го уредов како MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Користете USB за"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Користи USB за"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Полнење на уредот"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Напојување со електрична енергија"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Пренесување датотеки"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Пренесување фотографии (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Користење на уредот како MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Отсликување SMS-пораки"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Проверка на заднината"</string>
<string name="background_check_title" msgid="4534254315824525593">"Целосен пристап до заднината"</string>
@@ -3452,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Тапет, режим во мирување, големина на фонт"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Стави на режим во мирување по 10 минути неактивност"</string>
<string name="memory_summary" msgid="8080825904671961872">"Искористени се просечно <xliff:g id="USED_MEMORY">%1$s</xliff:g> од <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> меморија"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Тековен корисник: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Најавени сте како <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> е стандардна"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ВКЛУЧЕНО / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ВКЛУЧЕНО"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ИСКЛУЧЕНО"</string>
<string name="backup_disabled" msgid="485189128759595412">"Бекапот е оневозможен"</string>
- <string name="about_summary" msgid="924181828102801010">"Ажурирано на Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Дејството не е дозволено"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Не може да се промени јачината на звукот"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Повикувањето не е дозволено"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS-порака не е дозволена"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Камерата не е дозволена"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Слика од екранот не е дозволена"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Не може да се исклучи бекапот"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Дејството е оневозможено. Контактирајте со администраторот на организацијата за да дознаете повеќе."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Повеќе детали"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Администраторот може да ги следи и да управува со апликациите и податоците поврзани со вашиот работен профил, заедно со поставките, дозволите, корпоративниот пристап, мрежната активност и информациите за локацијата на уредот."</string>
@@ -3478,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Преносливата Wi-Fi-точка на пристап <xliff:g id="ID_1">%1$s</xliff:g> е активна. Wi-Fi за овој уред е исклучен."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Авионскиот режим е вклучен"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth и мобилната мрежа се исклучени. Не може да воспоставувате телефонски повици или да се поврзувате на интернет."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Не вознемирувај е вклучено (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Штедачот на батерија е вклучен"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Изведбата е намалена. Услугите според локација и податоците од заднина се исклучени."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Мобилниот интернет е исклучен"</string>
@@ -3488,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Работниот профил е исклучен"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Апликациите, синхронизирањето во заднина и други карактеристики поврзани со вашиот работен профил се исклучени."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Поставете распоред на „Ноќно светло“"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Боја на килибар за да заспиете"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Автоматски затемнувај го екранот секоја ноќ"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Ноќното светло е вклучено"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Екранот е обоен во килибарна боја. Ова може да ви помогне да заспиете."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Предложено за вас"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Предлози"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Уште <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3595,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"нема"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Рангираниот објект недостастасува."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Рангираниот објект не го содржи овој клуч."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Симулирање екран со пресекување"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Нема"</string>
<string name="special_access" msgid="3458780842491881155">"Посебен пристап за апликации"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> апликација може да користи неограничен интернет</item>
@@ -3617,10 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Поврзан со повеќе уреди"</string>
<string name="demo_mode" msgid="2798762752209330277">"Демо-режим на кориснички интерфејс на систем"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Плочки на програмерот за брзи поставки"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Трага од прозорец"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Површинска трага"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Поставки на работен профил"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Пребарување контакти"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Дозволете при пребарувањата контакти на вашата организација да се препознаваат повикувачи и контакти"</string>
@@ -3640,8 +3663,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"За помош при ослободувањето простор за меморијата, управникот со меморијата ги отстранува резервните копии од фотографиите и видеата од уредот."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Отстранете фотографии и видеа"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Управник со меморија"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Користи го управникот со меморија"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Автоматски"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Рачни"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Ослободете простор сега"</string>
@@ -3652,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Скокнете до камерата"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"За брзо отворање на камерата, притиснете го копчето за вклучување двапати. Работи од секој екран."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Отворајте ја камерата набрзина"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"За камерата, притиснете го копчето за вклучување двапати"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Превртете ја камерата"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Направете селфи-фотографии побрзо"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Завртете го телефонот двапати за режим на селфи"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Завртете го таблетот двапати за режим на селфи"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Завртете го уредот двапати за режим на селфи"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Допрете двапати за да го проверите телефонот"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Допрете двапати за да го проверите таблетот"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Допрете двапати за да го проверите уредот"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"За да ги проверите времето, иконите за известување и другите информации, допрете двапати на екранот."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Проверувајте ги известувањата кога екранот е исклучен"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Подигнете за да го проверите телефонот"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Подигнете за да го проверите таблетот"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Подигнете за да го проверите уредот"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"За да ги проверите времето, иконите за известување и другите информации, земете го телефонот."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"За да ги проверите времето, иконите за известување и другите информации, земете го таблетот."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"За да ги проверите времето, иконите за известување и другите информации, земете го уредот."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Проверувајте ги известувањата кога екранот е исклучен"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Повлечете отпечаток за известувања"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Повлечете отпечаток"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"За да ги проверите известувањата, повлечете надолу на сензорот за отпечатоци на задната страна на телефонот."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"За да ги проверите известувањата, повлечете надолу на сензорот за отпечатоци на задната страна на таблетот."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"За да ги проверите известувањата, повлечете надолу на сензорот за отпечатоци на задната страна на уредот."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Видете ги известувањата набрзина"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Повлечете надолу на сензорот за отпечатоци"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Вклучено"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Исклучено"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Подигнувачот веќе е отклучен"</string>
@@ -3809,8 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Функцијава не е достапна на овој уред"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Присилување целосни мерења со GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Следете ги сите констелации и фреквенции со GNSS без работен циклус"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Секогаш прикажувај дијалог на пад"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Прикажи дијалог при секој пад на апликација"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Пристап до адресарот"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"пристап до адресарот"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Мојот телефон"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Мојот таблет"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Мојот уред"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Сметка"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Име на уред"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Користење Bluetooth при возење"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Вклучување Bluetooth автоматски при возење"</string>
</resources>
diff --git a/res/values-ml/arrays.xml b/res/values-ml/arrays.xml
index db0bb5f..a336127 100644
--- a/res/values-ml/arrays.xml
+++ b/res/values-ml/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"പുഷ് ബട്ടൺ"</item>
<item msgid="1624323946324499595">"പിയർ ഉപകരണത്തിൽ നിന്നുള്ള പിൻ"</item>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 17273bc..b8a9c12 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"തീയതി സജ്ജീകരിക്കുക"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"അക്ഷരമാലക്രമത്തിൽ അടുക്കുക"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"സമയ മേഖലയനുസരിച്ച് അടുക്കുക"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TRANSITION_DATE">%2$s</xliff:g>-ന് <xliff:g id="TIME_TYPE">%1$s</xliff:g> ആരംഭിക്കുന്നു."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"പകൽ നേരത്ത് സംരക്ഷിക്കുന്ന സമയം"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"സ്റ്റാന്ഡേര്ഡ് സമയം"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"പ്രദേശ പ്രകാരമുള്ള സമയ മേഖല"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"സ്ഥിരമായ ഓഫ്സെറ്റ് സമയ മേഖലകൾ"</string>
<string name="date_picker_title" msgid="1338210036394128512">"തീയതി"</string>
<string name="time_picker_title" msgid="483460752287255019">"സമയം"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"സ്വമേധയാ ലോക്കുചെയ്യുക"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"ലോക്ക് സ്ക്രീൻ സന്ദേശം"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"വിജറ്റുകൾ പ്രവർത്തനക്ഷമമാക്കുക"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"അഡ്മിൻ പ്രവർത്തനരഹിതമാക്കി"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"ലോക്ക്ഡൗൺ ഓപ്ഷൻ കാണിക്കുക"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"വിപുലീകൃത ആക്സസും ഫിംഗർപ്രിന്റ് അൺലോക്ക് ചെയ്യലും ഓഫാക്കുന്ന പവർ ബട്ടൺ ഓപ്ഷൺ പ്രദർശിപ്പിക്കുക."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ഒന്നുമില്ല"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ഉദാ. ജോയുടെ Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"പ്രൊഫൈൽ വിവരം"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"അക്കൗണ്ടുകൾ"</string>
<string name="location_settings_title" msgid="1369675479310751735">"ലൊക്കേഷൻ"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"ലൊക്കേഷൻ ഉപയോഗിക്കുക"</string>
<string name="account_settings_title" msgid="626177544686329806">"അക്കൗണ്ടുകൾ"</string>
<string name="security_settings_title" msgid="4918904614964215087">"സുരക്ഷയും ലൊക്കേഷനും"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"എൻക്രിപ്ഷനും ക്രെഡന്ഷ്യലുകളും"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"നിങ്ങൾ നൽകിയ പാസ്വേഡ് ശരിയാണെങ്കിലും നിർഭാഗ്യവശാൽ ഡാറ്റ കേടായി. \n\nനിങ്ങളുടെ ടാബ്ലെറ്റ് ഉപയോഗിച്ച് പുനരാരംഭിക്കാൻ ഒരു ഫാക്ടറി പുനഃസജ്ജീകരണം നടത്തേണ്ടതുണ്ട്. പുനഃസജ്ജീകരിച്ച ശേഷം നിങ്ങളുടെ ടാബ്ലെറ്റ് സജ്ജീകരിക്കുമ്പോൾ, Google അക്കൗണ്ടിൽ ബാക്കപ്പുചെയ്തിരിക്കുന്ന എല്ലാ ഡാറ്റയും പുനഃസ്ഥാപിക്കാൻ അവസരം ലഭിക്കും."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"നിങ്ങൾ നൽകിയ പാസ്വേഡ് ശരിയാണെങ്കിലും നിർഭാഗ്യവശാൽ ഡാറ്റ കേടായി. \n\nനിങ്ങളുടെ ഫോൺ ഉപയോഗിച്ച് പുനരാരംഭിക്കാൻ ഒരു ഫാക്ടറി പുനഃസജ്ജീകരണം നടത്തേണ്ടതുണ്ട്. പുനഃസജ്ജീകരിച്ച ശേഷം നിങ്ങളുടെ ഫോൺ സജ്ജീകരിക്കുമ്പോൾ, Google അക്കൗണ്ടിൽ ബാക്കപ്പുചെയ്തിരിക്കുന്ന എല്ലാ ഡാറ്റയും പുനഃസ്ഥാപിക്കാൻ അവസരം ലഭിക്കും."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ടൈപ്പിംഗ് രീതി മാറുക"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"സ്ക്രീൻ ലോക്ക് സജ്ജമാക്കുക"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"നിങ്ങളുടെ ഉപകരണം പരിരക്ഷിക്കുക"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"വിരലടയാളം ഉപയോഗിക്കുക"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് അൺലോക്കുചെയ്യുക"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"സുരക്ഷയ്ക്കായി സ്ക്രീൻ ലോക്ക് സജ്ജീകരിക്കുക"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"നിങ്ങളുടെ ടാബ്ലെറ്റ് ഉപയോഗിക്കുന്നതിൽ നിന്ന് മറ്റുള്ളവരെ തടയുക"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"നിങ്ങളുടെ ഉപകരണം ഉപയോഗിക്കുന്നതിൽ നിന്ന് മറ്റുള്ളവരെ തടയുക"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"നിങ്ങളുടെ ഫോൺ ഉപയോഗിക്കുന്നതിൽ നിന്ന് മറ്റുള്ളവരെ തടയുക"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് അൺലോക്ക് ചെയ്യുക"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് അൺലോക്കുചെയ്യുക"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് അൺലോക്കുചെയ്യുക"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"നിങ്ങളുടെ ഫിംഗർപ്രിന്റ് ഉപയോഗിച്ച് അൺലോക്കുചെയ്യുക"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"സ്ക്രീൻലോക്ക് തിരഞ്ഞെടുക്കൂ"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"ഔദ്യോഗിക ലോക്ക് തിരഞ്ഞെടുക്കുക"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ടാബ്ലെറ്റ് പരിരക്ഷിക്കുക"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"പേര്"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"സൈൻ ഇൻ ചെയ്യുക"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"വൈഫൈ ഓഫാക്കാൻ <xliff:g id="REQUESTER">%s</xliff:g> താൽപ്പര്യപ്പെടുന്നു"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"വൈഫൈ ഓഫാക്കാൻ <xliff:g id="REQUESTER">%s</xliff:g> താൽപ്പര്യപ്പെടുന്നു"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"വൈഫൈ"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"വൈഫൈ ഓണാക്കുക"</string>
<string name="wifi_settings" msgid="29722149822540994">"വൈഫൈ"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"വൈഫൈ ഉപയോഗിക്കുക"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"വൈഫൈ ക്രമീകരണങ്ങൾ"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"വൈഫൈ"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"വയർലെസ് ആക്സസ് പോയിന്റുകൾ സജ്ജീകരിക്കുക, നിയന്ത്രിക്കുക"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"പാസ്വേഡ്"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"പാസ്വേഡ് കാണിക്കുക"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP ബാൻഡ് തിരഞ്ഞെടുക്കുക"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"സ്വമേധയാ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz ബാൻഡ്"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz ബാൻഡ്"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ക്രമീകരണം"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"വൈഫൈ കോളിംഗ്"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"വൈഫൈ കോളിംഗ് ഓണാക്കുക"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"മൊബൈൽ നെറ്റ്വർക്കിന് പകരം വൈഫൈ ഉപയോഗിക്കുക"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"വൈഫൈയിലൂടെ വിളിക്കുക വഴി കവറേജ് വർദ്ധിപ്പിക്കുക"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"കോളിംഗ് മുൻഗണന"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"വൈഫൈ കോളിംഗ് മോഡ്"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"റോമിംഗ് മുൻഗണന"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"മൊബൈൽ നെറ്റ്വർക്ക് തരം"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ഓപ്പറേറ്റർ വിവരം"</string>
<string name="status_data_state" msgid="5503181397066522950">"മൊബൈൽ നെറ്റ്വർക്ക് നില"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"സേവന നില"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"സിഗ്നൽ ശക്തി"</string>
<string name="status_roaming" msgid="2638800467430913403">"റോമിംഗ്"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"നെറ്റ്വർക്കോ ആപ്പുകളോ ഉപകരണമോ റീസെറ്റുചെയ്യാം"</string>
<string name="reset_network_title" msgid="6166025966016873843">"വൈഫൈ, മൊബൈൽ, Bluetooth എന്നിവ റീസെറ്റുചെയ്യുക"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"ഇങ്ങനെ ചെയ്താൽ ഇനിപ്പറയുന്നവ ഉപ്പെടെയുള്ള എല്ലാ നെറ്റ്വർക്ക് ക്രമീകരണവും പുനഃക്രമീകരിക്കപ്പെടും:\n\n"<li>"വൈഫൈ"</li>\n<li>"മൊബൈൽ ഡാറ്റ"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"ഇ-സിമ്മുകളും പുനഃസജ്ജീകരിക്കുക"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ഫോണിലെ എല്ലാ ഇ-സിമ്മുകളും മായ്ക്കുക. ഇ-സിമ്മുകൾ വീണ്ടും ഡൗൺലോഡ് ചെയ്യാൻ കാരിയറെ ബന്ധപ്പെടുക. ഇത് നിങ്ങളുടെ മൊബൈൽ സേവന പ്ലാൻ റദ്ദാക്കില്ല."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ക്രമീകരണം റീസെറ്റുചെയ്യുക"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"എല്ലാ നെറ്റ്വർക്കിംഗ് ക്രമീകരണവും റീസെറ്റുചെയ്യണോ? നിങ്ങൾക്ക് ഈ പ്രവർത്തനം പഴയപടിയാക്കാനാവില്ല!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ക്രമീകരണം റീസെറ്റുചെയ്യുക"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"റീസെറ്റുചെയ്യണോ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ഈ ഉപയോക്താവിന് നെറ്റ്വർക്ക് റീസെറ്റ് ലഭ്യമല്ല"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"നെറ്റ്വർക്ക് ക്രമീകരണം റീസെറ്റുചെയ്തു"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ഇ-സിമ്മുകൾ പുനഃസജ്ജീകരിക്കാനാവില്ല"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"പിശക് കാരണം ഇ-സിമ്മുകൾ പുനഃസജ്ജീകരിക്കാനാവില്ല."</string>
<string name="master_clear_title" msgid="3531267871084279512">"എല്ലാ ഡാറ്റയും മായ്ക്കുക (ഫാക്ടറി റീസെറ്റ്)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ഇത് നിങ്ങളുടെ ടാബ്ലെറ്റിന്റെ "<b>"ആന്തരിക സംഭരണത്തിൽ"</b>" നിന്നും ഇവയുൾപ്പെടെ എല്ലാ ഡാറ്റയും മായ്ക്കും:\n\n"<li>"നിങ്ങളുടെ Google അക്കൗണ്ട്"</li>\n<li>"സിസ്റ്റത്തിന്റെയും അപ്ലിക്കേഷന്റെയും ഡാറ്റയും ക്രമീകരണങ്ങളും"</li>\n<li>"ഡൗൺലോഡുചെയ്ത അപ്ലിക്കേഷനുകൾ"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ഇത് നിങ്ങളുടെ ഫോണിലെ "<b>"ആന്തരിക സംഭരണത്തിലെ"</b>" എല്ലാ ഡാറ്റയും മായ്ക്കും, അതിൽ ഇവയുൾപ്പെടുന്നു:\n\n"<li>"നിങ്ങളുടെ Google അക്കൗണ്ട്"</li>\n<li>"സിസ്റ്റം, അപ്ലിക്കേഷൻ എന്നിവയുടെ ഡാറ്റയും ക്രമീകരണങ്ങളും"</li>\n<li>"ഡൗൺലോഡ്ചെയ്ത അപ്ലിക്കേഷനുകൾ"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"നിങ്ങൾ നിലവിൽ ഇനിപ്പറയുന്ന അക്കൗണ്ടുകളിൽ സൈൻ ചെയ്തിരിക്കുന്നു:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ഈ ഉപകരണത്തിൽ മറ്റ് ഉപയോക്താക്കളുണ്ട്.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"സംഗീതം"</li>\n<li>"ഫോട്ടോകൾ"</li>\n<li>"മറ്റ് ഉപയോക്തൃ ഡാറ്റ"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM-ലെ കാരിയറുകൾ"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"ഇ-സിമ്മുകൾ"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"നിങ്ങളുടെ മൊബൈൽ സർവീസ് പ്ലാൻ ഇത് റദ്ദാക്കുകയില്ല."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"സംഗീതം, ചിത്രങ്ങൾ, മറ്റ് ഉപയോക്തൃ ഡാറ്റ എന്നിവ മായ്ക്കുന്നതിന്, "<b>"USB സ്റ്റോറേജ് "</b>" മായ്ക്കേണ്ടതുണ്ട്."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"സംഗീതം, ചിത്രങ്ങൾ, മറ്റ് ഉപയോക്തൃ ഡാറ്റ എന്നിവ മായ്ക്കുന്നതിന്, "<b>"SD കാർഡ്"</b>" മായ്ക്കേണ്ടതുണ്ട്."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"ഇന്റർനെറ്റിൽ കണക്റ്റുചെയ്യുക"</string>
<string name="location_title" msgid="1029961368397484576">"എന്റെ ലൊക്കേഷൻ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"ഔദ്യോഗിക പ്രൊഫൈലിനായുള്ള ലൊക്കേഷൻ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"മോഡ്"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ഉയർന്ന കൃത്യത"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ബാറ്ററി ലാഭിക്കൽ"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"ഉപകരണം മാത്രം"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"ലോക്കേഷൻ ഓഫാണ്"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ആപ്പ്-തല അനുമതികൾ"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"പുതിയ ലൊക്കേഷൻ അഭ്യർത്ഥനകൾ"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"അപ്ലിക്കേഷനുകളൊന്നും അടുത്തിടെ ലൊക്കേഷൻ അഭ്യർത്ഥിച്ചില്ല"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"ലൊക്കേഷൻ സേവനങ്ങൾ"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ഉയർന്ന ബാറ്ററി ഉപയോഗം"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"കുറഞ്ഞ ബാറ്ററി ഉപയോഗം"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"സ്ഥാന നിർണ്ണയ രീതി"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"GPS, വൈഫൈ, Bluetooth, മൊബൈൽ നെറ്റ്വർക്കുകൾ എന്നിവയിലൊന്ന് ലൊക്കേഷൻ നിർണ്ണയിക്കുന്നതിന് ഉപയോഗിക്കുക"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"വൈഫൈ, Bluetooth, മൊബൈൽ നെറ്റ്വർക്കുകൾ എന്നിവയിലൊന്ന് ലൊക്കേഷൻ നിർണ്ണയിക്കുന്നതിന് ഉപയോഗിക്കുക"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ലൊക്കേഷൻ നിർണ്ണയിക്കാൻ GPS-ഉം ഉപകരണ സെൻസറുകളും ഉപയോഗിക്കുക"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"സ്കാനിംഗ്"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"വൈഫൈ സ്കാനിംഗ്"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ഏത് സമയത്തും വൈഫൈ നെറ്റ്വർക്കുകളെ തിരിച്ചറിയാൻ സിസ്റ്റം ആപ്സിനെയും സേവനങ്ങളെയും അനുവദിച്ചുകൊണ്ട് ലൊക്കേഷൻ മെച്ചപ്പെടുത്തുക."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"ലൊക്കേഷൻ ഉറവിടങ്ങൾ"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ടാബ്ലെറ്റിന് ഒരാമുഖം"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ഫോണിന് ഒരാമുഖം"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ഉപകരണ വിവരം"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"എമുലേറ്റഡ് ഉപകരണത്തെ കുറിച്ച്"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"നിയമ വിവരം, നില, സോഫ്റ്റ്വെയർ പതിപ്പ് എന്നിവ കാണുക"</string>
<string name="legal_information" msgid="5769301644270604095">"നിയമപരമായ വിവരം"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"എല്ലാ <xliff:g id="COUNT">%1$d</xliff:g> ആപ്പുകളും കാണൂ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"തിരിച്ചറിയാനാകാത്ത ആപ്സിനാൽ നിങ്ങളുടെ ടാബ്ലെറ്റും വ്യക്തിഗത ഡാറ്റയും ആക്രമിക്കപ്പെടാനുള്ള സാധ്യത വളരെ കൂടുതലാണ്. ഈ ഉറവിടത്തിൽ നിന്ന് ആപ്സ് ഇൻസ്റ്റാൾ ചെയ്യുന്നതിലൂടെ, ഈ ആപ്സ് ഉപയോഗിക്കുന്നതിനാൽ നിങ്ങളുടെ ടാബ്ലെറ്റിന് സംഭവിച്ചേക്കാവുന്ന എല്ലാ നാശനഷ്ടങ്ങൾക്കും അല്ലെങ്കിൽ ഡാറ്റാ നഷ്ടങ്ങൾക്കും നിങ്ങൾക്കാണ് ഉത്തരവാദിത്തമെന്ന് നിങ്ങൾ അംഗീകരിക്കുന്നു."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"തിരിച്ചറിയാനാകാത്ത ആപ്സിനാൽ നിങ്ങളുടെ ഫോണും വ്യക്തിഗത ഡാറ്റയും ആക്രമിക്കപ്പെടാനുള്ള സാധ്യത വളരെ കൂടുതലാണ്. ഈ ഉറവിടത്തിൽ നിന്ന് ആപ്സ് ഇൻസ്റ്റാൾ ചെയ്യുന്നതിലൂടെ, ഈ ആപ്സ് ഉപയോഗിക്കുന്നതിനാൽ നിങ്ങളുടെ ഫോണിന് സംഭവിച്ചേക്കാവുന്ന എല്ലാ നാശനഷ്ടങ്ങൾക്കും അല്ലെങ്കിൽ ഡാറ്റാ നഷ്ടങ്ങൾക്കും നിങ്ങൾക്കാണ് ഉത്തരവാദിത്തമെന്ന് നിങ്ങൾ അംഗീകരിക്കുന്നു."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"തിരിച്ചറിയാനാകാത്ത ആപ്പുകളാൽ നിങ്ങളുടെ ഉപകരണവും വ്യക്തിഗത ഡാറ്റയും ആക്രമിക്കപ്പെടാനുള്ള സാധ്യത വളരെ കൂടുതലാണ്. ഈ ഉറവിടത്തിൽ നിന്ന് ആപ്പുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിലൂടെ, ഈ ആപ്സ് ഉപയോഗിക്കുന്നതിനാൽ നിങ്ങളുടെ ഉപകരണത്തിന് സംഭവിച്ചേക്കാവുന്ന എല്ലാ നാശനഷ്ടങ്ങൾക്കും അല്ലെങ്കിൽ ഡാറ്റാ നഷ്ടങ്ങൾക്കും നിങ്ങൾക്കാണ് ഉത്തരവാദിത്തമെന്ന് നിങ്ങൾ അംഗീകരിക്കുന്നു."</string>
<string name="advanced_settings" msgid="1777249286757067969">"വിപുലമായ ക്രമീകരണം"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"കൂടുതൽ ക്രമീകരണ ഓപ്ഷനുകൾ പ്രവർത്തനക്ഷമമാക്കുക"</string>
<string name="application_info_label" msgid="5736524913065714880">"ആപ്പ് വിവരം"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"പ്രകടനത്തെ ബാധിച്ചേക്കാം"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"പോയിന്റർനിന്നശേഷം ക്ലിക്കുചെയ്യൂ"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ക്ലിക്കിന് മുമ്പുള്ള കാലതാമസം"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"സേവനം ഉപയോഗിക്കുക"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"നിറം ക്രമീകരിക്കൽ ഉപയോഗിക്കുക"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"അടിക്കുറിപ്പുകൾ ഉപയോഗിക്കുക"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ഓൺ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ഓഫ്"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"ദ്രുത്ര ക്രമീകരണങ്ങളിൽ ദൃശ്യമാക്കുക"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ശേഷിക്കുന്നു"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"ചാർജ്ജാകാനുള്ള സമയം <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"പശ്ചാത്തല ആക്റ്റിവിറ്റി"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"നിയന്ത്രിച്ചിരിക്കുന്നു"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"പശ്ചാത്തലത്തിൽ റൺ ചെയ്യുന്നതിന് ആപ്പിനെ അനുവദിക്കുക"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ഉപയോഗത്തിലില്ലാത്തപ്പോൾ ആപ്പിന് പശ്ചാത്തലത്തിൽ റൺ ചെയ്യാനാകും"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ഉപയോഗത്തിലില്ലാത്തപ്പോഴുള്ള ആപ്പിന്റെ പശ്ചാത്തല ആക്റ്റിവിറ്റി പരിമിതപ്പെടുത്തിയിരിക്കുന്നു"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ആപ്പുകൾ സാധാരണ രീതിയിൽ പ്രവർത്തിക്കുന്നു"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"കുറഞ്ഞ ബാറ്ററി ശേഷി"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ബാറ്ററിക്ക് മികച്ച ബാറ്ററി ലൈഫ് നൽകാനാവുന്നില്ല"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"സ്മാർട്ട് ബാറ്ററി മാനേജർ ഓണാക്കുക"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ബാറ്ററി ഉപയോഗം ഓപ്റ്റിമൈസ് ചെയ്യാൻ ഓണാക്കുക"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"കുറഞ്ഞ ബാറ്ററി മോഡ് ഓണാക്കുക"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ബാറ്ററി ലൈഫ് വർദ്ധിപ്പിക്കുക"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"കുറഞ്ഞ ബാറ്ററി മോഡ് ഓണാണ്"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"ചില ഫീച്ചറുകൾ പരിമിതമാണ്"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ഫോൺ വൻതോതിൽ ഉപയോഗിച്ചു"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ടാബ്ലെറ്റ് വൻതോതിൽ ഉപയോഗിച്ചു"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ഉപകരണം വൻതോതിൽ ഉപയോഗിച്ചു"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"മീഡിയ സെർവർ"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ആപ്പ് ഓപ്റ്റിമൈസേഷന്"</string>
<string name="battery_saver" msgid="8172485772238572153">"ബാറ്ററി ലാഭിക്കൽ"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ബാറ്ററി ലാഭിക്കൽ ഉപയോഗിക്കുക"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"ഓട്ടോമാറ്റിക്കായി ഓണാക്കുക"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ഒരിക്കലും"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> ബാറ്ററിയിൽ"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"സമന്വയം നിലവിൽ പ്രശ്നങ്ങൾ നേരിടുകയാണ്. ഇത് ഉടൻ ശരിയാകും."</string>
<string name="add_account_label" msgid="7811707265834013767">"അക്കൗണ്ട് ചേർക്കുക"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"ഔദ്യോഗിക പ്രൊഫൈൽ ഇതുവരെ ലഭ്യമല്ല"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"പ്രവർത്തന മോഡ്"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"ആപ്സും, പശ്ചാത്തല സമന്വയവും ബന്ധപ്പെട്ട ഫീച്ചറുകളും ഉൾപ്പെടെ, ഔദ്യോഗിക പ്രൊഫൈലിനെ പ്രവർത്തിക്കാൻ അനുവദിക്കുക"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"ഔദ്യോഗിക പ്രൊഫൈൽ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"നിങ്ങളുടെ സ്ഥാപനം നിയന്ത്രിക്കുന്നത്"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ആപ്പുകളും അറിയിപ്പുകളും ഓഫാണ്"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"ഔദ്യോഗിക പ്രൊഫൈൽ നീക്കംചെയ്യുക"</string>
<string name="background_data" msgid="5779592891375473817">"പശ്ചാത്തല ഡാറ്റ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"അപ്ലിക്കേഷനുകൾക്ക് ഏതു സമയത്തും ഡാറ്റ സമന്വയിപ്പിക്കാനും അയയ്ക്കാനും നേടാനുമാകും"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"അക്കൗണ്ട് നീക്കംചെയ്യണോ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ഈ അക്കൗണ്ട് നീക്കംചെയ്യുന്നത്, അതിന്റെ എല്ലാ സന്ദേശങ്ങളും കോൺടാക്റ്റുകളും മറ്റ് ഡാറ്റയും ടാബ്ലെറ്റിൽ നിന്ന് ഇല്ലാതാക്കുന്നതിനിടയാക്കും!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ഈ അക്കൗണ്ട് നീക്കംചെയ്യുന്നതിലൂടെ, അതിലെ എല്ലാ സന്ദേശങ്ങളും കോൺടാക്റ്റുകളും മറ്റ് ഡാറ്റയും ഫോണിൽ നിന്ന് ഇല്ലാതാക്കപ്പെടും!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ഈ അക്കൗണ്ട് നീക്കം ചെയ്യുന്നതിലൂടെ, അതുമായി ബന്ധപ്പെട്ട എല്ലാ സന്ദേശങ്ങളും കോൺടാക്റ്റുകളും മറ്റ് വിവരങ്ങളും ഉപകരണത്തിൽ നിന്ന് ഇല്ലാതാക്കപ്പെടും!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ഈ മാറ്റം നിങ്ങളുടെ അഡ്മിൻ അനുവദിച്ചതല്ല"</string>
<string name="provider_label" msgid="7724593781904508866">"പുഷ് സബ്സ്ക്രിപ്ഷനുകൾ"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="other">സർട്ടിഫിക്കറ്റുകൾ പരിശോധിക്കുക</item>
<item quantity="one">സർട്ടിഫിക്കറ്റ് പരിശോധിക്കുക</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ഉപയോക്താക്കള്"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"ഒന്നിലധികം ഉപയോക്താക്കൾ"</string>
<string name="user_list_title" msgid="7937158411137563543">"ഉപയോക്താക്കളും പ്രൊഫൈലുകളും"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ഉപയോക്താവിനെയോ പ്രൊഫൈലോ ചേർക്കുക"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ഉപയോക്താവിനെ ചേര്ക്കുക"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, കാസ്റ്റ്"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ആപ്സും അറിയിപ്പുകളും"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"അനുമതികൾ, ഡിഫോൾട്ട് ആപ്പുകൾ"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ഉപയോക്താക്കളും അക്കൗണ്ടും"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"അക്കൗണ്ടുകൾ"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ഡിഫോൾട്ട് ആപ്സ്"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ഭാഷകൾ, സമയം, ബാക്കപ്പ്, അപ്ഡേറ്റുകൾ"</string>
<string name="search_results_title" msgid="1796252422574886932">"ക്രമീകരണം"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"അരുത് ശല്യപ്പെടുത്തരുത്, തടസപ്പെടുത്തുക, തടസം, ബ്രേക്ക്"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"അടുത്തുള്ളത്, ലൊക്കേഷൻ, ചരിത്രം, റിപ്പോർട്ടുചെയ്യൽ"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"കൃത്യത"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"അക്കൗണ്ട്"</string>
<string name="keywords_users" msgid="3434190133131387942">"നിയന്ത്രണം, നിയന്ത്രിക്കുക, നിയന്ത്രിച്ചു"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ടെക്സ്റ്റ് ചെയ്യൽ തിരുത്തൽ, തിരുത്തുക, ശബ്ദം, വൈബ്രേറ്റ് ചെയ്യുക, സ്വമേധയാ, ഭാഷ, വിരൽചലനം, നിർദ്ദേശിക്കുക, നിർദ്ദേശം, തീം, നിന്ദ്യം, പദം, ടൈപ്പുചെയ്യുക, ഇമോജി, അന്തർദ്ദേശീയം"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"നെറ്റ്വർക്ക്, മൊബൈൽ നെറ്റ്വർക്ക് നില, സേവന നില, സിഗ്നൽ ശക്തി, മൊബൈൽ നെറ്റ്വർക്ക് നില, റോമിംഗ്, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"സീരിയൽ നമ്പർ, ഹാർഡ്വെയർ പതിപ്പ്"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android സുരക്ഷാ പാച്ച് നില, ബേസ്ബാൻഡ് പതിപ്പ്, കെർണൽ പതിപ്പ്"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"വൈഫൈ NFC ടാഗ് സജ്ജമാക്കുക"</string>
<string name="write_tag" msgid="8571858602896222537">"റൈറ്റുചെയ്യുക"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"റൈറ്റുചെയ്യാൻ ഒരു ടാഗ് ടാപ്പുചെയ്യുക..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="one">ഒരു നയം</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ശല്യം ചെയ്യരുത്"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'ശല്യപ്പെടുത്തരുത്\' ഓണാക്കുക"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"പ്രവർത്തനരീതി"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ഇനിപ്പറയുന്നതിൽ നിന്നുള്ള ശബ്ദങ്ങളും അലാറമുകളും അനുവദിക്കുക"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ശബ്ദമില്ല"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"സ്വമേധയാ ഓണാക്കുക"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"സ്വമേധയാലുള്ള നയങ്ങൾ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"സ്വമേധയായുള്ള നയം"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\'ശല്യപ്പെടുത്തരുത്\' നിയമങ്ങൾ സജ്ജമാക്കുക"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ചില സമയത്ത് ശബ്ദവും വൈബ്രേഷനും പരിമിതപ്പെടുത്തുക"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"ചില സമയങ്ങളിൽ ഫോൺ നിശബ്ദമാക്കുക"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'ശല്യപ്പെടുത്തരുത്\' നിയമങ്ങൾ സജ്ജമാക്കുക"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"നയം ഉപയോഗിക്കുക"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"മുൻഗണന മാത്രം"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"അലാറങ്ങൾ മാത്രം"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"പൂർണ്ണ നിശബ്ദത"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ദൃശ്യതടസങ്ങൾ ബ്ലോക്കുചെയ്യൂ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ദൃശ്യ സിഗ്നലുകൾ അനുവദിക്കുക"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ചേർക്കുക"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ഓണാക്കുക"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ഇപ്പോൾ ഓണാക്കുക"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ഇപ്പോൾ ഓഫ് ചെയ്യുക"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> വരെ \'ശല്യപ്പെടുത്തരുത്\' ഓണാണ്"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"നിങ്ങൾ ഓഫാക്കുന്നത് വരെ \'ശല്യപ്പെടുത്തരുത്\' ഓണായി തുടരും"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"ഒരു നയം (<xliff:g id="RULE_NAME">%s</xliff:g>) സ്വമേധയാ \'ശല്യപ്പെടുത്തരുത്\' ഓണാക്കി"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ഒരു ആപ്പ് (<xliff:g id="APP_NAME">%s</xliff:g>) സ്വമേധയാ \'ശല്യപ്പെടുത്തരുത്\' ഓണാക്കി"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"മുൻഗണന മാത്രം"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"ഔദ്യോഗിക പ്രൊഫൈൽ ശബ്ദങ്ങൾ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"സ്വകാര്യ പ്രൊഫൈൽ ശബ്ദങ്ങൾ ഉപയോഗിക്കുക"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"ഔദ്യോഗിക പ്രൊഫൈലുകൾക്കും വ്യക്തിഗത പ്രൊഫൈലുകൾക്കുമുള്ള ശബ്ദങ്ങൾ ഒന്നുതന്നെ ആയിരിക്കും"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"റിംഗ്ടോണുകൾ"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"മറ്റ് ശബ്ദങ്ങളും വൈബ്രേഷനുകളും"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"അറിയിപ്പുകൾ"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"അടുത്തിടെ അയച്ചവ"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"വിപുലമായത്"</string>
<string name="profile_section_header" msgid="2320848161066912001">"ഔദ്യോഗിക അറിയിപ്പുകൾ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"അറിയിപ്പ് ഡോട്ടുകൾ അനുവദിക്കുക"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ഉപകരണം അൺലോക്കുചെയ്യാൻ ഫിംഗർപ്രിന്റ് ഉപയോഗിക്കുന്നതിന് പുറമെ, ഉപകരണം ആരംഭിക്കുന്നതിന് മുമ്പ്, പാറ്റേൺ ആവശ്യപ്പെടുന്ന തരത്തിൽ സജ്ജീകരിച്ചുകൊണ്ട് നിങ്ങൾക്ക് ഉപകരണത്തിന് അധിക പരിരക്ഷ നൽകാവുന്നതാണ്. ഉപകരണം ആരംഭിക്കുന്നതുവരെ, അലാറങ്ങൾ ഉൾപ്പെടെ കോളുകളോ സന്ദേശങ്ങളോ അറിയിപ്പുകളോ സ്വീകരിക്കാനാകില്ല.\n\nനഷ്ടപ്പെടുകയോ മോഷ്ടിക്കപ്പെടുകയോ ചെയ്ത ഉപകരണങ്ങളിലെ വിവരങ്ങൾ പരിരക്ഷിക്കാൻ ഇത് സഹായിക്കുന്നു. നിങ്ങളുടെ ഉപകരണം ആരംഭിക്കുന്നതിന് പാറ്റേൺ ആവശ്യമാക്കണോ?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"അതെ"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"ഇല്ല"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"അതെ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ഇല്ല"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN ആവശ്യമാണോ?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"പാറ്റേൺ ആവശ്യമാണോ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"പാസ്വേഡ് ആവശ്യമാണോ?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"നിരസിക്കുക"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ഈ ഉപകരണം ചാർജുചെയ്യുക"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ഈ ഉപകരണം ചാർജുചെയ്താൽ മാത്രം മതി"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"പവർ നൽകുക"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"കണക്റ്റുചെയ്ത ഉപകരണം ചാർജ്ജുചെയ്യുക. USB ചാർജ്ജുചെയ്യൽ പിന്തുണയ്ക്കുന്ന ഉപകരണങ്ങളിൽ മാത്രം പ്രവർത്തിക്കും."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ഫയലുകൾ കൈമാറുക"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"മറ്റൊരു ഉപകരണത്തിലേക്ക് ഫയലുകൾ കൈമാറുക"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ഫോട്ടോകൾ കൈമാറുക (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP പിന്തുണയ്ക്കുന്നില്ലെങ്കിൽ ഫോട്ടോകളോ ഫയലുകളോ കൈമാറുക (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI ആയി ഉപകരണം ഉപയോഗിക്കുക"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"MIDI ആയി ഈ ഉപകരണം ഉപയോഗിക്കുക"</string>
- <string name="usb_use" msgid="3256040963685055320">"ഇനിപ്പറയുന്നതിന് USB ഉപയോഗിക്കുക"</string>
+ <string name="usb_use" msgid="3372728031108932425">"ഇതിനായി USB ഉപയോഗിക്കുക"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ഈ ഉപകരണം ചാർജ്ജുചെയ്യൽ"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"പവർ നൽകൽ"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ഫയലുകൾ കൈമാറുന്നു"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ഫോട്ടോകൾ കൈമാറുന്നു (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"MIDI ആയി ഉപകരണം ഉപയോഗിക്കുന്നു"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS മിററിംഗ്"</string>
<string name="background_check_pref" msgid="7550258400138010979">"പശ്ചാത്തല പരിശോധന"</string>
<string name="background_check_title" msgid="4534254315824525593">"പൂർണ്ണ പശ്ചാത്തല ആക്സസ്"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"വാൾപേപ്പർ, സ്ലീപ്പ്, ഫോണ്ട് വലുപ്പം"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 മിനിറ്റ് നിഷ്ക്രിയമാണെങ്കിൽ സ്ലീപ്പിലാക്കുക"</string>
<string name="memory_summary" msgid="8080825904671961872">"ശരാശരി <xliff:g id="USED_MEMORY">%1$s</xliff:g> / <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> മെമ്മറി ഉപയോഗിച്ചു"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"നിലവിലെ ഉപയോക്താവ്: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> എന്നയാളായി സൈൻ ഇൻ ചെയ്തു"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ഡിഫോൾട്ട് ആണ്"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ഓൺ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ഓൺ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ഓഫ്"</string>
<string name="backup_disabled" msgid="485189128759595412">"ബാക്കപ്പ് പ്രവർത്തനരഹിതമാക്കി"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g>-ലേക്ക് അപ്ഡേറ്റ് ചെയ്തു"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"പ്രവർത്തനം അനുവദനീയമല്ല"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"വോളിയം മാറ്റാനാകില്ല"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"കോൾ ചെയ്യുന്നത് അനുവദനീയമല്ല"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS അനുവദനീയമല്ല"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ക്യാമറ അനുവദനീയമല്ല"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"സ്ക്രീൻഷോട്ട് അനുവദനീയമല്ല"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ബാക്കപ്പുകൾ ഓഫാക്കാനാവില്ല"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ഈ പ്രവൃത്തി പ്രവർത്തനരഹിതമാക്കി, നിങ്ങളുടെ സ്ഥാപനത്തിന്റെ അഡ്മിനെ ബന്ധപ്പെടുക."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"കൂടുതൽ വിശദാംശങ്ങൾ"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"ക്രമീകരണവും അനുമതികളും കോർപ്പറേറ്റ് ആക്സസ്സും നെറ്റ്വർക്ക് ആക്റ്റിവിറ്റിയും ഉപകരണത്തിന്റെ ലൊക്കേഷൻ വിവരങ്ങളും ഉൾപ്പെടെ, നിങ്ങളുടെ ഔദ്യോഗിക പ്രൊഫൈലുമായി ബന്ധപ്പെട്ട ആപ്സും ഡാറ്റയും നിരീക്ഷിക്കാനും മാനേജുചെയ്യാനും അഡ്മിന് കഴിയും."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"പോർട്ടബിൾ വൈഫൈ ഹോട്ട്സ്പോട്ട് <xliff:g id="ID_1">%1$s</xliff:g> സജീവമാണ്, ഈ ഉപകരണത്തിനായുള്ള വൈഫൈ ഓഫാക്കിയിരിക്കുന്നു."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"വിമാന മോഡ് ഓണാണ്"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"വൈഫൈ, Bluetooth, മൊബൈൽ നെറ്റ്വർക്ക് എന്നിവ ഓഫാക്കിയിരിക്കുന്നു. നിങ്ങൾക്ക് കോൾ ചെയ്യാനോ ഇന്റർനെറ്റിലേക്ക് കണക്റ്റ് ചെയ്യാനോ ആവില്ല."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\'ശല്യപ്പെടുത്തരുത്\' ഓണാണ് (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ബാറ്ററി ലാഭിക്കൽ ഓണാണ്"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"പ്രകടനനിലവാരം കുറഞ്ഞിരിക്കുന്നു. ലൊക്കേഷൻ സേവനങ്ങളും പശ്ചാത്തല ഡാറ്റയും ഓഫാക്കി."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"മൊബൈൽ ഡാറ്റ ഓഫാണ്"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"ഔദ്യോഗിക പ്രൊഫൈൽ ഓഫാണ്"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"നിങ്ങളുടെ ഔദ്യോഗിക പ്രൊഫൈലുമായി ബന്ധപ്പെട്ട ആപ്സ്, പശ്ചാത്തല സമന്വയം, മറ്റ് ഫീച്ചറുകൾ എന്നിവ ഓഫാക്കിയിരിക്കുന്നു."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"നൈറ്റ് ലൈറ്റ് ഷെഡ്യൂൾ സജ്ജമാക്കുക"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"എളുപ്പത്തിൽ ഉറങ്ങാൻ സ്ക്രീനിന് ആംബർ നിറം"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ദിവസവും രാത്രി സ്ക്രീൻ സ്വമേധയാ മങ്ങിക്കുക"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"നൈറ്റ് ലൈറ്റ് ഓണാണ്"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"സ്ക്രീനിന് ആംബർ ശോഭയാണുള്ളത്. എളുപ്പത്തിൽ ഉറങ്ങുന്നതിന് ഇത് നിങ്ങളെ സഹായിച്ചേക്കാം."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"നിങ്ങൾക്ക് നിർദ്ദേശിച്ചിരിക്കുന്നവ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"നിര്ദ്ദേശങ്ങള്"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> കൂടുതൽ"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ഒന്നുമില്ല"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"റാങ്കിംഗ് ഒബ്ജക്റ്റ് വിട്ടുപോയിരിക്കുന്നു."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"റാങ്കിംഗ് ഒബ്ജക്റ്റിൽ ഈ കീ അടങ്ങിയിട്ടില്ല."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"കട്ടൗട്ട് ഉപയോഗിച്ച് ഒരു ഡിസ്പ്ലേ പ്രവർത്തിപ്പിക്കുക"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ഒന്നുമില്ല"</string>
<string name="special_access" msgid="3458780842491881155">"പ്രത്യേക ആപ്പ് ആക്സസ്സ്"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ആപ്പുകൾക്ക് നിയന്ത്രണമില്ലാതെ ഡാറ്റ ഉപയോഗിക്കാം</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"ഒന്നിലധികം ഉപകരണങ്ങളിൽ കണക്റ്റുചെയ്തു"</string>
<string name="demo_mode" msgid="2798762752209330277">"സിസ്റ്റം UI ഡെമോ മോഡ്"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ദ്രുത ക്രമീകരണ ഡെവലപ്പർ ടൈലുകൾ"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"വിൻഡോ ട്രെയ്സ്"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ഉപരിതല ട്രെയ്സ്"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"ഔദ്യോഗിക പ്രൊഫൈൽ ക്രമീകരണം"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"കോൺടാക്റ്റ് തിരയൽ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"വിളിക്കുന്നവരെയും കോൺടാക്റ്റുകളെയും തിരിച്ചറിയുന്നതിന് കോൺടാക്റ്റുകൾ തിരയാൻ നിങ്ങളുടെ സ്ഥാപനത്തെ അനുവദിക്കുക"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"സ്റ്റോറേജ് ഇടം സൃഷ്ടിക്കുന്നതിന്, ബാക്കപ്പെടുത്ത ഫോട്ടോകളും വീഡിയോകളും നിങ്ങളുടെ ഉപകരണത്തിൽ നിന്ന് സ്റ്റോറേജ് മാനേജർ നീക്കംചെയ്യുന്നു."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ഫോട്ടോകളും വീഡിയോകളും നീക്കംചെയ്യുക"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"സ്റ്റോറേജ് മാനേജർ"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"സ്റ്റോറേജ് മാനേജർ ഉപയോഗിക്കുക"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"സ്വയമേവ"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"മാനുവൽ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"ഇപ്പോൾ ഇടം സൃഷ്ടിക്കുക"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ക്യാമറയിലേക്ക് മാറുക"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ക്യാമറ വേഗത്തിൽ തുറക്കുന്നതിന്, പവർ ബട്ടൺ രണ്ടുതവണ ടാപ്പുചെയ്യുക. ഏത് സ്ക്രീനിലും പ്രവർത്തിക്കും."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"അതിവേഗം ക്യാമറ തുറക്കുക"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ക്യാമറ തുറക്കുന്നതിന് പവർ ബട്ടണിൽ രണ്ടുതവണ അമർത്തുക"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ക്യാമറ ഫ്ലിപ്പുചെയ്യുക"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"അതിവേഗം സെൽഫികൾ എടുക്കുക"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"സെൽഫി മോഡിന് ഫോൺ രണ്ടുതവണ തിരിക്കുക"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"സെൽഫി മോഡിന് ടാബ്ലെറ്റ് രണ്ടുതവണ തിരിക്കുക"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"സെൽഫി മോഡിന് ഉപകരണം രണ്ടുതവണ തിരിക്കുക"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ഫോൺ പരിശോധിക്കുന്നതിന്, രണ്ടുതവണ ടാപ്പുചെയ്യുക"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ടാബ്ലെറ്റ് പരിശോധിക്കുന്നതിന്, രണ്ടുതവണ ടാപ്പുചെയ്യുക"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ഉപകരണം പരിശോധിക്കുന്നതിന്, രണ്ടുതവണ ടാപ്പുചെയ്യുക"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"സമയം, അറിയിപ്പ് ഐക്കണുകൾ, മറ്റ് വിവരങ്ങൾ എന്നിവ നോക്കുന്നതിന്, സ്ക്രീനിൽ രണ്ടുതവണ ടാപ്പുചെയ്യുക."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"സ്ക്രീൻ ഓഫായിരിക്കുമ്പോൾ അറിയിപ്പുകൾ പരിശോധിക്കുക"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"പരിശോധിക്കാൻ ഫോണുയർത്തുക"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"പരിശോധിക്കുന്നതിന് ടാബ്ലെറ്റ് എടുത്തുയർത്തുക"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"പരിശോധിക്കുന്നതിന് ഉപകരണം എടുത്തുയർത്തുക"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"സമയം, അറിയിപ്പ് ഐക്കണുകൾ, മറ്റ് വിവരങ്ങൾ എന്നിവ നോക്കുന്നതിന്, ഫോൺ കയ്യിലെടുക്കുക."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"സമയം, അറിയിപ്പ് ഐക്കണുകൾ, മറ്റ് വിവരങ്ങൾ എന്നിവ നോക്കുന്നതിന്, ടാബ്ലെറ്റ് കയ്യിലെടുക്കുക."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"സമയം, അറിയിപ്പ് ഐക്കണുകൾ, മറ്റ് വിവരങ്ങൾ എന്നിവ നോക്കുന്നതിന്, ഫോൺ കയ്യിലെടുക്കുക."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"സ്ക്രീൻ ഓഫായിരിക്കുമ്പോൾ അറിയിപ്പുകൾ പരിശോധിക്കുക"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"അറിയിപ്പുകൾക്ക് വിരലടയാളം സ്വൈപ്പുചെയ്യുക"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ഫിംഗർപ്രിന്റ് സ്വൈപ്പ്"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"നിങ്ങളുടെ അറിയിപ്പുകൾ പരിശോധിക്കാൻ ഫോണിന്റെ പിൻവശത്തുള്ള വിരലടയാള സെൻസറിൽ താഴേക്ക് സ്വൈപ്പുചെയ്യുക."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"നിങ്ങളുടെ അറിയിപ്പുകൾ പരിശോധിക്കാൻ, ടാബ്ലെറ്റിന്റെ പിൻവശത്തുള്ള വിരലടയാള സെൻസറിൽ താഴേക്ക് സ്വൈപ്പുചെയ്യുക."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"നിങ്ങളുടെ അറിയിപ്പുകൾ പരിശോധിക്കാൻ, ഉപകരണത്തിന്റെ പിൻവശത്തുള്ള വിരലടയാള സെൻസറിൽ താഴേക്ക് സ്വൈപ്പുചെയ്യുക."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"അറിയിപ്പുകൾ വേഗത്തിൽ കാണുക"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"വിരലടയാള സെൻസറിൽ താഴേക്ക് സ്വൈപ്പുചെയ്യുക"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ഓൺ"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ഓഫ്"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"ബൂട്ട്ലോഡർ ഇതിനകം അൺലോക്കുചെയ്തിട്ടുണ്ട്"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ഈ ഫീച്ചർ ഈ ഉപകരണത്തിൽ ലഭ്യമല്ല"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"പൂർണ്ണ GNSS അളവുകൾ നടപ്പിലാക്കുക"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"നോ ഡ്യൂട്ടി സൈക്ലിംഗ് ഉപയോഗിച്ച് മുഴുവൻ GNSS കോൺസ്റ്റലേഷനുകളും ആവൃത്തികളും ട്രാക്ക് ചെയ്യൂ"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"എപ്പോഴും ക്രാഷ് ഡയലോഗ് കാണിക്കുക"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"ആപ്പ് ക്രാഷാകുമ്പോഴെല്ലാം ഡയലോഗ് കാണിക്കുക"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ഡയറക്റ്ററി ആക്സസ്"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ഡയറക്റ്ററി ആക്സസ്"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"എന്റെ ഫോൺ"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"എന്റെ ടാബ്ലെറ്റ്"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"എന്റെ ഉപകരണം"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"അക്കൗണ്ട്"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ഉപകരണത്തിന്റെ പേര്"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ഡ്രൈവ് ചെയ്യുമ്പോൾ Bluetooth ഉപയോഗിക്കുക"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ഡ്രൈവ് ചെയ്യുമ്പോൾ സ്വമേധയാ Bluetooth ഓണാക്കുക"</string>
</resources>
diff --git a/res/values-mr/arrays.xml b/res/values-mr/arrays.xml
index b51e995..b2bb9f0 100644
--- a/res/values-mr/arrays.xml
+++ b/res/values-mr/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"पुश बटण"</item>
<item msgid="1624323946324499595">"पीअर डिव्हाइसवरील पिन"</item>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 4fd192b..6c33b71 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"तारीख सेट करा"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"अक्षरानुक्रमे क्रमवारी लावा"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"टाइम झोन नुसार क्रमवारी लावा"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> रोजी सुरू होते."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"डेलाइट सेव्हिंग वेळ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"प्रमाण वेळ"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"प्रदेशानुसार टाइमझोन"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"फिक्स्ड ऑफसेट टाइमझोन"</string>
<string name="date_picker_title" msgid="1338210036394128512">"तारीख"</string>
<string name="time_picker_title" msgid="483460752287255019">"वेळ"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"स्वयंचलितपणे लॉक करा"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"लॉक स्क्रीन संदेश"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"विजेट सक्षम करा"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"प्रशासकाने अक्षम केलेले"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"लॉकडाउन पर्याय दाखवा"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"पॉवर बटण पर्याय डिस्प्ले करा, जे विस्तारित अॅक्सेस आणि फिंगरप्रिंट अनलॉकिंग बंद करते."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"काहीही नाही"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"उदा. Joe चे Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"प्रोफाईल माहिती"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"खाती"</string>
<string name="location_settings_title" msgid="1369675479310751735">"स्थान"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"स्थान वापरा"</string>
<string name="account_settings_title" msgid="626177544686329806">"खाती"</string>
<string name="security_settings_title" msgid="4918904614964215087">"सुरक्षितता आणि स्थान"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"एंक्रिप्शन आणि क्रेडेंशियल"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"आपण एंटर केलेला पासवर्ड चुकीचा आहे, परंतु दुर्दैवाने आपला डेटा दूषित आहे. \n\nआपला टॅबलेट वापरणे पुनः सुरु करण्यासाठी, आपल्याला फॅक्टरी रीसेट करणे आवश्यक आहे. रीसेट केल्यानंतर आपण आपला टॅबलेट सेट करता, तेव्हा आपल्याला आपल्या Google खात्यावर बॅक अप घेतलेला कोणताही डेटा रीस्टोअर करण्याची संधी असेल."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"आपण एंटर केलेला पासवर्ड बरोबर आहे, परंतु दुर्दैवाने आपला डेटा दूषित आहे. \n\nआपला फोन वापरणे पुनः सुरु करण्यासाठी, आपल्याला फॅक्टरी रीसेट करणे आवश्यक आहे. रीसेट केल्यानंतर आपण आपला फोन सेट करता, तेव्हा आपल्याला आपल्या Google खात्यावर बॅक अप घेतलेला कोणताही डेटा रीस्टोअर करण्याची संधी असेल."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"इनपुट पद्धत स्विच करा"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"स्क्रीन लॉक सेट करा"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"तुमचे डिव्हाइस संरक्षित करा"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"फिंगरप्रिंट वापरा"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"आपल्या फिंगरप्रिंटसह अनलॉक करा"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"सुरक्षिततेसाठी स्क्रीन लॉक सेट करा"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"तुमचा टॅबलेट वापरण्यापासून इतरांना प्रतिबंध करा"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"तुमचे डिव्हाइस वापरण्यापासून इतरांना प्रतिबंध करा"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"तुमचा फोन वापरण्यापासून इतरांना प्रतिबंध करा"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"फिंगरप्रिंटने अनलॉक करा"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"आपल्या फिंगरप्रिंटसह अनलॉक करा"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"आपल्या फिंगरप्रिंटसह अनलॉक करा"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"आपल्या फिंगरप्रिंटसह अनलॉक करा"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"स्क्रीन लॉक निवडा"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"कार्य लॉक निवडा"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"आपला टॅबलेट संरक्षित करा"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"नाव"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"साइन इन करा"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> वाय-फाय चालू करू इच्छित आहे"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> वाय-फाय बंद करू इच्छित आहे"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"वाय-फाय"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"वाय-फाय चालू करा"</string>
<string name="wifi_settings" msgid="29722149822540994">"वाय-फाय"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"वाय-फाय वापरा"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"वाय-फाय सेटिंग्ज"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"वाय-फाय"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"वायरलेस प्रवेश बिंदू सेट करा आणि व्यवस्थापित करा"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"पासवर्ड"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"पासवर्ड दर्शवा"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP बँड निवडा"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"आपोआप"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz बँड"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz बँड"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP सेटिंग्ज"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"वाय-फाय कॉलिंग"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"वाय-फाय कॉलिंग चालू करा"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"मोबाईल नेटवर्क ऐवजी वाय-फाय वापरा"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"वाय-फाय वापरून कॉल करून कव्हरेज वाढवा"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"कॉल करण्याचे प्राधान्य"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"वाय-फाय कॉलिंग मोड"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"रोमिंग प्राधान्य"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"मोबाईल नेटवर्क प्रकार"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ऑपरेटर माहिती"</string>
<string name="status_data_state" msgid="5503181397066522950">"मोबाईल नेटवर्क स्थिती"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"सेवा स्थिती"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"सिग्नल सामर्थ्य"</string>
<string name="status_roaming" msgid="2638800467430913403">"रोमिंग"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"नेटवर्क, अॅप्स आणि डिव्हाइस रीसेट केले जाऊ शकतात"</string>
<string name="reset_network_title" msgid="6166025966016873843">"वायफाय मोबाइल आणि ब्लूटुथ रीसेट करा"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"हे यांसह सर्व नेटवर्क सेटिंग्ज रीसेट करेल:\n\n"<li>"वाय‑फाय"</li>\n<li>"मोबाइल डेटा"</li>\n<li>"ब्लूटुथ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM सुद्धा रीसेट करा"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"फोनवरील सर्व eSIM मिटवा. तुमची eSIM पुन्हा डाउनलोड करण्यासाठी तुम्हाला तुमच्या वाहकाशी संपर्क साधावा लागेल. हे केल्याने तुमची मोबाइल सेवा योजना रद्द होणार नाही."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"सेटिंग्ज रीसेट करा"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"सर्व नेटवर्क सेटिंग्ज रीसेट करायच्या? आपण ही क्रिया पूर्ववत करू शकत नाही!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"सेटिंग्ज रीसेट करा"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"रीसेट करायचे?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"या वापरकर्त्यासाठी नेटवर्क रीसेट उपलब्ध नाही"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"नेटवर्क सेटिंग्ज रीसेट केल्या गेल्या आहेत"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM रीसेट करता आले नाही"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"एका एररमुळे eSIM रीसेट करता येणार नाहीत."</string>
<string name="master_clear_title" msgid="3531267871084279512">"सर्व डेटा मिटवा (फॅक्टरी रीसेट)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"हे आपल्या टॅब्लेटच्या "<b>"अंतर्गत संचयना"</b>" वरील सर्व डेटा मिटवेल, यासह:\n\n"<li>"आपले Google खाते"</li>\n<li>"सिस्टम आणि अॅप डेटा आणि सेटिंग्ज"</li>\n<li>"डाउनलोड केलेले अॅप्स"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"हे आपल्या फोनच्या "<b>"अंतर्गत स्टोरेज"</b>" वरील सर्व डेटा मिटवेल, यासह:\n\n"<li>"आपले Google खाते"</li>\n<li>"सिस्टम आणि अॅप डेटा आणि सेटिंग्ज"</li>\n<li>"डाउनलोड केलेले अॅप्स"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"आपण खालील खात्यांवर सध्या साइन इन केले आहे:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"या डिव्हाइसवर इतर वापरकर्ते उपस्थित आहेत.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"संगीत"</li>\n<li>"फोटो"</li>\n<li>"अन्य वापरकर्ता डेटा"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM वरील वाहक"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"असे केल्याने तुमच्या मोबाइल सेवा प्लॅन रद्द होणार नाही."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"संगीत, चित्रे आणि अन्य वापरकर्ता डेटा साफ करण्यासाठी, "<b>"USB स्टोरेज"</b>" मिटविणे आवश्यक आहे."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"संगीत, चित्रे आणि अन्य वापरकर्ता डेटा साफ करण्यासाठी, "<b>"SD कार्ड"</b>" पुसण्याची आवश्यकता आहे."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"कृपया इंटरनेटशी कनेक्ट करा"</string>
<string name="location_title" msgid="1029961368397484576">"माझे स्थान"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"कार्य प्रोफाईलसाठी स्थान"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"मोड"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"उच्च अचूकता"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"बॅटरी बचत"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"केवळ डिव्हाइस"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"स्थान बंद"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"अॅप-दर्जा परवानग्या"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"अलीकडील स्थान विनंत्या"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"अलीकडे कोणत्याही अॅप्सने स्थानाची विनंती केलेली नाही"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"स्थान सेवा"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"उच्च बॅटरी वापर"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"अल्प बॅटरी वापर"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"स्थान मोड"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"स्थान निर्धारित करण्यासाठी GPS, वाय‑फाय, ब्लूटुथ किंवा मोबाइल नेटवर्क वापरा"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"स्थान निर्धारित करण्यासाठी वाय‑फाय, ब्लूटुथ किंवा मोबाइल नेटवर्क वापरा"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"स्थान निर्धारित करण्यासाठी GPS आणि डिव्हाइस सेंसर वापरा"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"स्कॅन करत आहे"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"वाय-फाय स्कॅन करणे"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"सिस्टम अॅप्स आणि सेवांना कधीही वाय-फाय नेटवर्क शोधण्याची अनुमती देऊन स्थान सुधारित करा."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"स्थान स्रोत"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"टॅबलेट विषयी"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"फोन विषयी"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"डिव्हाइसविषयी"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"अनुकरण केलेल्या डिव्हाइसबद्दल"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"कायदेशीर माहिती, स्थिती, सॉफ्टवेअर आवृत्ती पहा"</string>
<string name="legal_information" msgid="5769301644270604095">"कायदेशीर माहिती"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"सगळे <xliff:g id="COUNT">%1$d</xliff:g> अॅप्स पहा"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"आपले टॅबलेट आणि वैयक्तिक डेटा अज्ञात अनुप्रयोगांद्वारे आक्रमणांपासून अधिक असुरक्षित असतात. या स्रोताकडील अॅप्स इंस्टॉल करून, आपण सहमत आहात की त्यांच्या वापराच्या परिणामी होणार्या आपल्या टॅबलेटच्या कोणत्याही नुकसानासाठी किंवा डेटाच्या हानीसाठी आपण जबाबदार आहात."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"आपला फोन आणि वैयक्तिक डेटा अज्ञात अनुप्रयोगांद्वारे आक्रमणांपासून अधिक असुरक्षित असतात. या स्रोताकडील अॅप्स इंस्टॉल करून, आपण सहमत आहात की त्यांच्या वापराच्या परिणामी होणार्या आपल्या फोनच्या कोणत्याही नुकसानासाठी किंवा डेटाच्या हानीसाठी आपण जबाबदार आहात."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"तुमचे डिव्हाइस आणि वैयक्तिक डेटा अज्ञात अॅप्सच्या आक्रमणांपासून जास्त असुरक्षित असतात. या स्रोताकडील अॅप्स इंस्टॉल करून, तुम्ही सहमत आहात की त्यांच्या वापरामुळे तुमच्या डिव्हाइसला होऊ शकणार्या कोणत्याही नुकसानासाठी किंवा डेटाच्या हानीसाठी तुम्ही जबाबदार आहात."</string>
<string name="advanced_settings" msgid="1777249286757067969">"प्रगत सेटिंग्ज"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"अधिक सेटिंग्ज पर्याय सक्षम करा"</string>
<string name="application_info_label" msgid="5736524913065714880">"अॅप माहिती"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"कार्यप्रदर्शन प्रभावित करू शकते"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"पॉइंटर हलविणे थांबविल्यानंतर क्लिक करा"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"क्लिक करण्यापूर्वी विलंब करा"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"सेवा वापरा"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"रंग सुधारणा वापरा"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"कॅप्शन वापरा"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"चालू"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"बंद"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"द्रुत सेटिंग्जमध्ये दर्शवा"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> शिल्लक"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"चार्ज करण्यासाठी <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"पार्श्वभूमीवरील अॅक्टिव्हिटी"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"प्रतिबंधित"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"अॅपला पार्श्वभूमीत चालण्याची अनुमती द्या"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"अॅप वापरात नसताना ते पार्श्वभूमीत चालू शकते"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"अॅप वापरात नसताना पार्श्वभूमीवरील अॅक्टिव्हिटी मर्यादित असते"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"अॅप्स नेहमीसारखीच काम करत आहेत"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"बॅटरीची क्षमता कमी"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"बॅटरी लाइफ जास्त वेळ टिकण्यासारखी नाही"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"स्मार्ट बॅटरी व्यवस्थापक चालू करा"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"बॅटरी वापर ऑप्टिमाइझ करण्यासाठी चालू करा"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"कमी बॅटरी मोड चालू करा"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"तुमचे बॅटरी लाइफ वाढवा"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"कमी बॅटरी मोड चालू आहे"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"काही वैशिष्ट्ये मर्यादित आहेत"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"फोनचा भरपूर वापर झाला"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"टॅबलेटचा भरपूर वापर झाला"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"डिव्हाइसचा भरपूर वापर झाला"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"मीडियासर्व्हर"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"अॅप ऑप्टिमायझेशन"</string>
<string name="battery_saver" msgid="8172485772238572153">"बॅटरी सेव्हर"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"बॅटरी सेव्हर वापरा"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"स्वयंचलितपणे चालू करा"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"कधीही नाही"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g>बॅटरीवर"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"संकालनास सध्या समस्या येत आहेत. हे लवकरच परत येईल."</string>
<string name="add_account_label" msgid="7811707265834013767">"खाते जोडा"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"कार्य प्रोफाईल अद्याप उपलब्ध नाही"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"कार्य मोड"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"कार्य प्रोफाइलला अॅप्स, पार्श्वभूमी संकालन आणि संबंधित वैशिष्ट्यांच्या समावेशासह कार्य करण्याची परवानगी द्या"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"कार्य प्रोफाइल"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"तुमच्या संस्थेकडून व्यवस्थापित"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"अॅप्स आणि सूचना बंद आहेत"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"कार्य प्रोफाईल काढा"</string>
<string name="background_data" msgid="5779592891375473817">"पार्श्वभूमीवरील डेटा"</string>
<string name="background_data_summary" msgid="8328521479872763452">"अॅप्स कोणत्याही वेळी डेटा संकालित करू, पाठवू आणि प्राप्त करू शकतात."</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"खाते काढायचे?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"हे खाते काढल्याने त्याचे सर्व संदेश, संपर्क आणि टॅब्लेटवरील अन्य डेटा हटतील!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"हे खाते काढल्याने त्याचे सर्व संदेश, संपर्क आणि फोनवरील अन्य डेटा हटवला जाईल!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"हे खाते काढल्याने त्याचे सर्व संदेश, संपर्क आणि डिव्हाइसवरील इतर डेटा हटवला जाईल!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"या बदलाला आपल्या प्रशासकाद्वारे अनुमती नाही"</string>
<string name="provider_label" msgid="7724593781904508866">"पुश सदस्यता"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">प्रमाणपत्र तपासा</item>
<item quantity="other">प्रमाणपत्रे तपासा</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"वापरकर्ते"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"एकाहून वापरकर्ते"</string>
<string name="user_list_title" msgid="7937158411137563543">"वापरकर्ते आणि प्रोफाईल्स"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"वापरकर्ता किंवा प्रोफाइल जोडा"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"वापरकर्ता जोडा"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ब्लूटूथ, कास्ट"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"अॅप्स आणि सूचना"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"परवानग्या, डीफॉल्ट अॅप्स"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"वापरकर्ते आणि खाती"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"खाती"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"डीफॉल्ट अॅप्स"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"भाषा, वेळ, बॅक अप, अपडेट"</string>
<string name="search_results_title" msgid="1796252422574886932">"सेटिंग्ज"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"व्यत्यय आणू नका, व्यत्यय आणा, व्यत्यय, खंडित करा"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"जवळपास, स्थान, इतिहास, अहवाल देणे"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"अचूकता"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"खाते"</string>
<string name="keywords_users" msgid="3434190133131387942">"प्रतिबंध, प्रतिबंधित करा, प्रतिबंधित"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"मजकूर सुधारणा, योग्य, ध्वनी, कंपन, अॉटो, भाषा, जेश्चर, सुचवा, सूचना, थीम, आक्षेपार्ह, शब्द, प्रकार, ईमोजी, आंतरराष्ट्रीय"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"नेटवर्क, मोबाइल नेटवर्क स्थिती, सेवा स्थिती, सिग्नल तीव्रता, मोबाइल नेटवर्क प्रकार, रोमिंग, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"सीरीअल नंबर, हार्डवेअर आवृत्ती"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android सुरक्षितता पॅच पातळी, बेसबँड आवृत्ती, कर्नल आवृत्ती"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"वाय-फाय NFC टॅग सेट अप"</string>
<string name="write_tag" msgid="8571858602896222537">"लिहा"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"लिहिण्यासाठी एक टॅग टॅप करा..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> नियम</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"व्यत्यय आणू नका"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"व्यत्यय आणू नका चालू करा"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"वर्तन"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"यांचे ध्वनी आणि व्हायब्रेशन राहू द्या"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"कोणताही ध्वनी नाही"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"आपोआप चालू करा"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"स्वयंचलित नियम"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ऑटोमॅटिक नियम"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"व्यत्यय आणू नका नियम सेट करा"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"विशिष्ट वेळी ध्वनी आणि कंपने मर्यादित करा"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"काही वेळेला फोन शांत करा"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"व्यत्यय आणू नका नियम सेट करा"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"नियम वापरा"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"केवळ प्राधान्य"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"केवळ अलार्म"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"संपूर्ण शांतता"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"दृश्य व्यत्यय ब्लॉक करा"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"व्हिज्युअल सिग्नलना अनुमती द्या"</string>
<string name="zen_mode_add" msgid="90014394953272517">"जोडा"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"चालू करा"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"आता चालू करा"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"आता बंद करा"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"व्यत्यय आणू नका <xliff:g id="FORMATTED_TIME">%s</xliff:g> पर्यंत चालू असणार आहे"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"तुम्ही बंद करेपर्यंत व्यत्यय आणू नका चालू राहील"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"<xliff:g id="RULE_NAME">%s</xliff:g> या नियमाने व्यत्यय आणू नका आपोआप चालू केले"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"<xliff:g id="APP_NAME">%s</xliff:g> या अॅपने व्यत्यय आणू नका आपोआप चालू केले"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"केवळ प्राधान्य"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"कार्य प्रोफाइल ध्वनी"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"वैयक्तिक प्रोफाइल ध्वनी वापरा"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"कार्य आणि वैयक्तिक प्रोफाइलसाठी ध्वनी सारखे आहेत"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"रिंगटोन"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"इतर आवाज आणि कंपने"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"सूचना"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"नुकतेच पाठवलेले"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"प्रगत"</string>
<string name="profile_section_header" msgid="2320848161066912001">"कार्य सूचना"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"सूचना बिंदूंना अनुमती द्या"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"तुमचे डिव्हाइस अनलॉक करण्यासाठी तुमचे फिंगरप्रिंट वापरण्याव्यतिरिक्त, ते सुरू होण्यापूर्वी तुम्ही तुमचा पासवर्ड आवश्यक करून हे डिव्हाइस अधिक सुरक्षित करू शकता. डिव्हाइस सुरू होईपर्यंत, तो कॉल, संदेश किंवा अलार्मसह सूचना प्राप्त करू शकत नाही.\n\nहे हरवलेल्या किंवा चोरीला गेलेल्या डिव्हाइस वरील डेटाचे संरक्षण करण्यात मदत करते. तुमचे डिव्हाइस सुरू करण्यासाठी पासवर्ड आवश्यक आहे का?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"होय"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"नाही"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"होय"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"नाही"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"पिन आवश्यक?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"पॅटर्न आवश्यक?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"पासवर्ड आवश्यक?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"नकार द्या"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"हे डिव्हाइस चार्ज करा"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"फक्त हे डिव्हाइस चार्ज करा"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"पॉवर पुरवठा करा"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"कनेक्ट केलेले डिव्हाइस चार्ज करा. केवळ USB चार्जिंगला सपोर्ट असलेल्या डिव्हाइससह कार्य करते."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"फायली स्थानांतरित करा"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"दुसऱ्या डिव्हाइसवर फायली स्थानांतरित करा"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"फोटो स्थानांतरित करा (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP (PTP) समर्थित नसल्यास फोटो किंवा फायली स्थानांतरित करा"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"MIDI म्हणून डिव्हाइसचा वापर करा"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"या डिव्हाइसचा MIDI म्हणून वापर करा"</string>
- <string name="usb_use" msgid="3256040963685055320">"USB वापरा आणि"</string>
+ <string name="usb_use" msgid="3372728031108932425">"यासाठी USB वापरा"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"हे डिव्हाइस चार्ज करणे"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"पॉवर पुरवठा करणे"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"फायली हस्तांतरित करणे"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"फोटो हस्तांतरित करणे (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"डिव्हाइस MIDI म्हणून वापरणे"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS मिररिंग"</string>
<string name="background_check_pref" msgid="7550258400138010979">"पार्श्वभूमी तपासणे"</string>
<string name="background_check_title" msgid="4534254315824525593">"पूर्ण पार्श्वभूमी प्रवेश"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"वॉलपेपर, निष्क्रिय करा, फॉंट आकार"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 मिनिटे निष्क्रिय झाल्यानंतर निष्क्रिय करा"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> पैकी सरासरी <xliff:g id="USED_MEMORY">%1$s</xliff:g> मेमरी वापरली"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"वर्तमान वापरकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> म्हणून साइन इन केले"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> डीफॉल्ट आहे"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"चालू / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"चालू"</string>
<string name="location_off_summary" msgid="6474350053215707957">"बंद"</string>
<string name="backup_disabled" msgid="485189128759595412">"बॅक अप घेणे अक्षम केले"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> वर अपडेट केले"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"क्रियेस अनुमती नाही"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"व्हॉल्यूम बदलू शकत नाही"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"कॉलिंगला अनुमती नाही"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS ला अनुमती नाही"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"कॅमेर्याला अनुमती नाही"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"स्क्रीनशॉटला अनुमती नाही"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"बॅकअप बंद करू शकत नाही"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ही क्रिया अक्षम केली आहे. अधिक जाणून घेण्यासाठी, आपल्या संस्थेच्या प्रशासकाशी संपर्क साधा."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"अधिक तपशील"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"तुमचा प्रशासक सेटिंग्ज, परवानग्या, कॉर्पोरेट अॅक्सेस, नेटवर्क अॅक्टिव्हिटी आणि डीव्हाइसची स्थान माहिती यांसह तुमच्या कार्य प्रोफाइलशी संबधित अॅप्सचे आणि डेटाचे परीक्षण व व्यवस्थापन करू शकतो."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"पोर्टेबल वाय-फाय हॉटस्पॉट <xliff:g id="ID_1">%1$s</xliff:g> चालू आहे, या डीव्हाइसकरिता वाय-फाय बंद केले आहे."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"विमान मोड चालू आहे"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"वाय-फाय, ब्लूटूथ आणि मोबाइल नेटवर्क बंद केले आहेत. तुम्ही फोन कॉल करू शकत नाही किंवा इंटरनेटशी कनेक्ट करू शकत नाही."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"व्यत्यय आणू नका चालू आहे ( <xliff:g id="ID_1">%1$s</xliff:g> )"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"बॅटरी बचतकर्ता चालू आहे"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"कामगिरी कमी झाली आहे. स्थान सेवा आणि पार्श्वभूमीवरील डेटा बंद केला आहेत."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"मोबाइल डेटा बंद आहे"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"कार्य प्रोफाइल बंद आहे"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"आपल्या कार्य प्रोफाइल संबंधित अॅप्स, पार्श्वभूमी संकालन आणि इतर वैशिष्ट्ये बंद केली आहेत."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"रात्रीच्या प्रकाशाचे वेळापत्रक सेट करा"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"आपल्याला झोप येण्यात मदत होण्यासाठी स्क्रीनची रंगछटा पिवळसर तपकिरी करा"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"दररोज रात्री स्क्रीन आपोआप टिंट करा"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"रात्रीचा प्रकाश चालू आहे"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"स्क्रीनची रंगछटा पिवळसर तपकिरी आहे. यामुळे आपल्याला झोप येण्यात मदत होईल."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"तुमच्यासाठी सुचवलेले"</string>
<string name="suggestions_title" msgid="7280792342273268377">"सूचना"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"आणखी +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"काहीही नाही"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"रँकिंग ऑब्जेक्ट गहाळ आहे."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"रँकिंग ऑब्जेक्ट मध्ये ही की असू शकत नाही."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"कटआउटसह डिस्प्लेचे अनुकरण करा"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"काहीही नाही"</string>
<string name="special_access" msgid="3458780842491881155">"विशेष अॅप प्रवेश"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> अॅप अनिर्बंधित डेटा वापरू शकते</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"एकाधिक डिव्हाइसशी कनेक्ट केले"</string>
<string name="demo_mode" msgid="2798762752209330277">"सिस्टम UI डेमो मोड"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"द्रुत सेटिंग्ज विकासक टाइल"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"विंडो ट्रेस"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"पृष्ठभाग ट्रेस"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"कार्य प्रोफाइल सेटिंग्ज"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"संपर्क शोध"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"कॉलर आणि संपर्कांना ओळखण्यासाठी आपल्या संस्थेनुसार संपर्क शोधांची अनुमती द्या"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"स्टोरेज स्थान मोकळे करण्यात मदत करण्यासाठी, स्टोरेज व्यवस्थापक तुमच्या डिव्हाइस वरून बॅक अप घेतलेले फोटो आणि व्हिडिओ काढतो."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"फोटो आणि व्हिडिओ काढा"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"संचय व्यवस्थापक"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"स्टोरेज व्यवस्थापक वापरा"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"स्वयंचलित"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"व्यक्तिचलित"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"आता स्थान मोकळे करा"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"कॅमेर्यावर जा"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"कॅमेरा द्रुतपणे उघडण्यासाठी, पॉवर बटण दोनदा दाबा. कोणत्याही स्क्रीन वरून कार्य करते."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"कॅमेरा पटकन उघडा"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"कॅमेरा चालू करण्यासाठी पॉवर बटण दोनदा दाबा"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"कॅमेरा फ्लिप करा"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"अधिक जलद सेल्फी घ्या"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"सेल्फी मोडसाठी फोन दोनदा फिरवा"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"सेल्फी मोडसाठी टॅबलेट दोनदा फिरवा"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"सेल्फी मोडसाठी डिव्हाइस दोनदा फिरवा"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"फोन तपासण्यासाठी दोनदा-टॅप करा"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"टॅब्लेट तपासण्यासाठी दोनदा-टॅप करा"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"डिव्हाइस तपासण्यासाठी दोनदा टॅप करा"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"वेळ, सूचना आयकन आणि इतर माहिती तपासण्यासाठी तुमच्या स्क्रीनवर दोनदा टॅप करा."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"स्क्रीन बंद असताना सूचना तपासा"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"फोन तपासण्यासाठी तो उचला"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"टॅब्लेट तपासण्यासाठी तो उचला"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"डिव्हाइस तपासण्यासाठी ते उचला"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"वेळ, सूचना आयकन आणि इतर माहिती तपासण्यासाठी, तुमचा फोन उचला."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"वेळ, सूचना आयकन आणि इतर माहिती तपासण्यासाठी, तुमचा टॅबलेट उचला."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"वेळ, सूचना आयकन आणि इतर माहिती तपासण्यासाठी, तुमचे डिव्हाइस उचला."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"स्क्रीन बंद असताना सूचना तपासा"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"सूचनांसाठी फिंगरप्रिंट स्वाइप करा"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"फिंगरप्रिंट स्वाइप करा"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"आपल्या सूचना तपासण्यासाठी, आपल्या फोनच्या पाठीमागे फिंगरप्रिंट सेन्सरवर खाली स्वाइप करा."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"आपल्या सूचना तपासण्यासाठी, आपल्या टॅबलेटच्या मागे फिंगरप्रिंट सेन्सरवर खाली स्वाइप करा."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"आपल्या सूचना तपासण्यासाठी, आपल्या डिव्हाइसच्या मागे फिंगरप्रिंट सेन्सरवर खाली स्वाइप करा."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"सूचना पटकन पहा"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"फिंगरप्रिंट सेंसरवर खालच्या बाजूस स्वाइप करा"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"चालू"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"बंद"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"बुटलोडर आधीपासून अनलॉक केले"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"हे वैशिष्ट्य या डिव्हाइसवर उपलब्ध नाही"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"पूर्ण GNSS मापांची सक्ती करा"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"कुठल्याही ड्युटी सायकलिंग शिवाय सर्व GNSS तारामंडळे आणि वारंवारता ट्रॅक करा"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"नेहमी क्रॅश डायलॉग दाखवा"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"अॅप क्रॅश झाल्यावर प्रत्येक वेळी डायलॉग दाखवा"</string>
+ <string name="directory_access" msgid="4722237210725864244">"डिरेक्टरी अॅक्सेस"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"डिरेक्टरी अॅक्सेस"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"माझा फोन"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"माझे टॅबलेट"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"माझे डिव्हाइस"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"खाते"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"डिव्हाइसचे नाव"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ड्राइव्ह करत असताना ब्लूटूथ वापरा"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ड्राइव्ह करत असताना ब्लूटूथ आपोआप चालू करा"</string>
</resources>
diff --git a/res/values-my/arrays.xml b/res/values-my/arrays.xml
index a1c71ac..9600d50 100644
--- a/res/values-my/arrays.xml
+++ b/res/values-my/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"နှိပ်ရန်ခလုတ်"</item>
<item msgid="1624323946324499595">"တန်းတူစက်ပစ္စည်းမှပင်နံပါတ်"</item>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index c61643a..724fa31 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -20,7 +20,7 @@
<string name="no" msgid="6731231425810196216">"No"</string>
<string name="create" msgid="3578857613172647409">"ဖန်တီးရန်"</string>
<string name="allow" msgid="3349662621170855910">"ခွင့်ပြုပါ"</string>
- <string name="deny" msgid="6947806159746484865">"ငြင်းပယ်ခြင်း"</string>
+ <string name="deny" msgid="6947806159746484865">"ငြင်းပယ်ရန်"</string>
<string name="dlg_close" msgid="7471087791340790015">"ပိတ်ရန်"</string>
<string name="dlg_switch" msgid="6243971420240639064">"Switch"</string>
<string name="device_info_default" msgid="7847265875578739287">"အကြောင်းအရာ မသိရှိ"</string>
@@ -334,8 +334,8 @@
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"အချိန်ဇုန်နယ်အလိုက်စီရန်"</string>
<string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> သည် <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> တွင် စတင်ပါသည်။"</string>
<string name="zone_time_type_dst" msgid="8850494578766845276">"ဆောင်းရာသီ စံတော်ချိန်"</string>
- <string name="zone_time_type_standard" msgid="3462424485380376522">"စံအချိန်"</string>
- <string name="zone_menu_by_region" msgid="4603214570803607532">"ဒေသအလိုက် စံတောင်ချိန်"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"စံတော်ချိန်"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"ဒေသအလိုက် စံတော်ချိန်"</string>
<string name="zone_menu_by_offset" msgid="1172774718486088771">"ပုံသေ စံတော်ချိန်"</string>
<string name="date_picker_title" msgid="1338210036394128512">"ရက်စွဲ"</string>
<string name="time_picker_title" msgid="483460752287255019">"အချိန်"</string>
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"လော့ခ်မျက်နှာပြင်စာ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ဝဒ်ဂျက်များဖွင့်ရန်"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"စီမံခန့်ခွဲသူက ပိတ်ထားသည်"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"ပိတ်ရန် ရွေးချယ်စရာများကို ပြခြင်း"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"ထပ်တိုး အသုံးပြုခွင့်နှင့် လက်ဗွေဖြင့် လော့ခ်ဖွင့်ခြင်းကို ပိတ်သည့် မျက်နှာပြင်ပြသမှု ပါဝါခလုတ်။"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"မရှိ"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ဥပမာ၊ Joe ၏ Android"</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"သင်ရိုက်ထည့်သောစကားဝှက် မှန်ကန်သော်လည်း သင့်အချက်အလက်တွေကမောက်ကမဖြစ်နေသည်။\n\nသင့်တပ်ဘလက်ကို ဆက်လက်သုံးစွဲရန်အတွက် စက်ရုံထုတ်အခြေအနေသို့ ပြန်ပြောင်းပါ။ ယင်းသို့ပြောင်းလဲပြီးသင့်တပ်ဘလက်ကိုပြန်သုံးစွဲသည့်အခါ သင့် Google အကောင့်အားထောက်ပံ့ပေးထားသော မည်သည့်အချက်အလက်ကိုမဆို ပြန်လည်ရယူနိုင်ခွင့်ရှိသည်။"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"သင်ရိုက်ထည့်သောစကားဝှက် မှန်ကန်သော်လည်း သင့်အချက်အလက်တွေကမောက်ကမဖြစ်နေသည်။\n\nသင့်ဖုန်းကို ဆက်လက်သုံးစွဲရန်အတွက် စက်ရုံထုတ်အခြေအနေသို့ပြန်ပြောင်းပါ။ယင်းသို့ပြောင်းလဲပြီးသင့်ဖုန်းကိုပြန်သုံးစွဲသည့်အခါ သင့် Google အကောင့်အားထောက်ပံ့ပေးထားသော မည်သည့်အချက်အလက်ကိုမဆို ပြန်လည်ရယူနိုင်ခွင့်ရှိသည်။"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"စာရိုက်ထည့်ပုံ ပြောင်းရန်"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"မျက်နှာပြင်လော့ခ်ကို သတ်မှတ်ပါ"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"သင့်စက်ပစ္စည်းအား ကာကွယ်ပါ"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"လက်ဗွေရာကို သုံးပါ"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"သင့်လက်ဗွေဖြင့် သော့ဖွင့်ပါ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"မျက်နှာပြင်လော့ခ် သတ်မှတ်ရန်"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"အခြားသူများ သင့်တက်ဘလက်ကို အသုံးမပြုနိုင်အောင် ကာကွယ်ပါ"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"အခြားသူများ သင့်စက်ပစ္စည်းကို အသုံးမပြုနိုင်အောင် ကာကွယ်ပါ"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"အခြားသူများ သင့်ဖုန်းကို အသုံးမပြုနိုင်အောင် ကာကွယ်ပါ"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"လက်ဗွေရာသုံး၍ လော့ခ်ဖွင့်ခြင်း"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"သင့်လက်ဗွေဖြင့် သော့ဖွင့်ပါ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"သင့်လက်ဗွေဖြင့် သော့ဖွင့်ပါ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"သင့်လက်ဗွေဖြင့် သော့ဖွင့်ပါ"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"မျက်နှာပြင်လော့ခ်ချနည်းရွေးရန်"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"အလုပ် လော့ခ်ချခြင်းကို ရွေးပါ"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"သင့်တက်ဘလက်ကို ကာကွယ်ပါ"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"စကားဝှက်"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"စကားဝှက်ကို ပြသရန်"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP လှိုင်း ရွေးရန်"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"အလိုအလျောက်"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz Band"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz Band"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ဆက်တင်များ"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android ဟော့စပေါ့"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi ခေါ်ဆိုမှု"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi ခေါ်ဆိုမှုဖွင့်ပါ"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"မိုဘိုင်းကွန်ယက် အစား Wi-Fi ကိုအသုံးပြုပါ"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi သုံး၍ ခေါ်ဆိုခြင်းဖြင့် လိုင်းပိုမိလာအောင် လုပ်ပါ"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ခေါ်ဆိုရန် ရွေးချယ်မှု"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"ဝိုင်ဖိုင်ဖြင့် ခေါ်ဆိုသောမုဒ်"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"အခြားကွန်ရက်ဝင်သုံးမှုဆိုင်ရာရွေးချယ်မှုများ"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"မိုဘိုင်းကွန်ယက်အမျိုးအစား"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ဖုန်းလိုင်းကုမ္ပဏီအကြောင်း"</string>
<string name="status_data_state" msgid="5503181397066522950">"မိုဘိုင်းကွန်ယက်အခြေအနေ"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"ဝန်ဆောင်မှု အခြေအနေ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"ထုတ်လွင့်မှုအား"</string>
<string name="status_roaming" msgid="2638800467430913403">"ရုန်းမင်း"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"ကွန်ရက်၊ အက်ပ် (သို့) ကိရိယာများကို ပြင်ဆင်သတ်မှတ်နိုင်ပါသည်"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi၊ မိုဘိုင်းနှင့် ဘလူးတုသ်ကို ပြင်ဆင်သတ်မှတ်ရန်"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"၎င်းသည် အောက်ပါတို့အပါအဝင် ကွန်ရက်ဆက်တင်များအားလုံးကို ပြင်ဆင်သတ်မှတ်လိုက်ပါမည်−\n\n"<li>"Wi‑Fi"</li>\n<li>"မိုဘိုင်းဒေတာ"</li>\n<li>"ဘလူးတုသ်"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM များကိုလည်း ပြင်ဆင်သတ်မှတ်ရန်"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ဖုန်းပေါ်ရှိ eSIM များအားလုံးကို ဖျက်ရန်။ သင်၏ eSIM များကို ပြန်လည်ဒေါင်းလုဒ်လုပ်ရန် သင်၏ မိုဘိုင်းဝန်ဆောင်မှုပေးသူကို ဆက်သွယ်ရပါမည်။ ၎င်းသည် သင်၏ မိုဘိုင်းဝန်ဆောင်မှု အစီအစဉ်ကို ပယ်ဖျက်လိုက်မည် မဟုတ်ပါ။"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ဆက်တင်များ ပြန်လည်သတ်မှတ်ရန်"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"ကွန်ရက်ချိန်ညှိချက်များအားလုံးပြန်လည်သတ်မှတ်မည်လား? ဤလုပ်ဆောင်ချက်ကို ပြန်လည်နောက်ပြန်၍ မရပါ!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ဆက်တင်များ ပြန်လည်သတ်မှတ်ရန်"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ပြန်လည်စတင်ရန် ပြုလုပ်မလား?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ဤအသုံးပြုသူအတွက် ကွန်ရက်ပြန်လည်သတ်မှတ်မှု မရရှိနိုင်ပါ"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"ကွန်ရက်ချိန်ညှိချက်များ ပြန်လည်သတ်မှတ်ပြီးပါပြီ"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM များ ပြင်ဆင်သတ်မှတ်၍မရပါ"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"အမှားတစ်ခုကြောင့် eSIM များ ပြင်ဆင်သတ်မှတ်၍မရပါ။"</string>
<string name="master_clear_title" msgid="3531267871084279512">"ဒေတာအားလုံးကို ဖျက်ရန် (စက်ရုံထုတ်ဆက်တင်အတိုင်း ပြင်ဆင်သတ်မှတ်ရန်)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ဤသည်မှာ သင့်တက်ဘလက်ထဲရှိ"<b></b>"သင့်ဂူးဂဲလ်အကောင့်\n\n"<li>"စနစ်နှင့် အက်ပ်ဒေတာနှင့် ဆက်တင်များ"</li>\n<li>"ဒေါင်းလုပ်ပြုလုပ်ထားသော အက်ပ်"</li>"iအပါအဝင်\n"<li>"စက်အတွင်းသိမ်းဆည်းထားခြင်း"</li>"များကို ဖျက်ပါလိမ့်မည်"</string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ဤသည်က သင့်ဖုန်း၏"<b>"စက်အတွင်းသိုလှောင်မှု"</b>" အပါအဝင် အောက်ပါတို့ကို ဖျက်ပါလိမ့်မည်- \n\n"<li>"သင်၏ Google အကောင့်"</li>\n<li>"စနစ်နှင့် အက်ပ်ဒေတာ၊ ဆက်တင်များ၊"</li>\n<li>"ဒေါင်းလုဒ်လုပ်ထားသည့်အက်ပ်များ"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"သင်သည် လက်ရှိတွင် အောက်ပါအကောင့်များကို ဝင်ရောက်ထားပါသည်\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ဤစက်ပစ္စည်းပေါ်တွင် အခြားအသုံးပြုသူများလဲ ရှိသည်။\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"သီချင်း"</li>\n<li>"ဓာတ်ပုံများ"</li>\n<li>"အသုံးပြုသူ၏တခြားဒေတာ"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM ရှိ ဖုန်းကုမ္ပဏီများ"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM များ"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"၎င်းက သင်၏ မိုဘိုင်းဝန်ဆောင်မှုအစီအစဉ်ကို ဖျက်သိမ်းမည်မဟုတ်ပါ။"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"သီချင်း၊ ပုံများနှင့် အသုံးပြုသူ၏တခြားဒေတာများကို ရှင်းလင်းရန်အတွက်"<b>"USBသိုလှောင်ကိရိယာ"</b>"အား ဖျက်ရန်လိုအပ်ပါသည်။"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"သီချင်း၊ ပုံများနှင့် တခြားသောအသုံးပြုသူ၏ဒေတာများကို ရှင်းလင်းရန်အတွက်"<b>"SDကဒ်"</b>"အား ဖျက်ရန်လိုအပ်ပါသည်။"</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"ကျေးဇူးပြု၍ အင်တာနက်ဖြင့် ချိတ်ဆက်ပါ။"</string>
<string name="location_title" msgid="1029961368397484576">"ကျွန်ုပ်၏တည်နေရာ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"အလုပ်ပရိုဖိုင်အတွက် တည်နေရာ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"စနစ်"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"တိကျမှုမြင့်မားခြင်း"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ဘက်ထရီအသုံးပြုမှု ချွေတာရန်"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"စက်ပစ္စည်းသာလျှင်"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"တည်နေရာပိတ်ရန်"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"အက်ပ်အဆင့် ခွင့်ပြုချက်များ"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"လတ်တလောတည်နေရာ တောင်းခံမှုများ"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"လတ်တလောတွင် မည်သည့်အပလီကေးရှင်းမှ တည်နေရာကို တောင်းခံမှုမရှိပါ။"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"တည်နေရာဝန်ဆောင်မှုများ"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ဘက်ထရီအသုံးပြုမှုမြင့်သော"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ဘက်ထရီအသုံးပြုမှုနိမ့်သော"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"တည်နေရာပြစနစ်"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"တည်နေရာကို ဆုံးဖြတ်ရန် GPS၊ Wi-Fi၊ ဘလူးတုသ် သို့မဟုတ် မိုဘိုင်းကွန်ရက်များကို အသုံးပြုပါ"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"တည်နေရာကို ဆုံးဖြတ်ရန် Wi-Fi၊ ဘလူးတုသ် သို့မဟုတ် မိုဘိုင်းကွန်ရက်များကို အသုံးပြုပါ"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"တည်နေရာကို ဆုံးဖြတ်ရန် GPS နှင့် စက်ပစ္စည်း၏ အာရုံခံကိရိယာများကို သုံးပါ"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ကြည့်ရှုနေပါသည်"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi ရှာဖွေနေသည်"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"စနစ်၏ အက်ပ်များနှင့် ဝန်ဆောင်မှုများအား Wi-Fi စက်ပစ္စည်းများကို အချိန်မရွေး ရှာဖွေခွင့်ပေးခြင်းဖြင့် တည်နေရာရှာဖွေခြင်းကို ပို၍ကောင်းမွန်စေမည်။"</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ကျန်ရှိနေ"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> အားသွင်းမည်"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"နောက်ခံ လုပ်ဆောင်မှု"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ကန့်သတ်ထားသည်"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"အက်ပ်ကို နောက်ခံတွင် ဖွင့်ခွင့်ပြုပါ"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"အက်ပ်ကို အသုံးမပြုသည့်အခါတွင် ၎င်းအားနောက်ခံတွင် ဖွင့်ထားနိုင်သည်"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"အက်ပ်ကို အသုံးမပြုသည့်အခါတွင် ၎င်း၏နောက်ခံ လုပ်ဆောင်ချက်အား ကန့်သတ်ထားပါသည်"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ဘက်ထရီက ကောင်းမွန်သော ဘက်ထရီသက်တမ်း ထုတ်မပေးနိုင်ပါ"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"အဆင့်မြင့် ဘက်ထရီစီမံခန့်ခွဲမှုစနစ်ကို ဖွင့်ခြင်း"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ဘက်ထရီအသုံးပြုမှု ပိုကောင်းလာစေရန်အတွက် ဖွင့်ပါ"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"ဘက်ထရီအားနည်းသည့်မုဒ်ကို ဖွင့်ခြင်း"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"သင်၏ ဘက်ထရီသက်တမ်းကို တိုးမြှင့်လိုက်ပါ"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ဘက်ထရီအားနည်းသည့်မုဒ်ကို ဖွင့်ထားခြင်း"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"အချို့ဝန်ဆောင်မှုများကို ကန့်သတ်ထားသည်"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ဖုန်းအသုံးပြုမှုများခြင်း"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"တက်ဘလက် အသုံးပြုများခြင်း"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"စက်အသုံးပြုမှုများခြင်း"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"စင့်ခ်လုပ်ရန် လက်ရှိတွင် ပြဿနာရှိနေပါသည်။ ခဏကြာလျှင် ပြန်လည်ရရှိပါမည်။"</string>
<string name="add_account_label" msgid="7811707265834013767">"အကောင့်ထည့်ရန်"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"အလုပ် ပရိုဖိုင်ကို မရရှိနိုင်သေးပါ"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"အလုပ်မုဒ်"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"အက်ပ်များ၊ နောက်ခံစင့်ခ်လုပ်ခြင်း၊ နှင့်သက်ဆိုင်သည့်အင်္ဂါရပ်များကို ဆောင်ရွက်ရန် အလုပ်ပရိုဖိုင်ကိုခွင့်ပြုပါ။"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"အလုပ်ပရိုဖိုင်"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"သင်၏ အဖွဲ့အစည်းက စီမံခန့်ခွဲထားပါသည်"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"အက်ပ်နှင့် အကြောင်းကြားချက်များကို ပိတ်ထားသည်"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"အလုပ် ပရိုဖိုင်ကို ဖယ်ရှားပစ်ရန်"</string>
<string name="background_data" msgid="5779592891375473817">"နောက်ခံတွင်အသုံးပြုသောဒေတာ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"အက်ပ်များက ဒေတာ ပို့၊ လက်ခံ၊ စင့်ခ် အချိန်မရွေးလုပ်နိုင်သည်"</string>
@@ -2405,7 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"အကောင့်ကို ဖယ်ရှားမလား"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ဤအကောင့်ကို ဖယ်ရှားခြင်းအားဖြင့် တက်ဘလက်ထဲမှ မက်ဆေ့ဂျ်များ၊ အဆက်အသွယ်များနှင့် တခြားဒေတာများအားလုံး ပျက်သွားပါမည်။"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ဤအကောင့်ကို ဖယ်ရှားခြင်းအားဖြင့် ဖုန်းထဲမှ မက်ဆေ့ဂျ်များ၊ အဆက်အသွယ်များနှင့် တခြားဒေတာများအားလုံး ပျက်သွားပါမည်။"</string>
- <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ဤအကောင့်ကို ဖယ်ရှားလိုက်ခြင်းဖြင့် စက်ပစ္စည်းထဲမှနေ၍ မက်ဆေ့ဂျ်၊ အဆက်အသွယ်နှင့် အခြားဒေတာများ အားလုံးကို ဖျက်လိုက်ပါမည်။"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ဤအကောင့်ကို ဖယ်ရှားလိုက်ခြင်းဖြင့် စက်ပစ္စည်းထဲရှိ မက်ဆေ့ဂျ်၊ အဆက်အသွယ်နှင့် အခြားဒေတာများ အားလုံးကို ဖျက်လိုက်ပါမည်။"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ဤပြောင်းလဲမှုကို သင့်စီမံခန့်ခွဲသူက ခွင့်မပြုပါ"</string>
<string name="provider_label" msgid="7724593781904508866">"စာရင်းသွင်းထားမှုများ နှိပ်ရန်"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2624,7 +2624,7 @@
<item quantity="other">အသိအမှတ်ပြုလက်မှတ်များကို စစ်ဆေးပါ</item>
<item quantity="one">အသိအမှတ်ပြုလက်မှတ်ကို စစ်ဆေးပါ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"အသုံးပြုသူများ"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"အသုံးပြုသူများစွာ"</string>
<string name="user_list_title" msgid="7937158411137563543">"သုံးစွဲသူများ &ကိုယ်ရေးအချက်အလက်များ"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"သုံးစွဲသူ သို့မဟုတ် ပရိုဖိုင်ကို ထည့်ရန်"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"သုံးစွဲသူကို ထည့်ရန်"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ဘလူးတုသ်၊ ကာစ်"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"အက်ပ်နှင့်အကြောင်းကြားချက်"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ခွင့်ပြုချက်များ၊ မူရင်းအက်ပ်များ"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"အသုံးပြုသူနှင့် အကောင့်များ"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"အကောင့်များ"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"မူရင်းအက်ပ်များ"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ဘာသာစကားများ၊ အချိန်၊ မိတ္တူ၊ အပ်ဒိတ်များ"</string>
<string name="search_results_title" msgid="1796252422574886932">"ဆက်တင်များ"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"မနှောင့်ယှက်ပါနှင့်၊ ကြားဝင်စွတ်ဖက်သည်၊ ကြားဝင်စွတ်ဖက်ခြင်း၊ အနားယူခြင်း"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"အနီးတဝိုက်၊ တည်နေရာ၊ သမိုင်း၊ အစီရင်ခံခြင်း"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"တိကျမှု"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"အကောင့်"</string>
<string name="keywords_users" msgid="3434190133131387942">"ကန့်သတ်ခြင်း၊ ကန့်သတ်မှု၊ ကန့်သတ်ထားသည်"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"စာသားအမှားပြင်ဆင်ခြင်း၊ မှန်သည်၊ အသံ၊ တုန်ခါမှု၊ အလိုအလျောက်၊ ဘာသာစကား၊ အမူအယာ၊ အကြံပြုရန်၊ အချက်ပြုချက်၊ အပြင်အဆင်၊ စိတ်အနှောင့်အယှက်ဖြစ်စေသော၊ စကားလုံး၊ စာရိုက်ခြင်း၊ စိတ်ခံစားမှုရုပ်ပုံလေးများ၊ အပြည်ပြည်ဆိုင်ရာ"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"ကွန်ရက်၊ မိုဘိုင်း ကွန်ရက်၊ ဝန်ဆောင်မှု အခြေအနေ၊ ထုတ်လွှင့်မှု အချက်ပြ၊ မိုဘိုင်း ကွန်ရက် အမျိုးအစား၊ ရိုမင်း၊ iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"အမှတ်စဉ်၊ ဟာ့ဒ်ဝဲ ဗားရှင်း"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android လုံခြုံရေး ပက်ချ် အဆင့်၊ baseband ဗားရှင်း၊ kernel ဗားရှင်း"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"ဝန်းကျင်ကို ပြကွက်၊ လော့ခ်ချထားချိန် မျက်နှာပြင်"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ကြိုးမဲ့ NFC တဲဂ်ကို စဖွင့်သတ်မှတ်ရန်"</string>
<string name="write_tag" msgid="8571858602896222537">"ရေးရန်"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ရေးရန် တဲဂ် တစ်ခုကို ပုပ်ပါ..."</string>
@@ -2912,6 +2914,7 @@
<item quantity="one">စည်းမျဉ်း ၁ ခု</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"မနှောင့်ယှက်ရ"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'မနှောင့်ယှက်ရ\' ဖွင့်ခြင်း"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"အပြုအမူ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ဤနေရာမှ အသံနှင့် တုန်ခါမှုများကို ခွင့်ပြုပါ-"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"အသံပိတ်ထားသည်"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"အလိုအလျောက် ဖွင့်ရန်"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"အလိုအလျောက် စည်းမျဉ်းများ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"အလိုအလျောက် စည်းမျဉ်း"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"မနှောင့်ယှက်ရ စည်းမျဉ်းထည့်ရန်"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"အချို့အချိန်များ၌ ကန့်သတ်ရန်"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"အချို့အချိန်၌ ဖုန်းအသံတိတ်ခြင်း"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'မနှောင့်ယှက်ရ\' စည်းမျဉ်းများထည့်ရန်"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"စည်းမျဉ်းအား သုံးရန်"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ဦးစားပေးများသာ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"နှိုးစက်များသာ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"လုံးဝ တိတ်ဆိတ်ခြင်း"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"မြင်ကွင်းပိတ်ခြင်းမှတားဆီးပါ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ပြသမှုများကို ခွင့်ပြုရန်"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ထည့်ရန်"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ဖွင့်ရန်"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ယခုဖွင့်ရန်"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ယခုပိတ်ရန်"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"\"မနှောင့်ယှက်ရ\" ကို <xliff:g id="FORMATTED_TIME">%s</xliff:g> အထိ ဖွင့်ထားသည်"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"\"မနှောင့်ယှက်ရ\" သည် ၎င်းကို မပိတ်မချင်း ပွင့်နေပါမည်"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"\"မနှောင့်ယှက်ရ\" ကို <xliff:g id="RULE_NAME">%s</xliff:g> စည်းကမ်းအရ အလိုအလျောက် ဖွင့်ပေးခဲ့သည်"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"\"မနှောင့်ယှက်ရ\" ကို <xliff:g id="APP_NAME">%s</xliff:g> အက်ပ်က အလိုအလျောက် ဖွင့်ပေးခဲ့သည်"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ဦးစားပေးများသာ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>။ <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"အလုပ်ပရိုဖိုင်ဆိုင်ရာ အသံများ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ကိုယ်ရေးပရိုဖိုင်အသံကို သုံးပါ"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"အသံများသည် အလုပ်နှင့် ကိုယ်ပိုင်ပရိုဖိုင်များအတွက် အတူတူပင် ဖြစ်သည်"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"ဖုန်းမြည်သံများ"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"အခြားအသံနှင့် တုန်ခါမှုများ"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"အကြောင်းကြားချက်များ"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"လတ်တလော ပို့ထားသည်"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"အဆင့်မြင့်"</string>
<string name="profile_section_header" msgid="2320848161066912001">"အလုပ်သတိပေးချက်များ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"အကြောင်းကြားချက်အမှတ်အသားများကို ခွင့်ပြုရန်"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"သင်၏စက်ပစ္စည်းကို လော့ခ်ဖွင့်ရန် လက်ဗွေရာကို သုံးခြင်းအပြင် စက်ကို စဖွင့်ဖွင့်ချင်း စကားဝှက်ထည့်ရန် သတ်မှတ်ထားခြင်းဖြင့် ထပ်လောင်းကာကွယ်ထားနိုင်ပါသေးသည်။ စက်ပစ္စည်းကို မဖွင့်မချင်း နှိုးစက်များအပြင် ဖုန်းခေါ်ဆိုမှု၊ မက်ဆေ့ဂျ် သို့မဟုတ် အကြောင်းကြားချက်များကို လက်ခံရရှိမည် မဟုတ်ပါ။\n\n၎င်းသည် ပျောက်ဆုံးသွားသော သို့မဟုတ် အခိုးခံရသော စက်ပစ္စည်းများပေါ်ရှိ ဒေတာများကို ကာကွယ်ပေးပါသည်။ သင်၏စက်ပစ္စည်းကို စဖွင့်ဖွင့်ချင်း စကားဝှက်ထည့်ရန် သတ်မှတ်ထားလိုပါသလား။"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yes"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"No"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yes"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"No"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN လိုပါသလား?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ရေးဆွဲပုံစံ လိုပါသလား?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"လျှို့ဝှက်ကုဒ် လိုပါသလား?"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"ငြင်းပယ်ပါ"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ဤစက်ကို အားသွင်းပါ"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ဤဖုန်းကိုသာ အားသွင်းပါ"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"အားဖြည့်ခြင်း"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"ချိတ်ဆက်ထားသော စက်ပစ္စည်းကို အားသွင်းသည်။ USB ဖြင့် အားသွင်းခြင်းကို ပံ့ပိုးသည့် စက်ပစ္စည်းများတွင်သာ အသုံးပြုနိုင်ပါသည်။"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ဖိုင်များကို လွှဲပြောင်းခြင်း"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ဖိုင်များကို အခြားစက်ပစ္စည်းတစ်ခုသို့ လွှဲပြောင်းပါ"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ဓာတ်ပုံများ လွှဲပြောင်းခြင်း (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP ကို မပံ့ပိုးလျှင် (PTP) ဓာတ်ပုံများ သို့မဟုတ် ဖိုင်များကို လွှဲပြောင်းရန်"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"စက်ကို MIDI အဖြစ်အသုံးပြုခြင်း"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ဤစက်ပစ္စည်းကို MIDI အဖြစ်အသုံးပြုပါ"</string>
- <string name="usb_use" msgid="3256040963685055320">"USB ကို အောက်ပါအတွက် အသုံးပြုပါ -"</string>
+ <string name="usb_use" msgid="3372728031108932425">"USB သုံးပါ"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ဤစက်ပစ္စည်းကို အားသွင်းနေသည်"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"အခြားစက်ပစ္စည်းများကို အားသွင်းပေးရန်အတွက် သတ်မှတ်ထားပါသည်"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ဖိုင်များကို လွှဲပြောင်းရန်"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ဓာတ်ပုံများ လွှဲပြောင်းနေသည် (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"စက်ပစ္စည်းကို MIDI အဖြစ် အသုံးပြုနေသည်"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS စကရင်ပွားခြင်း"</string>
<string name="background_check_pref" msgid="7550258400138010979">"နောက်ခံကို စစ်ကြည့်ပါ"</string>
<string name="background_check_title" msgid="4534254315824525593">"နောက်ခံကို အပြည့်အဝ သုံးနိုင်ခွင့်"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"နောက်ခံပုံ၊ ပိတ်ထားခြင်း၊ ဖောင့်အရွယ်အစား"</string>
<string name="display_summary_example" msgid="9102633726811090523">"၁၀ မိနစ်ကြာမျှ လှုပ်ရှားမှုမရှိလျှင် ပိတ်လိုက်ပါ"</string>
<string name="memory_summary" msgid="8080825904671961872">"Avg သည်ယာယီမှတ်ဉာဏ် <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> ၏ <xliff:g id="USED_MEMORY">%1$s</xliff:g> ကိုအသုံးပြုထားသည်"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"လက်ရှိ အသုံးပြုသူ− <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> အဖြစ် လက်မှတ်ထိုးဝင်ထားသည်"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> သည်မူရင်းဖြစ်သည်"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ဖွင့်ပါ၊ <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ဖွင့်ပါ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ပိတ်ရန်"</string>
<string name="backup_disabled" msgid="485189128759595412">"အရံကူးယူခြင်း ပိတ်ထားသည်"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> သို့ အပ်ဒိတ်လုပ်ထားသည်"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"လုပ်ဆောင်ချက်ကို ခွင့်မပြုပါ"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"အသံအတိုးအကျယ်ကို ပြောင်း၍မရပါ"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"ဖုန်းခေါ်ဆိုခွင့် မရှိပါ"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS ပို့ခွင့်မပြုပါ"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ကင်မရာ အသုံးပြုခွင့်မရှိပါ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ဖန်သားပြင်ဓာတ်ပုံ ရိုက်ခွင့်မပြုပါ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"အရန်သိမ်းခြင်းကို ပိတ်၍မရပါ"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ဤလုပ်ဆောင်ချက်ကို ပိတ်ထားပါသည်။ ပိုမိုလေ့လာရန် သင့်အဖွဲ့အစည်း၏ စီမံခန့်ခွဲသူကို ဆက်သွယ်ပါ။"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"နောက်ထပ် အသေးစိတ်များ"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"သင်၏စီမံခန့်ခွဲသူသည် ဆက်တင်များ၊ ခွင့်ပြုချက်များ၊ ပူးပေါင်းသုံးစွဲခွင့်များ၊ ကွန်ရက်လုပ်ဆောင်ချက်နှင့် စက်ပစ္စည်း၏ တည်နေရာ အချက်အလက်များအပါအဝင် သင်၏ အလုပ်ပရိုဖိုင်နှင့် ဆက်စပ်နေသည့် အက်ပ်နှင့် ဒေတာများကို စောင့်ကြည့်စီမံနိုင်ပါသည်။"</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"ပြောင်းရွှေ့လွယ်သော ဝိုင်ဖိုင်ဟော့စပေါ့ <xliff:g id="ID_1">%1$s</xliff:g> ဖွင့်ထားသည်၊ ဤစက်ပစ္စည်းအတွက် ဝိုင်ဖိုင်မှာ ပိတ်ထားသည်။"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"လေယာဉ်ပျံမုဒ် ဖွင့်ထားသည်"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi၊ ဘလူးတုသ်နှင့် မိုဘိုင်းကွန်ရက်တို့ကို ပိတ်ထားပါသည်။ ဖုန်းခေါ်ဆိုခြင်း သို့မဟုတ် အင်တာနက် ချိတ်ဆက်ခြင်း မပြုလုပ်နိုင်ပါ။"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"မနှောင့်ယှက်ရကိုဖွင့်ထားသည် (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ဘက်ထရီချွေတာခြင်း ဖွင့်ထားသည်"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"စွမ်းဆောင်ရည် လျှော့ချထားသည်။ တည်နေရာဝန်ဆောင်မှုများနှင့် နောက်ခံဒေတာ ပိတ်ထားသည်။"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"မိုဘိုင်းဒေတာကို ပိတ်ထားပါသည်"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"အလုပ်ပရိုဖိုင်ပိတ်ထားသည်"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"သင့်အလုပ်ပရိုဖိုင်နှင့် သက်ဆိုင်သည့် အက်ပ်များ၊ နောက်ခံစင့်ခ်လုပ်ခြင်း၊ နှင့်အခြား အင်္ဂါရပ်များကို ပိတ်ထားပါသည်။"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"ညအလင်းရောင် အစီအစဉ်ကို သတ်မှတ်ရန်"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ပယင်းရောင်စကရင်ကအိပ်ပျော်စေသည်"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ညတိုင်း မျက်နှာပြင်ကို အလိုအလျောက် အရောင်ရင့်ရန်"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"ညအလင်းရောင်ကို ဖွင့်ထားသည်"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"ဖန်သားပြင်ကို ပယင်းရောင်သန်းထားသည်။ ၎င်းက သင့်ကို အိပ်ပျော်သွားစေရန် အထောက်အကူပေးနိုင်ပါသည်။"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"သင့်အတွက် အကြံပြုထားသည်များ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"အကြံပြုချက်များ"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"နောက်ထပ် +<xliff:g id="ID_1">%1$d</xliff:g> ခု"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"တစ်ခုမျှမဟုတ်"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"အဆင့်သတ်မှတ်သည့် အကြောင်းအရာ လိုအပ်နေသည်။"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"အဆင့်သတ်မှတ်သည့် အကြောင်းအရာတွင် ဤကီးမပါဝင်ပါ"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"ဖြတ်ညှပ်ပုံဖြင့် အသွင်တူ မျက်နှာပြင်ပြသရန်"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"တစ်ခုမျှမဟုတ်"</string>
<string name="special_access" msgid="3458780842491881155">"အထူးအသုံးပြုခွင့်ရ အက်ပ်"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other">အက်ပ် <xliff:g id="COUNT">%d</xliff:g> ခုက ဒေတာကို အကန့်အသတ်မရှိ သုံးနိုင်သည်</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"စနစ် UI သရုပ်ပြမုဒ်"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ဆော့ဖ်ဝဲအင်ဂျင်နီယာ အကွက်များကို အမြန်သတ်မှတ်ခြင်း"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"ဝင်းဒိုး မျဉ်းဆွဲခြင်း"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"အလွှာကို မျဉ်းဆွဲခြင်း"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"မျက်နှာပြင် မျဉ်းဆွဲခြင်း"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"အလုပ်ပရိုဖိုင်ဆက်တင်များ"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"အဆက်အသွယ်ကို ရှာဖွေပါ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"ခေါ်ဆိုသူများနှင့် အဆက်အသွယ်များကို မည်သူမည်ဝါဖြစ်ကြောင်း ခွဲခြားနိုင်ရန်အတွက် သင့်အဖွဲ့အစည်းအမည်ကို အဆက်အသွယ်အား ရှာဖွေခွင့်ပြုပါ"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ကင်မရာသို့ အမြန်သွားရန်"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ကင်မရာကို အမြန်ဖွင့်ရန် ဖွင့်ပိတ်ခလုတ်ကို နှစ်ချက်နှိပ်ပါ။ ဖန်သားပြင်၏ မည်သည့်နေရာမှမဆို အမြန်ဖွင့်နိုင်ပါသည်။"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ကင်မရာကို အမြန်ဖွင့်ရန်"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ကင်မရာကို ဖွင့်ရန်အတွက် ဖွင့်ပိတ်ခလုတ်ကို နှစ်ကြိမ်နှိပ်ပါ"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ကင်မရာပြောင်းရန်"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"ဆယ်ဖီအမြန်ရိုက်ရန်"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"ဆယ်ဖီမုဒ်အတွက် ဖုန်းကို နှစ်ကြိမ်လှည့်ပါ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"ဆယ်ဖီမုဒ်အတွက် တက်ဘလက်ကို နှစ်ကြိမ်လှည့်ပါ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"ဆယ်ဖီမုဒ်အတွက် စက်ပစ္စည်းကို နှစ်ကြိမ်လှည့်ပါ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ဖုန်းကို စစ်ဆေးကြည့်ရန် နှစ်ချက်တို့ပါ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"တက်ဘလက်ကို စစ်ဆေးကြည့်ရန် နှစ်ချက်တို့ပါ"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"စက်ပစ္စည်းကို စစ်ဆေးကြည့်ရန် နှစ်ချက်တို့ပါ"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"အချိန်၊ အကြောင်းကြားချက်သင်္ကေတများနှင့် အခြားအချက်အလက်များကို ကြည့်ရန် သင့်မျက်နှာပြင်ကို နှစ်ကြိမ်ဆက်တိုက်တို့ပါ။"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ဖန်သားပြင်ပိတ်ထားစဉ် အကြောင်းကြားချက်များကို စစ်ဆေးရန်"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ဖုန်းကိုစစ်ရန် ကောက်ယူခြင်း"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"တက်ဘလက်ကို စစ်ဆေးကြည့်ရန် မ လိုက်ပါ"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"စက်ပစ္စည်းကို စစ်ဆေးကြည့်ရန် မ လိုက်ပါ"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"အချိန်၊ အကြောင်းကြားချက်သင်္ကေတများနှင့် အခြားအချက်အလက်များကို စစ်ဆေးရန် သင့်ဖုန်းကို ကောက်ယူလိုက်ပါ။"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"အချိန်၊ အကြောင်းကြားချက်သင်္ကေတများနှင့် အခြားအချက်အလက်များကို စစ်ဆေးရန် သင့်တက်ဘလက်ကို ကောက်ယူလိုက်ပါ။"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"အချိန်၊ အကြောင်းကြားချက်သင်္ကေတများနှင့် အခြားအချက်အလက်များကို စစ်ဆေးရန် သင့်စက်ပစ္စည်းကို ကောက်ယူလိုက်ပါ။"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ဖန်သားပြင်ပိတ်ထားစဉ် အကြောင်းကြားချက်များကို စစ်ဆေးရန်"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"သတိပေးချက်အတွက် လက်ဗွေပွတ်ဆွဲပါ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"လက်ဗွေပွတ်ဆွဲခြင်း"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"အကြောင်းကြားချက်များကို ကြည့်ရန် ဖုန်း၏ နောက်ကျောဘက်ရှိ လက်ဗွေ အာရုံခံကိရိယာပေါ်တွင် အောက်သို့ ပွတ်ဆွဲပါ။"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"အကြောင်းကြားချက်များကို ကြည့်ရန် တက်ဘလက်၏ နောက်ကျောဘက်ရှိ လက်ဗွေ အာရုံခံကိရိယာပေါ်တွင် အောက်သို့ ပွတ်ဆွဲပါ။"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"အကြောင်းကြားချက်များကို ကြည့်ရန် ကိရိယာ၏ နောက်ကျောဘက်ရှိ လက်ဗွေ အာရုံခံကိရိယာပေါ်တွင် အောက်သို့ ပွတ်ဆွဲပါ။"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"အကြောင်းကြားချက်များကို အမြန်ကြည့်ရန်"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"လက်ဗွေ အာရုံခံကိရိယာပေါ်တွင် အောက်သို့ ပွတ်ဆွဲပါ"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ဖွင့်ထားသည်"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ပိတ်ထားသည်"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"စဖွင့်သည့်စနစ်ကို လော့ခ်ဖွင့်ပြီးပါပြီ"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ဤဝန်ဆောင်မှုကို ဤစက်ပစ္စည်းတွင် မရရှိနိုင်ပါ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"GNSS အတိုင်းအတာအပြည့် သက်ရောက်ရန်"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"လည်ပတ်ချိန်မပါဘဲ GNSS စက်ဝိုင်းပုံမြင်ကွင်းကျယ်ပုံများနှင့် ကြိမ်နှုန်းအားလုံးကို ခြေရာခံပါ"</string>
- <string name="storage_access" msgid="8905018810338984531">"သိုလှောင်ခန်း အသုံးပြုခွင့်"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"သိုလှောင်ခန်း အသုံးပြုခွင့် သတ်မှတ်ချက် ဖိုင်လမ်းညွှန်"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ရပ်တန့်သွားမှု ဒိုင်ယာလော့ကို အမြဲပြရန်"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"အက်ပ်ရပ်တန့်သွားသည့်အခါတိုင်း ဒိုင်ယာလော့ကို ပြရန်"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ဖိုင်လမ်းညွှန် သုံးခွင့်"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ဖိုင်လမ်းညွှန် သုံးခွင့်"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"ကျွန်ုပ်၏ဖုန်း"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"ကျွန်ုပ်၏တက်ဘလက်"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"ကျွန်ုပ်၏စက်ပစ္စည်း"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"အကောင့်"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"စက်ပစ္စည်း အမည်"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ကားမောင်းနေစဉ် ဘလူးတုသ် သုံးခြင်း"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ကားမောင်းနေစဉ် ဘလူးတုသ် အလိုအလျောက် ဖွင့်ပါ"</string>
</resources>
diff --git a/res/values-nb/arrays.xml b/res/values-nb/arrays.xml
index f650da5..95fd3a9 100644
--- a/res/values-nb/arrays.xml
+++ b/res/values-nb/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Trykk på knappen"</item>
<item msgid="1624323946324499595">"Personlig kode fra motpart"</item>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 79b90b7..009ede4 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Angi dato"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sortér alfabetisk"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sortér etter tidssone"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> starter <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Sommertid"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standardtid"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Tidssone etter område"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Fast forskyvning for tidssoner"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Dato"</string>
<string name="time_picker_title" msgid="483460752287255019">"Tid"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Låses automatisk"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Låseskjermmelding"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Aktiver moduler"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Avslått av administratoren"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Vis alternativet for låsing"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Vis alternativet for av/på-knappen som slår av utvidet tilgang og opplåsing med fingeravtrykk."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Ingen"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"F.eks. Petters Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Profilinformasjon"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Kontoer"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Posisjon"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Bruk posisjon"</string>
<string name="account_settings_title" msgid="626177544686329806">"Kontoer"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Sikkerhet og posisjon"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Kryptering og legitimasjon"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Passordet du skrev inn, er korrekt, men dataene dine er dessverre skadet. \n\nHvis du vil bruke nettbrettet ditt, må du tilbakestille det til fabrikkstandard. Når du konfigurerer nettbrettet etter tilbakestillingen, kan du gjenopprette alle data som er blitt sikkerhetskopiert fra Google-kontoen din."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Passordet du skrev inn, er korrekt, men dataene dine er dessverre skadet. \n\nHvis du vil bruke telefonen din, må du tilbakestille den til fabrikkstandard. Når du konfigurerer telefonen etter tilbakestillingen, kan du gjenopprette alle data som er blitt sikkerhetskopiert fra Google-kontoen din."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Bytt inndatametode"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Angi skjermlås"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Beskytt enheten"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Bruk fingeravtrykk"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Lås opp med fingeravtrykket ditt"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Angi skjermlås for sikkerheten"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Forhindre at andre bruker nettbrettet ditt"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Forhindre at andre bruker enheten din"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Forhindre at andre bruker telefonen din"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Lås opp med fingeravtrykk"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Lås opp med fingeravtrykket ditt"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Lås opp med fingeravtrykket ditt"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Lås opp med fingeravtrykket ditt"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Velg skjermlås"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Velg jobblås"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Beskytt nettbrettet"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Navn"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Logg på"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> ønsker å slå på Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> ønsker å slå av Wi-Fi"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Slå på Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Bruk Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Innstillinger for Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Sett opp og styr trådløse aksesspunkt"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Passord"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Vis passord"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Velg AP-bånd"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatisk"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 GHz-bånd"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz-bånd"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP-innstillinger"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi-anrop"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Slå på Wi-Fi-anrop"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Bruk Wi-Fi i stedet for mobilnettverket"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Forleng dekningen ved å ringe via Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Ringeinnstillinger"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi-ringemodus"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Roaming-innstilling"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Nettverkstype"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operatørinformasjon"</string>
<string name="status_data_state" msgid="5503181397066522950">"Datatilgang"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Servicestatus"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signalstyrke"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Nettverket, appene eller enheten kan tilbakestilles"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Tilbakestil Wi-Fi, mobil og Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Dette tilbakestiller alle nettverksinnstillinger, inkludert:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobildata"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Tilbakestill også e-SIM-kort"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Slett alle e-SIM-kort på telefonen. Du må ta kontakt med operatøren din for å laste ned e-SIM-kortene dine på nytt. Dette avslutter ikke mobilabonnementet ditt."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Tilbakestill innstillingene"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Vil du tilbakestille alle nettverksinnstillingene? Du kan ikke angre denne handlingen."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Tilbakestill innstillingene"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Vil du tilbakestille?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Tilbakestilling av nettverket er ikke tilgjengelig for denne brukeren"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Nettverksinnstillingene er tilbakestilt"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Kan ikke tilbakestille e-SIM-kort"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"E-SIM-kortene kan ikke tilbakestilles på grunn av en feil."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Slett alle data (tilbakestilling til fabrikkstandard)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Dette sletter alle data fra nettbrettets "<b>"interne lagringsplass"</b>", inkludert følgende:\n\n"<li>"Google-kontoen din"</li>\n<li>"Data og innstillinger for system og apper"</li>\n<li>"Nedlastede apper"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Dette sletter alle data fra telefonens "<b>"interne lagringsplass"</b>", inkludert følgende:\n\n"<li>"Google-kontoen din"</li>\n<li>"Data og innstillinger for system og apper"</li>\n<li>"Nedlastede apper"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Du er for øyeblikket pålogget følgende kontoer:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Det er andre brukere tilstede på denne enheten.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musikk"</li>\n<li>"Bilder"</li>\n<li>"Andre brukerdata"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operatører på e-SIM-kortet"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"e-SIM-kort"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Dette kansellerer ikke mobilabonnementet ditt."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"For å slette musikk, bilder og andre brukerdata må "<b>"USB-lageret"</b>" tømmes."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"For å slette musikk, bilder og andre brukerdata, må "<b>"SD-kortet"</b>" tømmes."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Koble deg til Internett"</string>
<string name="location_title" msgid="1029961368397484576">"Min posisjon"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Sted for arbeidsprofil"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modus"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Stor nøyaktighet"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Batterisparing"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Bare enheten"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Posisjon er slått av"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Tillatelser på appnivå"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Nylige posisjonsforespørsler"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Ingen apper har bedt om posisjonen din i det siste"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Posisjonstjenester"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Høy batteribruk"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Lav batteribruk"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Posisjonsmodus"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Bruk GPS, Wi-Fi, Bluetooth eller mobilnettverk til å fastslå posisjonen"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Bruk Wi-Fi, Bluetooth eller mobilnettverk til å fastslå posisjonen"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Bruk GPS og enhetssensorer for å finne posisjonen"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Søker"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi-skanning"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Gjør posisjonsangivelse mer nøyaktig ved å la systemapper og -tjenester oppdage Wi-Fi-nettverk når som helst."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Posisjonskilder"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Om nettbrettet"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Om telefonen"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Om enheten"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Om den emulerte enheten"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Vis juridisk informasjon, status og programvareversjon"</string>
<string name="legal_information" msgid="5769301644270604095">"Juridisk informasjon"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Se alle de <xliff:g id="COUNT">%1$d</xliff:g> appene"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Nettbrettet ditt og personopplysningene dine er mer sårbare for angrep hvis du bruker ukjente apper. Ved å installere apper fra denne kilden godtar du at du selv er ansvarlig for enhver skade på nettbrettet eller tap av data som kan oppstå, fra bruk av slike apper."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefonen din og personopplysningene dine er mer sårbare for angrep hvis du bruker ukjente apper. Ved å installere apper fra denne kilden godtar du at du selv er ansvarlig for enhver skade på telefonen eller tap av data som kan oppstå, fra bruk av slike apper."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Enheten din og personopplysningene dine er mer sårbare for angrep hvis du bruker ukjente apper. Ved å installere apper fra denne kilden godtar du at du selv er ansvarlig for eventuelle skader på enheten eller tap av data som oppstår på grunn av bruk av dem."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Avanserte innstillinger"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Aktiver flere innstillingsalternativer"</string>
<string name="application_info_label" msgid="5736524913065714880">"Info om appen"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Kan påvirke ytelsen"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Klikk etter at markøren stanser"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Forsinkelse før klikk"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Bruk tjenesten"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Bruk fargekorrigering"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Bruk teksting"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"PÅ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"AV"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Vis i hurtiginnstillingene"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> gjenstår"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Batteriet er fulladet om <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktivitet i bakgrunnen"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Begrenset"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"La appen kjøre i bakgrunnen"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Apen kan kjøre i bakgrunnen når den ikke er i bruk"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Appens bakgrunnsaktivitet er begrenset når den ikke er i bruk"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Apper fungerer som de skal"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Lav batterikapasitet"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Batteriet kan ikke gi god batterilevetid"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Slå på smart batteristyring"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Slå på for å optimalisere batteriforbruket"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Slå på Lavt batteri-modus"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Forleng batterilevetiden din"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Lavt batteri-modus er på"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Noen funksjoner er begrenset"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefonen er brukt mye"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Nettbrettet er brukt mye"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Enheten er brukt mye"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Medietjener"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Appoptimalisering"</string>
<string name="battery_saver" msgid="8172485772238572153">"Batterisparing"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Bruk batterisparing"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Slå på automatisk"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Aldri"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"med <xliff:g id="PERCENT">%1$s</xliff:g> batteri"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Det er midlertidige problemer med synkroniseringen. Vent litt."</string>
<string name="add_account_label" msgid="7811707265834013767">"Legg til konto"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Arbeidsprofilen er ikke tilgjengelig ennå"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Jobbmodus"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Slå på jobbprofilen, inkludert apper, synkronisering i bakgrunnen og relaterte funksjoner"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Jobbprofil"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Administreres av organisasjonen din"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Apper og varsler er slått av"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Fjern arbeidsprofilen"</string>
<string name="background_data" msgid="5779592891375473817">"Bakgrunnsdata"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Apper kan når som helst synkronisere, sende og motta data"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Vil du fjerne kontoen?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Hvis du fjerner denne kontoen, slettes alle tilhørende meldinger, kontakter og andre data fra nettbrettet!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Hvis du fjerner denne kontoen, slettes alle tilhørende e-poster, kontakter og andre data fra telefonen."</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Hvis du fjerner denne kontoen, slettes alle tilhørende e-poster, kontakter og andre data fra enheten."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Denne endringen er ikke tillatt av administratoren"</string>
<string name="provider_label" msgid="7724593781904508866">"Push-abonnementer"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="other">Sjekk sertifikatene</item>
<item quantity="one">Sjekk sertifikatet</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Brukere"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Flere brukere"</string>
<string name="user_list_title" msgid="7937158411137563543">"Brukere og profiler"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Legg til en bruker eller profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Legg til bruker"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apper og varsler"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Tillatelser, standardapper"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Brukere og kontoer"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Kontoer"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Standardapper"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Språk, tid, sikkerhetskopiering, oppdateringer"</string>
<string name="search_results_title" msgid="1796252422574886932">"Innstillinger"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ikke, ikke forstyrr, forstyrr, avbrudd, pause"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"i nærheten, sted, logg, rapportering"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"nøyaktighet"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"konto"</string>
<string name="keywords_users" msgid="3434190133131387942">"begrensning, begrens, begrenset"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"tekstkorrigering, korrekt, lyd, vibrer, automatisk, språk, bevegelse, foreslå, forslag, tema, støtende, ord, type, emoji, internasjonal"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"nettverk, status for mobilnettverk, servicestatus, signalstyrke, mobilnettverkstype, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"serienummer, maskinvareversjon"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nivå av sikkerhetsoppdatering i Android, basisbåndversjon, kjerneversjon"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Konfigurer NFC-tag for Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Skriv"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Trykk på en brikke for å skrive"</string>
@@ -2929,6 +2915,7 @@
<item quantity="one">1 regel</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ikke forstyrr"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Slå på Ikke forstyrr"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Atferd"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Tillat lyd og vibrasjoner fra"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Ingen lyd"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Slå på automatisk"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Automatiske regler"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Automatisk regel"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Angi Ikke forstyrr-regler"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Begrens lyd og vibrering til bestemte tider"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Demp telefonen til bestemte tider"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Angi Ikke forstyrr-regler"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Bruk regel"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Bare prioritet"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Bare alarmer"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Total stillhet"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokkér visuelle forstyrrelser"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Tillat visuelle signaler"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Legg til"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Slå på"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Slå på nå"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Slå av nå"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Ikke forstyrr er slått på til <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Ikke forstyrr er på til du slår det av"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Ikke forstyrr ble slått på automatisk av en regel (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Ikke forstyrr ble slått på automatisk av en app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Bare prioritet"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Lyder i jobbprofilen"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Bruk personlig profil-lyder"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Lydene er like for jobbprofilen og den personlige profilen"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringelyder"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Andre lyder og vibrasjoner"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Varsler"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Nylig sendt"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avansert"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Jobbvarsler"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Tillat varselprikker"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"I tillegg til å bruke fingeravtrykket ditt til å låse opp enheten kan du sikre den enda mer ved å be om passord ved oppstart. Enheten kan ikke motta anrop, SMS eller varsler – inkludert alarmer – før den har startet opp.\n\nDette bidrar til å beskytte data på mistede eller stjålne enheter. Vil du kreve passord for å starte enheten?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ja"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Nei"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ja"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Nei"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Vil du kreve PIN-kode?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Vil du kreve mønster?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Vil du kreve passord?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Avslå"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"å lade denne enheten"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Bare lad enheten"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"å lade"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Lad den tilkoblede enheten. Fungerer bare med enheter som støtter USB-lading."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"å overføre filer"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Overfør filer til en annen enhet"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"å overføre bilder (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Overføring av bilder eller filer hvis MTP ikke er støttet (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"å bruke enheten som MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Bruk denne enheten som MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Bruk USB for"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Bruk USB for"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Lading av denne enheten"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Leverer strøm"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Overføring av filer"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Overføring av bilder (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Bruk av enheten som MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS-speiling"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Bakgrunnssjekk"</string>
<string name="background_check_title" msgid="4534254315824525593">"Full bakgrunnstilgang"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Bakgrunn, hvilemodus, skriftstørrelse"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Hvilemodus etter 10 minutter uten aktivitet"</string>
<string name="memory_summary" msgid="8080825904671961872">"Gjennomsnittlig er <xliff:g id="USED_MEMORY">%1$s</xliff:g> av <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> minne er brukt"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Nåværende bruker: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Logget på som <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> er angitt som standard"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"PÅ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"PÅ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"AV"</string>
<string name="backup_disabled" msgid="485189128759595412">"Sikkerhetskopiering er slått av"</string>
- <string name="about_summary" msgid="924181828102801010">"Oppdatert til Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Handlingen er ikke tillatt"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Kan ikke endre volumet"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Ringing er ikke tillatt"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS er ikke tillatt"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kameraet er ikke tillatt"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Skjermdump er ikke tillatt"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Kan ikke slå av sikkerhetskopier"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Denne handlingen er slått av. For å finne ut mer, ta kontakt med administratoren for organisasjonen din."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Mer informasjon"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administratoren kan overvåke og administrere apper og data som er tilknyttet jobbprofilen din, inkludert innstillinger, tillatelser, bedriftstilgang, nettverksaktivitet og enhetens posisjonsinformasjon."</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Flyttbar Wi-Fi-sone <xliff:g id="ID_1">%1$s</xliff:g> er aktiv – Wi-Fi for denne enheten er slått av."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Flymodus er på"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth og mobilnettverk er slått av. Du kan ikke ringe eller koble til Internett."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Ikke forstyrr er slått på (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Batterisparing er på"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Ytelsen er redusert. Posisjonstjenester og bakgrunnsdata er slått av."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Mobildata er slått av"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Jobbprofilen er av"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Apper, synkronisering i bakgrunnen og andre funksjoner som er knyttet til jobbprofilen din, er slått av."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Angi tidsplanen for nattlys"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Sovne enklere med ravgul skjermnyanse"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Endre skjermens fargetone automatisk hver natt"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Nattlys er på"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Skjermen din har en ravgul nyanse. Dette kan gjøre det enklere å sovne."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Forslag til deg"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Forslag"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> til"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ingen"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Rangeringsobjektet mangler."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Rangeringsobjektet inneholder ikke denne tasten."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simuler en skjerm med utklipp"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Ingen"</string>
<string name="special_access" msgid="3458780842491881155">"Spesiell apptilgang"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> apper kan bruke ubegrenset med data</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Koblet til flere enheter"</string>
<string name="demo_mode" msgid="2798762752209330277">"Demomodus for systembrukergrensesnittet"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Fliser med hurtiginnstillinger for utviklere"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Vindussporing"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Overflatespor"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Innstillinger for jobbprofilen"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontaktsøk"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Tillat kontaktsøk for organisasjonen din for å identifisere innringere og kontakter"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"For å frigjøre lagringsplass fjernes sikkerhetskopierte bilder og videoer fra enheten din av lagringsadministratoren."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Fjern bilder og videoer"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Lagringsadministrator"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Bruk lagringsadministrator"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatisk"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manuelle innstillinger"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Frigjør lagringsplass nå"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Åpne kameraet raskt"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Trykk på av/på-knappen to ganger for å åpne kameraet raskt. Dette fungerer på alle skjermer."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Rask åpning av kameraet"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Trykk på av/på-knappen to ganger for å åpne kameraet"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Vend kameraet"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Ta selfier raskere"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Vri telefonen to ganger for selfie-modus"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Vri nettbrettet to ganger for selfie-modus"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Vri enheten to ganger for selfie-modus"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Dobbelttrykk for å sjekke telefonen"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Dobbelttrykk for å sjekke nettbrettet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Dobbelttrykk for å sjekke enheten"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Dobbelttrykk på skjermen for å sjekke klokkeslett, varselikoner og annen informasjon."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Sjekk varsler når skjermen er slått av"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Løft for å sjekke telefonen"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Løft for å sjekke nettbrettet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Løft for å sjekke enheten"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ta opp telefonen for å sjekke tidspunkt, varselikoner og annen informasjon."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ta opp nettbrettet for å sjekke tidspunkt, varselikoner og annen informasjon."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ta opp enheten for å sjekke tidspunkt, varselikoner og annen informasjon."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Sjekk varsler når skjermen er slått av"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Sveip fingersensoren for varsler"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Sveip på fingersensoren"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Sjekk varsler ved å sveipe ned på fingeravtrykksensoren på baksiden av telefonen."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Sjekk varsler ved å sveipe ned på fingeravtrykksensoren på baksiden av nettbrettet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Sjekk varsler ved å sveipe ned på fingeravtrykksensoren på baksiden av enheten."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Se varsler raskt"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Sveip ned på fingeravtrykkssensoren"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"På"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Av"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Oppstartsinnlasteren er allerede låst opp"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Denne funksjonen er ikke tilgjengelig på denne enheten"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Tving fullstendige GNSS-målinger"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Spor alle GNSS-konstellasjoner og -frekvenser uten syklus for oppgaver"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Vis alltid krasjdialogboksen"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Vis dialogboksen hver gang en app krasjer"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Katalogtilgang"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"katalogtilgang"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Telefonen min"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Nettbrettet mitt"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Enheten min"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Konto"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Enhetsnavn"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Bruk Bluetooth når du kjører"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Slå på Bluetooth automatisk når du kjører"</string>
</resources>
diff --git a/res/values-ne/arrays.xml b/res/values-ne/arrays.xml
index ce16994..316953b 100644
--- a/res/values-ne/arrays.xml
+++ b/res/values-ne/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push बटन"</item>
<item msgid="1624323946324499595">"PIN जोडी उपकरणबाट"</item>
@@ -410,8 +412,8 @@
<item msgid="3217099060748617005">"कुनै पनि होइन"</item>
<item msgid="7467615139904599420">"रूपरेखा"</item>
<item msgid="5623165557468608975">"छाँया राख्नुस्"</item>
- <item msgid="8088451174058214588">"उठायो"</item>
- <item msgid="3821418743395480313">"निराश"</item>
+ <item msgid="8088451174058214588">"उठेको"</item>
+ <item msgid="3821418743395480313">"दबेको"</item>
</string-array>
<string-array name="captioning_opacity_selector_titles">
<item msgid="7622491218136667566">"२५%"</item>
@@ -420,7 +422,7 @@
<item msgid="8342334626783983353">"१००%"</item>
</string-array>
<string-array name="captioning_preset_selector_titles">
- <item msgid="7009918361545506251">"पूर्वनिर्धारित अनुप्रयोग प्रयोग गर्नुहोस्"</item>
+ <item msgid="7009918361545506251">"एपका पूर्वनिर्धारित सेटिङहरू प्रयोग गर्नुहोस्"</item>
<item msgid="1770533843436933500">"कालोमा सेतो"</item>
<item msgid="758587126802411846">"सेतोमा कालो"</item>
<item msgid="1495307195241623402">"कालोमा पहेँलो"</item>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index bfcf581..7932de2 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -113,7 +113,7 @@
<string name="bluetooth_disconnect_all_profiles" product="tablet" msgid="6611038575213485336">"तपाईंको ट्याब्लेट <xliff:g id="DEVICE_NAME">%1$s</xliff:g> बाट विच्छेद हुनेछ।"</string>
<string name="bluetooth_disconnect_all_profiles" product="device" msgid="3995834526315103965">"तपाईंको यन्त्र <xliff:g id="DEVICE_NAME">%1$s</xliff:g> बाट विच्छेद हुनेछ।"</string>
<string name="bluetooth_disconnect_dialog_ok" msgid="3308586619539119106">"विच्छेद गर्नुहोस्"</string>
- <string name="bluetooth_empty_list_user_restricted" msgid="603521233563983689">"तपाईं सँग ब्लुटुथ सेटिङ्हरू परिवर्तन गर्न अनुमति छैन।"</string>
+ <string name="bluetooth_empty_list_user_restricted" msgid="603521233563983689">"तपाईं सँग ब्लुटुथ सेटिङहरू परिवर्तन गर्न अनुमति छैन।"</string>
<string name="bluetooth_pairing_pref_title" msgid="7429413067477968637">"नयाँ यन्त्रलाई जोडा बनाउनुहोस्"</string>
<string name="bluetooth_is_visible_message" msgid="6222396240776971862">"ब्लुटुथ सेटिङहरू खुला हुँदा <xliff:g id="DEVICE_NAME">%1$s</xliff:g> लाई नजिकैका उपकरणहरू देख्न सक्नेछन्।"</string>
<string name="bluetooth_footer_mac_message" product="default" msgid="1109366350000220283">"फोनको ब्लुटुथ ठेगाना: <xliff:g id="BLUETOOTH_MAC_ADDRESS">%1$s</xliff:g>"</string>
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"मिति सेट गर्नुहोस्"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"क्रमबद्ध अनुसार मिलाउनुहोस्"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"समय क्षेत्रद्वारा क्रमबद्ध गर्नुहोस्"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TRANSITION_DATE">%2$s</xliff:g> मा <xliff:g id="TIME_TYPE">%1$s</xliff:g> सुरु हुन्छ।"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"दिवाप्रकाश बचत समय"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"मानक समय"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"क्षेत्रअनुसारको समय क्षेत्र"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"स्थिर अन्तर भएका समय क्षेत्रहरू"</string>
<string name="date_picker_title" msgid="1338210036394128512">"मिति"</string>
<string name="time_picker_title" msgid="483460752287255019">"समय"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"स्वतः लक गर्नुहोस्"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"स्क्रिन सन्देश लक गर्नुहोस्"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"विजेटहरू सक्षम पार्नुहोस्"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"प्रशासकद्वारा असक्षम पारिएको छ"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"लकडाउन गर्ने विकल्प देखाउनुहोस्"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"विस्तारित पहुँच तथा फिंगरप्रिन्टमार्फत अनलक गर्ने सुविधा निष्क्रिय पार्ने पावर बटनको विकल्प देखाउनुहोस्।"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"कुनै पनि होइन"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"उदाहरण, Joe को Android।"</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"प्रोफाइल जानकारी"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"खाताहरू"</string>
<string name="location_settings_title" msgid="1369675479310751735">"स्थान"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"स्थान प्रयोग गर्नुहोस्"</string>
<string name="account_settings_title" msgid="626177544686329806">"खाताहरू"</string>
<string name="security_settings_title" msgid="4918904614964215087">"सुरक्षा र स्थान"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"इन्क्रिप्सन र प्रमाणहरू"</string>
@@ -446,8 +442,8 @@
<string name="crypt_keeper_encrypt_title" product="tablet" msgid="1060273569887301457">"इन्क्रिप्ट ट्याब्लेट"</string>
<string name="crypt_keeper_encrypt_title" product="default" msgid="1878996487755806122">"फोन इन्क्रिप्ट गर्नुहोस्"</string>
<string name="crypt_keeper_encrypted_summary" msgid="1868233637888132906">"इन्क्रिप्ट गरिएको"</string>
- <string name="crypt_keeper_desc" product="tablet" msgid="503014594435731275">"तपाईं आफ्नो खाताहरू, सेटिङ्हरू, डाउनलोड गरिएका अनुप्रयोगहरू र तिनीहरूको डेटा, मिडिया, र अन्य फाइलहरू इन्क्रिप्ट गर्न सक्नुहुन्छ। आफ्नो ट्याब्लेट इन्क्रिप्ट गरेपछि, स्क्रिन लक सेट गरिएको मानेर (यो कि, नमुना वा संख्यात्मक PIN वा पासवर्ड), तपाईंले संचालन गर्दा हरेक समय ट्याब्लेटको इन्क्रिप्ट उल्टाइ बन्द खोल्न आवश्यक छ। इन्क्रिप्ट उल्टाउने मात्र अन्य तरिका, आफ्नो सबै डेटा मेटाएर फ्याक्ट्री डेटा रिसेट गर्नुपर्छ।\n\nइन्क्रिप्ट गर्न एक घन्टा वा बढी समय लाग्छ। प्रक्रिया अवधिभरमा ट्याब्लेट तपाईंले चार्ज भएको ब्याट्रिको साथ सुरु गरि र प्लग इन गरिराख्नुपर्छ। यदि कार्यमा अवरोध भयो भने तपाईंले केही वा सबै डेटा गुमाउनुहुन्छ।"</string>
- <string name="crypt_keeper_desc" product="default" msgid="2579929266645543631">"तपाईं आफ्नो खाताहरू, सेटिङ्हरू, डाउनलोड गरिएका अनुप्रयोगहरू र तिनीहरूको डेटा, मिडिया, र अन्य फाइलहरू इन्क्रिप्ट गर्न सक्नुहुन्छ। आफ्नो फोन इन्क्रिप्ट गरेपछि, स्क्रिन लक सेट गरिएको मानेर (यो कि, नमुना वा संख्यात्मक PIN वा पासवर्ड), तपाईंले संचालन गर्दा हरेक समय फोनको इन्क्रिप्ट उल्टाइ बन्द खोल्न आवश्यक छ। इन्क्रिप्ट उल्टाउने मात्र अन्य तरिका, आफ्नो सबै डेटा मेटाएर फ्याक्ट्री डेटा रिसेट गर्नुपर्छ।\n\nइन्क्रिप्ट गर्न एक घन्टा वा बढी समय लाग्छ। प्रक्रिया अवधिभरमा फोन तपाईंले चार्ज भएको ब्याट्रिको साथ सुरुगरि र प्लग इन गरि राख्नुपर्छ। यदि कार्यमा अवरोध भयो भने तपाईंले केही वा सबै डेटा गुमाउनुहुन्छ।"</string>
+ <string name="crypt_keeper_desc" product="tablet" msgid="503014594435731275">"तपाईं आफ्नो खाताहरू, सेटिङहरू, डाउनलोड गरिएका अनुप्रयोगहरू र तिनीहरूको डेटा, मिडिया, र अन्य फाइलहरू इन्क्रिप्ट गर्न सक्नुहुन्छ। आफ्नो ट्याब्लेट इन्क्रिप्ट गरेपछि, स्क्रिन लक सेट गरिएको मानेर (यो कि, नमुना वा संख्यात्मक PIN वा पासवर्ड), तपाईंले संचालन गर्दा हरेक समय ट्याब्लेटको इन्क्रिप्ट उल्टाइ बन्द खोल्न आवश्यक छ। इन्क्रिप्ट उल्टाउने मात्र अन्य तरिका, आफ्नो सबै डेटा मेटाएर फ्याक्ट्री डेटा रिसेट गर्नुपर्छ।\n\nइन्क्रिप्ट गर्न एक घन्टा वा बढी समय लाग्छ। प्रक्रिया अवधिभरमा ट्याब्लेट तपाईंले चार्ज भएको ब्याट्रिको साथ सुरु गरि र प्लग इन गरिराख्नुपर्छ। यदि कार्यमा अवरोध भयो भने तपाईंले केही वा सबै डेटा गुमाउनुहुन्छ।"</string>
+ <string name="crypt_keeper_desc" product="default" msgid="2579929266645543631">"तपाईं आफ्नो खाताहरू, सेटिङहरू, डाउनलोड गरिएका अनुप्रयोगहरू र तिनीहरूको डेटा, मिडिया, र अन्य फाइलहरू इन्क्रिप्ट गर्न सक्नुहुन्छ। आफ्नो फोन इन्क्रिप्ट गरेपछि, स्क्रिन लक सेट गरिएको मानेर (यो कि, नमुना वा संख्यात्मक PIN वा पासवर्ड), तपाईंले संचालन गर्दा हरेक समय फोनको इन्क्रिप्ट उल्टाइ बन्द खोल्न आवश्यक छ। इन्क्रिप्ट उल्टाउने मात्र अन्य तरिका, आफ्नो सबै डेटा मेटाएर फ्याक्ट्री डेटा रिसेट गर्नुपर्छ।\n\nइन्क्रिप्ट गर्न एक घन्टा वा बढी समय लाग्छ। प्रक्रिया अवधिभरमा फोन तपाईंले चार्ज भएको ब्याट्रिको साथ सुरुगरि र प्लग इन गरि राख्नुपर्छ। यदि कार्यमा अवरोध भयो भने तपाईंले केही वा सबै डेटा गुमाउनुहुन्छ।"</string>
<string name="crypt_keeper_button_text" product="tablet" msgid="1189623490604750854">"ट्याब्लेट इन्क्रिप्ट गर्नुहोस्"</string>
<string name="crypt_keeper_button_text" product="default" msgid="2008346408473255519">"फोन इन्क्रिप्ट गर्नुहोस्"</string>
<string name="crypt_keeper_low_charge_text" msgid="2029407131227814893">"तपाईँको ब्याट्री चार्ज गरी पुनःप्रयास गर्नुहोस्।"</string>
@@ -468,15 +464,19 @@
<string name="crypt_keeper_enter_password" msgid="2223340178473871064">"तपाईँको पासवर्ड टाइप गर्नुहोस्"</string>
<string name="crypt_keeper_failed_title" msgid="7133499413023075961">"इन्क्रिप्सन असफल"</string>
<string name="crypt_keeper_failed_summary" product="tablet" msgid="8219375738445017266">"इन्क्रिप्सन अवरूद्ध भयो र पूरा हुन सक्दैन। परिणामस्वरूप तपाईंको ट्याब्लेटको डेटा अब पहुँचयोग्य हुँदैन।\n \n तपाईंको ट्याब्लेटको प्रयोग सुरु गर्नका लागि तपाईंले कारखाना पुनःसेट गर्नु पर्छ। जब पुनःसेट हुन्छ तब तपाईं ट्याब्लेट सेट गर्नुहुन्छ, तपाईंको Google खातामा जगेडा गरिएको कुनै पनि डेटा पुनर्स्थापना गर्ने अवसर तपाईंलाई हुने छ।"</string>
- <string name="crypt_keeper_failed_summary" product="default" msgid="3270131542549577953">"एन्क्रिप्सन रोकिएको थियो र पूरा हुन सकेन। नतिजाको रूपमा तपाईंको फोनमा डेटा पहुँच यग्य छैन। \n\nतपाईंको फोनको उपयोग फरि सुरु गर्नको लागि तपाईंले एउटा फ्याक्ट्रि पुनःसेट गर्न जरूरी छ। जब तपाईं पुनःसेटपछि तपाईंको फोन सेटअप गर्नु हुन्छ भने कुनै पनि डेटा जुन तपाईंको Google खातामा ब्याकअप गरिएको थियो तपाईंलाई पुनःप्राप्त गर्ने अवसर हुने छ।"</string>
+ <string name="crypt_keeper_failed_summary" product="default" msgid="3270131542549577953">"एन्क्रिप्सन रोकिएको थियो र पूरा हुन सकेन। नतिजाको रूपमा तपाईंको फोनमा डेटा पहुँच यग्य छैन। \n\nतपाईंको फोनको उपयोग फरि सुरु गर्नको लागि तपाईंले एउटा फ्याक्ट्रि पुनःसेट गर्न जरुरी छ। जब तपाईं पुनःसेटपछि तपाईंको फोन सेटअप गर्नु हुन्छ भने कुनै पनि डेटा जुन तपाईंको Google खातामा ब्याकअप गरिएको थियो तपाईंलाई पुनःप्राप्त गर्ने अवसर हुने छ।"</string>
<string name="crypt_keeper_data_corrupt_title" msgid="8759119849089795751">"गुप्तिकरण उल्टाउन असफल"</string>
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"तपाईँले प्रविष्ट गर्नुभएको पासवर्ड ठीक छ, तर दुर्भाग्यबश तपाईँको डेटा बिग्रिएको छ।\n\n तपाईँको ट्याब्लेट पुन: प्रयोग गर्न फ्याक्ट्री रिसेट गर्न पर्छ। रिसेट गरे पश्चात जब तपाई आफ्नो ट्याब्लेट सेटअप गर्नुहुन्छ तपाईँले Google खातामा ब्याकअप भए सम्मका डेटा पुनर्स्थापना गर्ने अवसर प्राप्त गर्नु हुनेछ।"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"तपाईंले प्रविष्ट गर्नुभएको पासवर्ड ठीक छ, तर दुर्भाग्यबश तपाईंको डेटा बिग्रिएको छ।\n\n तपाईंको फोन पुन: प्रयोग गर्न फ्याक्ट्री रिसेट गर्न पर्छ। रिसेट गरे पश्चात जब तपाईं आफ्नो फोन सेटअप गर्नुहुन्छ तपाईंले Google खातामा ब्याकअप भए सम्मका डेटा पुनर्स्थापना गर्ने अवसर प्राप्त गर्नु हुनेछ।"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"स्विच इनपुट विधि"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"स्क्रिन लक सेट गर्नुहोस्"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"तपाईँको यन्त्र सुरक्षित गर्नुहोस्"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"फिंगरप्रिन्टको प्रयोग गर्नुहोस्"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"तपाईंको फिंगरप्रिन्ट प्रयोग गरी अनलक गर्नुहोस्"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"सुरक्षाको लागि स्क्रिन लक सेट गर्नु…"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"अरूलाई आफ्नो ट्याब्लेट प्रयोग गर्नबाट रोक्नुहोस्"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"अरूलाई आफ्नो यन्त्र प्रयोग गर्नबाट रोक्नुहोस्"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"अरूलाई आफ्नो फोन प्रयोग गर्नबाट रोक्नुहोस्"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"फिंगरप्रिन्टमार्फत अनलक"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"तपाईंको फिंगरप्रिन्ट प्रयोग गरी अनलक गर्नुहोस्"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"तपाईंको फिंगरप्रिन्ट प्रयोग गरी अनलक गर्नुहोस्"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"तपाईंको फिंगरप्रिन्ट प्रयोग गरी अनलक गर्नुहोस्"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"स्क्रिन लक छान्नुहोस्"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"कार्यका लागि लक छनोट"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"आफ्नो ट्याब्लेटलाई सुरक्षित गर्नुहोस्"</string>
@@ -703,7 +703,7 @@
<string name="bluetooth_dock_settings" msgid="3218335822716052885">"डक सेटिङहरू"</string>
<string name="bluetooth_dock_settings_title" msgid="5543069893044375188">"अडियोका लागि डक प्रयोग गर्नुहोस्"</string>
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"स्पिकर फोनको रूपमा"</string>
- <string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"संगीत र मिडियाका लागि"</string>
+ <string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"सङ्गीत र मिडियाका लागि"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"सेटिङहरू सम्झनुहोस्"</string>
<string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"जडान भएका ब्लुटुथ अडियो यन्त्रहरूको अधिकतम सङ्ख्या"</string>
<string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"जडान भएका ब्लुटुथ अडियो यन्त्रहरूको अधिकतम सङ्ख्या चयन गर्नुहोस्"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"नाम"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"२.४ GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"५ GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"साइन इन गर्नुहोस्"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi सक्रिय गर्न चाहन्छ"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi निष्क्रिय पार्न चाहन्छ"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi-Fi खोल्नुहोस्"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fi प्रयोग गर्नुहोस्"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi सेटिङहरू"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"ताररहित पहुँच बिन्दुहरू सेटअप र प्रबन्ध गर्नुहोस्"</string>
@@ -752,7 +750,7 @@
<string name="wifi_sap_no_channel_error" msgid="3108445199311817111">"यो देशमा ५ GHz व्यान्ड उपलब्ध छैन"</string>
<string name="wifi_in_airplane_mode" msgid="8652520421778203796">"हवाइजहाज मोडमा"</string>
<string name="wifi_notify_open_networks" msgid="76298880708051981">"खुला नेटवर्क सम्बन्धी सूचना"</string>
- <string name="wifi_notify_open_networks_summary" msgid="2761326999921366960">"उच्च गुणस्तरको सार्वजनिक नेटवर्क उपलब्ध हुँदा सूचित गराउनुहोस्"</string>
+ <string name="wifi_notify_open_networks_summary" msgid="2761326999921366960">"उच्च गुणस्तरको सार्वजनिक नेटवर्क उपलब्धहुँदा सूचित गराउनुहोस्"</string>
<string name="wifi_wakeup" msgid="8815640989361538036">"Wi‑Fi स्वत: सक्रिय गर्नुहोस्"</string>
<string name="wifi_wakeup_summary" msgid="2530814331062997163">"तपाईंको घरको नेटवर्क जस्ता सुरक्षित गरिएका उच्च गुणस्तरका नेटवर्कहरू नजिक हुँदा Wi‑Fi पुन: सक्रिय हुनेछ"</string>
<string name="wifi_wakeup_summary_scanning_disabled" msgid="7247227922074840445">"Wi‑Fi स्क्यान गर्ने सेवालाई निष्क्रिय पारिएको हुनाले Wi-Fi वेकअप विकल्प उपलब्ध छैन"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"पासवर्ड:"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"पासवर्ड देखाउनुहोस्"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP ब्यान्ड चयन गर्नुहोस्"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"स्वतः निर्धारित"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz ब्यान्ड"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz ब्यान्ड"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP सेटिङहरू"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi कलिङ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi कलिङलाई सक्रिय गर्नुहोस्"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"मोबाइल नेटवर्कको सट्टा Wi-Fi प्रयोग गर्नुहोस्"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi मार्फत कल गरी पहुँच क्षेत्र बढाउनुहोस्"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"कलिङ प्राथमिकता"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi कलिङ मोड"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"रोमिङ सम्बन्धी प्राथमिकता"</string>
@@ -983,7 +982,7 @@
<string name="display_settings_title" msgid="1708697328627382561">"प्रदर्शन"</string>
<string name="sound_settings" msgid="5534671337768745343">"आवाज"</string>
<string name="all_volume_title" msgid="4296957391257836961">"भोल्युम"</string>
- <string name="musicfx_title" msgid="3415566786340790345">"संगीत प्रभावहरू"</string>
+ <string name="musicfx_title" msgid="3415566786340790345">"सङ्गीत प्रभावहरू"</string>
<string name="ring_volume_title" msgid="5592466070832128777">"घन्टीको भोल्युम"</string>
<string name="vibrate_in_silent_title" msgid="3897968069156767036">"मौन भएको बेला भाइब्रेट गर्नुहोस्"</string>
<string name="notification_sound_title" msgid="5137483249425507572">"पूर्वनिर्धारित सूचना आवाज"</string>
@@ -993,7 +992,7 @@
<string name="home_work_profile_not_supported" msgid="1357721012342357037">"कार्य प्रोफाइल समर्थन गर्दैन"</string>
<string name="notification_sound_dialog_title" msgid="3805140135741385667">"पूर्वनिर्धारित सूचना आवाज"</string>
<string name="media_volume_title" msgid="3576565767317118106">"मिडिया"</string>
- <string name="media_volume_summary" msgid="5363248930648849974">"संगीत र भिडियोका लागि भोल्युम सेट गर्नुहोस्"</string>
+ <string name="media_volume_summary" msgid="5363248930648849974">"सङ्गीत र भिडियोका लागि भोल्युम सेट गर्नुहोस्"</string>
<string name="alarm_volume_title" msgid="2285597478377758706">"अलार्म"</string>
<string name="dock_settings_summary" msgid="455802113668982481">"संलग्न डकका लागि अडियो सेटिङहरू"</string>
<string name="dtmf_tone_enable_title" msgid="8533399267725365088">"डायल प्याड टच टोनहरू"</string>
@@ -1001,12 +1000,12 @@
<string name="lock_sounds_enable_title" msgid="450098505659399520">"स्क्रिन लक ध्वनि"</string>
<string name="haptic_feedback_enable_title" msgid="7152163068278526530">"ट्याप गर्दा भाइब्रेट गर्नुहोस्"</string>
<string name="audio_record_proc_title" msgid="4271091199976457534">"ध्वनि खारेजी"</string>
- <string name="volume_media_description" msgid="7949355934788807863">"संगीत, भिडियो, खेल, र अन्य मिडिया"</string>
+ <string name="volume_media_description" msgid="7949355934788807863">"सङ्गीत, भिडियो, खेल, र अन्य मिडिया"</string>
<string name="volume_ring_description" msgid="5936851631698298989">"रिङ टोन र सूचनाहरू"</string>
<string name="volume_notification_description" msgid="5810902320215328321">"सूचनाहरू"</string>
<string name="volume_alarm_description" msgid="8322615148532654841">"अलार्महरू"</string>
<string name="volume_ring_mute" msgid="3018992671608737202">"रिङटोन र सूचनाहरू मौन गराउनुहोस्"</string>
- <string name="volume_media_mute" msgid="3399059928695998166">"संगीत र अन्य मिडियालाई मौन बनाउनुहोस्"</string>
+ <string name="volume_media_mute" msgid="3399059928695998166">"सङ्गीत र अन्य मिडियालाई मौन बनाउनुहोस्"</string>
<string name="volume_notification_mute" msgid="7955193480006444159">"सूचनाहरू मौन गराउनुहोस्"</string>
<string name="volume_alarm_mute" msgid="4452239420351035936">"आलार्म म्युट गर्नुहोस्"</string>
<string name="dock_settings" msgid="1820107306693002541">"डक गर्नुहोस्"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"मोबाइल नेटवर्क प्रकार"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"संचालक जानकारी"</string>
<string name="status_data_state" msgid="5503181397066522950">"मोबाइल सञ्जाल वस्तुस्थिति"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"सेवा स्थिति"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"सङ्केत क्षमता"</string>
<string name="status_roaming" msgid="2638800467430913403">"रोमिङ"</string>
@@ -1214,7 +1214,7 @@
<string name="memory_media_usage" msgid="3738830697707880405">"मिडिया"</string>
<string name="memory_downloads_usage" msgid="3755173051677533027">"डाउनलोडहरू"</string>
<string name="memory_dcim_usage" msgid="558887013613822577">"तस्बिरहरू, भिडियोहरू"</string>
- <string name="memory_music_usage" msgid="1363785144783011606">"अडियो (संगीत, रिङ्गटोन, पडकास्ट, आदि)"</string>
+ <string name="memory_music_usage" msgid="1363785144783011606">"अडियो (सङ्गीत, रिङ्गटोन, पडकास्ट, आदि)"</string>
<string name="memory_media_misc_usage" msgid="6094866738586451683">"अन्य फाइलहरू"</string>
<string name="memory_media_cache_usage" msgid="6704293333141177910">"क्यास गरेको डेटा"</string>
<string name="sd_eject" product="nosdcard" msgid="4988563376492400073">"साझेदारी भण्डारण अनमाउन्ट गर्नुहोस्"</string>
@@ -1229,8 +1229,8 @@
<string name="sd_mount_summary" product="default" msgid="4673411327373419641"></string>
<string name="sd_format" product="nosdcard" msgid="2148179271623099054">"USB भण्डारण मेटाउनुहोस्"</string>
<string name="sd_format" product="default" msgid="2576054280507119870">"SD कार्ड मेटाउनुहोस्"</string>
- <string name="sd_format_summary" product="nosdcard" msgid="6331905044907914603">"आन्तरिक USB भण्डारणमा सम्पूर्ण डेटाहरू मेटाउँछ, जस्तै संगीत र तस्बिरहरू"</string>
- <string name="sd_format_summary" product="default" msgid="212703692181793109">"SD कार्डमा सबै डेटा जस्तै संगीत र फोटाहरू मेटाउँछ"</string>
+ <string name="sd_format_summary" product="nosdcard" msgid="6331905044907914603">"आन्तरिक USB भण्डारणमा सम्पूर्ण डेटाहरू मेटाउँछ, जस्तै सङ्गीत र तस्बिरहरू"</string>
+ <string name="sd_format_summary" product="default" msgid="212703692181793109">"SD कार्डमा सबै डेटा जस्तै सङ्गीत र फोटाहरू मेटाउँछ"</string>
<string name="memory_clear_cache_title" msgid="5423840272171286191">"क्यास डेटा हटाउनु हुन्छ?"</string>
<string name="memory_clear_cache_message" msgid="4550262490807415948">"यसले सबै अनुप्रयोगहरूको लागि केस गरिएको डेटा हटाउँछ।"</string>
<string name="mtp_ptp_mode_summary" msgid="3710436114807789270">"MTP वा PTP प्रकार्य सक्रिय छ"</string>
@@ -1300,7 +1300,7 @@
<string name="storage_detail_explore" msgid="7911344011431568294">"<xliff:g id="NAME">^1</xliff:g> अन्वेषण गर्नुहोस्"</string>
<string name="storage_detail_dialog_other" msgid="8845766044697204852">"अन्यमा अनुप्रयोगहरूले सुरक्षित गेरका साझा फाइल, इन्टरनेट वा ब्लुटुथबाट डाउनलोड गरिएका फाइल, Android का फाइलहरू र यस्तै थप कुराहरू पर्छन्। \n\nयो <xliff:g id="NAME">^1</xliff:g> का देख्न सकिने सामग्रीहरू हेर्न अन्वेषण गर्नुहोस् नामक विकल्पमा ट्याप गर्नुहोस्।"</string>
<string name="storage_detail_dialog_system" msgid="862835644848361569">"Android संस्करण <xliff:g id="VERSION">%s</xliff:g> चलाउनका लागि प्रयोग भएका फाइलहरू प्रणालीमा समावेश छन्"</string>
- <string name="storage_detail_dialog_user" msgid="3267254783294197804">"<xliff:g id="USER_0">^1</xliff:g> ले तस्बिर, संगीत, अनुप्रयोग वा अन्य डेटा सुरक्षित गर्नुभएको हुनसक्छ, जसले <xliff:g id="SIZE">^2</xliff:g> भण्डारण ओगटिरहेको छ। \n\nविवरणहरू हेर्न <xliff:g id="USER_1">^1</xliff:g> मा स्विच गर्नुहोस्।"</string>
+ <string name="storage_detail_dialog_user" msgid="3267254783294197804">"<xliff:g id="USER_0">^1</xliff:g> ले तस्बिर, सङ्गीत, अनुप्रयोग वा अन्य डेटा सुरक्षित गर्नुभएको हुनसक्छ, जसले <xliff:g id="SIZE">^2</xliff:g> भण्डारण ओगटिरहेको छ। \n\nविवरणहरू हेर्न <xliff:g id="USER_1">^1</xliff:g> मा स्विच गर्नुहोस्।"</string>
<string name="storage_wizard_init_title" msgid="5085400514028585772">"तपाईँको <xliff:g id="NAME">^1</xliff:g> सेट गर्नुहोस्"</string>
<string name="storage_wizard_init_external_title" msgid="4867326438945303598">"पोर्टेबल भण्डारणको रूपमा प्रयोग गर्नुहोस्"</string>
<string name="storage_wizard_init_external_summary" msgid="7476105886344565074">"यन्त्रहरू बीच तस्बिर र अन्य मिडिया सार्नका लागि।"</string>
@@ -1380,26 +1380,30 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"नेटवर्क, अनुप्रयोगहरू वा यन्त्रलाई रिसेट गर्न सकिन्छ"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, मोबाइल र ब्लुटुथ रिसेट गर्नुहोस्"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"यसले निम्न सेटिङहरू लगायत सम्पूर्ण नेटवर्क सम्बन्धी सेटिहरूलाई रिसेट गर्नेछ:\n\n"<li>"Wi‑Fi"</li>\n<li>"मोबाइल डेटा"</li>\n<li>"ब्लुटुथ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM हरू पनि रिसेट गर्नुहोस्"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"यस फोनमा भएका सबै eSIM हरूलाई मेटाउनुहोस्। तपाईंले आफ्ना eSIM हरू पुनः डाउनलोड गर्न आफ्नो सेवा प्रदायकलाई सम्पर्क गर्नु पर्ने हुन्छ। यस कार्यले तपाईंको मोबाइल सेवाको योजनालाई रद्द गर्ने छैन।"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"सेटिङहरू रिसेट गर्नुहोस्"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"सबै नेटवर्क सेटिङहरू रिसेट गर्ने हो? तपाईं यी कार्य अनडू गर्न सक्नुहुन्न!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"सेटिङहरू रिसेट गर्नुहोस्"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"रिसेट गर्ने हो?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"नेटवर्क रिसेट यो प्रयोगकर्ताको लागि उपलब्ध छैन"</string>
- <string name="reset_network_complete_toast" msgid="787829973559541880">"सञ्जाल सेटिङ्हरू रिसेट गरियो"</string>
+ <string name="reset_network_complete_toast" msgid="787829973559541880">"सञ्जाल सेटिङहरू रिसेट गरियो"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM हरू रिसेट गर्न सकिएन"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"कुनै त्रुटिले गर्दा eSIM हरू रिसेट गर्न सकिएन।"</string>
<string name="master_clear_title" msgid="3531267871084279512">"सबै डेटा मेटाउनुहोस् (फ्याक्ट्री रिसेट गर्नुहोस्)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"यस कार्यले तपाईँको सम्पूर्ण डेटा मेटाउँछ ट्याब्लेटको "<b>" आन्तरिक भण्डारणबाट "</b>" : जसमा, \n \n "<li>" तपाईँको Google खाता "</li>" \n "<li>" प्रणाली र अनुप्रयोग डेटा र सेटिङहरू"</li>" \n "<li>" डाउनलोड गरिएका अनुप्रयोगहरू "</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"यसले सबै डेटा तपाईंको "<b>"आन्तरिक भण्डारणबाट मेटाउँदछ"</b>", समावेश गर्दछ:\n\n"<li>"तपाईंको Google खाता"</li>\n<li>"प्रणाली र अनुप्रयोग डेटा र सेटिङहरू"</li>\n<li>"डाउनलोड गरिएका अनुप्रयोगहरू"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n" \nतपाईँले अहिले निम्न खाताहरूमा साइन इन गर्नुभयो:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n" यस यन्त्रमा हाल अन्य प्रयोगकर्ताहरु छन्। \n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"संगीत"</li>\n<li>"तस्बिरहरू"</li>\n<li>"अन्य उपयोगकर्ता डेटा"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM मा रहेका सेवा प्रदायकहरू"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM हरू"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"यस कार्यले तपाईंको मोबाइल सेवाको योजना रद्द गर्नेछैन।"</string>
- <string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n" \n संगीत, चित्र र अन्य उपयोगकर्ता डेटा हटाउन "<b>"USB संग्रह"</b>" मेटाउन जरुरी छ।"</string>
- <string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n" \n संगीत, तस्वीरहरू, र अन्य प्रयोगकर्ता डेटा मेटाउनका लागि, "<b>" SD कार्ड "</b>" मेटाउनु पर्छ।"</string>
+ <string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n" \n सङ्गीत, चित्र र अन्य उपयोगकर्ता डेटा हटाउन "<b>"USB संग्रह"</b>" मेटाउन जरुरी छ।"</string>
+ <string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n" \n सङ्गीत, तस्वीरहरू, र अन्य प्रयोगकर्ता डेटा मेटाउनका लागि, "<b>" SD कार्ड "</b>" मेटाउनु पर्छ।"</string>
<string name="erase_external_storage" product="nosdcard" msgid="969364037450286809">"USB भण्डारण मेटाउनुहोस्"</string>
<string name="erase_external_storage" product="default" msgid="1397239046334307625">"SD कार्ड मेटाउनुहोस्"</string>
- <string name="erase_external_storage_description" product="nosdcard" msgid="4728558173931599429">"आन्तरिक USB भण्डारणमा सबै डेटा मेटाउनुहोस्, जस्तै संगीत वा फोटाहरू"</string>
- <string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"SD कार्डबाट सबै डाटाहरू जस्तै संगीत वा फोटाहरू मेटाउनुहोस्"</string>
+ <string name="erase_external_storage_description" product="nosdcard" msgid="4728558173931599429">"आन्तरिक USB भण्डारणमा सबै डेटा मेटाउनुहोस्, जस्तै सङ्गीत वा फोटाहरू"</string>
+ <string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"SD कार्डबाट सबै डाटाहरू जस्तै सङ्गीत वा फोटाहरू मेटाउनुहोस्"</string>
<string name="erase_esim_storage" msgid="1886761972867390123">"eSIM हरूलाई मेटाउनुहोस्"</string>
<string name="erase_esim_storage_description" product="default" msgid="708691303677321598">"उक्त फोनमा भएका सबै eSIM हरूलाई मेटाउनुहोस्। यस कार्यले तपाईंको मोबाइल सेवाको योजना रद्द गर्नेछैन।"</string>
<string name="erase_esim_storage_description" product="tablet" msgid="1780953956941209107">"उक्त ट्याब्लेटमा भएका सबै eSIM हरूलाई मेटाउनुहोस्। यस कार्यले तपाईंको मोबाइल सेवाको योजना रद्द गर्नेछैन।"</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"कृपया इन्टरनेटसँग जोड्नुहोस्"</string>
<string name="location_title" msgid="1029961368397484576">"मेरो स्थान"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"काम प्रोफाइलका लागि स्थान"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"मोड"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"उच्च सटीकपना"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ब्याट्री बचत"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"उपकरण मात्र"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"स्थान बन्द छ"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"अनुप्रयोग-स्तरीय अनुमतिहरू"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"हालका स्थान अनुरोधहरू"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"हाल कुनै पनि अनुप्रयोगहरूले स्थान अनुरोध गरिएका छैनन्"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"स्थान सेवाहरू"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"उच्च ब्याट्री प्रयोग"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"कम ब्याट्री प्रयोग"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"स्थान मोड"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"स्थान निर्धारण गर्न GPS, Wi-Fi, ब्लुटुथ वा मोबाइल नेटवर्कहरूको प्रयोग गर्नुहोस्"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"स्थान निर्धारण गर्न Wi-Fi, ब्लुटुथ वा मोबाइल नेटवर्कहरूको प्रयोग गर्नुहोस्"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"स्थान निर्धारण गर्नका लागि GPS र यन्त्र सेन्सर प्रयोग गर्नुहोस्"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"स्क्यान गर्दै"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi स्क्यान हुँदै"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"प्रणाली अनुप्रयोगहरू र सेवाहरूलाई कुनै पनि समयमा Wi-Fi हरू पहिचान गर्न अनुमति दिएर स्थानको पहिचान सामर्थ्यतामा सुधार गर्नुहोस्।"</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"स्थान स्रोतहरू"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ट्याब्लेटको बारेमा"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"फोनको बारेमा"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"यन्त्रको बारेमा"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"अनुसरण गरिएको यन्त्र बारे"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"कानुनी जानकारी, वस्तुस्थिति, सफ्ट्वेयर संस्करण हेर्नुहोस्"</string>
<string name="legal_information" msgid="5769301644270604095">"कानुनी जानकारी"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"सबै <xliff:g id="COUNT">%1$d</xliff:g> अनुप्रयोगहरू हेर्नुहोस्"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"तपाईंको ट्याब्लेट र व्यक्तिगत डेटा अज्ञात अनुप्रयोगहरूबाट हुने आक्रमणमा पर्न सक्ने जोखिम अझ बढी हुन्छ। यो स्रोतबाट प्राप्त हुने अनुप्रयोगहरूको स्थापना गरेर, तिनीहरूको प्रयोगबाट तपाईंको ट्याब्लेटमा हुनसक्ने क्षति वा डेटाको नोक्सानीको जिम्मेवार तपाईं आफैँ हुनुहुन्छ भन्ने कुरामा तपाईं सहमत हुनुहुन्छ।"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"तपाईंको फोन र व्यक्तिगत डेटा अज्ञात अनुप्रयोगहरूबाट हुने आक्रमणमा पर्न सक्ने जोखिम अझ बढी हुन्छ। यो स्रोतबाट प्राप्त हुने अनुप्रयोगहरूको स्थापना गरेर, तिनीहरूको प्रयोगबाट तपाईंको फोनमा हुनसक्ने क्षति वा डेटाको नोक्सानीको जिम्मेवार तपाईं आफैँ हुनुहुन्छ भन्ने कुरामा तपाईं सहमत हुनुहुन्छ।"</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"तपाईंको यन्त्र र व्यक्तिगत डेटा अज्ञात अनुप्रयोगहरूबाट हुने आक्रमणमा पर्न सक्ने जोखिम अझ बढी हुन्छ। यो स्रोतबाट प्राप्त हुने अनुप्रयोगहरूको स्थापना गरेर, तिनीहरूको प्रयोगबाट फोनमा हुनसक्ने क्षति वा डेटाको नोक्सानीको जिम्मेवार तपाईं आफैँ हुनुहुन्छ भन्ने कुरामा तपाईं सहमत हुनुहुन्छ।"</string>
<string name="advanced_settings" msgid="1777249286757067969">"जटिल सेटिङहरू"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"थप सेटिङ विकल्पहरू सक्षम पार्नुहोस्"</string>
<string name="application_info_label" msgid="5736524913065714880">"अनुप्रयोग जानकारी"</string>
@@ -1713,7 +1706,7 @@
<string name="app_special_disable_dlg_title" msgid="2690148680327142674">"डेटा हटाएर अनुप्रयोग असक्षम पार्ने हो?"</string>
<string name="app_special_disable_dlg_text" msgid="5832078825810635913">"तपाईंले यस अनुप्रयोगलाई असक्षम पार्नुभयो भने त्यस उकप्रन्त Android र अन्य अनुप्रयोगहरूले अपेक्षित कार्य नगर्न सक्छन्। तपाईंको डेटा पनि मेटाइने छ।"</string>
<string name="app_disable_notifications_dlg_title" msgid="7669264654851761857">"सूचनाहरू बन्द गर्नुहोस्?"</string>
- <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"यदि तपाईं यस अनुप्रयोगको लागि सूचनाहरू बन्द गर्नुहुन्छ, तपाईंले महत्त्वपूर्ण अलर्ट र अपडेटहरू गुमाउन सक्नुहुने छ।"</string>
+ <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"यदि तपाईं यस अनुप्रयोगको लागि सूचनाहरू बन्द गर्नुहुन्छ, तपाईंले महत्त्वपूर्ण अलर्ट र अपडेटहरू गुमाउन सक्नु हुने छ"</string>
<string name="app_install_details_group_title" msgid="7084623031296083574">"स्टोर"</string>
<string name="app_install_details_title" msgid="6905279702654975207">"अनुप्रयोग बारे विवरणहरू"</string>
<string name="app_install_details_summary" msgid="6464796332049327547">"<xliff:g id="APP_STORE">%1$s</xliff:g> बाट स्थापना गरिएको अनुप्रयोग"</string>
@@ -1755,7 +1748,7 @@
<string name="service_stop" msgid="6369807553277527248">"रोक्नुहोस्"</string>
<string name="service_manage" msgid="1876642087421959194">"सेटिङहरू"</string>
<string name="service_stop_description" msgid="9146619928198961643">"सेवा यसको अनुप्रयोगले सुरु गरेको हो। यसलाई रोक्दा अनुप्रयोग विफल हुन सक्छ।"</string>
- <string name="heavy_weight_stop_description" msgid="6050413065144035971">"यो अनुप्रयोग सुरक्षित तरिकाले रोक्न मिल्दैन। यदि तपाईंले यसलाई रोक्नुभयो भने तपाईंले हालको केही काम हराउन सक्नुहुने छ।"</string>
+ <string name="heavy_weight_stop_description" msgid="6050413065144035971">"यो अनुप्रयोग सुरक्षित तरिकाले रोक्न मिल्दैन। यदि तपाईंले यसलाई रोक्नुभयो भने तपाईंले हालको केही काम हराउन सक्नु हुने छ"</string>
<string name="background_process_stop_description" msgid="3834163804031287685">"यो पुरानो अनुप्रयोग प्रक्रिया हो जुन अझैं चलिरहेको छ, यो कुनै पनि बेला चाहिन सक्छ। सामान्यतया: यसलाई रोक्नु पर्ने कुनै कारण छैन।"</string>
<string name="service_manage_description" msgid="479683614471552426">"<xliff:g id="CLIENT_NAME">%1$s</xliff:g>: अहिले प्रयोगमा छ। यसलाई नियन्त्रण गर्न सेटिङमा ट्याप गर्नुहोस्।"</string>
<string name="main_running_process_description" msgid="1130702347066340890">"मुख्य प्रक्रिया प्रयोगमा।"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"कार्यसम्पादनमा असर पार्न सक्छ"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"प्वाइन्टर चल्न रोकेपछि क्लिक गर्नुहोस्"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"क्लिक गर्न अघि ढिलाइ"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"सुविधा प्रयोग गर्नुहोस्"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"रङ सुधार गर्ने सुविधा प्रयोग गर्नुहोस्"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"क्याप्सनहरू प्रयोग गर्नुहोस्"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"सक्रिय छ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"निष्क्रिय छ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"द्रुत सेटिङमा देखाउनुहोस्"</string>
@@ -1939,8 +1929,8 @@
<string name="captioning_custom_options_title" msgid="5067500939930322405">"आफू अनुकूल विकल्प"</string>
<string name="captioning_background_color" msgid="9053011212948992570">"पृष्ठभूमि रङ्ग"</string>
<string name="captioning_background_opacity" msgid="6029993616419971202">"पृष्ठभूमि अपारदर्शकता"</string>
- <string name="captioning_window_color" msgid="6902052743419717394">"window रङ्ग क्याप्सन गर्नुहोस्"</string>
- <string name="captioning_window_opacity" msgid="5041556024849862376">"window अपारदर्शिता क्याप्सन गर्नुहोस्"</string>
+ <string name="captioning_window_color" msgid="6902052743419717394">"क्याप्सन विन्डोको रङ्ग"</string>
+ <string name="captioning_window_opacity" msgid="5041556024849862376">"क्याप्सन विन्डोको अपारदर्शिता"</string>
<string name="captioning_foreground_color" msgid="85623486537640059">"पाठ रङ्ग"</string>
<string name="captioning_foreground_opacity" msgid="4370967856995419788">"पाठ अपारदर्शिता"</string>
<string name="captioning_edge_color" msgid="3670094753735263238">"छेउको रङ्ग"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> बाँकी"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> चार्जमा"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"पृष्ठभूमिको गतिविधि"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"प्रतिबन्धित"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"अनुप्रयोगलाई पृष्ठभूमिमा चल्न अनुमति दिनुहोस्"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"प्रयोगमा नहुँदा अनुप्रयोग पृष्ठभूमिमा चल्न सक्छ"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"प्रयोगमा नहुँदा अनुप्रयोगको पृष्ठभूमिको गतिविधि सीमित हुन्छ"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"अनुप्रयोगले सामान्य तरिकाले काम गर्दैछ"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"ब्याट्रीको कम चार्ज क्षमता"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ब्याट्रीको चार्ज स्तर बढी समयसम्म कायम रहन सक्दैन"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"स्मार्ट ब्याट्री प्रबन्धक सक्रिय गर्नुहोस्"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ब्याट्रीको प्रयोगलाई अप्टिमाइज गर्न सक्रिय गर्नुहोस्"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"कम ब्याट्री मोडलाई सक्रिय गर्नुहोस्"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"आफ्नो ब्याट्रीको आयु बढाउनुहोस्"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"कम ब्याट्री मोड सक्रिय छ"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"केही विशेषताहरू सीमित छन्"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"फोन अत्यधिक प्रयोग गरियो"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ट्याब्लेट अत्यधिक प्रयोग गरियो"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"यन्त्र अत्यधिक प्रयोग गरियो"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"मिडिया सर्भर"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"अनुप्रयोग आफू अनुकूल"</string>
<string name="battery_saver" msgid="8172485772238572153">"ब्याट्री सेभर"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ब्याट्री सेभर प्रयोग गर्नुहोस्"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"स्वतः खोल्नुहोस्"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"कहिले पनि होइन"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> ब्याट्री हुँदा"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"सिङ्कले अहिले समस्याहरू भोग्दै छ। यो तुरुन्तै आउने छ।"</string>
<string name="add_account_label" msgid="7811707265834013767">"खाता थप्नुहोस्"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"कार्य प्रोफाइल अझै उपलब्ध भएको छैन"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"कार्यको मोड"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"अनुप्रयोग, पृष्ठभूमि सिंक र सम्बन्धित विशेषताहरू सहित, कार्यको प्रोफाइललाई काम गर्न अनुमति दिनुहोस्"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"कार्य प्रोफाइल"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"तपाईंको सङ्गठनले व्यवस्थापन गरेको"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"अनुप्रयोग तथा सूचनाहरू निष्क्रिय छन्"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"कार्य प्रोफाइल हटाउनुहोस्"</string>
<string name="background_data" msgid="5779592891375473817">"पृष्ठभूमि डेटा"</string>
<string name="background_data_summary" msgid="8328521479872763452">"अनुप्रयोगहरूले कुनै पनि समयमा डेटा सिंक गर्न पठाउन र प्राप्त गर्न सक्दछन्"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"खाता हटाउने हो?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"यो खाता मेटाउँदा ट्याब्लेटबाट यसका सबै सन्देश,सम्पर्क र अन्य डेटा मेटाइनेछन्!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"यस खातालाई हटाउँदा फोनबाट सम्पूर्ण सन्देश, सम्पर्क र अन्य डेटा हट्छ!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"यो खातालाई हटाउनुले यस यन्त्रबाट यस खातामा रहेका सम्पूर्ण सन्देश, सम्पर्कहरू र अन्य डेटा मेटाउने छ!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"यसलाई परिवर्तन गर्न तपाईंको प्रशासकले अनुमति दिँदैन"</string>
<string name="provider_label" msgid="7724593781904508866">"सदस्यता ठेल्नुहोस्"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2491,7 +2474,7 @@
<string name="data_usage_enable_4g" msgid="3635854097335036738">"4G डेटा"</string>
<string name="data_usage_forground_label" msgid="7654319010655983591">"अग्रभूमि:"</string>
<string name="data_usage_background_label" msgid="2722008379947694926">"पृष्ठभूमि:"</string>
- <string name="data_usage_app_settings" msgid="2279171379771253165">"अनुप्रयोग सेटिङ्हरू"</string>
+ <string name="data_usage_app_settings" msgid="2279171379771253165">"अनुप्रयोग सेटिङहरू"</string>
<string name="data_usage_app_restrict_background" msgid="7359227831562303223">"पृष्ठभूमि डेटा"</string>
<string name="data_usage_app_restrict_background_summary" msgid="5853552187570622572">"पृष्ठभूमिमा मोबाइल डेटाको उपयोग सक्षम गर्नुहोस्"</string>
<string name="data_usage_app_restrict_background_summary_disabled" msgid="7401927377070755054">"यस अनुप्रयोगलाई पृष्ठभूमि डेटामा सीमित गराउन पहिले मोबाइल डेटा सीमा सेट गर्नुहोस्।"</string>
@@ -2641,7 +2624,7 @@
<item quantity="other">प्रमाणपत्रहरूलाई जाँच गर्नुहोस्</item>
<item quantity="one">प्रमाणपत्रलाई जाँच गर्नुहोस्</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"प्रयोगकर्ताहरू"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"बहु प्रयोगकर्ताहरू"</string>
<string name="user_list_title" msgid="7937158411137563543">"प्रयोगकर्ता र प्रोफाइलहरू"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"प्रयोगकर्ता वा प्रोफाइल थप गर्नुहोस्"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"प्रयोगकर्ता थप्नुहोस्"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ब्लुटुथ, कास्ट गर्ने सुविधा"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"अनुप्रयोग सम्बन्धी & सूचनाहरू"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"अनुमतिहरू, पूर्वनिर्धारित अनुप्रयोगहरू"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"प्रयोगकर्ता र खाताहरू"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"खाताहरू"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"पूर्वनिर्धारित अनुप्रयोगहरू"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"भाषाहरू, समय, ब्याकअप, अद्यावधिकहरू"</string>
<string name="search_results_title" msgid="1796252422574886932">"सेटिङहरू"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"बाधा नपुर्याउनुहोस्, हस्तक्षेप गर्नुहोस्, हस्तक्षेप, ब्रेक"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"नजिकै, स्थान, इतिहास, रिपोर्ट गर्ने"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"सटिकता"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"खाता"</string>
<string name="keywords_users" msgid="3434190133131387942">"प्रतिबन्ध, प्रतिबन्ध लगाउनुहोस्, प्रतिबन्धित"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"पाठ सच्याइ, सही, ध्वनि, कम्पन, स्वतः, भाषा, इसारा, सुझाव दिनु, सुझाव, विषयवस्तु, अपमानजनक, शब्द, प्रकार, इमोजी, अन्तर्राष्ट्रिय"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"नेटवर्क, मोबाइल नेटवर्कको स्थिति, सेवाको स्थिति, सिग्नलको क्षमता, मोबाइल नेटवर्कको प्रकार, रोमिङ, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"क्रम संख्या, हार्डवेयरको संस्करण"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android को सुरक्षासम्बन्धी प्याचको स्तर, बेसब्यान्ड संस्करण, कर्नेल संस्करण"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ट्याग सेट गर्नुहोस्"</string>
<string name="write_tag" msgid="8571858602896222537">"लेख्नुहोस्"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"लेख्न ट्याग छुनुहोस्..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="one">१ नियम</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"बाधा नपुऱ्याउनुहोस्"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"बाधा नपुऱ्याउनुहोस् नामक मोडलाई सक्रिय गर्नुहोस्"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"व्यवहार"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"निम्नबाट आउने आवाज र कम्पनहरूलाई अनुमति दिनु"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"कुनै पनि आवाज ननिकाल्ने"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"स्वतः सक्रिय गर्नुहोस्"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"स्वचालित नियमहरू"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"स्वचालित नियम"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"बाधा नपुर्याउनुहोस् मोडका नियमहरू सेट गर्नुहोस्"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"निश्चित समयहरूमा आवाज र कम्पनमाथि रोक लगाउनुहोस्"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"तोकिएको समयमा फोनलाई मौन अवस्थामा राख्नुहोस्"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"बाधा नपुर्याउनुहोस् नामक मोडका नियमहरू सेट गर्नुहोस्"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"नियमको प्रयोग गर्नुहोस्"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"प्राथमिकता मात्र"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"अलार्महरू मात्र"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"पूरै शान्त"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"दृश्य सम्बन्धी बाधालाई रोक्नु"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"सङ्केतहरूलाई देखिन दिनुहोस्"</string>
<string name="zen_mode_add" msgid="90014394953272517">"थप्नुहोस्"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"सक्रिय गर्नुहोस्"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"अहिले नै सक्रिय गर्नुहोस्"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"अहिले नै निष्क्रिय पार्नुहोस्"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> सम्म बाधा नपुर्याउनुहोस् नामक मोड सक्रिय हुन्छ"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"तपाईंले निष्क्रिय नपारेसम्म बाधा नपुर्याउनुहोस् नामक मोड सक्रिय रहनेछ"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"(<xliff:g id="RULE_NAME">%s</xliff:g>) नामक नियमले बाधा नपुर्याउनुहोस् नामक मोडलाई स्वतः सक्रिय गर्यो"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"कुनै अनुप्रयोग <xliff:g id="APP_NAME">%s</xliff:g> ले बाधा नपुर्याउनुहोस् नामक मोडलाई स्वतः सक्रिय गर्यो"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"प्राथमिकता मात्र"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>। <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"कार्य प्रोफाइलका ध्वनिहरू"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"व्यक्तिगत प्रोफाइलका ध्वनिहरूको प्रयोग गर्नुहोस्"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"कार्य र व्यक्तिगत दुवै प्रोफाइलका लागि आवाज उही नै हो"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"रिङटोनहरू"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ध्वनि र कम्पन सम्बन्धी अन्य कुराहरू"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"सूचनाहरू"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"हालै पठाइएका अनुप्रयोगहरू"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"उन्नत"</string>
<string name="profile_section_header" msgid="2320848161066912001">"कार्यका सूचनाहरू"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"सूचनाको प्रतीक जनाउने थोप्लोहरूलाई अनुमति दिनुहोस्"</string>
@@ -3004,7 +2998,7 @@
<string name="notification_channel_summary_min" msgid="5401718014765921892">"न्यून महत्त्वको सूचना"</string>
<string name="notification_channel_summary_low" msgid="322317684244981244">"सामान्य महत्वको सूचना"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"उच्च महत्त्वको सूचना"</string>
- <string name="notification_channel_summary_high" msgid="2085017556511003283">"जरूरी महत्त्वको सूचना"</string>
+ <string name="notification_channel_summary_high" msgid="2085017556511003283">"जरुरी महत्त्वको सूचना"</string>
<string name="notification_switch_label" msgid="6843075654538931025">"सूचनाहरू देखाउनुहोस्"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"सूचना सहायक"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"सूचना पहुँच"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"आफ्नो यन्त्रलाई अनलक गर्नका लागि फिंगरप्रिन्ट प्रयोग गर्नुका साथसाथै, यो यन्त्र खुल्नुअघि आफ्नो पासवर्ड चाहिने बनाएर तपाईं यस यन्त्रलाई थप सुरक्षित बनाउन सक्नुहुन्छ। यन्त्र नखुलेसम्म यन्त्रले कल, सन्देश वा अलार्म लगायताका सूचनाहरू प्राप्त गर्न सक्दैन।\n\nयसले हराएका वा चोरी भएका यन्त्रहरूको डेटा सुरक्षित राख्न मद्दत गर्दछ। आफ्नो यन्त्रलाई खोल्नको लागि पासवर्ड चाहिने बनाउने हो?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"हो"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"होइन"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"छ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"छैन"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN आवश्यक छ?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"प्याटर्न आवश्यक छ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"पासवर्ड आवश्यक छ?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"अस्वीकार गर्नुहोस्"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"यस यन्त्रलाई चार्ज गर्नुहोस्"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"केवल यो यन्त्र चार्ज गर्नुहोस्"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"पावर आपूर्ति गर्नुहोस्"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"जडान भएको यन्त्रलाई चार्ज गर्नुहोस्। यसले USB मार्फत चार्ज गर्ने प्रक्रियालाई समर्थन गर्ने यन्त्रमा मात्र काम गर्छ।"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"फाइलहरूलाई स्थानान्तरण गर्नुहोस्"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"फाइलहरूलाई अर्को यन्त्रमा स्थानान्तरण गर्नुहोस्"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"तस्बिरहरु (PTP) स्थानान्तरण गर्नुहोस्"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"यदि MTP ले (PTP) समर्थित गर्दैन भने तस्विर वा फाइलहरू ट्रान्सफर गर्नुहोस्"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"यन्त्रलाई MIDI को रूपमा प्रयोग गर्नुहोस्"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"यस यन्त्रलाई MIDI को रूपमा प्रयोग गर्नुहोस्"</string>
- <string name="usb_use" msgid="3256040963685055320">"निम्न कार्यका लागि USB प्रयोग गर्नुहोस्"</string>
+ <string name="usb_use" msgid="3372728031108932425">"का लागि USB प्रयोग गर्नुहोस्"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"यो यन्त्रलाई चार्ज गर्दै"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"पावर आपूर्ति गर्दै"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"फाइलहरू स्थानान्तरण गर्दै"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"तस्बिरहरू स्थानान्तरण गर्दै (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"यन्त्रलाई MIDI को रूपमा प्रयोग गर्दै"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS प्रतिविम्ब गर्ने सुविधा"</string>
<string name="background_check_pref" msgid="7550258400138010979">"पृष्ठभूमि जाँच"</string>
<string name="background_check_title" msgid="4534254315824525593">"पूर्ण पृष्ठभूमि पहुँच"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"वालपेपर, शयन अवस्था, फन्टको आकार"</string>
<string name="display_summary_example" msgid="9102633726811090523">"१० मिनेटको निष्क्रियता पछिको शयन"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> मेमोरीमध्ये औसत <xliff:g id="USED_MEMORY">%1$s</xliff:g> प्रयोगमा छ"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"हालको प्रयोगकर्ता: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> रूपमा साइन इन गरियो"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> पूर्वनिर्धारित छ"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"सक्रिय / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"सक्रिय छ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"निष्क्रिय"</string>
<string name="backup_disabled" msgid="485189128759595412">"ब्याकअप असक्षम गरियो"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> मा अद्यावधिक गरियो"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"कार्यलाई अनुमति छैन"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"भोल्युम परिवर्तन गर्न सकिँदैन।"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"कल गर्न अनुमति छैन"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS लाई अनुमति छैन"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"यो क्यामेरालाई अनुमति छैन"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"स्क्रिनसटलाई अनुमति छैन"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ब्याकअप कार्यहरूलाई निष्क्रिय पार्न सकिँदैन"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"यो कारबाहीलाई असक्षम पारिएको छ। थप जान्नका लागि आफ्नो संगठनको प्रशासकलाई सम्पर्क गर्नुहोस्।"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"थप विवरणहरु"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"तपाईंको प्रशासकले तपाईंको कार्य प्रोफाइलसँग सम्बन्धित अनुप्रयोग र डेटाका साथै सेटिङ। अनुमति, संस्थागत पहुँच, नेटवर्क सम्बन्धी गतिविधि र यस यन्त्रको स्थान सम्बन्धी जानकारीको अनुगमन र व्यवस्थापन गर्न सक्छ।"</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"पोर्टेबल Wi-Fi हटस्पट <xliff:g id="ID_1">%1$s</xliff:g> सक्रिय छ, यो उपकरणको लागि Wi-Fi बन्द छ।"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"हवाइजहाज मोड खुला छ"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, ब्लुटुथ र मोबाइल नेटवर्क निष्क्रिय छन्। तपाईं फोन कल गर्न वा इन्टरनेटमा जडान हुन सक्नुहुन्न।"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"बाधा नपुर्याउनुहोस् सक्रिय छ (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ब्याट्री सञ्चयकर्ता सक्रिय छ"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"कार्यसम्पादन घट्यो। स्थान सेवाहरू र पृष्ठभूमि डेटा निष्क्रिय पारिएका छन्।"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"मोबाइल डेटा निष्क्रिय छ"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"कार्यको प्रोफाइल बन्द छ"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"तपाईँको कार्यको प्रोफाइलसँग सम्बन्धित अनुप्रयोग, पृष्ठभूमि सिंक र अन्य विशेषताहरू निष्क्रिय छन्।"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"रात्रि प्रकाशको समय तालिका सेट गर्नुहोस्"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"आफूलाई निदाउन सजिलो होस् भनेर स्क्रिनलाई हल्का एम्बर रङको बनाउनुहोस्"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"प्रत्येक रात स्क्रिनको रङ स्वतः परिवर्तन गर्नुहोस्"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"रात्रिको प्रकाश सक्रिय छ"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"स्क्रिनलाई हल्का एम्बर रङको बनाइएको छ। यसले तपाईँलाई निदाउन मद्दत गर्न सक्छ।"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"तपाईंका लागि सुझाव गरिएको"</string>
<string name="suggestions_title" msgid="7280792342273268377">"सुझावहरू"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"थप +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3597,6 +3620,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"कुनै पनि होइन"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"वर्गीकरण सम्बन्धी वस्तु उपलब्ध छैन।"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"वर्गीकरण सम्बन्धी वस्तुमा यो साँचो छैन।"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"कटआउटसहितको सिमुलेट प्रदर्शन गर्नुहोस्"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"कुनै पनि होइन"</string>
<string name="special_access" msgid="3458780842491881155">"विशेष अनुप्रयोगको पहुँच"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> अनुप्रयोगले असीमित डेटा प्रयोग गर्न सक्छन्</item>
@@ -3619,10 +3644,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"धेरै यन्त्रहरूमा जडान गरियो"</string>
<string name="demo_mode" msgid="2798762752209330277">"प्रणालीको UI को प्रदर्शन मोड"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"द्रुत सेटिङहरू सम्बन्धी विकासकर्ताका टाइलहरू"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"विन्डो ट्रेस"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"सतह पत्ता लगाउने कार्य"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"कार्य प्रोफाइलका सेटिङहरू"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"सम्पर्कको खोजी"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"कलर र सम्पर्कहरूको पहिचान गर्न तपाईँको संगठन अनुसार गरिने सम्पर्कका खोजीहरूलाई अनुमति दिनुहोस्"</string>
@@ -3642,8 +3666,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"भण्डारण प्रबन्धकले भण्डारणको ठाउँ खाली गर्न मद्दतका लागि तपाईँको यन्त्रबाट ब्याक अप गरिएका तस्बिर र भिडियोहरू हटाउँदछ।"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"तस्बिर र भिडियोहरूलाई मेट्नुहोस्"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"भण्डारण प्रबन्धक"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"भण्डारण प्रबन्धक प्रयोग गर्नुहोस्"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"स्वतः"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"म्यानुअल"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"अहिले नै ठाउँ खाली गर्नुहोस्"</string>
@@ -3654,32 +3677,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"सिधै क्यामेरामा जानुहोस्"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"द्रुत रूपमा क्यामेरा खोल्न पावर बटनलाई दुई पटक थिच्नुहोस्। जुनसुकै स्क्रिन मार्फत यो सुविधाको प्रयोग गर्न सकिन्छ।"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"चाँडै क्यामेरा खोल्नुहोस्"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"क्यामेरा खोल्न पावर बटनमा दुई पटक थिच्नुहोस्"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"क्यामेरा फ्लिप गर्ने"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"अझ छिटो सेल्फी लिनुहोस्"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"सेल्फी मोडका लागि Double-twist फोन"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"सेल्फी मोडका लागि Double-twist ट्याब्लेट"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"सेल्फी मोडका लागि Double-twist यन्त्र"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"फोनको जाँच गर्न डबल-ट्याप गर्नुहोस्"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ट्याब्लेटको जाँच गर्न डबल-ट्याप गर्नुहोस्"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"यन्त्रको जाँच गर्न डबल-ट्याप गर्नुहोस्"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"समय, सूचनाका आइकनहरू र अन्य जानकारी जाँच्न आफ्नो यन्त्रको स्क्रिनमा डबल ट्याप गर्नुहोस्।"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"स्क्रिन निष्क्रिय हुँदा सूचनाहरूको जाँच गर्नुहोस्"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"फोनको जाँच गर्न उठाउनुहोस्"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ट्याब्लेटको जाँच गर्न उठाउनुहोस्"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"यन्त्रको जाँच गर्न उठाउनुहोस्"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"समय, सूचनाका आइकनहरू र अन्य जानकारी जाँच्न आफ्नो फोन उठाउनुहोस्।"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"समय, सूचना आइकनहरू र अन्य जानकारी जाँच्न आफ्नो ट्याब्लेट उठाउनुहोस्।"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"समय, सूचना आइकनहरू र अन्य जानकारी जाँच्न आफ्नो यन्त्र उठाउनुहोस्।"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"स्क्रिन निष्क्रिय हुँदा सूचनाहरूको जाँच गर्नुहोस्"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"सूचनाहरू प्राप्त गर्न फिंगरप्रिन्ट स्वाइप गर्नुहोस्"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"फिंगरप्रिन्ट स्वाइप गर्नु"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"अफ्ना सूचनाहरूको जाँच गर्न आफ्नो फोनको पछाडिको भागमा रहेको फिंगरप्रिन्ट सेन्सरमा तलतिर स्वाइप गर्नुहोस्।"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"अफ्ना सूचनाहरूको जाँच गर्न आफ्नो ट्याब्लेटको पछाडिको भागमा रहेको फिंगरप्रिन्ट सेन्सरमा तलतिर स्वाइप गर्नुहोस्।"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"अफ्ना सूचनाहरूको जाँच गर्न आफ्नो यन्त्रको पछाडिको भागमा रहेको फिंगरप्रिन्ट सेन्सरमा तलतिर स्वाइप गर्नुहोस्।"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"सूचनाहरू छिट्टै हेर्नुहोस्"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"सुचनाहरूका लागि फिंगरप्रिन्ट सेन्सरमा तलतिर स्वाइप गर्नुहोस्"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"सक्रिय"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"निष्क्रिय"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"बुटलोडर पहिले नै अनलक गरिएको छ"</string>
@@ -3775,7 +3791,7 @@
<string name="app_names_concatenation_template_2" msgid="4309216198909946380">"<xliff:g id="FIRST_APP_NAME">%1$s</xliff:g>, <xliff:g id="SECOND_APP_NAME">%2$s</xliff:g>"</string>
<string name="app_names_concatenation_template_3" msgid="8949045544491604376">"<xliff:g id="FIRST_APP_NAME">%1$s</xliff:g>, <xliff:g id="SECOND_APP_NAME">%2$s</xliff:g>, <xliff:g id="THIRD_APP_NAME">%3$s</xliff:g>"</string>
<string name="storage_photos_videos" msgid="319854636702241898">"तस्बिर र भिडियोहरू"</string>
- <string name="storage_music_audio" msgid="789779084825206838">"संगीत तथा अडियो"</string>
+ <string name="storage_music_audio" msgid="789779084825206838">"सङ्गीत तथा अडियो"</string>
<string name="storage_games" msgid="7703159201697117621">"खेलहरू"</string>
<string name="storage_other_apps" msgid="5524321740031718083">"अन्य अनुप्रयोगहरू"</string>
<string name="storage_files" msgid="8581083146777364063">"फाइलहरू"</string>
@@ -3811,8 +3827,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"यस यन्त्रमा यो सुविधा उपलब्ध छैन"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"पूर्ण GNSS मापनहरू बलपूर्वक लागू गर्नुहोस्"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"कुनै उपयोगिता अनुपात बिना नै सबै GNSS कन्स्टेलेसन तथा फ्रिक्वेन्सीहरूलाई ट्र्याक गर्नुहोस्"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"सधैँ क्र्याससम्बन्धी संवाद देखाउनुस्"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"प्रत्येकपटक अनुप्रयोग क्र्यास हुँदा संवाद देखाउनुहोस्"</string>
+ <string name="directory_access" msgid="4722237210725864244">"निर्देशिकामाथिको पहुँच"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"निर्देशिकामाथिको पहुँच"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"मेरो फोन"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"मेरो ट्याब्लेट"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"मेरो यन्त्र"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"खाता"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"यन्त्रको नाम"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"सवारी चलाउँदा ब्लुटुथ प्रयोग गर्नु…"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"सवारी चलाउँदा ब्लुटुथ स्वतः सक्रिय गर्नुहोस्"</string>
</resources>
diff --git a/res/values-pa/arrays.xml b/res/values-pa/arrays.xml
index b7e1598..3d86192 100644
--- a/res/values-pa/arrays.xml
+++ b/res/values-pa/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"ਪੁਸ਼ ਬਟਨ"</item>
<item msgid="1624323946324499595">"ਪੀਅਰ ਡੀਵਾਈਸ ਤੋਂ ਪਿੰਨ"</item>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 2c9c54a..8b99980 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"ਤਾਰੀਖ ਸੈੱਟ ਕਰੋ"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"ਵਰਨਮਾਲਾ ਅਨੁਸਾਰ ਛਾਂਟੋ"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"ਸਮਾਂ ਜ਼ੋਨ ਮੁਤਾਬਕ ਛਾਂਟੋ"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> ਨੂੰ ਸ਼ੁਰੂ ਹੋਵੇਗਾ।"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ਦਿਨ ਦੀ ਰੌਸ਼ਨੀ ਸੰਬੰਧੀ ਬਚਤ ਸਮਾਂ"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"ਮਿਆਰੀ ਸਮਾਂ"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"ਖੇਤਰ ਮੁਤਾਬਕ ਸਮਾਂ ਖੇਤਰ"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"ਫਿਕਸਡ ਔਫਸੈੱਟ ਸਮਾਂ ਖੇਤਰ"</string>
<string name="date_picker_title" msgid="1338210036394128512">"ਤਾਰੀਖ"</string>
<string name="time_picker_title" msgid="483460752287255019">"ਸਮਾਂ"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"ਸਵੈਚਲਿਤ ਤਰੀਕੇ ਨਾਲ ਲਾਕ ਕਰੋ"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">" ਲਾਕ ਸਕ੍ਰੀਨ ਸੁਨੇਹਾ"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ਵਿਜੇਟ ਨੂੰ ਚਾਲੂ ਕਰੋ"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"ਪ੍ਰਸ਼ਾਸਕ ਦੁਆਰਾ ਅਯੋਗ ਬਣਾਇਆ ਗਿਆ"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"ਲਾਕਡਾਊਨ ਵਿਕਲਪ ਦਿਖਾਓ"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"ਪਾਵਰ ਬਟਨ ਵਿਕਲਪ ਦਿਖਾਓ ਜੋ ਵਾਧੂ ਪਹੁੰਚ ਅਤੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਅਣਲਾਕ ਕੀਤੇ ਜਾਣਾ ਬੰਦ ਕਰਦਾ ਹੈ।"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ਕੋਈ ਨਹੀਂ"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ਉਦਾਹਰਨ ਵਜੋਂ, ਜੋਏ ਦਾ Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"ਪ੍ਰੋਫਾਈਲ ਜਾਣਕਾਰੀ"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"ਖਾਤੇ"</string>
<string name="location_settings_title" msgid="1369675479310751735">"ਟਿਕਾਣਾ"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"ਟਿਕਾਣੇ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
<string name="account_settings_title" msgid="626177544686329806">"ਖਾਤੇ"</string>
<string name="security_settings_title" msgid="4918904614964215087">"ਸੁਰੱਖਿਆ ਅਤੇ ਟਿਕਾਣਾ"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ਇਨਕ੍ਰਿਪਸ਼ਨ ਅਤੇ ਕ੍ਰੀਡੈਂਸ਼ੀਅਲ"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ਤੁਹਾਡੇ ਵੱਲੋਂ ਦਰਜ ਕੀਤਾ ਪਾਸਵਰਡ ਸਹੀ ਹੈ, ਪਰੰਤੂ ਅਫ਼ਸੋਸ ਨਾਲ ਡਾਟਾ ਕਰਪਟ ਹੈ। \n\nਆਪਣੀ ਟੈਬਲੈੱਟ ਵਰਤਣਾ ਦੁਬਾਰਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ ਇੱਕ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ ਰੀਸੈੱਟ ਤੋਂ ਬਾਅਦ ਆਪਣੀ ਟੈਬਲੈੱਟ ਸੈੱਟ ਅੱਪ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੇ ਕੋਲ ਉਹ ਕੋਈ ਵੀ ਡਾਟਾ ਰੀਸਟੋਰ ਕਰਨ ਦਾ ਮੌਕਾ ਹੁੰਦਾ ਹੈ, ਜੋ ਤੁਹਾਡੇ Google ਖਾਤੇ ਨਾਲ ਬੈਕ ਅੱਪ ਕੀਤਾ ਗਿਆ ਸੀ।"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ਤੁਹਾਡੇ ਵੱਲੋਂ ਦਰਜ ਕੀਤਾ ਪਾਸਵਰਡ ਸਹੀ ਹੈ, ਪਰੰਤੂ ਅਫ਼ਸੋਸ ਨਾਲ ਡਾਟਾ ਕਰਪਟ ਹੈ। \n\nਆਪਣਾ ਫ਼ੋਨ ਵਰਤਣਾ ਦੁਬਾਰਾ ਸ਼ੁਰੂ ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ ਇੱਕ ਫੈਕਟਰੀ ਰੀਸੈੱਟ ਕਰਨ ਦੀ ਲੋੜ ਹੈ। ਜਦੋਂ ਤੁਸੀਂ ਰੀਸੈੱਟ ਤੋਂ ਬਾਅਦ ਆਪਣੀ ਟੈਬਲੈੱਟ ਸੈੱਟ ਅੱਪ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਡੇ ਕੋਲ ਉਹ ਕੋਈ ਵੀ ਡਾਟਾ ਰੀਸਟੋਰ ਕਰਨ ਦਾ ਮੌਕਾ ਹੁੰਦਾ ਹੈ, ਜੋ ਤੁਹਾਡੇ Google ਖਾਤੇ ਨਾਲ ਬੈਕ ਅੱਪ ਕੀਤਾ ਗਿਆ ਸੀ।"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ਇਨਪੁੱਟ ਵਿਧੀ ਸਵਿੱਚ ਕਰੋ"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"ਆਪਣੇ ਡੀਵਾਈਸ ਦੀ ਰੱਖਿਆ ਕਰੋ"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਵਰਤੋ"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"ਸੁਰੱਖਿਆ ਲਈ ਸਕ੍ਰੀਨ ਲਾਕ ਸੈੱਟ ਕਰੋ"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"ਹੋਰਾਂ ਨੂੰ ਤੁਹਾਡੇ ਟੈਬਲੈੱਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਰੋਕੋ"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"ਹੋਰਾਂ ਨੂੰ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਰੋਕੋ"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"ਹੋਰਾਂ ਨੂੰ ਤੁਹਾਡੇ ਫ਼ੋਨ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਰੋਕੋ"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਨਾਲ ਅਣਲਾਕ ਕਰੋ"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"ਸਕ੍ਰੀਨ ਲਾਕ ਚੁਣੋ"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"ਕੰਮ ਲਾਕ ਚੁਣੋ"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ਟੈਬਲੈੱਟ ਦੀ ਸੁਰੱਖਿਆ ਕਰੋ"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"ਨਾਮ"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"ਸਾਈਨ-ਇਨ ਕਰੋ"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> ਵਾਈ-ਫਾਈ ਨੂੰ ਚਾਲੂ ਕਰਨਾ ਚਾਹੁੰਦੀ ਹੈ"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> ਵਾਈ-ਫਾਈ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੀ ਹੈ"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"ਵਾਈ‑ਫਾਈ"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"ਵਾਈ‑ਫਾਈ ਚਾਲੂ ਕਰੋ"</string>
<string name="wifi_settings" msgid="29722149822540994">"ਵਾਈ‑ਫਾਈ"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"ਵਾਈ-ਫਾਈ ਵਰਤੋ"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"ਵਾਈ-ਫਾਈ ਸੈਟਿੰਗਾਂ"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"ਵਾਈ‑ਫਾਈ"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"ਵਾਇਰਲੈਸ ਐਕਸੈੱਸ ਪੁਆਇੰਟ ਸੈੱਟ ਅੱਪ & ਵਿਵਸਥਿਤ ਕਰੋ"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"ਪਾਸਵਰਡ"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"ਪਾਸਵਰਡ ਦਿਖਾਓ"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP ਬੈਂਡ ਦੀ ਚੋਣ ਕਰੋ"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ਸਵੈਚਲਿਤ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz ਬੈਂਡ"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz ਬੈਂਡ"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ਸੈਟਿੰਗਾਂ"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"ਵਾਈ-ਫਾਈ ਕਾਲਿੰਗ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"ਵਾਈ-ਫਾਈ ਕਾਲਿੰਗ ਚਾਲੂ ਕਰੋ"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਦੀ ਥਾਂ ਵਾਈ-ਫਾਈ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"ਵਾਈ-ਫਾਈ ਰਾਹੀਂ ਕਾਲ ਕਰਕੇ ਕਵਰੇਜ ਵਧਾਓ"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ਕਾਲਿੰਗ ਤਰਜੀਹ"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"ਵਾਈ-ਫਾਈ ਕਾਲਿੰਗ ਮੋਡ"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ਰੋਮਿੰਗ ਤਰਜੀਹ"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਪ੍ਰਕਾਰ"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ਓਪਰੇਟਰ ਜਾਣਕਾਰੀ"</string>
<string name="status_data_state" msgid="5503181397066522950">"ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਸਥਿਤੀ"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"ਸੇਵਾ ਸਥਿਤੀ"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"ਸਿਗਨਲ ਸਟ੍ਰੈਂਥ"</string>
<string name="status_roaming" msgid="2638800467430913403">"ਰੋਮਿੰਗ"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"ਨੈੱਟਵਰਕ, ਐਪਾਂ, ਜਾਂ ਡੀਵਾਈਸ ਨੂੰ ਰੀਸੈੱਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ"</string>
<string name="reset_network_title" msgid="6166025966016873843">"ਵਾਈ-ਫਾਈ, ਮੋਬਾਈਲ ਅਤੇ ਬਲੂਟੁੱਥ ਨੂੰ ਰੀਸੈੱਟ ਕਰੋ"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"ਇਹ ਨੈੱਟਵਰਕ ਦੀਆਂ ਸਾਰੀਆਂ ਸੈਟਿੰਗਾਂ ਨੂੰ ਰੀਸੈੱਟ ਕਰੇਗਾ, ਜਿਸ ਵਿੱਚ ਇਹ ਸ਼ਾਮਲ ਹਨ:\n\n"<li>"ਵਾਈ-ਫਾਈ"</li>\n<li>"ਮੋਬਾਈਲ ਡਾਟਾ"</li>\n<li>"ਬਲੂਟੁੱਥ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"ਈ-ਸਿਮ ਵੀ ਰੀਸੈੱਟ ਕਰੋ"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ਫ਼ੋਨ ਵਿੱਚੋਂ ਸਾਰੇ ਈ-ਸਿਮ ਮਿਟਾਓ। ਆਪਣੇ ਈ-ਸਿਮ ਮੁੜ-ਡਾਊਨਲੋਡ ਕਰਨ ਲਈ ਤੁਹਾਨੂੰ ਆਪਣੇ ਕੈਰੀਅਰ ਨਾਲ ਸੰਪਰਕ ਕਰਨਾ ਪਵੇਗਾ। ਅਜਿਹਾ ਕਰਨ ਨਾਲ ਤੁਹਾਡੀ ਮੋਬਾਈਲ ਸੇਵਾ ਯੋਜਨਾ ਨੂੰ ਰੱਦ ਨਹੀਂ ਕਰੇਗਾ।"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ਸੈਟਿੰਗਾਂ ਰੀਸੈੱਟ ਕਰੋ"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"ਕੀ ਸਾਰੀਆਂ ਨੈੱਟਵਰਕ ਸੈਟਿੰਗਾਂ ਰੀਸੈੱਟ ਕਰਨੀਆਂ ਹਨ? ਤੁਸੀਂ ਇਸ ਕਾਰਵਾਈ ਨੂੰ ਅਣਕੀਤਾ ਨਹੀ ਕਰ ਸਕਦੇ!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ਸੈਟਿੰਗਾਂ ਰੀਸੈੱਟ ਕਰੋ"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"ਕੀ ਰੀਸੈੱਟ ਕਰਨਾ ਹੈ?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ਇਸ ਉਪਭੋਗਤਾ ਲਈ ਨੈੱਟਵਰਕ ਰੀਸੈੱਟ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"ਨੈੱਟਵਰਕ ਸੈਟਿੰਗਾਂ ਰੀਸੈੱਟ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"ਈ-ਸਿਮ ਰੀਸੈੱਟ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"ਕੋਈ ਗੜਬੜ ਹੋਣ ਕਰਕੇ ਈ-ਸਿਮ ਰੀਸੈੱਟ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ।"</string>
<string name="master_clear_title" msgid="3531267871084279512">"ਸਾਰਾ ਡਾਟਾ ਮਿਟਾਓ (ਫੈਕਟਰੀ ਰੀਸੈੱਟ)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ਇਹ ਤੁਹਾਡੇ ਟੈਬਲੈੱਟ ਦੀ "<b>"ਅੰਦਰੂਨੀ ਸਟੋਰੇਜ"</b>"ਦਾ ਸਾਰਾ ਡਾਟਾ ਮਿਟਾ ਦੇਵੇਗਾ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹੈ:\n\n"<li>"ਤੁਹਾਡਾ Google ਖਾਤਾ"</li>\n<li>"ਸਿਸਟਮ ਅਤੇ ਐਪ ਡਾਟਾ ਅਤੇ ਸੈਟਿੰਗਾਂ"</li>\n<li>"ਡਾਊਨਲੋਡ ਕੀਤੀਆਂ ਐਪਾਂ"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ਇਹ ਤੁਹਾਡੇ ਫ਼ੋਨ ਦੀ "<b>"ਅੰਦਰੂਨੀ ਸਟੋਰੇਜ"</b>" ਦਾ ਸਾਰਾ ਡਾਟਾ ਮਿਟਾ ਦੇਵੇਗਾ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਮਲ ਹੈ:\n\n"<li>"ਤੁਹਾਡਾ Google ਖਾਤਾ"</li>\n<li>"ਸਿਸਟਮ ਅਤੇ ਐਪ ਡਾਟਾ ਅਤੇ ਸੈਟਿੰਗਾਂ"</li>\n<li>"ਡਾਊਨਲੋਡ ਕੀਤੇ ਐਪਾਂ"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"ਤੁਸੀਂ ਇਸ ਵੇਲੇ ਇਹਨਾਂ ਖਾਤਿਆਂ ਤੇ ਸਾਈਨ ਇਨ ਕਰ ਰਹੇ ਹੋ:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ਇਸ ਡੀਵਾਈਸ ਤੇ ਹੋਰ ਵਰਤੋਂਕਾਰ ਮੌਜੂਦ ਨਹੀਂ ਹਨ।\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"ਸੰਗੀਤ"</li>\n<li>"ਫੋਟੋਆਂ"</li>\n<li>"ਹੋਰ ਉਪਭੋਗਤਾ ਡਾਟਾ "</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM \'ਤੇ ਕੈਰੀਅਰ"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"ਈ-ਸਿਮ"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"ਇਸ ਨਾਲ ਤੁਹਾਡੀ ਮੋਬਾਈਲ ਸੇਵਾ ਯੋਜਨਾ ਰੱਦ ਨਹੀਂ ਹੋਵੇਗੀ।"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"ਸੰਗੀਤ, ਤਸਵੀਰਾਂ ਅਤੇ ਹੋਰ ਵਰਤੋਂਕਾਰ ਡਾਟਾ ਸਾਫ਼ ਕਰਨ ਲਈ, "<b>"USB ਸਟੋਰੇਜ"</b>" ਨੂੰ ਮਿਟਾਉਣ ਦੀ ਲੋੜ ਹੈ।"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"ਸੰਗੀਤ, ਤਸਵੀਰਾਂ ਅਤੇ ਹੋਰ ਉਪਭੋਗਤਾ ਡਾਟਾ ਹਟਾਉਣ ਲਈ, "<b>"SD ਕਾਰਡ"</b>" ਨੂੰ ਮਿਟਾਉਣ ਦੀ ਲੋੜ ਹੈ।"</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"ਕਿਰਪਾ ਕਰਕੇ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਕਰੋ"</string>
<string name="location_title" msgid="1029961368397484576">"ਮੇਰਾ ਟਿਕਾਣਾ"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਲਈ ਟਿਕਾਣਾ"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"ਮੋਡ"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ਉੱਚ ਸ਼ੁੱਧਤਾ"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"ਬੈਟਰੀ ਦੀ ਬਚਤ"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"ਕੇਵਲ ਡੀਵਾਈਸ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"ਟਿਕਾਣਾ ਬੰਦ"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ਐਪ-ਪੱਧਰ ਇਜਾਜ਼ਤਾਂ"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"ਹਾਲੀਆ ਟਿਕਾਣਾ ਬੇਨਤੀਆਂ"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"ਕਿਸੇ ਐਪਸ ਨੇ ਹਾਲ ਵਿੱਚ ਹੀ ਨਿਰਧਾਰਿਤ ਸਥਾਨ ਦੀ ਬੇਨਤੀ ਨਹੀਂ ਕੀਤੀ ਹੈ"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"ਟਿਕਾਣਾ ਸੇਵਾਵਾਂ"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ਉੱਚ ਬੈਟਰੀ ਵਰਤੋਂ"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"ਘੱਟ ਬੈਟਰੀ ਵਰਤੋਂ"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"ਟਿਕਾਣਾ ਮੋਡ"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"ਟਿਕਾਣੇ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ GPS, ਵਾਈ‑ਫਾਈ, ਬਲੂਟੁੱਥ, ਜਾਂ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਵਰਤੋ"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"ਟਿਕਾਣੇ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਵਾਈ‑ਫਾਈ, ਬਲੂਟੁੱਥ, ਜਾਂ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਵਰਤੋ"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ਟਿਕਾਣੇ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ GPS ਅਤੇ ਡੀਵਾਈਸ ਸੈਂਸਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ਸਕੈਨ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"ਵਾਈ‑ਫਾਈ ਸਕੈਨਿੰਗ"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ਸਿਸਟਮ ਐਪਾਂ ਅਤੇ ਸੇਵਾਵਾਂ ਨੂੰ ਕਿਸੇ ਵੀ ਸਮੇਂ ਵਾਈ‑ਫਾਈ ਨੈੱਟਵਰਕਾਂ ਦਾ ਪਤਾ ਲਾਉਣ ਦੀ ਆਗਿਆ ਦੇ ਕੇ ਟਿਕਾਣਾ ਸੇਵਾ ਬਿਹਤਰ ਬਣਾਓ।"</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"ਨਿਰਧਾਰਿਤ ਸਰੋਤ"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ਟੈਬਲੈੱਟ ਬਾਰੇ"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ਫ਼ੋਨ ਬਾਰੇ"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"ਡੀਵਾਈਸ ਬਾਰੇ"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ਇਮੂਲੇਟ ਕੀਤੇ ਡੀਵਾਈਸ ਬਾਰੇ"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"ਕਨੂੰਨੀ ਜਾਣਕਾਰੀ, ਸਥਿਤੀ, ਸਾਫ਼ਟਵੇਅਰ ਵਰਜਨ ਦੇਖੋ"</string>
<string name="legal_information" msgid="5769301644270604095">"ਕਨੂੰਨੀ ਜਾਣਕਾਰੀ"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"ਸਾਰੀਆਂ <xliff:g id="COUNT">%1$d</xliff:g> ਐਪਾਂ ਦੇਖੋ"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"ਤੁਹਾਡਾ ਟੈਬਲੈੱਟ ਅਤੇ ਨਿੱਜੀ ਡਾਟਾ ਅਗਿਆਤ ਐਪਾਂ ਤੋਂ ਹਮਲੇ ਪ੍ਰਤੀ ਵਧੇਰੇ ਕਮਜ਼ੋਰ ਹੈ। ਇਸ ਸਰੋਤ ਤੋਂ ਐਪਾਂ ਸਥਾਪਿਤ ਕਰਕੇ, ਤੁਸੀਂ ਸਹਿਮਤੀ ਦਿੰਦੇ ਹੋ ਕਿ ਆਪਣੇ ਟੈਬਲੈੱਟ ਨੂੰ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਨੁਕਸਾਨ ਜਾਂ ਡਾਟੇ ਦੇ ਗੁੰਮ ਹੋਣ ਲਈ ਤੁਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਹੋ, ਜੋ ਸ਼ਾਇਦ ਇਹਨਾਂ ਐਪਾਂ ਨੂੰ ਵਰਤਣ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਹੋ ਸਕਦਾ ਹੈ।"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"ਤੁਹਾਡਾ ਫ਼ੋਨ ਅਤੇ ਨਿੱਜੀ ਡਾਟਾ ਅਗਿਆਤ ਐਪਾਂ ਤੋਂ ਹਮਲੇ ਪ੍ਰਤੀ ਵਧੇਰੇ ਵਿੰਨਣਸ਼ੀਲ ਹਨ। ਇਸ ਸਰੋਤ ਤੋਂ ਐਪਾਂ ਸਥਾਪਤ ਕਰ ਕੇ, ਤੁਸੀਂ ਸਹਿਮਤੀ ਦਿੰਦੇ ਹੋ ਕਿ ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਨੁਕਸਾਨ ਜਾਂ ਡਾਟੇ ਦੇ ਗੁੰਮ ਹੋਣ ਲਈ ਤੁਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਹੋ ਜੋ ਸ਼ਾਇਦ ਇਹਨਾਂ ਐਪਾਂ ਨੂੰ ਵਰਤਣ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਹੋ ਸਕਦਾ ਹੈ।"</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"ਤੁਹਾਡਾ ਡੀਵਾਈਸ ਅਤੇ ਨਿੱਜੀ ਡਾਟਾ ਅਗਿਆਤ ਐਪਾਂ ਤੋਂ ਹਮਲੇ ਪ੍ਰਤੀ ਵਧੇਰੇ ਵਿੰਨਣਸ਼ੀਲ ਹਨ। ਇਸ ਸਰੋਤ ਤੋਂ ਐਪਾਂ ਸਥਾਪਤ ਕਰ ਕੇ, ਤੁਸੀਂ ਸਹਿਮਤੀ ਦਿੰਦੇ ਹੋ ਕਿ ਆਪਣੇ ਡੀਵਾਈਸ ਨੂੰ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਨੁਕਸਾਨ ਜਾਂ ਡਾਟੇ ਦੇ ਗੁੰਮ ਹੋਣ ਲਈ ਤੁਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਹੋ ਜੋ ਸ਼ਾਇਦ ਇਹਨਾਂ ਐਪਾਂ ਨੂੰ ਵਰਤਣ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਹੋ ਸਕਦਾ ਹੈ।"</string>
<string name="advanced_settings" msgid="1777249286757067969">"ਉੱਨਤ ਸੈਟਿੰਗਾਂ"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"ਹੋਰ ਸੈਟਿੰਗਾਂ ਚੋਣਾਂ ਚਾਲੂ ਕਰੋ"</string>
<string name="application_info_label" msgid="5736524913065714880">"ਐਪ ਜਾਣਕਾਰੀ"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"ਪ੍ਰਦਰਸ਼ਨ \'ਤੇ ਅਸਰ ਪਾ ਸਕਦੀ ਹੈ"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"ਪੋਇੰਟਰ ਰੁਕਣ ਤੋਂ ਬਾਅਦ ਕਲਿੱਕ ਕਰੋ"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"ਕਲਿੱਕ ਤੋਂ ਪਹਿਲਾਂ ਦੇਰੀ"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"ਸੇਵਾ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"ਰੰਗ ਸੁਧਾਈ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"ਸੁਰਖੀਆਂ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ਚਾਲੂ"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ਬੰਦ"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"ਤਤਕਾਲ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਦਿਖਾਓ"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ਬਾਕੀ"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"ਚਾਰਜ ਕਰਨ ਲਈ <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"ਬੈਕਗ੍ਰਾਊਂਡ ਸਰਗਰਮੀ"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ਪ੍ਰਤੀਬੰਧਿਤ"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ਐਪ ਨੂੰ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਚੱਲਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿਓ"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ਵਰਤੋਂ ਵਿੱਚ ਨਾ ਹੋਣ \'ਤੇ ਐਪ ਬੈਕਗ੍ਰਾਊਂਡ ਵਿੱਚ ਚੱਲ ਸਕਦੀ ਹੈ"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ਵਰਤੋਂ ਵਿੱਚ ਨਾ ਹੋਣ \'ਤੇ ਐਪ ਦੀ ਬੈਕਗ੍ਰਾਊਂਡ ਸਰਗਰਮੀ ਸੀਮਤ ਹੈ"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ਐਪਾਂ ਦਾ ਵਤੀਰਾ ਆਮ ਵਾਂਗ ਹੈ"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"ਘੱਟ ਬੈਟਰੀ ਸਮਰੱਥਾ"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"ਬੈਟਰੀ ਜ਼ਿਆਦਾ ਦੇਰ ਤੱਕ ਨਹੀਂ ਚੱਲ ਸਕਦੀ ਹੈ"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ਸਮਾਰਟ ਬੈਟਰੀ ਪ੍ਰਬੰਧਕ ਚਾਲੂ ਕਰੋ"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"ਬੈਟਰੀ ਵਰਤੋਂ ਨੂੰ ਸੁਯੋਗ ਬਣਾਉਣ ਲਈ ਚਾਲੂ ਕਰੋ"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"ਘੱਟ ਬੈਟਰੀ ਮੋਡ ਚਾਲੂ ਕਰੋ"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ਆਪਣੀ ਬੈਟਰੀ ਲਾਈਫ਼ ਵਧਾਓ"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"ਘੱਟ ਬੈਟਰੀ ਮੋਡ ਚਾਲੂ ਹੈ"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"ਕੁਝ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸੀਮਤ ਹਨ"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ਫ਼ੋਨ ਦੀ ਵਰਤੋਂ ਬਹੁਤ ਜ਼ਿਆਦਾ ਹੋਈ"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ਟੈਬਲੈੱਟ ਦੀ ਵਰਤੋਂ ਬਹੁਤ ਜ਼ਿਆਦਾ ਹੋਈ"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"ਡੀਵਾਈਸ ਦੀ ਵਰਤੋਂ ਬਹੁਤ ਜ਼ਿਆਦਾ ਹੋਈ"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ਐਪ ਅਨੁਕੂਲਨ"</string>
<string name="battery_saver" msgid="8172485772238572153">"ਬੈਟਰੀ ਸੇਵਰ"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"ਬੈਟਰੀ ਸੇਵਰ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"ਆਪਣੇ-ਆਪ ਚਾਲੂ ਕਰੋ"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ਕਦੇ ਵੀ ਨਹੀਂ"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> \'ਤੇ ਬੈਟਰੀ"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"ਸਮਕਾਲੀਕਰਨ ਵਿੱਚ ਇਸ ਵੇਲੇ ਸਮੱਸਿਆਵਾਂ ਹੋ ਰਹੀਆਂ ਹਨ। ਇਹ ਜਲਦੀ ਹੀ ਠੀਕ ਹੋ ਜਾਏਗਾ।"</string>
<string name="add_account_label" msgid="7811707265834013767">"ਖਾਤਾ ਸ਼ਾਮਲ ਕਰੋ"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਅਜੇ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"ਕੰਮ ਮੋਡ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"ਐਪਾਂ, ਬੈਕਗ੍ਰਾਊਂਡ ਸਮਕਾਲੀਕਰਨ, ਅਤੇ ਸਬੰਧਿਤ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਕਰਦੇ ਹੋਏ ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਨੂੰ ਕੰਮ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿਓ"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"ਤੁਹਾਡੀ ਸੰਸਥਾ ਵੱਲੋਂ ਪ੍ਰਬੰਧਨ ਕੀਤਾ ਜਾਂਦਾ ਹੈ"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ਐਪਾਂ ਅਤੇ ਸੂਚਨਾਵਾਂ ਬੰਦ ਹਨ"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਹਟਾਓ"</string>
<string name="background_data" msgid="5779592891375473817">"ਪਿਛੋਕੜ ਡਾਟਾ"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ਐਪਸ ਕਿਸੇ ਵੀ ਸਮੇਂ ਡਾਟਾ ਸਿੰਕ ਕਰ ਸਕਦੇ ਹਨ, ਭੇਜ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰ ਸਕਦੇ ਹਨ"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"ਕੀ ਖਾਤਾ ਹਟਾਉਣਾ ਹੈ?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ਇਸ ਖਾਤੇ ਨੂੰ ਹਟਾਉਣ ਨਾਲ ਇਸਦੇ ਸਾਰੇ ਸੁਨੇਹੇ, ਸੰਪਰਕ ਅਤੇ ਟੈਬਲੈੱਟ ਦਾ ਹੋਰ ਡਾਟਾ ਮਿਟ ਜਾਏਗਾ!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ਇਸ ਖਾਤੇ ਨੂੰ ਹਟਾਉਣ ਨਾਲ ਇਸਦੇ ਸਾਰੇ ਸੁਨੇਹੇ, ਸੰਪਰਕ ਅਤੇ ਫ਼ੋਨ ਦਾ ਹੋਰ ਡਾਟਾ ਮਿਟ ਜਾਏਗਾ!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ਇਸ ਖਾਤੇ ਨੂੰ ਹਟਾਉਣ ਨਾਲ ਡੀਵਾਈਸ ਤੋਂ ਇਸਦੇ ਸਾਰੇ ਸੁਨੇਹੇ, ਸੰਪਰਕ ਅਤੇ ਹੋਰ ਡਾਟਾ ਮਿਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਵੱਲੋਂ ਇਸ ਤਬਦੀਲੀ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
<string name="provider_label" msgid="7724593781904508866">"Push ਸਬਸਕ੍ਰਿਪਸ਼ੰਸ"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="one">ਪ੍ਰਮਾਣ-ਪੱਤਰਾਂ ਦੀ ਜਾਂਚ ਕਰੋ</item>
<item quantity="other">ਪ੍ਰਮਾਣ-ਪੱਤਰਾਂ ਦੀ ਜਾਂਚ ਕਰੋ</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"ਵਰਤੋਂਕਾਰ"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"ਬਹੁ-ਵਰਤੋਂਕਾਰ"</string>
<string name="user_list_title" msgid="7937158411137563543">"ਉਪਭੋਗਤਾ & ਪ੍ਰੋਫਾਈਲਾਂ"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"ਵਰਤੋਂਕਾਰ ਜਾਂ ਪ੍ਰੋਫਾਈਲ ਜੋੜੋ"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"ਵਰਤੋਂਕਾਰ ਸ਼ਾਮਲ ਕਰੋ"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"ਬਲੂਟੁੱਥ, ਕਾਸਟ"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ਐਪਾਂ ਅਤੇ ਸੂਚਨਾਵਾਂ"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"ਇਜਾਜ਼ਤਾਂ, ਪੂਰਵ-ਨਿਰਧਾਰਤ ਐਪਾਂ"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"ਵਰਤੋਂਕਾਰ ਅਤੇ ਖਾਤੇ"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"ਖਾਤੇ"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ਪੂਰਵ-ਨਿਰਧਾਰਤ ਐਪਾਂ"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"ਭਾਸ਼ਾਵਾਂ, ਸਮਾਂ, ਬੈਕਅੱਪ, ਅੱਪਡੇਟ"</string>
<string name="search_results_title" msgid="1796252422574886932">"ਸੈਟਿੰਗਾਂ"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ਨਾ ਕਰੋ ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ, ਰੋਕੋ, ਰੁਕਾਵਟ, ਬ੍ਰੇਕ"</string>
<string name="keywords_app" msgid="6334757056536837791">"ਰੈਮ"</string>
<string name="keywords_location" msgid="6615286961552714686">"ਨੇੜਲੇ, ਟਿਕਾਣਾ, ਇਤਿਹਾਸ, ਰਿਪੋਰਟਿੰਗ"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ਸ਼ੁੱਧਤਾ"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"ਖਾਤਾ"</string>
<string name="keywords_users" msgid="3434190133131387942">"ਪਾਬੰਦੀ, ਪਾਬੰਦੀ ਲਗਾਓ, ਪਾਬੰਦੀ ਲਗਾਈ"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ਲਿਖਤ ਸੁਧਾਈ, ਸਹੀ, ਧੁਨੀ, ਕੰਬਣਾ, ਸਵੈ, ਭਾਸ਼ਾ, ਸੰਕੇਤ, ਸੁਝਾਓ, ਸੁਝਾਅ, ਥੀਮ, ਅਪਮਾਨਜਨਕ, ਸ਼ਬਦ, ਕਿਸਮ, ਇਮੋਜੀ, ਅੰਤਰਰਾਸ਼ਟਰੀ"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"ਨੈੱਟਵਰਕ, ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਅਵਸਥਾ, ਸੇਵਾ ਅਵਸਥਾ, ਸਿਗਨਲ ਸ਼ਕਤੀ, ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਦੀ ਕਿਸਮ, ਰੋਮਿੰਗ, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"ਸੀਰੀਅਲ ਨੰਬਰ, ਹਾਰਡਵੇਅਰ ਵਰਜਨ"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android ਸੁਰੱਖਿਆ ਪੈਚ ਪੱਧਰ, ਬੇਸਬੈਂਡ ਵਰਜਨ, ਕਰਨਲ ਵਰਜਨ"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"ਵਾਈ-ਫਾਈ NFC ਟੈਗ ਸੈੱਟ ਅੱਪ ਕਰੋ"</string>
<string name="write_tag" msgid="8571858602896222537">"ਲਿਖੋ"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ਲਿਖਣ ਲਈ ਇੱਕ ਟੈਗ ਟੈਪ ਕਰੋ..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> ਨਿਯਮ</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਨੂੰ ਚਾਲੂ ਕਰੋ"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"ਵਰਤਾਅ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ਇਸ ਨੂੰ ਧੁਨੀਆਂ ਅਤੇ ਥਰਥਰਾਹਟਾਂ ਕਰਨ ਦਿਓ"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ਕੋਈ ਧੁਨੀ ਨਹੀਂ"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਚਾਲੂ ਕਰੋ"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ਸਵੈਚਲਿਤ ਨਿਯਮ"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ਸਵੈਚਲਿਤ ਨਿਯਮ"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਨਿਯਮ ਸੈੱਟ ਕਰੋ"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ਕੁਝ ਵਿਸ਼ੇਸ਼ ਸਮਿਆਂ \'ਤੇ ਧੁਨੀ ਅਤੇ ਥਰਥਰਾਹਟਾਂ ਸੀਮਤ ਕਰੋ"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"ਕੁਝ ਖਾਸ ਸਮਿਆਂ \'ਤੇ ਫ਼ੋਨ ਖਾਮੋਸ਼ ਰੱਖੋ"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਦੇ ਨਿਯਮ ਸੈੱਟ ਕਰੋ"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"ਨਿਯਮ ਵਰਤੋ"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ਕੇਵਲ ਤਰਜੀਹੀ"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"ਕੇਵਲ ਅਲਾਰਮ"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"ਪੂਰਾ ਸ਼ਾਂਤ"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"ਦ੍ਰਿਸ਼ਟੀਗਤ ਗੜਬੜੀਆਂ ਬਲਾਕ ਕਰੋ"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"ਦ੍ਰਿਸ਼ਟੀਗਤ ਸਿਗਨਲ ਦਿਖਣ ਦਿਓ"</string>
<string name="zen_mode_add" msgid="90014394953272517">"ਸ਼ਾਮਲ ਕਰੋ"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ਚਾਲੂ ਕਰੋ"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ਹੁਣੇ ਚਾਲੂ ਕਰੋ"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ਹੁਣੇ ਬੰਦ ਕਰੋ"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> ਤੱਕ \'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਮੋਡ ਚਾਲੂ ਹੈ"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"ਜਦੋਂ ਤੱਕ ਤੁਸੀਂ \'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਮੋਡ ਨੂੰ ਬੰਦ ਨਹੀਂ ਕਰਦੇ ਇਹ ਚਾਲੂ ਰਹੇਗਾ"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"ਕਿਸੇ ਨਿਯਮ <xliff:g id="RULE_NAME">%s</xliff:g> ਵੱਲੋਂ \'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਮੋਡ ਨੂੰ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਚਾਲੂ ਕੀਤਾ ਗਿਆ"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"ਕਿਸੇ ਐਪ <xliff:g id="APP_NAME">%s</xliff:g> ਵੱਲੋਂ \'ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ\' ਮੋਡ ਨੂੰ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਚਾਲੂ ਕੀਤਾ ਗਿਆ"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ਸਿਰਫ਼ ਤਰਜੀਹੀ"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>। <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਧੁਨੀਆਂ"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ਨਿੱਜੀ ਪ੍ਰੋਫਾਈਲ ਧੁਨੀਆਂ ਵਰਤੋ"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"ਕਾਰਜ ਅਤੇ ਨਿੱਜੀ ਪ੍ਰੋਫਾਈਲਾਂ ਲਈ ਧੁਨੀਆਂ ਇੱਕੋ ਹਨ"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"ਰਿੰਗਟੋਨਾਂ"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ਹੋਰ ਧੁਨੀਆਂ ਅਤੇ ਥਰਥਰਾਹਟਾਂ"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"ਸੂਚਨਾਵਾਂ"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"ਹਾਲੀਆ ਭੇਜੀਆਂ ਗਈਆਂ"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"ਵਿਕਸਿਤ"</string>
<string name="profile_section_header" msgid="2320848161066912001">"ਕੰਮ ਸਬੰਧੀ ਸੂਚਨਾਵਾਂ"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"ਸੂਚਨਾ ਬਿੰਦੂਆਂ ਨੂੰ ਆਗਿਆ ਦਿਓ"</string>
@@ -3183,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ਆਪਣੇ ਡੀਵਾਈਸ ਨੂੰ ਅਣਲਾਕ ਕਰਨ ਲਈ ਆਪਣੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਇਲਾਵਾ, ਤੁਸੀਂ ਇਸ ਡੀਵਾਈਸ ਦੇ ਚਾਲੂ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ ਆਪਣਾ ਪਾਸਵਰਡ ਦਾਖਲ ਕਰਨਾ ਲੋੜੀਂਦਾ ਬਣਾਕੇ ਇਸਨੂੰ ਹੋਰ ਸੁਰੱਖਿਅਤ ਬਣਾ ਸਕਦੇ ਹੋ। ਜਦੋਂ ਤੱਕ ਡੀਵਾਈਸ ਚਾਲੂ ਨਹੀਂ ਹੁੰਦਾ, ਇਹ ਅਲਾਰਮਾਂ ਸਹਿਤ, ਕਾਲਾਂ, ਸੁਨੇਹੇ ਜਾਂ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕਰ ਸਕਦਾ।\n\nਇਹ ਗੁਆਚੇ ਜਾਂ ਚੋਰੀ ਹੋਏ ਡੀਵਾਈਸਾਂ \'ਤੇ ਡਾਟਾ ਸੁਰੱਖਿਅਤ ਕਰਨ ਵਿੱਚ ਸਹਾਇਤਾ ਕਰਦਾ ਹੈ। ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਨੂੰ ਚਾਲੂ ਕਰਨ ਸਮੇਂ ਪਾਸਵਰਡ ਦਾਖਲ ਕਰਨਾ ਲੋੜੀਂਦਾ ਬਣਾਉਣਾ ਹੈ?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ਹਾਂ"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"ਨਹੀਂ"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ਹਾਂ"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"ਨਹੀਂ"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"ਕੀ ਪਿੰਨ ਲੋੜੀਂਦਾ ਹੈ?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ਕੀ ਪੈਟਰਨ ਦੀ ਲੋੜ ਹੈ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"ਕੀ ਪਾਸਵਰਡ ਦੀ ਲੋੜ ਹੈ?"</string>
@@ -3329,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"ਅਸਵੀਕਾਰ ਕਰੋ"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਚਾਰਜ ਕਰੋ"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"ਕੇਵਲ ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਚਾਰਜ ਕਰੋ"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"ਪਾਵਰ ਸਪਲਾਈ ਕਰੋ"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"ਕਨੈਕਟ ਕੀਤੇ ਡੀਵਾਈਸ ਨੂੰ ਚਾਰਜ ਕਰੋ। ਸਿਰਫ਼ USB ਚਾਰਜਿੰਗ ਦਾ ਸਮਰਥਨ ਕਰਨ ਵਾਲੇ ਡੀਵਾਈਸਾਂ \'ਤੇ ਕੰਮ ਕਰਦਾ ਹੈ।"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ਫ਼ਾਈਲਾਂ ਟ੍ਰਾਂਸਫਰ ਕਰੋ"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"ਫ਼ਾਈਲਾਂ ਦਾ ਕਿਸੇ ਹੋਰ ਡੀਵਾਈਸ \'ਤੇ ਤਬਾਦਲਾ ਕਰੋ"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ਫ਼ੋਟੋਆਂ ਟ੍ਰਾਂਸਫਰ ਕਰੋ (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"ਫ਼ੋਟੋਆਂ ਜਾਂ ਫ਼ਾਈਲਾਂ ਟ੍ਰਾਂਸਫਰ ਕਰੋ ਜੇਕਰ MTP ਸਮਰਥਿਤ ਨਹੀਂ ਹੈ (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"ਡੀਵਾਈਸ ਦੀ ਵਰਤੋਂ MIDI ਵਜੋਂ ਕਰੋ"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ਇਸ ਡੀਵਾਈਸ ਦੀ MIDI ਵਜੋਂ ਵਰਤੋਂ ਕਰੋ"</string>
- <string name="usb_use" msgid="3256040963685055320">"ਇਸ ਲਈ USB ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
+ <string name="usb_use" msgid="3372728031108932425">"ਇਸ ਲਈ USB ਦਾ ਉਪਯੋਗ ਕਰੋ"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ਇਸ ਡੀਵਾਈਸ ਨੂੰ ਚਾਰਜ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"ਪਾਵਰ ਸਪਲਾਈ ਕਰਨ ਲਈ"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ਫ਼ਾਈਲਾਂ ਦਾ ਤਬਾਦਲਾ ਕਰਨ ਲਈ"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ਫ਼ੋਟੋਆਂ ਦਾ ਤਬਾਦਲਾ ਕਰਨ ਲਈ (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"ਡੀਵਾਈਸ ਨੂੰ MIDI ਵਜੋਂ ਵਰਤਣਾ"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS ਪ੍ਰਤਿਬਿੰਬੀਕਰਨ"</string>
<string name="background_check_pref" msgid="7550258400138010979">"ਬੈਕਗ੍ਰਾਊਂਡ ਜਾਂਚ"</string>
<string name="background_check_title" msgid="4534254315824525593">"ਪੂਰੀ ਬੈਕਗ੍ਰਾਊਂਡ ਪਹੁੰਚ"</string>
@@ -3452,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"ਵਾਲਪੇਪਰ, ਸਲੀਪ ਮੋਡ, ਫੌਂਟ ਆਕਾਰ"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 ਮਿੰਟ ਅਕਿਰਿਆਸ਼ੀਲ ਰਹਿਣ ਤੋਂ ਬਾਅਦ ਸਲੀਪ ਮੋਡ ਵਿੱਚ ਜਾਓ"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> ਵਿੱਚੋਂ ਔਸਤ <xliff:g id="USED_MEMORY">%1$s</xliff:g> ਮੇਮੋਰੀ ਵਰਤੀ ਗਈ"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"ਵਰਤਮਾਨ ਵਰਤੋਂਕਾਰ: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> ਵਜੋਂ ਸਾਈਨ ਇਨ ਕੀਤਾ ਗਿਆ"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ਪੂਰਵ-ਨਿਰਧਾਰਤ ਹੈ"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ਚਾਲੂ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ਚਾਲੂ"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ਬੰਦ"</string>
<string name="backup_disabled" msgid="485189128759595412">"ਬੈਕ ਅੱਪ ਬੰਦ ਕੀਤਾ ਗਿਆ"</string>
- <string name="about_summary" msgid="924181828102801010">"ਅੱਪਡੇਟ ਕਰਕੇ Android <xliff:g id="VERSION">%1$s</xliff:g> ਕੀਤਾ ਗਿਆ"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"ਕਾਰਵਾਈ ਦੀ ਆਗਿਆ ਨਹੀਂ"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"ਤੁਸੀਂ ਵੌਲਿਊਮ ਨੂੰ ਬਦਲ ਨਹੀਂ ਸਕਦੇ"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"ਕਾਲ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS ਦੀ ਆਗਿਆ ਨਹੀਂ ਹੈ"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"ਕੈਮਰੇ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ਸਕ੍ਰੀਨਸ਼ਾਟ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"ਬੈਕਅੱਪ ਬੰਦ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ਇਹ ਕਾਰਵਾਈ ਅਯੋਗ ਹੈ। ਹੋਰ ਜਾਣਨ ਲਈ, ਆਪਣੀ ਸੰਸਥਾ ਦੇ ਪ੍ਰਸ਼ਾਸਕ ਨਾਲ ਸੰਪਰਕ ਕਰੋ।"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"ਹੋਰ ਵੇਰਵੇ"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"ਤੁਹਾਡਾ ਪ੍ਰਸ਼ਾਸਕ ਸੈਟਿੰਗਾਂ, ਇਜਾਜ਼ਤਾਂ, ਕਾਰਪੋਰੇਟ ਪਹੁੰਚ, ਨੈੱਟਵਰਕ ਸਰਗਰਮੀ, ਅਤੇ ਡੀਵਾਈਸ ਦੀ ਟਿਕਾਣਾ ਜਾਣਕਾਰੀ ਸਮੇਤ ਤੁਹਾਡੇ ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਨਾਲ ਸਬੰਧਿਤ ਐਪਾਂ ਅਤੇ ਡਾਟੇ ਦੀ ਨਿਗਰਾਨੀ ਅਤੇ ਪ੍ਰਬੰਧਨ ਕਰ ਸਕਦਾ ਹੈ।"</string>
@@ -3478,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"ਪੋਰਟੇਬਲ ਵਾਈ-ਫਾਈ ਹੌਟਸਪੌਟ <xliff:g id="ID_1">%1$s</xliff:g> ਸਰਗਰਮ ਹੈ, ਇਸ ਡੀਵਾਈਸ ਲਈ ਵਾਈ-ਫਾਈ ਬੰਦ ਹੈ।"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ਜਹਾਜ਼ ਮੋਡ ਚਾਲੂ ਹੈ"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"ਵਾਈ-ਫਾਈ, ਬਲੂਟੁੱਥ ਅਤੇ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਬੰਦ ਹਨ। ਤੁਸੀਂ ਫ਼ੋਨ ਕਾਲਾਂ ਨਹੀਂ ਕਰ ਸਕਦੇ ਜਾਂ ਇੰਟਰਨੈੱਟ ਨਾਲ ਕਨੈਕਟ ਨਹੀਂ ਹੋ ਸਕਦੇ।"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"ਪਰੇਸ਼ਾਨ ਨਾ ਕਰੋ ਚਾਲੂ ਹੈ (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"ਬੈਟਰੀ ਸੇਵਰ ਚਾਲੂ ਹੈ"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"ਕਾਰਗੁਜ਼ਾਰੀ ਘਟਾਈ ਗਈ ਹੈ। ਟਿਕਾਣਾ ਸੇਵਾਵਾਂ ਅਤੇ ਪਿਛੋਕੜ ਡਾਟਾ ਬੰਦ ਹਨ।"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"ਮੋਬਾਈਲ ਡਾਟਾ ਬੰਦ ਹੈ"</string>
@@ -3488,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਬੰਦ ਹੈ"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"ਤੁਹਾਡੀ ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਨਾਲ ਸਬੰਧਿਤ ਐਪਾਂ, ਬੈਕਗ੍ਰਾਊਂਡ ਸਮਕਾਲੀਕਰਨ, ਅਤੇ ਹੋਰ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਬੰਦ ਹਨ।"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"ਰਾਤ ਦੀ ਰੋਸ਼ਨੀ ਸਬੰਧੀ ਸਮਾਂ-ਸੂਚੀ ਸੈੱਟ ਕਰੋ"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ਤੁਹਾਨੂੰ ਸੌਣ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ ਸਕ੍ਰੀਨ ਨੂੰ ਪੀਲੀ-ਸੰਤਰੀ ਭਾਹ ਦਿਓ"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ਹਰ ਰਾਤ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਸਕ੍ਰੀਨ ਟਿੰਟ ਕਰੋ"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"ਰਾਤਰੀ ਲਾਈਟ ਚਾਲੂ ਹੈ"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"ਸਕ੍ਰੀਨ ਨੂੰ ਭੂਰੇ ਪੀਲੇ ਰੰਗ ਦੀ ਭਾਹ ਦਿੱਤੀ ਗਈ ਹੈ। ਇਸ ਨਾਲ ਤੁਹਾਨੂੰ ਸੌਣ ਵਿੱਚ ਮਦਦ ਮਿਲ ਸਕਦੀ ਹੈ।"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ਤੁਹਾਡੇ ਲਈ ਸੁਝਾਏ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"ਸੁਝਾਅ"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ਹੋਰ"</string>
@@ -3595,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ਕੋਈ ਨਹੀਂਂ"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ਰੈਕਿੰਗ ਔਬਜੈਕਟ ਗੁੰਮ ਹੈ।"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ਰੈਕਿੰਗ ਔਬਜੈਕਟ ਵਿੱਚ ਇਹ ਕੁੰਜੀ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ।"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"ਇੱਕ ਕੱਟਆਉਟ ਨਾਲ ਇੱਕ ਡਿਸਪਲੇ ਦੀ ਨਕਲ ਕਰੋ"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ਕੋਈ ਨਹੀਂ"</string>
<string name="special_access" msgid="3458780842491881155">"ਵਿਸ਼ੇਸ਼ ਐਪ ਪਹੁੰਚ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> ਐਪ ਗੈਰ-ਪਾਬੰਦੀਸ਼ੁਦਾ ਡਾਟੇ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੀ ਹੈ</item>
@@ -3617,10 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"ਇੱਕ ਤੋਂ ਜ਼ਿਆਦਾ ਡੀਵਾਈਸਾਂ ਨਾਲ ਕਨੈਕਟ ਹੈ"</string>
<string name="demo_mode" msgid="2798762752209330277">"ਸਿਸਟਮ UI ਡੈਮੋ ਮੋਡ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ਤਤਕਾਲ ਸੈਟਿੰਗਾਂ ਦੀਆਂ ਵਿਕਾਸਕਾਰ ਟਾਇਲਾਂ"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"ਵਿੰਡੋ ਟ੍ਰੇਸ"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ਸਤ੍ਹਾ ਟ੍ਰੇਸ"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"ਕਾਰਜ ਪ੍ਰੋਫਾਈਲ ਸੈਟਿੰਗਾਂ"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"ਸੰਪਰਕ ਖੋਜ"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"ਕਾਲ ਕਰਨ ਵਾਲਿਆਂ ਅਤੇ ਸੰਪਰਕਾਂ ਦੀ ਪਛਾਣ ਕਰਨ ਲਈ ਤੁਹਾਡੀ ਸੰਸਥਾ ਵਿੱੱਚ ਸੰਪਰਕ ਖੋਜਾਂ ਕਰਨ ਦਿਓ"</string>
@@ -3640,8 +3664,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"ਸਟੋਰੇਜ ਦੀ ਜਗ੍ਹਾ ਖਾਲੀ ਕਰਨ ਵਿੱਚ ਮਦਦ ਲਈ, ਸਟੋਰੇਜ ਪ੍ਰਬੰਧਕ ਤੁਹਾਡੇ ਡੀਵਾਈਸ ਤੋਂ ਬੈਕਅੱਪ ਲਈਆਂ ਗਈਆਂ ਫ਼ੋਟੋਆਂ ਅਤੇ ਵੀਡੀਓ ਹਟਾਉਂਦਾ ਹੈ।"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ਫੋਟੋਆਂ ਅਤੇ ਵੀਡੀਓ ਹਟਾਓ"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"ਸਟੋਰੇਜ ਪ੍ਰਬੰਧਕ"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"ਸਟੋਰੇਜ ਪ੍ਰਬੰਧਕ ਦੀ ਵਰਤੋਂ ਕਰੋ"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"ਸਵੈਚਾਲਿਤ"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"ਦਸਤੀ"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"ਹੁਣੇ ਜਗ੍ਹਾ ਖਾਲੀ ਕਰੋ"</string>
@@ -3652,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ਕੈਮਰੇ ਨੂੰ ਤੁਰੰਤ ਖੋਲ੍ਹਣ ਲਈ, ਪਾਵਰ ਬਟਨ ਨੂੰ ਦੋ ਵਾਰ ਦਬਾਓ। ਇਹ ਕਿਸੇ ਵੀ ਸਕ੍ਰੀਨ ਤੋਂ ਕੰਮ ਕਰਦਾ ਹੈ।"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"ਤੁਰੰਤ ਕੈਮਰਾ ਖੋਲ੍ਹੋ"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"ਕੈਮਰਾ ਖੋਲ੍ਹਣ ਲਈ ਪਾਵਰ ਬਟਨ ਨੂੰ ਦੋ ਵਾਰ ਦਬਾਓ"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ਕੈਮਰਾ ਫਲਿੱਪ ਕਰੋ"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"ਸੈਲਫ਼ੀਆਂ ਵਧੇਰੇ ਤੇਜ਼ੀ ਨਾਲ ਲਓ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"ਸੈਲਫ਼ੀ ਮੋਡ ਲਈ ਫ਼ੋਨ ਨੂੰ ਡਬਲ-ਟਵਿਸਟ ਕਰੋ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"ਸੈਲਫ਼ੀ ਮੋਡ ਲਈ ਟੈਬਲੈੱਟ ਨੂੰ ਡਬਲ-ਟਵਿਸਟ ਕਰੋ"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"ਸੈਲਫ਼ੀ ਮੋਡ ਲਈ ਡੀਵਾਈਸ ਨੂੰ ਡਬਲ-ਟਵਿਸਟ ਕਰੋ"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਫ਼ੋਨ \'ਤੇ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਟੈਬਲੈੱਟ \'ਤੇ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਡੀਵਾਈਸ \'ਤੇ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"ਸਮਾਂ, ਸੂਚਨਾ ਪ੍ਰਤੀਕਾਂ, ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ ਦੇਖਣ ਲਈ ਆਪਣੀ ਸਕ੍ਰੀਨ \'ਤੇ ਦੋ ਵਾਰ ਟੈਪ ਕਰੋ।"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"ਸਕ੍ਰੀਨ ਬੰਦ ਹੋਣ \'ਤੇ ਸੂਚਨਾਵਾਂ ਦੇਖੋ"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਫ਼ੋਨ ਨੂੰ ਚੁੱਕੋ"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਟੈਬਲੈੱਟ ਨੂੰ ਚੁੱਕੋ"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ ਡੀਵਾਈਸ ਨੂੰ ਚੁੱਕੋ"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"ਸਮਾਂ, ਸੂਚਨਾ ਪ੍ਰਤੀਕਾਂ, ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ ਦੇਖਣ ਲਈ ਆਪਣੇ ਫ਼ੋਨ ਨੂੰ ਚੁੱਕੋ।"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"ਸਮਾਂ, ਸੂਚਨਾ ਪ੍ਰਤੀਕਾਂ, ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ ਦੇਖਣ ਲਈ ਆਪਣੇ ਟੈਬਲੈੱਟ ਨੂੰ ਚੁੱਕੋ।"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"ਸਮਾਂ, ਸੂਚਨਾ ਪ੍ਰਤੀਕਾਂ, ਅਤੇ ਹੋਰ ਜਾਣਕਾਰੀ ਦੇਖਣ ਲਈ ਆਪਣੇ ਡੀਵਾਈਸ ਨੂੰ ਚੁੱਕੋ।"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"ਸਕ੍ਰੀਨ ਬੰਦ ਹੋਣ \'ਤੇ ਸੂਚਨਾਵਾਂ ਦੇਖੋ"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"ਸੂਚਨਾਵਾਂ ਲਈ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸਵਾਈਪ ਕਰੋ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਨੂੰ ਸਵਾਈਪ ਕਰੋ"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"ਆਪਣੀਆਂ ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ, ਆਪਣੇ ਫ਼ੋਨ ਦੇ ਪਿਛਲੇ ਪਾਸੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ \'ਤੇ ਹੇਠਾਂ ਨੂੰ ਸਵਾਈਪ ਕਰੋ।"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"ਆਪਣੀਆਂ ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ, ਆਪਣੇ ਟੈਬਲੈੱਟ ਦੇ ਪਿਛਲੇ ਪਾਸੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ \'ਤੇ ਹੇਠਾਂ ਨੂੰ ਸਵਾਈਪ ਕਰੋ।"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"ਆਪਣੀਆਂ ਸੂਚਨਾਵਾਂ ਦੇਖਣ ਲਈ, ਆਪਣੇ ਡੀਵਾਈਸ ਦੇ ਪਿਛਲੇ ਪਾਸੇ ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ \'ਤੇ ਹੇਠਾਂ ਨੂੰ ਸਵਾਈਪ ਕਰੋ।"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"ਸੂਚਨਾਵਾਂ ਤੇਜ਼ੀ ਨਾਲ ਦੇਖੋ"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"ਫਿੰਗਰਪ੍ਰਿੰਟ ਸੈਂਸਰ \'ਤੇ ਥੱਲੇ ਨੂੰ ਸਵਾਈਪ ਕਰੋ"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ਚਾਲੂ"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ਬੰਦ"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"ਬੂਟਲੋਡਰ ਪਹਿਲਾਂ ਹੀ ਅਣਲਾਕ ਕੀਤਾ ਹੋਇਆ ਹੈ"</string>
@@ -3809,8 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ਇਹ ਵਿਸ਼ੇਸ਼ਤਾ ਇਸ ਡੀਵਾਈਸ \'ਤੇ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"ਪੂਰੇ GNSS ਮਾਪ ਜ਼ਬਰਦਰਸਤੀ ਲਾਗੂ ਕਰੋ"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ਡਿਊਟੀ ਸਾਈਕਲਿੰਗ ਤੋਂ ਬਿਨਾਂ ਸਾਰੇ GNSS ਉਪਗ੍ਰਹਿ ਗਰੁੱਪਾਂ ਅਤੇ ਵਾਰਵਾਰਤਾਵਾਂ ਨੂੰ ਟਰੈਕ ਕਰੋ"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ਹਮੇਸ਼ਾਂ ਕ੍ਰੈਸ਼ ਵਿੰਡੋ ਦਿਖਾਓ"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"ਕਿਸੇ ਐਪ ਦੇ ਕ੍ਰੈਸ਼ ਹੋਣ \'ਤੇ ਹਰ ਵਾਰ ਵਿੰਡੋ ਦਿਖਾਓ"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ਡਾਇਰੈਕਟਰੀ ਪਹੁੰਚ"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ਡਾਇਰੈਕਟਰੀ ਪਹੁੰਚ"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"ਮੇਰਾ ਫ਼ੋਨ"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"ਮੇਰਾ ਟੈਬਲੈੱਟ"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"ਮੇਰਾ ਡੀਵਾਈਸ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"ਖਾਤਾ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"ਡੀਵਾਈਸ ਦਾ ਨਾਮ"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ਗੱਡੀ ਚਲਾਉਣ ਵੇਲੇ ਬਲੂਟੁੱਥ ਵਰਤੋ"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ਗੱਡੀ ਚਲਾਉਣ ਵੇਲੇ ਸਵੈਚਲਿਤ ਤੌਰ \'ਤੇ ਬਲੂਟੁੱਥ ਚਾਲੂ ਕਰੋ"</string>
</resources>
diff --git a/res/values-pl/arrays.xml b/res/values-pl/arrays.xml
index d72c6a1..ac2140a 100644
--- a/res/values-pl/arrays.xml
+++ b/res/values-pl/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Naciśnij przycisk"</item>
<item msgid="1624323946324499595">"Kod PIN z drugiego urządzenia"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 godz."</item>
<item msgid="5198271470953124739">"Brak limitu czasu"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (domyślnie)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Słaba"</item>
<item msgid="2042505933058940139">"Słaba"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Starsze niż 60 dni"</item>
<item msgid="5692284879054004388">"Starsze niż 90 dni"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Użyj preferencji sieci"</item>
+ <item msgid="8745603368609022803">"Traktuj jako sieć z pomiarem użycia danych"</item>
+ <item msgid="2266114985518865625">"Traktuj jako sieć bez pomiaru użycia danych"</item>
+ </string-array>
</resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 431e43f..acbecb4 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -172,6 +172,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Twoje urządzenia"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Sparuj nowe urządzenie"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Zezwól na parowanie urządzenia i łączenie się z urządzeniami Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Wyłącz dzwonek w kanale dźwiękowym"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Nie odtwarzaj niestandardowych dzwonków w zestawach słuchawkowych Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Obecnie podłączone"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Zapisane urządzenia"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Dodaj urządzenie"</string>
@@ -334,6 +336,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Ustaw datę"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Sortuj alfabetycznie"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Sortuj według strefy czasowej"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> zaczyna się: <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Zmiana czasu na letni"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Czas standardowy"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Strefy czasowe według regionu"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Strefy czasowe ze stałym przesunięciem"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Data"</string>
<string name="time_picker_title" msgid="483460752287255019">"Godzina"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Blokuj automatycznie"</string>
@@ -344,6 +351,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Wiadomość przy blokadzie"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Włącz widżety"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Wyłączone przez administratora"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Brak"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Np. Android Jurka."</string>
@@ -352,6 +363,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Informacje o profilu"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Konta"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Lokalizacja"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Użyj lokalizacji"</string>
<string name="account_settings_title" msgid="626177544686329806">"Konta"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Lokalizacja i blokady"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Szyfrowanie i dane logowania"</string>
@@ -465,9 +477,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Wpisane hasło jest prawidłowe, ale Twoje dane są uszkodzone. \n\nAby móc korzystać z tabletu, musisz zresetować go do ustawień fabrycznych. Następnie podczas konfigurowania urządzenia możesz przywrócić wszystkie dane, których kopię zapasową masz na koncie Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Wpisane hasło jest prawidłowe, ale Twoje dane są uszkodzone. \n\nAby móc korzystać z telefonu, musisz zresetować go do ustawień fabrycznych. Następnie podczas konfigurowania urządzenia możesz przywrócić wszystkie dane, których kopię zapasową masz na koncie Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Przełącz metodę wprowadzania"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Ustawianie blokady ekranu"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Zabezpiecz swoje urządzenie"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Użyj odcisku palca"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Odblokowywanie odciskiem palca"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Wybierz blokadę ekranu"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Wybierz blokadę pracy"</string>
@@ -713,6 +732,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Jako telefon w trybie głośnika"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Dla muzyki i multimediów"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Zapamiętaj ustawienia"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Maksymalna liczba podłączonych urządzeń audio Bluetooth"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Wybierz maksymalną liczbę podłączonych urządzeń audio Bluetooth"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Przesyłanie ekranu"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Wyświetlacz bezprzewodowy"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Brak urządzeń w pobliżu."</string>
@@ -727,6 +748,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Nazwa"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Zaloguj się"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mb/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> chce włączyć Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> chce wyłączyć Wi-Fi"</string>
@@ -744,6 +766,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Włącz Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Użyj Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Ustawienia Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Konfiguruj punkty dostępowe sieci bezprzewodowej i zarządzaj nimi"</string>
@@ -838,6 +861,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Hasło"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Pokaż hasło"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Wybierz pasmo punktu dostępu"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatycznie"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Pasmo 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Pasmo 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Ustawienia IP"</string>
@@ -855,7 +879,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (protokół WPS dostępny)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Podaj hasło do sieci"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Sieć Wi‑Fi operatora"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Połącz przez: <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Połącz przez: <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Aby zwiększyć dokładność lokalizacji (i w innych celach), <xliff:g id="APP_NAME">%1$s</xliff:g> chce włączyć skanowanie sieci – nawet gdy Wi-Fi jest wyłączone.\n\nZezwolić na to wszystkim aplikacjom, które chcą wykonywać skanowanie?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Aby wyłączyć tę opcję, w rozszerzonym menu otwórz Zaawansowane."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Zezwól"</string>
@@ -933,10 +957,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"Pasmo punktu dostępu"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Użyj hotspotu do utworzenia sieci Wi-Fi dla innych urządzeń. Hotspot zapewnia dostęp do internetu, korzystając z komórkowego połączenia do transmisji danych. Mogą zostać naliczone dodatkowe opłaty za mobilną transmisję danych."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Aplikacje mogą utworzyć hotspot, by udostępniać treści urządzeniom w pobliżu."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Automatycznie wyłącz hotspot"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Jeśli nie ma podłączonych urządzeń, hotspot Wi‑Fi wyłączy się"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Włączanie punktu dostępu…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Wyłączam punkt dostępu…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"Sieć <xliff:g id="NETWORK_SSID">%1$s</xliff:g> jest aktywna"</string>
@@ -947,7 +969,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Punkt dostępu Android"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Połączenia przez Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Włącz funkcję połączeń przez Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Używaj Wi-Fi zamiast sieci komórkowej"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Ustawienia połączeń"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Tryb połączeń przez Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferencje dotyczące roamingu"</string>
@@ -985,6 +1008,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Adres alarmowy"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Traktowany jako Twoja lokalizacja, gdy dzwonisz pod numer alarmowy przez Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Więcej informacji"</annotation>" o funkcjach prywatnego DNS"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Wyświetlacz"</string>
<string name="sound_settings" msgid="5534671337768745343">"Dźwięk"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Głośność"</string>
@@ -1201,6 +1225,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Typ sieci komórkowej"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informacje o operatorze"</string>
<string name="status_data_state" msgid="5503181397066522950">"Stan sieci komórkowej"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Stan usługi"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Siła sygnału"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1334,6 +1360,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Twój nowy nośnik (<xliff:g id="NAME">^1</xliff:g>) już działa. \n\nAby przenieść zdjęcia, pliki i dane aplikacji na to urządzenie, kliknij Ustawienia > Pamięć."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Przenieś aplikację <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Przeniesienie aplikacji <xliff:g id="APP">^1</xliff:g> i jej danych na ten nośnik (<xliff:g id="NAME_0">^2</xliff:g>) potrwa tylko chwilę. Do jego zakończenia nie będzie można korzystać z aplikacji. \n\nNie wyjmuj nośnika (<xliff:g id="NAME_1">^2</xliff:g>) w trakcie przenoszenia danych."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Aby przenieść dane, musisz odblokować użytkownika <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Przenoszę aplikację <xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Nie wyjmuj nośnika (<xliff:g id="NAME">^1</xliff:g>) w trakcie przenoszenia danych. \n\nAplikacja <xliff:g id="APP">^2</xliff:g> na tym urządzeniu będzie niedostępna, dopóki przenoszenie się nie zakończy."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Anuluj przenoszenie"</string>
@@ -1386,19 +1413,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Można zresetować sieć, aplikacje lub urządzenie"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Zresetuj Wi-Fi, sieć komórkową i Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Spowoduje to usunięcie wszystkich ustawień sieciowych, w tym:\n\n"<li>"Wi‑Fi"</li>\n<li>"mobilnej transmisji danych"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Zresetuj też karty eSIM"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Zresetuj ustawienia"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Zresetować wszystkie ustawienia sieciowe? Tego działania nie można cofnąć."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Zresetuj ustawienia"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Zresetować?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Resetowanie sieci nie jest dostępne dla tego użytkownika"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Ustawienia sieciowe zostały zresetowane"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Nie można zresetować kart eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Nie można zresetować kart eSIM z powodu błędu."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Wykasuj wszystkie dane (przywróć dane fabryczne)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Zostaną usunięte wszystkie dane z "<b>"wewnętrznej pamięci"</b>" tabletu, w tym:\n\n"<li>"Dane konta Google"</li>\n<li>"Dane i ustawienia systemu oraz aplikacji"</li>\n<li>"Pobrane aplikacje"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Zostaną usunięte wszystkie dane z "<b>"wewnętrznej pamięci"</b>" telefonu, w tym:\n\n"<li>"Dane konta Google"</li>\n<li>"Dane i ustawienia systemu oraz aplikacji"</li>\n<li>"Pobrane aplikacje"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"W tej chwili używasz kont:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Z tego urządzenia korzystają inni użytkownicy.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Muzyka"</li>\n<li>"Zdjęcia"</li>\n<li>"Inne dane użytkownika"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operatorzy na karcie eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"Karty eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Nie spowoduje to anulowania Twojego abonamentu w sieci komórkowej."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Aby usunąć muzykę, zdjęcia i inne dane użytkownika, należy wymazać "<b>"nośnik USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Aby usunąć muzykę, zdjęcia i inne dane użytkownika, należy wymazać "<b>"kartę SD"</b>"."</string>
@@ -1458,21 +1490,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Połącz się z internetem"</string>
<string name="location_title" msgid="1029961368397484576">"Moja lokalizacja"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Lokalizacja dla profilu do pracy"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Tryb lokalizacji"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Wysoka dokładność"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Oszczędzanie baterii"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Tylko urządzenie"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Obsługa lokalizacji wyłączona"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Uprawnienia na poziomie aplikacji"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Ostatnie prośby o lokalizację"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Żadne aplikacje nie poprosiły ostatnio o lokalizację"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Usługi lokalizacyjne"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Wysokie użycie baterii"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Niskie użycie baterii"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Tryb lokalizacji"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Ustalaj lokalizację przez GPS, Wi‑Fi, Bluetooth lub sieci komórkowe"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Ustalaj lokalizację przez Wi‑Fi, Bluetooth lub sieci komórkowe"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Określaj lokalizację, używając GPS-u i czujników urządzenia"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Skanowanie"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Skanowanie Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Popraw dokładność lokalizacji, zezwalając aplikacjom i usługom systemowym na ciągłe wykrywanie sieci Wi-Fi."</string>
@@ -1494,6 +1517,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Źródła lokalizacji"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Informacje o tablecie"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Informacje o telefonie"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"O urządzeniu"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"O emulowanym urządzeniu"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Wyświetl informacje prawne, stan, wersję oprogramowania"</string>
<string name="legal_information" msgid="5769301644270604095">"Informacje prawne"</string>
@@ -1601,6 +1625,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Wyświetl wszystkie aplikacje (<xliff:g id="COUNT">%1$d</xliff:g>)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tablet i dane osobiste są bardziej narażone na atak nieznanych aplikacji. Instalując aplikacje z tego źródła, przyjmujesz odpowiedzialność za wszelkie uszkodzenia telefonu bądź utratę danych, które mogą być spowodowane używaniem tych aplikacji."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefon i dane osobiste są bardziej narażone na atak nieznanych aplikacji. Instalując aplikacje z tego źródła, przyjmujesz odpowiedzialność za wszelkie uszkodzenia telefonu bądź utratę danych, które mogą być spowodowane używaniem tych aplikacji."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Urządzenie i dane osobiste są bardziej narażone na atak nieznanych aplikacji. Instalując aplikacje z tego źródła, przyjmujesz odpowiedzialność za wszelkie uszkodzenia urządzenia bądź przypadki utraty danych, które mogą być spowodowane używaniem tych aplikacji."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Ustawienia zaawansowane"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Włącz więcej opcji ustawień."</string>
<string name="application_info_label" msgid="5736524913065714880">"Informacje o aplikacji"</string>
@@ -1902,6 +1927,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Może wpłynąć na wydajność"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Kliknij, gdy wskaźnik się zatrzyma"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Opóźnienie przed kliknięciem"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Użyj usługi"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Użyj korekcji kolorów"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Użyj napisów"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"WŁ."</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"WYŁ."</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Pokaż w szybkich ustawieniach"</string>
@@ -2029,7 +2057,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Pozostało <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> do naładowania"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktywność w tle"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Z ograniczeniem"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Pozwól aplikacji działać w tle"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Nieużywana aplikacja może działać w tle"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Aktywność nieużywanej aplikacji w tle jest ograniczona"</string>
@@ -2072,14 +2100,33 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Wybudza urządzenie w tle"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Często prosi o informację o lokalizacji"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Liczba aplikacji działających nieprawidłowo: <xliff:g id="NUMBER">%1$d</xliff:g>"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Bateria jest w dobrym stanie"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikacje działają normalnie"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Niski poziom naładowania baterii"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Bateria nie zapewnia długiego czasu pracy"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Włącz inteligentny menedżer baterii"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Włącz optymalizację wykorzystania baterii"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Włącz tryb słabej baterii"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Wydłuż czas pracy na baterii"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Włączono tryb słabej baterii"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Niektóre funkcje są ograniczone"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefon intensywnie używany"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet intensywnie używany"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Urządzenie intensywnie używane"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Używanie przez około <xliff:g id="HOUR">%1$s</xliff:g> od ostatniego pełnego naładowania"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Telefon był intensywnie używany, co spowodowało znaczne rozładowanie baterii. Bateria działa prawidłowo.\n\n Telefon był używany przez około <xliff:g id="HOUR">%1$s</xliff:g> od ostatniego pełnego naładowania.\n\n Całkowite wykorzystanie:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Tablet był intensywnie używany, co spowodowało znaczne rozładowanie baterii. Bateria działa prawidłowo.\n\nTablet był używany przez około <xliff:g id="HOUR">%1$s</xliff:g> od ostatniego pełnego naładowania.\n\n Całkowite wykorzystanie:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Urządzenie było intensywnie używane, co spowodowało znaczne rozładowanie baterii. Bateria działa prawidłowo.\n\n Urządzenie było używane przez około <xliff:g id="HOUR">%1$s</xliff:g> od ostatniego pełnego naładowania.\n\n Całkowite wykorzystanie:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Inteligentny menedżer baterii"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Zarządzaj baterią automatycznie"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Automatycznie dostosowuj zużycie energii przez aplikacje w zależności od wykorzystania"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Aplikacje z ograniczeniami"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="few">%1$d aplikacje</item>
+ <item quantity="many">%1$d aplikacji</item>
+ <item quantity="other">%1$d aplikacji</item>
+ <item quantity="one">%1$d aplikacja</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Zatrzymać aplikację?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Twój telefon nie może normalnie zarządzać baterią, bo aplikacja <xliff:g id="APP">%1$s</xliff:g> nie pozwala na jego uśpienie.\n\nAby spróbować rozwiązać ten problem, możesz zatrzymać aplikację.\n\nJeśli to nie pomoże, wydłużenie czasu działania na baterii może wymagać odinstalowania aplikacji."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Twój tablet nie może normalnie zarządzać baterią, bo aplikacja <xliff:g id="APP">%1$s</xliff:g> nie pozwala na jego uśpienie.\n\nAby spróbować rozwiązać ten problem, możesz zatrzymać aplikację.\n\nJeśli to nie pomoże, wydłużenie czasu działania na baterii może wymagać odinstalowania aplikacji."</string>
@@ -2188,6 +2235,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Serwer mediów"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optymalizacja aplikacji"</string>
<string name="battery_saver" msgid="8172485772238572153">"Oszczędzanie baterii"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Użyj Oszczędzania baterii"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Włącz automatycznie"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nigdy"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"przy <xliff:g id="PERCENT">%1$s</xliff:g> baterii"</string>
@@ -2375,8 +2423,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"W tej chwili występują problemy z synchronizacją. Synchronizacja będzie możliwa wkrótce."</string>
<string name="add_account_label" msgid="7811707265834013767">"Dodaj konto"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Profil do pracy nie jest jeszcze dostępny"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Tryb pracy"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Włącz profil do pracy, w tym aplikacje, synchronizację w tle i inne funkcje"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Usuń profil do pracy"</string>
<string name="background_data" msgid="5779592891375473817">"Dane w tle"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikacje zawsze mogą synchronizować, wysyłać i odbierać dane."</string>
@@ -2408,6 +2460,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Usunąć konto?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Usunięcie tego konta spowoduje usunięcie z tabletu wszystkich powiązanych z nim wiadomości, kontaktów i innych danych."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Usunięcie tego konta spowoduje usunięcie z telefonu wszystkich powiązanych z nim wiadomości, kontaktów i innych danych."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Usunięcie tego konta spowoduje usunięcie z urządzenia wszystkich wiadomości, kontaktów i innych danych powiązanych z kontem."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Ta zmiana nie jest dozwolona przez administratora"</string>
<string name="provider_label" msgid="7724593781904508866">"Subskrypcje w trybie push"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2634,7 +2687,8 @@
<item quantity="other">Sprawdź certyfikaty</item>
<item quantity="one">Sprawdź certyfikat</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Użytkownicy"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Użytkownicy i profile"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Dodaj użytkownika lub profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Dodaj użytkownika"</string>
@@ -2826,7 +2880,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, przesyłanie"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikacje i powiadomienia"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Uprawnienia, aplikacje domyślne"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Użytkownicy i konta"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Domyślne aplikacje"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Języki, kopia zapasowa, aktualizacje"</string>
<string name="search_results_title" msgid="1796252422574886932">"Ustawienia"</string>
@@ -2857,7 +2912,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"nie przeszkadzać, przerywać, zakłócenie, zakłócać"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"w pobliżu, lokalizacja, historia, raportowanie"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"dokładność"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"konto"</string>
<string name="keywords_users" msgid="3434190133131387942">"ograniczenie, ogranicz, ograniczony"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"poprawianie tekstu, popraw, dźwięk, wibracje, automatycznie, język, gest, sugeruj, sugestia, motyw, obraźliwe, słowo, typ, emotikon, międzynarodowe"</string>
@@ -2926,6 +2980,7 @@
<item quantity="one">1 reguła</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Nie przeszkadzać"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Włącz tryb Nie przeszkadzać"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Działanie"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Zezwól na dźwięki i wibracje z"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Brak dźwięku"</string>
@@ -2935,8 +2990,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Włącz automatycznie"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Reguły automatyczne"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Reguła automatyczna"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Ustaw reguły Nie przeszkadzać"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Ogranicz dźwięki i wibracje o pewnych porach"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Użyj reguły"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Tylko priorytetowe"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Tylko alarmy"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Całkowita cisza"</string>
@@ -2944,12 +3002,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokuj wyświetlanie"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Zezwól na sygnały wizualne"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Dodaj"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"WŁĄCZ TERAZ"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"WYŁĄCZ TERAZ"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Włącz"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Włącz teraz"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Wyłącz teraz"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Tryb Nie przeszkadzać jest włączony do <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Tryb Nie przeszkadzać pozostanie włączony, dopóki go nie wyłączysz"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Tryb Nie przeszkadzać został włączony automatycznie przez regułę (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Tryb Nie przeszkadzać został włączony automatycznie przez aplikację (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Tylko priorytet"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Dźwięki w profilu do pracy"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Użyj dźwięków z profilu osobistego"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Dźwięki są takie same w profilu osobistym i do pracy"</string>
@@ -2965,6 +3026,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Dzwonki"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Inne dźwięki i wibracje"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Powiadomienia"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Ostatnio wysłane"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Zaawansowane"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Powiadomienia związane z pracą"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Zezwól na plakietki z powiadomieniami"</string>
@@ -2984,7 +3046,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Powiadomienia aplikacji"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Kategoria powiadomienia"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Grupa kategorii powiadomień"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Ważność"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Działanie"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Zezwól na dźwięk"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Nigdy nie pokazuj powiadomień"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Brak dźwięku i komunikatów wizualnych"</string>
@@ -3002,6 +3064,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Średnio ważne"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Bardzo ważne"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Pilne"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Pokaż powiadomienia"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asystent powiadomień"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Dostęp do powiadomień"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Dostęp do powiadomień profilu do pracy jest zablokowany"</string>
@@ -3034,9 +3097,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Dostęp do „Nie przeszkadzać”"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Żadne zainstalowane aplikacje nie prosiły o dostęp do funkcji „Nie przeszkadzać”."</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Wczytuję aplikacje..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android blokuje powiadomienia z tej aplikacji na urządzeniu"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android blokuje tę kategorię powiadomień na urządzeniu"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android blokuje tę grupę powiadomień na urządzeniu"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Android na żądanie blokuje powiadomienia z tej aplikacji na urządzeniu"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Android na żądanie blokuje tę kategorię powiadomień na urządzeniu"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Android na żądanie blokuje tę grupę powiadomień na urządzeniu"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kategorie"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Inne"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3191,6 +3254,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Jeśli korzystasz z funkcji odblokowywania odciskiem palca, dla większego bezpieczeństwa możesz wymagać podania hasła przed uruchomieniem urządzenia. Dopóki urządzenie nie zostanie uruchomione, nie może odbierać połączeń, wiadomości ani powiadomień (w tym alarmów).\n\nPomaga to chronić dane na zgubionych lub skradzionych urządzeniach. Wymagać hasła do uruchomienia urządzenia?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Tak"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Nie"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Tak"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Nie"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Wymagać kodu PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Wymagać wzoru?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Wymagać hasła?"</string>
@@ -3296,9 +3361,9 @@
<string name="system_default_app" msgid="3091113402349739037">"(Domyślna aplikacja systemu)"</string>
<string name="apps_storage" msgid="4353308027210435513">"Magazyn aplikacji"</string>
<string name="usage_access" msgid="5479504953931038165">"Dostęp do danych o użyciu"</string>
- <string name="permit_usage_access" msgid="4012876269445832300">"Zezwól na dostęp do użytkowania"</string>
+ <string name="permit_usage_access" msgid="4012876269445832300">"Zezwól na dostęp do danych o użyciu"</string>
<string name="app_usage_preference" msgid="7065701732733134991">"Ustawienia użycia aplikacji"</string>
- <string name="usage_access_description" msgid="1352111094596416795">"Dostęp do użytkowania umożliwia aplikacji śledzenie tego, jakich innych aplikacji i jak często używasz, oraz odczytywanie m.in. informacji o operatorze i ustawień językowych."</string>
+ <string name="usage_access_description" msgid="1352111094596416795">"Dostęp do danych o użyciu umożliwia aplikacji śledzenie tego, jakich innych aplikacji używasz i jak często, oraz odczytywanie m.in. informacji o operatorze i ustawień językowych."</string>
<string name="memory_settings_title" msgid="7490541005204254222">"Pamięć RAM"</string>
<string name="memory_details_title" msgid="8542565326053693320">"Informacje dotyczące pamięci"</string>
<string name="always_running" msgid="6042448320077429656">"Zawsze aktywna (<xliff:g id="PERCENTAGE">%s</xliff:g>)"</string>
@@ -3332,8 +3397,8 @@
<string name="high_power_off" msgid="3393904131961263278">"Ma włączoną optymalizację baterii"</string>
<string name="high_power_system" msgid="7362862974428225301">"Optymalizacja baterii niedostępna"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Nie stosuj optymalizacji baterii. Może powodować szybsze wyczerpywanie się baterii."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Pozwolić aplikacji cały czas działać w tle?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Zezwolenie aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g> na ciągłe działanie w tle może skrócić czas pracy na baterii. \n\nMożesz zmienić to ustawienie później, wybierając Ustawienia > Aplikacje i powiadomienia."</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Pozwolić aplikacji cały czas działać w tle?"</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Zezwolenie aplikacji <xliff:g id="APP_NAME">%1$s</xliff:g> na ciągłe działanie w tle może skrócić czas pracy na baterii. \n\nMożesz zmienić to ustawienie później, wybierając Ustawienia > Aplikacje i powiadomienia."</string>
<string name="battery_summary" msgid="8044042095190688654">"Użycie od ostatniego pełnego naładowania: <xliff:g id="PERCENTAGE">%1$s</xliff:g>"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Zarządzanie zasilaniem"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Brak użycia baterii od ostatniego pełnego naładowania"</string>
@@ -3479,7 +3544,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Bieżący użytkownik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Jesteś zalogowany jako <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"Domyślna aplikacja to <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"WŁ. / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"WYŁ."</string>
<string name="backup_disabled" msgid="485189128759595412">"Kopia zapasowa wyłączona"</string>
<string name="about_summary" msgid="924181828102801010">"Zaktualizowano do Androida <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3489,6 +3555,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Brak uprawnień do wysyłania SMS-ów"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Brak uprawnień do aparatu"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Brak uprawnień do tworzenia zrzutów ekranu"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Nie można wyłączyć kopii zapasowych"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"To działanie jest wyłączone. Aby dowiedzieć się więcej, skontaktuj się z administratorem organizacji."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Więcej szczegółów"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administrator może monitorować aplikacje i dane powiązane z Twoim profilem do pracy (w tym ustawienia, uprawnienia, firmowe uprawnienia dostępu, aktywność w sieci i informacje o lokalizacji urządzenia) oraz nimi zarządzać."</string>
@@ -3512,9 +3579,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profil do pracy jest wyłączony"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Aplikacje, synchronizacja w tle i inne funkcje związane z profilem do pracy są wyłączone."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Ustal harmonogram Podświetlenia nocnego"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Ociepla barwy, by ułatwić Ci zaśnięcie"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Podświetlenie nocne jest włączone"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ekran ma pomarańczowy odcień. Może to ułatwić zaśnięcie."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Proponowane dla Ciebie"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugestie"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Jeszcze <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3627,6 +3696,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"brak"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Brak obiektu rankingu."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Obiekt rankingu nie zawiera takiego klucza."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Emuluj wyświetlacz z wycięciem"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Brak"</string>
<string name="special_access" msgid="3458780842491881155">"Specjalny dostęp do aplikacji"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="few"><xliff:g id="COUNT">%d</xliff:g> aplikacje mogą używać nieograniczonej ilości danych</item>
@@ -3651,31 +3722,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Połączono z wieloma urządzeniami"</string>
<string name="demo_mode" msgid="2798762752209330277">"Tryb demonstracyjny interfejsu"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Kafelki szybkich ustawień dla programisty"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Chętnie Ci pomożemy"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Pomożemy Ci każdego dnia o dowolnej porze"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Pomożemy Ci każdego dnia o dowolnej porze"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Nasz zespół pomocy postara się rozwiązać każdy problem"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Nasz zespół pomocy jest dostępny codziennie przez całą dobę"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Przeszukaj pomoc lub skorzystaj z pomocy telefonicznej w tych godzinach (czasu lokalnego):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Pomoc telefoniczna jest dostępna w tych godzinach (czasu lokalnego)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Szukaj pomocy lub przeglądaj wskazówki i porady"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Kraj obsługi klienta:"</string>
- <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Wybierasz się za granicę?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Mogą zostać naliczone opłaty za połączenia międzynarodowe"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Telefon"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Czat"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Zobacz porady i wskazówki"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Przeszukaj pomoc i prześlij opinię"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontakt z pomocą"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Zaloguj się"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Nie możesz się zalogować?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Wyślij informacje o systemie"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Nie pokazuj ponownie"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Wysyłasz jako"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Dodaj konto"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Informacje o systemie"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Monitorowanie okien"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Śledzenie powierzchni"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Ustawienia profilu do pracy"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Wyszukiwanie kontaktów"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Zezwalaj na wyszukiwanie kontaktów do identyfikacji rozmówców i kontaktów przez Twoją organizację"</string>
@@ -3697,11 +3745,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekundy</item>
<item quantity="one">1 sekunda</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Czas oczekiwania: około <xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Zarządzanie pamięcią"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Aby pomóc zwolnić miejsce, Menedżer miejsca usuwa z urządzenia kopie zapasowe zdjęć i filmów."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Usuń zdjęcia i filmy"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Menedżer miejsca"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Użyj Menedżera miejsca"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatyczne"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Instrukcja"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Zwolnij miejsce teraz"</string>
@@ -3712,32 +3760,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Uruchamianie aparatu"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Aby szybko uruchomić aparat, naciśnij dwukrotnie przycisk zasilania. Możesz to zrobić na dowolnym ekranie."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Szybkie uruchamianie aparatu"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Naciśnij dwukrotnie przycisk zasilania, by otworzyć aparat"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Obrót aparatu"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Szybsze robienie selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Dwukrotnie obróć telefon, by uruchomić tryb selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Dwukrotnie obróć tablet, by uruchomić tryb selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Dwukrotnie obróć urządzenie, by uruchomić tryb selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Kliknij dwukrotnie, aby sprawdzić telefon"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Kliknij dwukrotnie, by sprawdzić tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Kliknij dwukrotnie, by sprawdzić urządzenie"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Aby sprawdzić godzinę, ikony powiadomień i inne informacje, kliknij ekran dwukrotnie."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Sprawdzaj powiadomienia przy wyłączonym ekranie"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Podnieś, by sprawdzić telefon"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Podnieś, by sprawdzić tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Podnieś, by sprawdzić urządzenie"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Aby sprawdzić godzinę, ikony powiadomień i inne informacje, podnieś telefon."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Aby sprawdzić godzinę, ikony powiadomień i inne informacje, podnieś tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Aby sprawdzić godzinę, ikony powiadomień i inne informacje, podnieś urządzenie."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Sprawdzaj powiadomienia przy wyłączonym ekranie"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Sprawdzanie powiadomień"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Przesuwanie po czytniku"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Aby sprawdzić powiadomienia, przesuń palcem w dół na czytniku linii papilarnych z tyłu telefonu."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Aby sprawdzić powiadomienia, przesuń palcem w dół na czytniku linii papilarnych z tyłu tabletu."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Aby sprawdzić powiadomienia, przesuń palcem w dół na czytniku linii papilarnych z tyłu urządzenia."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Szybkie wyświetlanie powiadomień"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Przesuń palcem w dół po czytniku linii papilarnych"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Włączone"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Wyłączone"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Program rozruchowy jest już odblokowany"</string>
@@ -3881,8 +3922,26 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Poznaj swój nowy tablet"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Poznaj swoje nowe urządzenie"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ta funkcja jest niedostępna na tym urządzeniu."</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Wymuś pełną procedurę pomiarów GNSS"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Śledź wszystkie konstelacje GNSS i częstotliwości bez uwzględniania współczynnika impulsu"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Zawsze pokazuj okno dialogowe z raportem o błędzie"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Pokazuj okno dialogowe przy każdym poważnym błędzie w aplikacji"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Dostęp do katalogu"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"dostęp do katalogu"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-pt-rBR/arrays.xml b/res/values-pt-rBR/arrays.xml
index 4fc4761..0368567 100644
--- a/res/values-pt-rBR/arrays.xml
+++ b/res/values-pt-rBR/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pressione o botão"</item>
<item msgid="1624323946324499595">"PIN do dispositivo pareado"</item>
@@ -400,7 +402,7 @@
</string-array>
<string-array name="captioning_font_size_selector_titles">
<item msgid="4800919809575254054">"Muito pequeno"</item>
- <item msgid="6781094565687692782">"Pequena"</item>
+ <item msgid="6781094565687692782">"Pequeno"</item>
<item msgid="8222123259497646551">"Normal"</item>
<item msgid="5813217276778560466">"Grande"</item>
<item msgid="9044232017390975191">"Muito grande"</item>
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 40005bb..6d9309d 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mensagem na tela de bloqueio"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Ativar widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Desativada pelo administrador"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Mostrar opção de bloqueio total"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Exibe a opção do botão liga/desliga que desativa a extensão de acesso e o desbloqueio com impressão digital."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Nenhuma"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"por exemplo, Android do João."</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"A senha digitada está correta, mas os dados estão corrompidos. \n\nPara retomar o uso do seu tablet, é necessário redefinir para as configurações originais. Quando você configurar seu tablet após a redefinição, poderá restaurar todos os dados que foram salvos em backup na sua Conta do Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"A senha digitada está correta, mas os dados estão corrompidos. \n\nPara retomar o uso do seu smartphone, é necessário redefinir para as configurações originais. Quando você configurar seu smartphone após a redefinição, poderá restaurar todos os dados que foram salvos em backup na sua Conta do Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Alterar o método de entrada"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Configurar o bloqueio de tela"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Proteger seu dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Usar impressão digital"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Defin. bloq. de tela por segurança"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Impede que outras pessoas usem seu tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Impede que outras pessoas usem seu dispositivo"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Impede que outras pessoas usem seu smartphone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Desbloqueio com impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Escolher bloqueio de tela"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Escolher bloq de trab."</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Proteger o tablet"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Senha"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostrar senha"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Selecionar banda de AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Configurações de IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Ponto de acesso Android"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Chamadas por Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Ativar chamada no Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Usar o Wi-Fi em vez da rede móvel"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Amplie a cobertura fazendo uma chamada com o Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferência de chamadas"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modo de chamada por Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferências de roaming"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo de rede móvel"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informações da operadora"</string>
<string name="status_data_state" msgid="5503181397066522950">"Estado da rede móvel"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Estado do serviço"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Potência do sinal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"A rede, os apps ou o dispositivo podem ser redefinidos"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Redefinir Wi-Fi, rede móvel e Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Isso redefinirá todas as configurações de rede, inclusive:\n\n"<li>"Wi‑Fi"</li>\n<li>"dados móveis"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Também redefinir eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Limpa todos os eSIMs no smartphone. Você precisará entrar em contato com a operadora para fazer o download deles novamente. Essa opção não cancela seu plano de serviços móveis."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Redefinir configurações"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Redefinir todas as configurações de rede? Não é possível desfazer esta ação."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Redefinir configurações"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Redefinir?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"A redefinição da rede não está disponível para esse usuário"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"As configurações de rede foram redefinidas"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Não é possível redefinir os eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Não é possível redefinir os eSIMs devido a um erro."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Limpar todos os dados (redefinição para configuração original)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Essa ação apagará todos os dados do "<b>"armazenamento interno"</b>" do seu tablet, incluindo:\n\n"<li>"Sua Conta do Google"</li>\n<li>"Configurações e dados do sistema e dos apps"</li>\n<li>"Apps transferidos"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Essa ação apagará todos os dados do "<b>"armazenamento interno"</b>" de seu smartphone, incluindo:\n\n"<li>"Sua Conta do Google"</li>\n<li>"Configurações e dados do sistema e dos apps"</li>\n<li>"Apps transferidos"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"No momento você está conectado às seguintes contas:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Há outros usuários presentes neste dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Músicas"</li>\n<li>"Fotos"</li>\n<li>"Outros dados do usuário"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operadoras no eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Essa ação não cancelará seu plano de serviços móveis."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Para limpar músicas, fotos e outros dados de usuário, o "<b>"armazenamento USB"</b>" precisa ser apagado."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Para limpar músicas, imagens e outros dados de usuário, o conteúdo do "<b>"cartão SD"</b>" precisa ser apagado."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Conecte-se à Internet"</string>
<string name="location_title" msgid="1029961368397484576">"Meu Local"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Local do perfil de trabalho"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modo"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisão"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Economia de bateria"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Somente no dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Local desativado"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Permissões no nível do app"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Solicitações recentes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nenhum app solicitou a localização recentemente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Serviços de localização"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Uso da bateria elevado"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Uso da bateria reduzido"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Modo de localização"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Usar GPS, Wi‑Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Usar Wi-Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Usar GPS e sensores do dispositivo para determinar a localização"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Verificação"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Verificação de Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Melhore a localização permitindo que apps e serviços do sistema detectem redes Wi-Fi a qualquer momento."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> restantes"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> até carregar"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Atividade em segundo plano"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restrito"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permitir que o app seja executado em segundo plano"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"O app pode ser executado em segundo plano quando não está em uso"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"A atividade em segundo plano do app é limitada quando ele não está em uso"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"A bateria não pode oferecer uma boa duração"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ativar o gerenciador de bateria inteligente"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Ative para otimizar o uso da bateria"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Ativar o modo Bateria fraca"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Aumentar a duração da bateria"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"O modo Bateria fraca está ativado"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Alguns recursos são limitados"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"O smartphone foi muito usado"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"O tablet foi muito usado"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"O dispositivo foi muito usado"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"A sincronização está enfrentando problemas no momento. Ela retornará em breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Adicionar conta"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Perfil de trabalho ainda indisponível"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modo trabalho"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permitir que o perfil de trabalho funcione, incluindo apps, sincronização em segundo plano e recursos relacionados"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Perfil de trabalho"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Gerenciados pela sua organização"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Os apps e as notificações estão desativados"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remover perfil de trabalho"</string>
<string name="background_data" msgid="5779592891375473817">"Dados de segundo plano"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplicat. sincronizam, enviam e recebem dados a qualquer hora"</string>
@@ -2624,7 +2624,7 @@
<item quantity="one">Verificar certificados</item>
<item quantity="other">Verificar certificados</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Usuários"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Vários usuários"</string>
<string name="user_list_title" msgid="7937158411137563543">"Usuários e perfis"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Adicionar usuário ou perfil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Adicionar usuário"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, transmissão"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps e notificações"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissões, apps padrão"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Usuários e contas"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Contas"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Apps padrão"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Idiomas, horário, backup e atualizações"</string>
<string name="search_results_title" msgid="1796252422574886932">"Configurações"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"não perturbe, interromper, interrupção"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"proximidades, local, histórico, relatório"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisão"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"conta"</string>
<string name="keywords_users" msgid="3434190133131387942">"restrição, restringir, restrito"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"correção de texto, corrigir, som, vibrar, automático, idioma, gesto, sugerir, sugestão, tema, ofensivo, palavra, digitar, emoticons, internacional"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"rede, estado da rede móvel, estado do serviço, intensidade do sinal, tipo de rede móvel, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"número de série, versão do hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nível do patch de segurança do android, versão da banda de base, versão do kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Exibição ambiente, exibição de tela de bloqueio"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurar etiqueta NFC Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Gravar"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Toque em uma marca para gravar…"</string>
@@ -2912,6 +2914,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> regras</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Não perturbe"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Ativar o \"Não perturbe\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permitir sons e vibrações de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Sem som"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Ativar automaticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Regras automáticas"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regra automática"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Definir regras de Não perturbe"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limitar som e vibrar eventualmente"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silenciar smartphone em horários específicos"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Definir regras do modo \"Não perturbe\""</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Usar regra"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Somente prioridade"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Somente alarmes"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permitir sinais visuais"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Adicionar"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Ativar"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Ativar agora"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desativar agora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"O modo \"Não perturbe\" fica ativado até <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"O modo \"Não perturbe\" ficará ativado até que você o desative"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"O modo \"Não perturbe\" foi ativado automaticamente por uma regra (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"O modo \"Não perturbe\" foi ativado automaticamente por um app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Somente prioridade"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil pessoal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são os mesmos para os perfis pessoal e de trabalho"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Toques"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Outros sons e vibrações"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificações"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Enviadas recentemente"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avançadas"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificações de trabalho"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permitir pontos de notificação"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Além de usar sua impressão digital para desbloquear o dispositivo, é possível protegê-lo ainda mais exigindo sua senha antes da inicialização. O dispositivo não receberá chamadas, mensagens ou notificações, incluindo alarmes, até que ele seja iniciado.\n\nIsso ajuda a proteger os dados em dispositivos perdidos ou roubados. Solicitar senha para iniciar o dispositivo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Sim"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Não"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Sim"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Não"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Exigir PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Exigir padrão?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Exigir senha?"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Recusar"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Carregar este dispositivo"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Somente carregar este dispositivo"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Fornecer energia"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Carregue o dispositivo conectado. Funciona apenas com dispositivos compatíveis com carregamento por USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transferir arquivos"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfere arquivos para outro dispositivo"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transferir fotos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferir fotos ou arquivos se o MTP não for compatível (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Usar o dispositivo como MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Usar este dispositivo como MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Usar USB para"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Usar USB para"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Para carregamento do dispositivo"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Fornecimento de energia"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferência de arquivos"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferência de fotos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Uso do dispositivo como MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Espelhamento de SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Verificação em segundo plano"</string>
<string name="background_check_title" msgid="4534254315824525593">"Acesso completo ao segundo plano"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Plano de fundo, suspensão, tamanho da fonte"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Entrar no modo de suspensão após 10 minutos de inatividade"</string>
<string name="memory_summary" msgid="8080825904671961872">"Média de <xliff:g id="USED_MEMORY">%1$s</xliff:g> de <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> de memória usados"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Usuário atual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Conectado como <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> é padrão"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ATIVADA / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ATIVADA"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DESATIVADA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup desativado"</string>
- <string name="about_summary" msgid="924181828102801010">"Atualizado para o Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Ação não permitida"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Não é possível alterar o volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Chamada não permitida"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS não permitido"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Câmera não permitida"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Captura de tela não permitida"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Não é possível desativar os backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Essa ação foi desativada. Para saber mais, entre em contato com o administrador. da sua organização."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Mais detalhes"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Seu administrador pode monitorar e gerenciar apps e dados associados ao seu perfil de trabalho, incluindo configurações, permissões, acesso corporativo, atividade de rede e informações de local do dispositivo."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"O ponto de acesso Wi-Fi portátil <xliff:g id="ID_1">%1$s</xliff:g> está ativado. O Wi-Fi desse dispositivo está desativado."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Modo avião ativado"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"O Wi-Fi, Bluetooth e a rede móvel estão desativados. Não é possível fazer chamadas telefônicas ou se conectar à Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\"Não perturbe\" está ativado (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Economia de bateria ativada"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"O desempenho está reduzido. Os Serviços de Localização e os dados em segundo plano estão desativados."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Dados móveis desativados"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Perfil de trabalho desativado"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Os apps, a sincronização em segundo plano e outros recursos relacionados com seu perfil de trabalho estão desativados."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Definir programação do Modo noturno"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tingir tela de âmbar p/ ajudar você a pegar no sono"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Tinge a tela automaticamente todas as noites"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"O modo noturno está ativado"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"A cor da tela muda para âmbar. Isso pode ajudar você a adormecer."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sugestões para você"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugestões"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Mais <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"nenhum"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"O objeto de classificação está ausente."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"O objeto de classificação não contém essa chave."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simular uma tela com corte"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Nenhum"</string>
<string name="special_access" msgid="3458780842491881155">"Acesso especial a apps"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> app pode usar dados irrestritos</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Modo de demonstração da IU do sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Blocos de desenvolvedor para configurações rápidas"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Rastros da janela"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Rastros da camada"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Rastros de superfície"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Configurações do perfil de trabalho"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Pesquisa de contatos"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permitir que sua organização pesquise contatos para identificar autores de chamadas e contatos"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Ir para a câmera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Para abrir a câmera rapidamente, pressione o botão liga/desliga duas vezes. O recurso funciona em qualquer tela."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Abrir a câmera rapidamente"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Pressione o botão liga/desliga duas vezes p/ abrir a câmera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Virar câmera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Tirar selfies com mais rapidez"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Girar duas vezes o smartphone para abrir o modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Girar duas vezes o tablet para abrir o modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Girar duas vezes o dispositivo para abrir o modo selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocar duas vezes na tela para verificar o smartphone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocar duas vezes na tela para verificar o tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocar duas vezes na tela para verificar o dispositivo"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Para verificar a hora, ícones de notificação e outras informações, toque duas vezes na tela."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Verificar as notificações quando a tela estiver desligada"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Levantar o smartphone para verificá-lo"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Levantar o tablet para verificá-lo"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Levantar o dispositivo para verificá-lo"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Para verificar a hora, ícones de notificação e outras informações, pegue o smartphone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Para verificar a hora, ícones de notificação e outras informações, pegue o tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Para verificar a hora, ícones de notificação e outras informações, pegue o dispositivo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Verificar as notificações quando a tela estiver desligada"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Usar impressão digital para ver as notificações"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Deslizar imp. digital"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do smartphone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Ver notificações rapidamente"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Deslize para baixo no sensor de impressão digital"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Ativado"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desativado"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"O bootloader já está desbloqueado"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Este recurso não está disponível neste dispositivo"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forçar medições completas de GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Rastrear todas as constelações e frequências do GNSS sem nenhum ciclo de trabalho"</string>
- <string name="storage_access" msgid="8905018810338984531">"Acesso ao armazenamento"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"armazenamento acesso diretório com foco"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Sempre mostrar a caixa de diálogo de falha"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostra a caixa de diálogo sempre que um app falha"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acesso ao diretório"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acesso ao diretório"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Meu smartphone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Meu tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Meu dispositivo"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Conta"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nome do dispositivo"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Usar Bluetooth ao dirigir"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Ativar Bluetooth automaticamente ao dirigir"</string>
</resources>
diff --git a/res/values-pt-rPT/arrays.xml b/res/values-pt-rPT/arrays.xml
index 1240ebe..219373a 100644
--- a/res/values-pt-rPT/arrays.xml
+++ b/res/values-pt-rPT/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Premir botão"</item>
<item msgid="1624323946324499595">"PIN do aparelho do elemento"</item>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index d469602..2cbd51d 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mensagem no ecrã de bloqueio"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Ativar widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Desativado pelo gestor"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Mostrar opção de bloqueio"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Apresentar a opção de botão ligar/desligar, que desativa o acesso alargado e o desbloqueio com impressão digital."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Nenhum"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Por exemplo, Android do João."</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"A palavra-passe introduzida está correta mas, infelizmente, os dados estão corrompidos. \n\nPara continuar a utilizar o tablet, é necessário efetuar uma reposição de fábrica. Quando configurar o tablet após a reposição, terá a oportunidade de restaurar quaisquer dados da cópia de segurança da sua Conta Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"A palavra-passe introduzida está correta mas, infelizmente, os dados estão corrompidos. \n\nPara continuar a utilizar o telemóvel, é necessário efetuar uma reposição de fábrica. Quando configurar o telemóvel após a reposição, terá a oportunidade de restaurar quaisquer dados da cópia de segurança da sua Conta Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Alternar o método de introdução"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Definir bloqueio de ecrã"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Proteger o dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Utilizar impressão digital"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desbloquear com a impressão digital"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Def. bloqueio de ecrã p/ segurança"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Impedir que outras pessoas utilizem o seu tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Impedir que outras pessoas utilizem o seu dispositivo"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Impedir que outras pessoas utilizem o seu telemóvel"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Desbloquear com impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Desbloquear com a impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Desbloquear com a impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Desbloquear com a impressão digital"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Escolher bloqueio de ecrã"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Escolher bloqueio de trabalho"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Proteger o seu tablet"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Palavra-passe"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostrar palavra-passe"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Selecionar banda do PA"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automático"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Definições de IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Chamadas Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Ativar Chamadas Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Utilizar Wi-Fi em vez da rede móvel"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Alargar a cobertura através de chamadas por Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferências das chamadas"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modo de chamada Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferência de roaming"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo de rede móvel"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informações do operador"</string>
<string name="status_data_state" msgid="5503181397066522950">"Estado da rede móvel"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Estado do serviço"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Intensidade do sinal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1221,8 +1229,8 @@
<string name="sd_mount_summary" product="default" msgid="4673411327373419641"></string>
<string name="sd_format" product="nosdcard" msgid="2148179271623099054">"Apagar armazenamento USB"</string>
<string name="sd_format" product="default" msgid="2576054280507119870">"Apagar cartão SD"</string>
- <string name="sd_format_summary" product="nosdcard" msgid="6331905044907914603">"Apaga todos os dados do armazenamento USB interno, como músicas e fotografias"</string>
- <string name="sd_format_summary" product="default" msgid="212703692181793109">"Apaga todos os dados do cartão SD, tais como música e fotografias"</string>
+ <string name="sd_format_summary" product="nosdcard" msgid="6331905044907914603">"Apaga todos os dados do armazenamento USB interno, como músicas e fotos"</string>
+ <string name="sd_format_summary" product="default" msgid="212703692181793109">"Apaga todos os dados do cartão SD, tais como música e fotos"</string>
<string name="memory_clear_cache_title" msgid="5423840272171286191">"Limpar dados em cache?"</string>
<string name="memory_clear_cache_message" msgid="4550262490807415948">"Irá limpar os dados em cache de todas as aplic."</string>
<string name="mtp_ptp_mode_summary" msgid="3710436114807789270">"A função MTP ou PTP está ativa"</string>
@@ -1257,7 +1265,7 @@
<string name="usb_mtp_title" msgid="3399663424394065964">"Aparelho multimédia (MTP)"</string>
<string name="usb_mtp_summary" msgid="4617321473211391236">"Permite transferir ficheiros multimédia no Windows ou através da Transferência de Ficheiros Android no Mac (consulte www.android.com/filetransfer)"</string>
<string name="usb_ptp_title" msgid="3852760810622389620">"Câmara (PTP)"</string>
- <string name="usb_ptp_summary" msgid="7406889433172511530">"Permite transferir fotografias utilizando o software da câmara e quaisquer ficheiros em computadores que não suportem MTP"</string>
+ <string name="usb_ptp_summary" msgid="7406889433172511530">"Permite transferir fotos utilizando o software da câmara e quaisquer ficheiros em computadores que não suportem MTP"</string>
<string name="usb_midi_title" msgid="3069990264258413994">"MIDI"</string>
<string name="usb_midi_summary" msgid="539169474810956358">"Deixe as aplicações compatíveis com MIDI serem executadas através de USB com software MIDI no seu computador."</string>
<string name="storage_other_users" msgid="808708845102611856">"Outros utilizadores"</string>
@@ -1372,26 +1380,30 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"É possível repor a rede, as aplicações ou o dispositivo."</string>
<string name="reset_network_title" msgid="6166025966016873843">"Repor Wi-Fi, dados móveis e Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Esta ação repõe todas as definições de rede, incluindo:\n\n"<li>"Wi‑Fi"</li>\n<li>"Dados móveis"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Repor também os eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Apagar todos os eSIMs no telemóvel. Terá de contactar o operador para transferir novamente os eSIMs. Esta operação não cancela o seu plano de serviços móveis."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Repor definições"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Pretende repor todas as definições de rede? Não é possível anular esta ação!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Repor definições"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Pretende repor?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"A reposição de rede não está disponível para este utilizador"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"As definições de rede foram repostas"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Não é possível repor os eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Não é possível repor os eSIMs devido a um erro."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Apagar todos os dados (reposição de dados de fábrica)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Serão apagados todos os dados do "<b>"armazenamento interno"</b>" do tablet, incluindo:\n\n"<li>"A Conta Google"</li>\n<li>"Dados e definições do sistema e da aplicação"</li>\n<li>"Aplicações transferidas"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Serão apagados todos os dados do "<b>"armazenamento interno"</b>" do telemóvel, incluindo:\n\n"<li>"A Conta Google"</li>\n<li>"Dados e definições do sistema e da aplicação"</li>\n<li>"Aplicações transferidas"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Actualmente, tem sessão iniciada nas seguintes contas:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Existem outros utilizadores presentes neste dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Música"</li>\n<li>"Fotografias"</li>\n<li>"Outros dados do utilizador"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operadores no eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Esta ação não cancela o seu plano de serviços móveis."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Para limpar músicas, imagens e outros dados do utilizador, é necessário apagar a "<b>"memória de armazenamento USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Para limpar também músicas, imagens e outros dados do utilizador, é necessário apagar o "<b>"cartão SD"</b>"."</string>
<string name="erase_external_storage" product="nosdcard" msgid="969364037450286809">"Apagar armazenamento USB"</string>
<string name="erase_external_storage" product="default" msgid="1397239046334307625">"Apagar cartão SD"</string>
- <string name="erase_external_storage_description" product="nosdcard" msgid="4728558173931599429">"Apagar todos os dados da memória de armazenamento USB interna, como músicas ou fotografias"</string>
- <string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"Apagar todos os dados do cartão SD, como músicas ou fotografias"</string>
+ <string name="erase_external_storage_description" product="nosdcard" msgid="4728558173931599429">"Apagar todos os dados da memória de armazenamento USB interna, como músicas ou fotos"</string>
+ <string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"Apagar todos os dados do cartão SD, como músicas ou fotos"</string>
<string name="erase_esim_storage" msgid="1886761972867390123">"Apagar eSIMs"</string>
<string name="erase_esim_storage_description" product="default" msgid="708691303677321598">"Apaga todos os eSIMs no telemóvel. Esta ação não cancela o seu plano de serviços móveis."</string>
<string name="erase_esim_storage_description" product="tablet" msgid="1780953956941209107">"Apaga todos os eSIMs no tablet. Esta ação não cancela o seu plano de serviços móveis."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Ligue-se à Internet"</string>
<string name="location_title" msgid="1029961368397484576">"A minha localização"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Local. para perfil de trabalho"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modo"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisão"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Poupança de bateria"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Apenas no dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Localização desativada"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Autoriz. de nível de aplicação"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Pedidos de localização recentes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nenhuma aplicação solicitou a localização recentemente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Serviços de localização"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Utilização de bateria elevada"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Utilização de bateria baixa"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Modo de localização"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Utilizar GPS, Wi-Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Utilizar Wi-Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Utilizar o GPS e os sensores do dispositivo para determinar a localização"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"A analisar"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Procurar por Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Melhorar a localização ao permitir que os serviços e as aplicações do sistema detetem redes Wi-Fi a qualquer momento."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> restante(s)"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> a cobrar"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Atividade em segundo plano"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restrita"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permitir que a aplicação seja executada em segundo plano"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"A aplicação pode ser executada em segundo plano quando não está a ser utilizada"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"A atividade em segundo plano da aplicação está limitada quando esta não está a ser utilizada"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Bateria com baixa autonomia"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ativar o gestor de bateria inteligente"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Ative para otimizar a utilização da bateria."</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Ativar Modo de bateria fraca"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Prolongar a autonomia da bateria"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"O Modo de bateria fraca está ativado"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Algumas funcionalidades são limitadas."</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telemóvel submetido a uma utilização intensa"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablet submetido a uma utilização intensa"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Dispositivo submetido a uma utilização intensa"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"A sincronização está atualmente com problemas e será retomada em breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Adicionar conta"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"O perfil de trabalho ainda não está disponível"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modo de trabalho"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permitir o funcionamento do perfil de trabalho, incluindo as aplicações, a sincronização em segundo plano e as funcionalidades relacionadas"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Perfil de trabalho"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Gerido pela sua entidade"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"As aplicações e as notificações estão desativadas"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remover perfil de trabalho"</string>
<string name="background_data" msgid="5779592891375473817">"Dados em segundo plano"</string>
<string name="background_data_summary" msgid="8328521479872763452">"As aplicações podem sincronizar, enviar e receber dados em qualquer altura"</string>
@@ -2624,7 +2624,7 @@
<item quantity="other">Verificar certificados</item>
<item quantity="one">Verificar certificado</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Utilizadores"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Vários utilizadores"</string>
<string name="user_list_title" msgid="7937158411137563543">"Utilizadores e perfis"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Adicionar utilizador ou perfil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Adicionar utilizador"</string>
@@ -2715,7 +2715,7 @@
<string name="help_label" msgid="6886837949306318591">"Ajuda e comentários"</string>
<string name="support_summary" msgid="2705726826263742491">"Artigos de ajuda, telefone e chat, como começar"</string>
<string name="user_account_title" msgid="1127193807312271167">"Conta para conteúdo"</string>
- <string name="user_picture_title" msgid="7297782792000291692">"ID da fotografia"</string>
+ <string name="user_picture_title" msgid="7297782792000291692">"ID da foto"</string>
<string name="extreme_threats_title" msgid="6549541803542968699">"Ameaças extremas"</string>
<string name="extreme_threats_summary" msgid="8777860706500920667">"Receber alertas de ameaças extremas à vida e à propriedade"</string>
<string name="severe_threats_title" msgid="8362676353803170963">"Ameaças graves"</string>
@@ -2757,7 +2757,7 @@
<string name="wizard_finish" msgid="3286109692700083252">"Terminar"</string>
<string name="user_image_take_photo" msgid="1280274310152803669">"Tirar foto"</string>
<string name="user_image_choose_photo" msgid="7940990613897477057">"Escolher foto da Galeria"</string>
- <string name="user_image_photo_selector" msgid="5492565707299454873">"Selecionar fotografia"</string>
+ <string name="user_image_photo_selector" msgid="5492565707299454873">"Selecionar foto"</string>
<string name="regulatory_info_text" msgid="5623087902354026557"></string>
<string name="sim_setup_wizard_title" msgid="1732682852692274928">"Cartões SIM"</string>
<string name="sim_settings_title" msgid="6822745211458959756">"Cartões SIM"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, transmissão"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplicações e notificações"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Autorizações, aplicações predefinidas"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Utilizadores e contas"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Contas"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplicações predefinidas"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Idiomas, hora, cópia de segurança, atualizações"</string>
<string name="search_results_title" msgid="1796252422574886932">"Definições"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"não, não incomodar, interromper, interrupção, pausa"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"relatórios, histórico, localização, próximo"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisão"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"conta"</string>
<string name="keywords_users" msgid="3434190133131387942">"restrição, restringir, restrito"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"correção de texto, corrigir, som, vibrar, idioma, automático, gesto, sugerir, sugestão, tema, palavra, ofensiva, escrever, emoji, internacional"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"rede, estado da rede móvel, estado do serviço, intensidade do sinal, tipo de rede móvel, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"número de série, versão de hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nível de patch de segurança android, versão da banda de base, versão do kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Visualização de ambiente, visualização de ecrã de bloqueio"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Config. etiqueta NFC p/ Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Escrever"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Toque numa etiqueta para escrever..."</string>
@@ -2912,6 +2914,7 @@
<item quantity="one">1 regra</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Não incomodar"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Ativar o modo Não incomodar"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permitir sons e vibrações de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Sem som"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Ativar automaticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Regras automáticas"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regra automática"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Defin. regras de Não incomodar"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limitar sons e vibrações em determinados momentos"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silenciar telemóvel se necessário"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Definir regras de Não incomodar"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Utilizar regra"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Apenas prioridade"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Apenas alarmes"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permitir sinais visuais"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Adicionar"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Ativar"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Ativar agora"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desativar agora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"O modo Não incomodar está ativado até à(s) <xliff:g id="FORMATTED_TIME">%s</xliff:g>."</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"O modo Não incomodar continua ativo até o desativar."</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"O modo Não incomodar foi ativado automaticamente por uma regra (<xliff:g id="RULE_NAME">%s</xliff:g>)."</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"O modo Não incomodar foi ativado automaticamente por uma aplicação (<xliff:g id="APP_NAME">%s</xliff:g>)."</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Apenas prioridade"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Util. sons do perfil pessoal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são iguais para os perfis de trabalho e pessoal"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Toques"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Outros sons e vibrações"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificações"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Enviadas recentemente"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avançadas"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificações de trabalho"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permitir pontos de notificação"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Além de utilizar a sua impressão digital para desbloquear o dispositivo, pode protegê-lo ainda mais ao solicitar a sua palavra-passe antes do arranque. Até que o dispositivo arranque, não pode receber chamadas, mensagens nem notificações, incluindo alarmes.\n\nIsto ajuda a proteger os dados do dispositivo em caso de perda ou de roubo. Pretende que a palavra-passe seja solicitada para o arranque do dispositivo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Sim"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Não"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Sim"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Não"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Solicitar PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Solicitar padrão?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Solicitar palavra-passe?"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Recusar"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Carregar este dispositivo"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Apenas carregar este dispositivo"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Fornecer energia"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Carregue o dispositivo ligado. Funciona apenas em dispositivos compatíveis com o carregamento por USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transferir ficheiros"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transferir ficheiros para outro dispositivo"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transferir fotos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferir fotos ou ficheiros se o MTP não for suportado (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Utilizar dispositivo como MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Utilizar este dispositivo como MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Utilizar USB para"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Utilizar USB para"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Carregar este dispositivo"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Fornecer energia"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferir ficheiros"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferir fotos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Utilizar o dispositivo como MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Espelhamento de SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Verificação em segundo plano"</string>
<string name="background_check_title" msgid="4534254315824525593">"Acesso completo em segundo plano"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Imagem de fundo, suspensão, tamanho da letra"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Suspender após 10 minutos de inatividade"</string>
<string name="memory_summary" msgid="8080825904671961872">"Média de <xliff:g id="USED_MEMORY">%1$s</xliff:g> de <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> de memória utilizado(s)"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Utilizador atual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Sessão iniciada como <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> é a aplicação predefinida"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ATIVADA/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ATIVADA"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DESATIVADA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Cópia de segurança desativada"</string>
- <string name="about_summary" msgid="924181828102801010">"Atualizado para o Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Ação não permitida"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Não é possível alterar o volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"As chamadas não são permitidas"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Os SMS não são permitidos"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"A câmara não é permitida"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"A captura de ecrã não é permitida"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Não é possível desativar cópias de segurança"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Esta ação está desativada. Para saber mais, contacte o gestor da sua entidade."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Mais detalhes"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"O gestor pode monitorizar e gerir as aplicações e os dados associados ao seu perfil de trabalho, incluindo as definições, as autorizações, o acesso empresarial, a atividade da rede e as informações de localização do dispositivo."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"A zona Wi-Fi portátil <xliff:g id="ID_1">%1$s</xliff:g> está ativa. O Wi-Fi deste dispositivo está desativado."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"O modo de avião está ativado"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"O Wi-Fi, o Bluetooth e a rede móvel estão desativados. Não é possível fazer chamadas telefónicas nem estabelecer ligação à Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Não incomodar está ativado (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Poupança de bateria ativada"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"O desempenho foi reduzido. Os serviços de localização e os dados de segundo plano estão desativados."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Dados móveis desativados"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Perfil de trabalho desativado"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"As aplicações, a sincronização em segundo plano e outras funcionalidades relacionadas com o seu perfil de trabalho estão desativadas."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Definir o horário da Luz noturna"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Dar uma tonalidade âmbar ao ecrã para o ajudar a adormecer"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Aplicar automaticamente uma tonalidade ao ecrã todas as noites"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"A Luz noturna está ativada"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"O ecrã ficou com uma tonalidade âmbar. Isto pode ajudá-lo a adormecer."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sugestões para si"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugestões"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Mais <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"nenhum"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"O objeto de classificação está em falta."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"O objeto de classificação não contém esta chave."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simular um ecrã com recorte"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Nenhuma"</string>
<string name="special_access" msgid="3458780842491881155">"Acesso especial a aplicações"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplicações podem utilizar dados sem restrições</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Modo de demonstração da IU do sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Mosaicos de definições rápidas do programador"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Window Trace"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Layer Trace"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface Trace"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Definições do perfil de trabalho"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Pesquisa de contactos"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permitir pesquisa de contactos por parte da sua entidade para identificar autores das chamadas e contactos"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Aceder à câmara"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Para abrir rapidamente a câmara, prima duas vezes o botão ligar/desligar. Funciona a partir de qualquer ecrã."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Abrir a câmara rapidamente"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Premir o botão ligar/desligar duas vezes para abrir a câmara"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Virar a câmara"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Tirar selfies mais rapidamente"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Rodar o telemóvel duas vezes para aceder ao modo de selfies"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Rodar o tablet duas vezes para aceder ao modo de selfies"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Rodar o dispositivo 2 vezes para aceder ao modo de selfies"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocar duas vezes para verificar o telemóvel"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocar duas vezes para verificar o tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocar duas vezes para verificar o dispositivo"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Para consultar a hora, os ícones das notificações e outras informações, toque duas vezes no ecrã."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Consultar as notificações com o ecrã desativado"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Levantar para verificar o telemóvel"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Levantar para verificar o tablet"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Levantar para verificar o dispositivo"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Para consultar a hora, os ícones das notificações e outras informações, pegue no telemóvel."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Para consultar a hora, os ícones das notificações e outras informações, pegue no tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Para consultar a hora, os ícones das notificações e outras informações, pegue no dispositivo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Consultar as notificações com o ecrã desativado"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Utilizar impressão digital para ver as notificações"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Desliz. rap. imp. digital"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Para verificar as suas notificações, deslize rapidamente para baixo no sensor de impressões digitais situado na parte posterior do telemóvel."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Para verificar as suas notificações, deslize rapidamente para baixo no sensor de impressões digitais situado na parte posterior do tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Para verificar as suas notificações, deslize rapidamente para baixo no sensor de impressões digitais situado na parte posterior do dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Ver as notificações rapidamente"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Deslizar rapid. p/ baixo no sensor de impressões digitais"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Ativado"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desativado"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"O carregador de arranque já está desbloqueado"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Esta funcionalidade não está disponível neste dispositivo."</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forçar medições de GNSS completas"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Monitorizar todas as constelações e frequências de GNSS sem ciclos"</string>
- <string name="storage_access" msgid="8905018810338984531">"Acesso ao armazenamento"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"acesso ao armazenamento diretório limitado"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Mostrar sempre a caixa de diálogo de falhas"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostrar a caixa de diálogo sempre que uma aplicação falhar"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acesso ao diretório"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acesso ao diretório"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"O meu telemóvel"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"O meu tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"O meu dispositivo"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Conta"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nome do dispositivo"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Usar o Bluetooth durante a condução"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Ativar automaticamente o Bluetooth durante a condução"</string>
</resources>
diff --git a/res/values-pt/arrays.xml b/res/values-pt/arrays.xml
index 4fc4761..0368567 100644
--- a/res/values-pt/arrays.xml
+++ b/res/values-pt/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pressione o botão"</item>
<item msgid="1624323946324499595">"PIN do dispositivo pareado"</item>
@@ -400,7 +402,7 @@
</string-array>
<string-array name="captioning_font_size_selector_titles">
<item msgid="4800919809575254054">"Muito pequeno"</item>
- <item msgid="6781094565687692782">"Pequena"</item>
+ <item msgid="6781094565687692782">"Pequeno"</item>
<item msgid="8222123259497646551">"Normal"</item>
<item msgid="5813217276778560466">"Grande"</item>
<item msgid="9044232017390975191">"Muito grande"</item>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 40005bb..6d9309d 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mensagem na tela de bloqueio"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Ativar widgets"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Desativada pelo administrador"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Mostrar opção de bloqueio total"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Exibe a opção do botão liga/desliga que desativa a extensão de acesso e o desbloqueio com impressão digital."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Nenhuma"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"por exemplo, Android do João."</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"A senha digitada está correta, mas os dados estão corrompidos. \n\nPara retomar o uso do seu tablet, é necessário redefinir para as configurações originais. Quando você configurar seu tablet após a redefinição, poderá restaurar todos os dados que foram salvos em backup na sua Conta do Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"A senha digitada está correta, mas os dados estão corrompidos. \n\nPara retomar o uso do seu smartphone, é necessário redefinir para as configurações originais. Quando você configurar seu smartphone após a redefinição, poderá restaurar todos os dados que foram salvos em backup na sua Conta do Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Alterar o método de entrada"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Configurar o bloqueio de tela"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Proteger seu dispositivo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Usar impressão digital"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Defin. bloq. de tela por segurança"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Impede que outras pessoas usem seu tablet"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Impede que outras pessoas usem seu dispositivo"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Impede que outras pessoas usem seu smartphone"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Desbloqueio com impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Desbloquear com sua impressão digital"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Escolher bloqueio de tela"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Escolher bloq de trab."</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Proteger o tablet"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Senha"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Mostrar senha"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Selecionar banda de AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Auto"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Configurações de IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Ponto de acesso Android"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Chamadas por Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Ativar chamada no Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Usar o Wi-Fi em vez da rede móvel"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Amplie a cobertura fazendo uma chamada com o Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferência de chamadas"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modo de chamada por Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferências de roaming"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tipo de rede móvel"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informações da operadora"</string>
<string name="status_data_state" msgid="5503181397066522950">"Estado da rede móvel"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Estado do serviço"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Potência do sinal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"A rede, os apps ou o dispositivo podem ser redefinidos"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Redefinir Wi-Fi, rede móvel e Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Isso redefinirá todas as configurações de rede, inclusive:\n\n"<li>"Wi‑Fi"</li>\n<li>"dados móveis"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Também redefinir eSIMs"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Limpa todos os eSIMs no smartphone. Você precisará entrar em contato com a operadora para fazer o download deles novamente. Essa opção não cancela seu plano de serviços móveis."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Redefinir configurações"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Redefinir todas as configurações de rede? Não é possível desfazer esta ação."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Redefinir configurações"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Redefinir?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"A redefinição da rede não está disponível para esse usuário"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"As configurações de rede foram redefinidas"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Não é possível redefinir os eSIMs"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Não é possível redefinir os eSIMs devido a um erro."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Limpar todos os dados (redefinição para configuração original)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Essa ação apagará todos os dados do "<b>"armazenamento interno"</b>" do seu tablet, incluindo:\n\n"<li>"Sua Conta do Google"</li>\n<li>"Configurações e dados do sistema e dos apps"</li>\n<li>"Apps transferidos"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Essa ação apagará todos os dados do "<b>"armazenamento interno"</b>" de seu smartphone, incluindo:\n\n"<li>"Sua Conta do Google"</li>\n<li>"Configurações e dados do sistema e dos apps"</li>\n<li>"Apps transferidos"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"No momento você está conectado às seguintes contas:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Há outros usuários presentes neste dispositivo.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Músicas"</li>\n<li>"Fotos"</li>\n<li>"Outros dados do usuário"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operadoras no eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Essa ação não cancelará seu plano de serviços móveis."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Para limpar músicas, fotos e outros dados de usuário, o "<b>"armazenamento USB"</b>" precisa ser apagado."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Para limpar músicas, imagens e outros dados de usuário, o conteúdo do "<b>"cartão SD"</b>" precisa ser apagado."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Conecte-se à Internet"</string>
<string name="location_title" msgid="1029961368397484576">"Meu Local"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Local do perfil de trabalho"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modo"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Alta precisão"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Economia de bateria"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Somente no dispositivo"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Local desativado"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Permissões no nível do app"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Solicitações recentes"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nenhum app solicitou a localização recentemente"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Serviços de localização"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Uso da bateria elevado"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Uso da bateria reduzido"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Modo de localização"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Usar GPS, Wi‑Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Usar Wi-Fi, Bluetooth ou redes móveis para determinar a localização"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Usar GPS e sensores do dispositivo para determinar a localização"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Verificação"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Verificação de Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Melhore a localização permitindo que apps e serviços do sistema detectem redes Wi-Fi a qualquer momento."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> restantes"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> até carregar"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Atividade em segundo plano"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restrito"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permitir que o app seja executado em segundo plano"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"O app pode ser executado em segundo plano quando não está em uso"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"A atividade em segundo plano do app é limitada quando ele não está em uso"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"A bateria não pode oferecer uma boa duração"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Ativar o gerenciador de bateria inteligente"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Ative para otimizar o uso da bateria"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Ativar o modo Bateria fraca"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Aumentar a duração da bateria"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"O modo Bateria fraca está ativado"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Alguns recursos são limitados"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"O smartphone foi muito usado"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"O tablet foi muito usado"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"O dispositivo foi muito usado"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"A sincronização está enfrentando problemas no momento. Ela retornará em breve."</string>
<string name="add_account_label" msgid="7811707265834013767">"Adicionar conta"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Perfil de trabalho ainda indisponível"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modo trabalho"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permitir que o perfil de trabalho funcione, incluindo apps, sincronização em segundo plano e recursos relacionados"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Perfil de trabalho"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Gerenciados pela sua organização"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Os apps e as notificações estão desativados"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Remover perfil de trabalho"</string>
<string name="background_data" msgid="5779592891375473817">"Dados de segundo plano"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplicat. sincronizam, enviam e recebem dados a qualquer hora"</string>
@@ -2624,7 +2624,7 @@
<item quantity="one">Verificar certificados</item>
<item quantity="other">Verificar certificados</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Usuários"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Vários usuários"</string>
<string name="user_list_title" msgid="7937158411137563543">"Usuários e perfis"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Adicionar usuário ou perfil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Adicionar usuário"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, transmissão"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Apps e notificações"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permissões, apps padrão"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Usuários e contas"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Contas"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Apps padrão"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Idiomas, horário, backup e atualizações"</string>
<string name="search_results_title" msgid="1796252422574886932">"Configurações"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"não perturbe, interromper, interrupção"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"proximidades, local, histórico, relatório"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precisão"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"conta"</string>
<string name="keywords_users" msgid="3434190133131387942">"restrição, restringir, restrito"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"correção de texto, corrigir, som, vibrar, automático, idioma, gesto, sugerir, sugestão, tema, ofensivo, palavra, digitar, emoticons, internacional"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"rede, estado da rede móvel, estado do serviço, intensidade do sinal, tipo de rede móvel, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"número de série, versão do hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nível do patch de segurança do android, versão da banda de base, versão do kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Exibição ambiente, exibição de tela de bloqueio"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurar etiqueta NFC Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Gravar"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Toque em uma marca para gravar…"</string>
@@ -2912,6 +2914,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> regras</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Não perturbe"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Ativar o \"Não perturbe\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportamento"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permitir sons e vibrações de"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Sem som"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Ativar automaticamente"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Regras automáticas"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regra automática"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Definir regras de Não perturbe"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limitar som e vibrar eventualmente"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Silenciar smartphone em horários específicos"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Definir regras do modo \"Não perturbe\""</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Usar regra"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Somente prioridade"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Somente alarmes"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Silêncio total"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Bloquear perturbações visuais"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permitir sinais visuais"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Adicionar"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Ativar"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Ativar agora"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Desativar agora"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"O modo \"Não perturbe\" fica ativado até <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"O modo \"Não perturbe\" ficará ativado até que você o desative"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"O modo \"Não perturbe\" foi ativado automaticamente por uma regra (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"O modo \"Não perturbe\" foi ativado automaticamente por um app (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Somente prioridade"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sons do perfil de trabalho"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Usar sons do perfil pessoal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Os sons são os mesmos para os perfis pessoal e de trabalho"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Toques"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Outros sons e vibrações"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificações"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Enviadas recentemente"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avançadas"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificações de trabalho"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permitir pontos de notificação"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Além de usar sua impressão digital para desbloquear o dispositivo, é possível protegê-lo ainda mais exigindo sua senha antes da inicialização. O dispositivo não receberá chamadas, mensagens ou notificações, incluindo alarmes, até que ele seja iniciado.\n\nIsso ajuda a proteger os dados em dispositivos perdidos ou roubados. Solicitar senha para iniciar o dispositivo?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Sim"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Não"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Sim"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Não"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Exigir PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Exigir padrão?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Exigir senha?"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Recusar"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Carregar este dispositivo"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Somente carregar este dispositivo"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Fornecer energia"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Carregue o dispositivo conectado. Funciona apenas com dispositivos compatíveis com carregamento por USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transferir arquivos"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transfere arquivos para outro dispositivo"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transferir fotos (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferir fotos ou arquivos se o MTP não for compatível (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Usar o dispositivo como MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Usar este dispositivo como MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Usar USB para"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Usar USB para"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Para carregamento do dispositivo"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Fornecimento de energia"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transferência de arquivos"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferência de fotos (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Uso do dispositivo como MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Espelhamento de SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Verificação em segundo plano"</string>
<string name="background_check_title" msgid="4534254315824525593">"Acesso completo ao segundo plano"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Plano de fundo, suspensão, tamanho da fonte"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Entrar no modo de suspensão após 10 minutos de inatividade"</string>
<string name="memory_summary" msgid="8080825904671961872">"Média de <xliff:g id="USED_MEMORY">%1$s</xliff:g> de <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> de memória usados"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Usuário atual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Conectado como <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> é padrão"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ATIVADA / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ATIVADA"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DESATIVADA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backup desativado"</string>
- <string name="about_summary" msgid="924181828102801010">"Atualizado para o Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Ação não permitida"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Não é possível alterar o volume"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Chamada não permitida"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS não permitido"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Câmera não permitida"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Captura de tela não permitida"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Não é possível desativar os backups"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Essa ação foi desativada. Para saber mais, entre em contato com o administrador. da sua organização."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Mais detalhes"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Seu administrador pode monitorar e gerenciar apps e dados associados ao seu perfil de trabalho, incluindo configurações, permissões, acesso corporativo, atividade de rede e informações de local do dispositivo."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"O ponto de acesso Wi-Fi portátil <xliff:g id="ID_1">%1$s</xliff:g> está ativado. O Wi-Fi desse dispositivo está desativado."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Modo avião ativado"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"O Wi-Fi, Bluetooth e a rede móvel estão desativados. Não é possível fazer chamadas telefônicas ou se conectar à Internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\"Não perturbe\" está ativado (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Economia de bateria ativada"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"O desempenho está reduzido. Os Serviços de Localização e os dados em segundo plano estão desativados."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Dados móveis desativados"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Perfil de trabalho desativado"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Os apps, a sincronização em segundo plano e outros recursos relacionados com seu perfil de trabalho estão desativados."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Definir programação do Modo noturno"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Tingir tela de âmbar p/ ajudar você a pegar no sono"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Tinge a tela automaticamente todas as noites"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"O modo noturno está ativado"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"A cor da tela muda para âmbar. Isso pode ajudar você a adormecer."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sugestões para você"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugestões"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Mais <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"nenhum"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"O objeto de classificação está ausente."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"O objeto de classificação não contém essa chave."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simular uma tela com corte"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Nenhum"</string>
<string name="special_access" msgid="3458780842491881155">"Acesso especial a apps"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> app pode usar dados irrestritos</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Modo de demonstração da IU do sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Blocos de desenvolvedor para configurações rápidas"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Rastros da janela"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Rastros da camada"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Rastros de superfície"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Configurações do perfil de trabalho"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Pesquisa de contatos"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permitir que sua organização pesquise contatos para identificar autores de chamadas e contatos"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Ir para a câmera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Para abrir a câmera rapidamente, pressione o botão liga/desliga duas vezes. O recurso funciona em qualquer tela."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Abrir a câmera rapidamente"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Pressione o botão liga/desliga duas vezes p/ abrir a câmera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Virar câmera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Tirar selfies com mais rapidez"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Girar duas vezes o smartphone para abrir o modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Girar duas vezes o tablet para abrir o modo selfie"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Girar duas vezes o dispositivo para abrir o modo selfie"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Tocar duas vezes na tela para verificar o smartphone"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Tocar duas vezes na tela para verificar o tablet"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Tocar duas vezes na tela para verificar o dispositivo"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Para verificar a hora, ícones de notificação e outras informações, toque duas vezes na tela."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Verificar as notificações quando a tela estiver desligada"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Levantar o smartphone para verificá-lo"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Levantar o tablet para verificá-lo"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Levantar o dispositivo para verificá-lo"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Para verificar a hora, ícones de notificação e outras informações, pegue o smartphone."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Para verificar a hora, ícones de notificação e outras informações, pegue o tablet."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Para verificar a hora, ícones de notificação e outras informações, pegue o dispositivo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Verificar as notificações quando a tela estiver desligada"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Usar impressão digital para ver as notificações"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Deslizar imp. digital"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do smartphone."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do tablet."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Para ver suas notificações, deslize o dedo indicador para baixo no sensor de impressão digital localizado na parte traseira do dispositivo."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Ver notificações rapidamente"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Deslize para baixo no sensor de impressão digital"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Ativado"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Desativado"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"O bootloader já está desbloqueado"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Este recurso não está disponível neste dispositivo"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forçar medições completas de GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Rastrear todas as constelações e frequências do GNSS sem nenhum ciclo de trabalho"</string>
- <string name="storage_access" msgid="8905018810338984531">"Acesso ao armazenamento"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"armazenamento acesso diretório com foco"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Sempre mostrar a caixa de diálogo de falha"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Mostra a caixa de diálogo sempre que um app falha"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acesso ao diretório"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acesso ao diretório"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Meu smartphone"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Meu tablet"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Meu dispositivo"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Conta"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Nome do dispositivo"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Usar Bluetooth ao dirigir"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Ativar Bluetooth automaticamente ao dirigir"</string>
</resources>
diff --git a/res/values-ro/arrays.xml b/res/values-ro/arrays.xml
index 8f3d63a..9ab2548 100644
--- a/res/values-ro/arrays.xml
+++ b/res/values-ro/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Buton WPS"</item>
<item msgid="1624323946324499595">"Codul PIN de la disp. pereche"</item>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 372d75b..c31c1a3 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -349,6 +349,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mesaj pe ecranul de blocare"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Activați widgeturi"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Dezactivat de administrator"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Afișați opțiunea de blocare"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Afișați opțiunea butonului de pornire care oprește accesul extins și deblocarea cu amprentă."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Niciunul"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"De ex., dispozitivul Android al lui Andrei."</string>
@@ -470,10 +472,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Parola pe care ați introdus-o este corectă, dar, din păcate, datele sunt deteriorate. \n\nPentru a relua utilizarea tabletei, trebuie să reveniți la setările din fabrică. Când vă configurați tableta după resetare, veți putea să restabiliți toate datele care au backup în Contul Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Parola pe care ați introdus-o este corectă, dar, din păcate, datele sunt deteriorate. \n\nPentru a relua utilizarea telefonului, trebuie să reveniți la setările din fabrică. Când vă configurați telefonul după resetare, veți putea să restabiliți toate datele care au backup în Contul Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Comutați metoda de introducere"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Configurați blocarea ecranului"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Protejați dispozitivul"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Folosiți amprenta"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Deblocați folosind amprenta"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Setați blocarea ecranului"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Împiedicați alte persoane să vă folosească tableta"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Împiedicați alte persoane să vă folosească dispozitivul"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Împiedicați alte persoane să vă folosească telefonul"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Deblocați cu amprenta"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Deblocați folosind amprenta"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Deblocați folosind amprenta"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Deblocați folosind amprenta"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Alegeți blocarea ecranului"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Alegeți blocarea pentru serviciu"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Protejați tableta"</string>
@@ -839,6 +845,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Parolă"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Afișați parola"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Selectați banda AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automat"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Banda de 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Banda de 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Setări IP"</string>
@@ -945,7 +952,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Apelare prin Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Activați Apelarea prin Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Folosiți rețeaua Wi-Fi în loc de rețeaua mobilă"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Extindeți acoperirea apelând prin Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferință pentru apelare"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modul Apelare prin Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferințe privind roamingul"</string>
@@ -1199,6 +1206,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Tip de rețea mobilă"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informații operator"</string>
<string name="status_data_state" msgid="5503181397066522950">"Starea rețelei mobile"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Starea acoperirii"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Putere semnal"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1385,19 +1393,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Rețeaua, aplicațiile sau dispozitivul pot fi resetate"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Resetați conexiunea Wi-Fi, conexiunea mobilă și prin Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Astfel, toate setările pentru rețea vor fi reinițializate, inclusiv:\n\n"<li>"Wi‑Fi,"</li>\n<li>"date mobile,"</li>\n<li>"Bluetooth."</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"De asemenea, resetați cardurile eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Ștergeți toate cardurile eSIM de pe telefon. Va trebui să contactați operatorul pentru a descărca din nou cardurile eSIM. Prin această acțiune nu vă veți anula planul de servicii mobile."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Resetați setările"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Reinițializați toate setările pentru rețea? Nu puteți anula această acțiune!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Resetați setările"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Resetați?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Resetarea rețelei nu este disponibilă pentru acest utilizator"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Setările pentru rețea au fost reinițializate"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Cardurile eSIM nu se pot reseta"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Cardurile eSIM nu pot fi resetate din cauza unei erori."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Ștergeți toate datele (reveniți la setările din fabrică)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Această acțiune va șterge toate datele din "<b>"stocarea internă"</b>" a tabletei dvs., inclusiv:\n\n"<li>"Contul dvs. Google;"</li>\n<li>"datele și setările sistemului și ale aplicațiilor;"</li>\n<li>"aplicațiile descărcate;"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Această acțiune va șterge toate datele din "<b>"stocarea internă"</b>" a telefonului dvs., inclusiv:\n\n"<li>"Contul dvs. Google;"</li>\n<li>"datele și setările sistemului și ale aplicațiilor;"</li>\n<li>"aplicațiile descărcate;"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"În prezent sunteți conectat(ă) la următoarele conturi:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Pe acest dispozitiv sunt prezenți și alți utilizatori.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Muzică;"</li>\n<li>"Fotografii;"</li>\n<li>"Alte date ale utilizatorului."</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operatori pe eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"Carduri eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Planul dvs. de servicii mobile nu va fi anulat astfel."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Pentru a șterge muzică, imagini și alte date ale utilizatorului, "<b>"stocarea USB"</b>" trebuie să fie ștearsă."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Pentru a șterge muzică, imagini și alte date ale utilizatorului, "<b>"cardul SD"</b>" trebuie să fie șters."</string>
@@ -1457,21 +1469,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Conectați-vă la internet"</string>
<string name="location_title" msgid="1029961368397484576">"Locația mea"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Locație pt. profil de serviciu"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Mod"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Precizie ridicată"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Economisirea bateriei"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Numai cu dispozitivul"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Locație dezactivată"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Permisiuni la nivel de aplic."</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Solicitări recente ale locației"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Nicio aplicație nu a solicitat locația recent"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Servicii de localizare"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Utilizare intensă a bateriei"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Utilizare redusă a bateriei"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Mod de localizare"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Utilizați GPS, Wi-Fi, Bluetooth sau rețelele mobile pentru determinarea locației"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Utilizați Wi-Fi, Bluetooth sau rețelele mobile pentru determinarea locației"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Folosiți GPS-ul și senzorii dispozitivului pentru a determina locația"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Scanare"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Căutare de rețele Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Îmbunătățiți localizarea permițând aplicațiilor și serviciilor de sistem să detecteze rețelele Wi-Fi oricând."</string>
@@ -2025,7 +2028,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Timp rămas: <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> până la finalizarea încărcării"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Activitate de fundal"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Restricționat"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Permiteți aplicației să ruleze în fundal"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Aplicația poate rula în fundal când nu este folosită"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Activitatea de fundal a aplicației este limitată când aceasta nu este folosită"</string>
@@ -2074,14 +2077,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Bateria nu poate asigura o autonomie bună"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Activați gestionarea inteligentă a bateriei"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Activați pentru a optimiza utilizarea bateriei"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Activați modul Baterie descărcată"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Prelungiți durata de viață a bateriei"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Modul Baterie descărcată este pornit"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Unele funcții sunt limitate"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefonul a fost utilizat intens"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tableta a fost utilizată intens"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Dispozitivul a fost utilizat intens"</string>
@@ -2394,8 +2393,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sincronizarea se confruntă în prezent cu probleme. Aceasta va fi funcțională în curând."</string>
<string name="add_account_label" msgid="7811707265834013767">"Adăugați un cont"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Profilul de serviciu nu este încă disponibil"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modul de serviciu"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Permiteți profilului de serviciu să funcționeze, inclusiv aplicațiile, sincronizarea în fundal și funcțiile asociate"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Profil de serviciu"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Gestionat de organizația dvs."</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Aplicațiile și notificările sunt dezactivate"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Eliminați profilul de serviciu"</string>
<string name="background_data" msgid="5779592891375473817">"Date de fundal"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplicațiile pot oricând sincroniza, trimite și primi date"</string>
@@ -2650,7 +2650,7 @@
<item quantity="other">Verificați certificatele</item>
<item quantity="one">Verificați certificatul</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Utilizatori"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Utilizatori multipli"</string>
<string name="user_list_title" msgid="7937158411137563543">"Utilizatori și profiluri"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Adăugați un utilizator/un profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Adăugați un utilizator"</string>
@@ -2841,7 +2841,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplicații și notificări"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Permisiuni, aplicații prestabilite"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Utilizatori și conturi"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Conturi"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplicații prestabilite"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Limbi, oră, backup, actualizări"</string>
<string name="search_results_title" msgid="1796252422574886932">"Setări"</string>
@@ -2872,7 +2874,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"nu deranja, întrerupe, întrerupere, pauză"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"în apropiere, locație, istoric, raportare"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"precizie"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"cont"</string>
<string name="keywords_users" msgid="3434190133131387942">"restricție, restricționare, restricționat"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"corectarea textului, corectați, sunet, vibrații, automat, limbă, gest, sugerați, sugestie, temă, cuvânt, ofensator, introducere text, emoji, internațional"</string>
@@ -2896,6 +2897,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"rețea, starea rețelei mobile, starea acoperirii, puterea semnalului, tip de rețea mobilă, roaming, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"număr de serie, versiune de hardware"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"nivelul corecției de securitate Android, versiunea benzii de bază, versiune nucleu"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Afișare ambient, Afișare ecran de blocare"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Configurarea etichetei NFC pentru Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Scrieți"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Atingeți o etichetă pentru a scrie..."</string>
@@ -2940,6 +2942,7 @@
<item quantity="one">O regulă</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Nu deranja"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Activați Nu deranja"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Comportament"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Permiteți sunete și vibrații de la"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Fără sunet"</string>
@@ -2949,8 +2952,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Activați automat"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Reguli automate"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Regulă automată"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Setați regulile pentru Nu deranja"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Limitați sunetele și vibrațiile uneori"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Dezactivați sunetul uneori"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Setați regulile pentru Nu deranja"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Folosiți regula"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Numai cu prioritate"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Numai alarme"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Niciun sunet"</string>
@@ -2958,12 +2962,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blocați întreruperile vizuale"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Permiteți semnale vizuale"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Adăugați"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Activați"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Activați acum"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Dezactivați acum"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Funcția Nu deranja este activată până la <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Funcția Nu deranja rămâne activă până când o dezactivați"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Funcția Nu deranja a fost activată automat de o regulă (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Funcția Nu deranja a fost activată automat de o aplicație (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Numai cu prioritate"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sunetele profilului de serviciu"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Folosiți sunetele profilului personal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sunetele profilului de serviciu sunt aceleași ca la profilul personal"</string>
@@ -2979,6 +2986,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Tonuri de sonerie"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Alte sunete și vibrații"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Notificări"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Trimise recent"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Avansate"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Notificări profil de serviciu"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Permiteți puncte de notificare"</string>
@@ -3200,6 +3210,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"În plus față de folosirea amprentei pentru deblocarea dispozitivului, puteți să protejați și mai bine dispozitivul setând solicitarea parolei înainte de pornire. Pe dispozitiv nu se pot primi apeluri, mesaje sau notificări, inclusiv alarme, înainte ca acesta să pornească.\n\nAstfel, datele sunt protejate pe dispozitivele pierdute sau furate. Doriți să se solicite o parolă pentru pornirea dispozitivului?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Da"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Nu"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Da"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Nu"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Solicitați codul PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Solicitați modelul?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Solicitați parola?"</string>
@@ -3352,21 +3364,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Refuzați"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Încărcați acest dispozitiv"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Doar încărcați acest dispozitiv"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Alimentați cu energie"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Încărcați dispozitivul conectat. Funcționează numai cu dispozitive care acceptă încărcarea prin USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Transferați fișiere"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Transferați fișiere pe un alt dispozitiv"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Transferați fotografii (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Transferați fotografii sau fișiere dacă MTP nu este acceptat (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Folosiți dispozitivul ca MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Folosiți acest dispozitiv ca MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Folosiți conexiunea USB ca să:"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Folosiți conexiunea USB pentru"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Încărcarea acestui dispozitiv"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Alimentarea altui dispozitiv"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Transfer de fișiere"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Transferul de fotografii (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Dispozitivul se folosește ca MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Oglindirea SMS-urilor"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Verificare de fundal"</string>
<string name="background_check_title" msgid="4534254315824525593">"Acces complet la fundal"</string>
@@ -3477,19 +3511,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Imagine de fundal, inactivitate, dimensiunea fontului"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Se dezactivează după 10 minute de inactivitate"</string>
<string name="memory_summary" msgid="8080825904671961872">"Memorie folosită în medie: <xliff:g id="USED_MEMORY">%1$s</xliff:g> din <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Utilizator actual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"V-ați conectat ca <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> este prestabilită"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ACTIVATĂ/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ACTIVAT"</string>
<string name="location_off_summary" msgid="6474350053215707957">"DEZACTIVATĂ"</string>
<string name="backup_disabled" msgid="485189128759595412">"Backupul este dezactivat"</string>
- <string name="about_summary" msgid="924181828102801010">"Actualizat la Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Acțiunea nu este permisă"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Nu se poate modifica volumul"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Apelarea nu are permisiune"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS-urile nu au permisiune"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Camera foto nu are permisiune"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Captura de ecran nu are permisiune"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Nu se pot dezactiva backupurile"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Această acțiune este dezactivată. Pentru a afla mai multe, contactați administratorul organizației dvs."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Mai multe detalii"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administratorul poate să monitorizeze și să gestioneze aplicațiile și datele asociate profilului de serviciu, inclusiv setările, permisiunile, accesul la nivelul companiei, activitatea în rețea și informațiile despre locația dispozitivului."</string>
@@ -3503,7 +3540,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Hotspotul Wi-Fi portabil <xliff:g id="ID_1">%1$s</xliff:g> este activ, conexiunea Wi-Fi pentru acest dispozitiv este dezactivată."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Modul Avion este activat"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth și rețeaua mobilă sunt dezactivate. Nu puteți să efectuați apeluri telefonice sau să vă conectați la internet."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"„Nu deranja” e activat (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Economisire baterie activată"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Performanța este redusă. Serviciile de localizare și datele de fundal sunt dezactivate."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Datele mobile sunt dezactivate"</string>
@@ -3513,9 +3551,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profil de serviciu dezactivat"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Aplicațiile, sincronizarea în fundal și alte funcții asociate profilului de serviciu sunt dezactivate."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Setați programul pe Lumină de noapte"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Colorați ecranul chihlimbar pentru a adormi mai ușor"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Setați colorarea automată a ecranului în fiecare seară"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Lumina de noapte este activată"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ecranul are o tentă de chihlimbar. Acest lucru vă poate ajuta să adormiți."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Sugerate pentru dvs."</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugestii"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+ încă <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3624,6 +3663,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"niciunul"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Obiectul clasificării lipsește."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Obiectul clasificării nu conține această cheie."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulați un afișaj cu o decupare"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Niciuna"</string>
<string name="special_access" msgid="3458780842491881155">"Acces special pentru aplicații"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="few"><xliff:g id="COUNT">%d</xliff:g> aplicații pot folosi date nerestricționate</item>
@@ -3648,7 +3689,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Mod demonstrativ pentru IU sistem"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Casete dezvoltator pentru setări rapide"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Urmărirea ferestrei"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Urmărirea stratului"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Trasarea suprafeței"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Setările profilului de serviciu"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Căutarea persoanelor de contact"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Permiteți căutările persoanelor de contact efectuate de organizația dvs. pentru a identifica apelanții și persoanele de contact"</string>
@@ -3682,32 +3724,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Accesați camera foto"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Pentru a deschide rapid camera foto, apăsați de două ori butonul de pornire. Funcționează de pe orice ecran."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Deschideți rapid camera foto"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Deschideți camera foto apăsând butonul de pornire de 2 ori"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Comutați camera foto"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Faceți autoportrete mai rapid"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Răsuciți de două ori telefonul pentru modul autoportret"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Răsuciți de două ori tableta pentru modul autoportret"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Răsuciți de două ori dispozitivul pentru modul autoportret"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Atingeți de două ori pentru a verifica telefonul"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Atingeți de două ori pentru a verifica tableta"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Atingeți de două ori pentru a verifica dispozitivul"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Ca să verificați ora, pictogramele de notificare și alte informații, atingeți ecranul de două ori."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Verificați notificările când ecranul este inactiv"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Ridicați pentru a verifica telefonul"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Ridicați pentru a verifica tableta"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Ridicați pentru a verifica dispozitivul"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ca să verificați ora, pictogramele pentru notificări și alte informații, ridicați telefonul."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ca să verificați ora, pictogramele pentru notificări și alte informații, ridicați tableta."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ca să verificați ora, pictogramele pentru notificări și alte informații, ridicați dispozitivul."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Verificați notificările când ecranul este inactiv"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Glisați amprenta digitală pentru notificări"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Glisați amprenta"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Pentru a verifica notificările, glisați în jos pe senzorul de amprentă de pe spatele telefonului."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Pentru a verifica notificările, glisați în jos pe senzorul de amprentă de pe spatele tabletei."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Pentru a verifica notificările, glisați în jos pe senzorul de amprentă de pe spatele dispozitivului."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Vedeți notificările rapid"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Glisați în jos pe senzorul de amprentă"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Activat"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Dezactivat"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloaderul este deja deblocat"</string>
@@ -3846,6 +3881,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Această caracteristică nu este disponibilă pe acest dispozitiv"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Forțați măsurători GNSS complete"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Urmăriți toate constelațiile și frecvențele GNSS fără ciclu de funcționare"</string>
- <string name="storage_access" msgid="8905018810338984531">"Acces la stocare"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"director stabilit pentru accesul la stocare"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Afișați întotdeauna caseta de dialog pentru blocări"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Afișați caseta de dialog de fiecare dată când se blochează o aplicație"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Acces la director"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"acces la director"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Telefonul meu"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Tableta mea"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Dispozitivul meu"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Cont"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Numele dispozitivului"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Utilizați Bluetooth când conduceți"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Setați ca Bluetooth să se activeze automat când conduceți"</string>
</resources>
diff --git a/res/values-ru/arrays.xml b/res/values-ru/arrays.xml
index 8f79165..0079bae 100644
--- a/res/values-ru/arrays.xml
+++ b/res/values-ru/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Push-кнопка"</item>
<item msgid="1624323946324499595">"PIN-код с обнаруженного устройства"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 ч."</item>
<item msgid="5198271470953124739">"Без тайм-аута"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (по умолчанию)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Слабый"</item>
<item msgid="2042505933058940139">"Слабый"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Добавленные более 60 дней назад"</item>
<item msgid="5692284879054004388">"Добавленные более 90 дней назад"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Использовать настройки сети"</item>
+ <item msgid="8745603368609022803">"Лимитное"</item>
+ <item msgid="2266114985518865625">"Безлимитное"</item>
+ </string-array>
</resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index ed31e92..c1249b3 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -172,6 +172,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Ваши устройства"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Подключение нового устройства"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Разрешить подключение к устройствам Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Отключить внутриполосное воспроизведение"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Не воспроизводить персонализированные рингтоны через Bluetooth-гарнитуру"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Текущие подключения"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Сохраненные устройства"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Добавить устройство"</string>
@@ -334,6 +336,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Дата"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Упорядочить по алфавиту"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Упорядочить по часовому поясу"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"Переход на <xliff:g id="TIME_TYPE">%1$s</xliff:g>: <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Летнее время"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Стандартное время"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Часовой пояс по региону"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Фиксированное смещение часового пояса"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Дата"</string>
<string name="time_picker_title" msgid="483460752287255019">"Время"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Автоблокировка"</string>
@@ -344,6 +351,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Текст на экране"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Включить виджеты"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Отключено администратором"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Добавить функцию блокировки входа"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Добавить в меню кнопки питания функцию, которая позволяет отключить расширенный доступ и разблокировку по отпечатку пальца."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Нет текста"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> из <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Например, Android Саши"</string>
@@ -352,6 +361,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Информация о профиле"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Аккаунты"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Местоположение"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Использовать местоположение"</string>
<string name="account_settings_title" msgid="626177544686329806">"Аккаунты"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Местоположение и защита"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Шифрование и учетные данные"</string>
@@ -465,10 +475,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Вы ввели правильный пароль, но данные на планшете повреждены.\n\nЧтобы продолжить работу, выполните возврат к заводским настройкам. После этого вы сможете восстановить данные, резервная копия которых хранится в вашем аккаунте Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Вы ввели правильный пароль, но данные на телефоне повреждены.\n\nЧтобы продолжить работу, выполните возврат к заводским настройкам. После этого вы сможете восстановить данные, резервная копия которых хранится в вашем аккаунте Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Сменить способ ввода"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Блокировка экрана"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Защитите устройство"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Используйте отпечаток пальца"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Разблокируйте устройство с помощью отпечатка пальца"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Настройка блокировки экрана"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Защитите планшет от посторонних."</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Защитите устройство от посторонних."</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Защитите телефон от посторонних."</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Разблокировка по отпечатку пальца"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Разблокируйте устройство с помощью отпечатка пальца"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Разблокируйте устройство с помощью отпечатка пальца"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Разблокируйте устройство с помощью отпечатка пальца"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Блокировка экрана"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Раб. способ блокировки"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Защитите планшет"</string>
@@ -713,6 +727,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Для громкой связи"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Для музыки и мультимедиа"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Запомнить настройки"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Максимально разрешенное количество подключенных Bluetooth-аудиоустройств"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Укажите максимально разрешенное количество подключенных Bluetooth-аудиоустройств"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Трансляция"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Включить"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Устройства не найдены"</string>
@@ -727,6 +743,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Название"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 ГГц"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 ГГц"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Войти"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Мбит/с"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"Приложению \"<xliff:g id="REQUESTER">%s</xliff:g>\" требуется включить Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"Приложению \"<xliff:g id="REQUESTER">%s</xliff:g>\" требуется отключить Wi-Fi"</string>
@@ -744,6 +761,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Включить Wi‑Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Использовать Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Настройки Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Настройка и управление точками доступа беспроводной сети"</string>
@@ -838,6 +856,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Пароль"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Показать пароль"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Диапазон частот Wi-Fi"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Авто"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 ГГц"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 ГГц"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Настройки IP"</string>
@@ -855,7 +874,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (доступно WPS)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Введите пароль для подключения к сети."</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Сеть Wi‑Fi оператора связи"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Подключиться через <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Подключиться через <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Чтобы определение местоположения и некоторые другие функции работали лучше, приложению \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" необходимо выполнять поиск сетей, даже если модуль Wi-Fi отключен.\n\nРазрешить?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Этот параметр можно отключить в расширенных настройках в дополнительном меню."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Разрешить"</string>
@@ -933,10 +952,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"Диапазон частот Wi-Fi"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Создайте сеть Wi‑Fi, включив точку доступа. С ее помощью другие устройства смогут подключаться к мобильному Интернету. За трафик может взиматься дополнительная плата."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Приложения могут создавать точки доступа, чтобы делиться контентом с устройствами поблизости."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Автоматически выключать точку доступа"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Выключать точку доступа Wi‑Fi автоматически, если к ней не подключено ни одного устройства"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Включение точки доступа…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Выключение точки доступа…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"Сеть <xliff:g id="NETWORK_SSID">%1$s</xliff:g> активна"</string>
@@ -947,7 +964,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Хот-спот Android"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Звонки по Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Включите звонки по Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Используйте Wi-Fi вместо мобильной сети"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Звоните по Wi-Fi, когда нет сигнала сотовой связи."</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Приоритет сети"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Звонки по Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Настройки роуминга"</string>
@@ -985,6 +1002,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Адрес в чрезвычайных ситуациях"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Ваше местоположение при экстренном вызове по Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958">"Подробнее "<annotation id="url">"о персональном DNS-сервере"</annotation>"…"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Экран"</string>
<string name="sound_settings" msgid="5534671337768745343">"Звук"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Громкость"</string>
@@ -1201,6 +1219,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Тип мобильной сети"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Сведения об операторе"</string>
<string name="status_data_state" msgid="5503181397066522950">"Передача данных в моб. сети"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"Идентификатор eSIM (EID)"</string>
<string name="status_service_state" msgid="2323931627519429503">"Доступность моб. сети"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Уровень сигнала"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роуминг"</string>
@@ -1334,6 +1353,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"Ваша карта \"<xliff:g id="NAME">^1</xliff:g>\" готова к работе.\n\nЧтобы перенести на нее фотографии, данные приложений и другие файлы, нажмите \"Настройки > Память\"."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Перенесите приложение \"<xliff:g id="APP">^1</xliff:g>\""</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Перенос приложения \"<xliff:g id="APP">^1</xliff:g>\" и его данных на карту \"<xliff:g id="NAME_0">^2</xliff:g>\" займет несколько секунд.\n\nУчтите, что пользоваться приложением и извлекать карту \"<xliff:g id="NAME_1">^2</xliff:g>\" во время переноса нельзя."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Чтобы перенести данные, разблокируйте пользователя <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Перенос приложения \"<xliff:g id="APP">^1</xliff:g>\"…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Не извлекайте устройство \"<xliff:g id="NAME">^1</xliff:g>\" во время переноса.\n\nПока он не завершится, приложение \"<xliff:g id="APP">^2</xliff:g>\" будет недоступно на этом устройстве."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Отменить перенос"</string>
@@ -1386,19 +1406,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Вы можете сбросить настройки сети, приложений или устройства"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Сбросить настройки Wi-Fi, мобильного Интернета и Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"На устройстве будут сброшены все сетевые настройки, в том числе:\n\n"<li>"Wi‑Fi"</li>\n<li>"Мобильный Интернет"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Также сбросить eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Удалить с телефона все данные eSIM. Это действие не отменит ваш тарифный план, и вы сможете скачать eSIM снова, обратившись к своему оператору."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Сбросить настройки"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Сброшенные настройки нельзя будет восстановить. Продолжить?"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Да"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Сбросить настройки?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Этот пользователь не может сбрасывать настройки сети"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Сетевые настройки сброшены"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Произошла ошибка"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Не удалось сбросить eSIM."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Удалить все данные (сброс к заводским настройкам)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Будут удалены все данные из "<b>"внутренней памяти"</b>" устройства, в том числе:\n\n"<li>"Ваш аккаунт Google"</li>\n<li>"Настройки/данные системы и приложений"</li>\n<li>"Загруженные приложения"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Будут удалены все данные из "<b>"внутренней памяти"</b>" устройства, в том числе:\n\n"<li>"Ваш аккаунт Google"</li>\n<li>"Настройки/данные системы и приложений"</li>\n<li>"Загруженные приложения"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Аккаунты на этом устройстве:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"На этом устройстве есть другие аккаунты пользователей.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Музыка"</li>\n<li>"Фото"</li>\n<li>"Другие данные"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Операторы на eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Вы не потеряете доступ к услугам оператора связи."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Чтобы удалить музыку, изображения и другие пользовательские данные, необходимо очистить "<b>"USB-накопитель"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Чтобы удалить музыку, фотографии и другие пользовательские данные, необходимо очистить "<b>"SD-карту"</b>"."</string>
@@ -1458,21 +1482,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Подключитесь к Интернету"</string>
<string name="location_title" msgid="1029961368397484576">"Мое местоположение"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Место для рабочего профиля"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Режим"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"По всем источникам"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"По координатам сети"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"По спутникам GPS"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Отправка геоданных отключена"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Разрешения для приложений"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Последние геозапросы"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"В последнее время приложения не запрашивали геоданные"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Мое местоположение"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Высокий расход заряда батареи"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Низкий расход заряда батареи"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Определение местоположения"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Использовать GPS, Wi‑Fi, Bluetooth и мобильные сети для определения местоположения"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Использовать Wi‑Fi, Bluetooth и мобильные сети для определения местоположения"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Использовать GPS и датчики устройства для определения местоположения"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Поиск"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Поиск сетей Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Точнее определять местоположение, разрешив системным приложениям и сервисам постоянно искать сети Wi‑Fi"</string>
@@ -1494,6 +1509,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Определение местоположения"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"О планшете"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"О телефоне"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Об устройстве"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Об эмулированном устройстве"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Просмотр юридической информации, состояния планшетного ПК и версии ПО"</string>
<string name="legal_information" msgid="5769301644270604095">"Юридическая информация"</string>
@@ -1601,6 +1617,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Показать все приложения (<xliff:g id="COUNT">%1$d</xliff:g>)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Ваши личные данные и данные планшета более уязвимы для атак приложений из неизвестных источников. Устанавливая приложения из этого источника, вы соглашаетесь с тем, что несете полную ответственность за любой ущерб, нанесенный планшету, и потерю данных, связанные с использованием этих приложений."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Ваши личные данные и данные телефона более уязвимы для атак приложений из неизвестных источников. Устанавливая приложения из этого источника, вы соглашаетесь с тем, что несете полную ответственность за любой ущерб, нанесенный телефону, и потерю данных, связанные с использованием этих приложений."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Ваши личные данные и данные устройства более уязвимы для атак приложений из неизвестных источников. Устанавливая такие приложения, вы соглашаетесь с тем, что несете полную ответственность за любой ущерб, нанесенный устройству, и потерю данных, связанные с использованием этих приложений."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Расширенные настройки"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Включить дополнительные настройки"</string>
<string name="application_info_label" msgid="5736524913065714880">"О приложении"</string>
@@ -1902,6 +1919,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Может снизить производительность"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Нажатие после остановки указателя"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Задержка перед нажатием"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Использовать сервис"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Использовать коррекцию цвета"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Использовать титры"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ВКЛ."</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ОТКЛ."</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Показывать в быстрых настройках"</string>
@@ -2029,7 +2049,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Батарея будет разряжена через <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Батарея будет заряжена через <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Работа в фоновом режиме"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Работа в фоновом режиме ограничена"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Разрешить приложению работать в фоновом режиме"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Приложению разрешено работать в фоновом режиме, если оно не используется"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Работа приложения в фоновом режиме ограничена, если оно не используется"</string>
@@ -2072,14 +2092,33 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Спящий режим отключается в фоновом режиме"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Устройство слишком часто запрашивает данные о местоположении"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Количество неправильно работающих приложений: <xliff:g id="NUMBER">%1$d</xliff:g>"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Батарея в хорошем состоянии"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Отклонений в работе приложений не обнаружено"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Низкая емкость батареи"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Время работы устройства без подзарядки сильно ограничено."</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Экономия заряда батареи"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Включите, чтобы оптимизировать расход батареи."</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Режим низкого энергопотребления"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Продлите время работы от батареи."</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Включен режим низкого энергопотребления"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Некоторые функции ограничены."</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Активное использование телефона"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Активное использование планшета"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Активное использование устройства"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Примерно <xliff:g id="HOUR">%1$s</xliff:g> с момента полной зарядки"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Телефон активно использовался, поэтому было израсходовано большое количество энергии. Состояние батареи в норме.\n\n Время использования телефона – <xliff:g id="HOUR">%1$s</xliff:g> с момента полной зарядки.\n\n Данные за весь период:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Телефон активно использовался, поэтому было израсходовано большое количество энергии. Состояние батареи в норме.\n\n Время использования планшета – <xliff:g id="HOUR">%1$s</xliff:g> с момента полной зарядки.\n\n Данные за весь период:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Устройство активно использовалось, поэтому было израсходовано большое количество энергии. Состояние батареи в норме.\n\n Время использования устройства – <xliff:g id="HOUR">%1$s</xliff:g> с момента полной зарядки.\n\n Данные за весь период:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Экономия заряда батареи"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Автоконтроль энергопотребления"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Автоматический контроль энергопотребления приложениями"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Приложения с ограниченным доступом"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="one">%1$d приложение</item>
+ <item quantity="few">%1$d приложения</item>
+ <item quantity="many">%1$d приложений</item>
+ <item quantity="other">%1$d приложения</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Остановить приложение?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Заряд батареи расходуется слишком быстро, так как приложение \"<xliff:g id="APP">%1$s</xliff:g>\" не позволяет телефону перейти в спящий режим.\n\nЧтобы устранить эту проблему, остановите приложение.\n\nЕсли это не поможет, удалите его."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Заряд батареи расходуется слишком быстро, так как приложение \"<xliff:g id="APP">%1$s</xliff:g>\" не позволяет планшету перейти в спящий режим.\n\nЧтобы устранить эту проблему, остановите приложение.\n\nЕсли это не поможет, удалите его."</string>
@@ -2188,6 +2227,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Сервер медиа"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Оптимизация приложений"</string>
<string name="battery_saver" msgid="8172485772238572153">"Режим энергосбережения"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Использовать режим энергосбережения"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Включать автоматически"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Никогда"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"при <xliff:g id="PERCENT">%1$s</xliff:g> заряда"</string>
@@ -2375,8 +2415,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Проблемы с синхронизацией. Скоро все заработает."</string>
<string name="add_account_label" msgid="7811707265834013767">"Добавить аккаунт"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Рабочий профиль пока не доступен"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Рабочий режим"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Включить рабочий профиль: приложения, фоновую синхронизацию и связанные функции"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Рабочий профиль"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Управляется вашей организацией."</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Приложения и уведомления отключены."</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Удалить рабочий профиль"</string>
<string name="background_data" msgid="5779592891375473817">"Фоновый режим"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Синхронизация, отправка и получение данных доступны всегда"</string>
@@ -2408,6 +2449,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Удалить аккаунт?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Все сообщения, контакты и другие данные из этого аккаунта будут удалены с планшета."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Все сообщения, контакты и другие данные из этого аккаунта будут удалены с телефона."</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"С устройства будут удалены все сообщения, контакты и другие данные этого аккаунта."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Это действие запрещено администратором"</string>
<string name="provider_label" msgid="7724593781904508866">"Подписки на рассылки оператора"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2634,7 +2676,7 @@
<item quantity="many">Проверить сертификаты</item>
<item quantity="other">Проверить сертификаты</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Пользователи"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Несколько пользователей"</string>
<string name="user_list_title" msgid="7937158411137563543">"Пользователи и профили"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Добавить пользователя или профиль"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Добавить пользователя"</string>
@@ -2826,7 +2868,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, трансляция"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Приложения и уведомления"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Разрешения, приложения по умолчанию"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Пользователи и аккаунты"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Аккаунты"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Приложения по умолчанию"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Язык, время, резервное копирование и обновления"</string>
<string name="search_results_title" msgid="1796252422574886932">"Настройки"</string>
@@ -2857,7 +2901,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"не беспокоить, режим оповещения, оповещение, прерывание"</string>
<string name="keywords_app" msgid="6334757056536837791">"ОЗУ"</string>
<string name="keywords_location" msgid="6615286961552714686">"поблизости, местоположение, история местоположений, передача геоданных"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"точность"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"аккаунт"</string>
<string name="keywords_users" msgid="3434190133131387942">"ограничение, ограничить, ограничено"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"исправление текста, автозамена, звук, вибрация, авто, язык, жест, подсказка, тема, неприемлемый, слово, ввод, эмодзи, смайлик, международный"</string>
@@ -2881,6 +2924,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"сеть, подключение к мобильной сети, доступность мобильной сети, уровень сигнала, тип мобильной сети, роуминг, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"серийный номер, версия аппаратного обеспечения"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"обновление системы безопасности, прошивка модуля связи, версия ядра"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Автоматическое включение экрана, заблокированный экран"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Настройка NFC-метки"</string>
<string name="write_tag" msgid="8571858602896222537">"Записать"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Нажмите на метку, чтобы начать запись..."</string>
@@ -2926,6 +2970,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> правила</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Не беспокоить"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Включите режим \"Не беспокоить\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Действия"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Вкл. звуки и вибросигналы из"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Без звука"</string>
@@ -2935,8 +2980,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Включать автоматически"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Правила"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Правило включения"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Правила режима \"Не беспокоить\""</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Ограничить уведомления"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Отключать звук в заданное время"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Настройте правила режима \"Не беспокоить\"."</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Использовать правило"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Только важные"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Только будильник"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Полная тишина"</string>
@@ -2944,12 +2990,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокировка визуального оповещения"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Включить визуальное оповещение"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Добавить"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"ВКЛЮЧИТЬ"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"ОТКЛЮЧИТЬ"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Включить"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Включить"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Отключить"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Режим \"Не беспокоить\" включен до <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Режим \"Не беспокоить\" будет включен, пока вы его не выключите"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Режим \"Не беспокоить\" был включен правилом \"<xliff:g id="RULE_NAME">%s</xliff:g>\""</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Режим \"Не беспокоить\" был включен приложением \"<xliff:g id="APP_NAME">%s</xliff:g>\""</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Только важные"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>."</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Сигналы в рабочем профиле"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Выбрать звуки личного профиля"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Одинаковые сигналы в рабочем и личном профиле"</string>
@@ -2965,6 +3014,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Рингтоны"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Другие звуки и вибросигналы"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Уведомления"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Недавно отправляли"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Расширенные настройки"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Рабочие уведомления"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Показывать значки уведомлений"</string>
@@ -2984,7 +3036,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Уведомления приложений"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Категория уведомления"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Группа категорий уведомлений"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Важность"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Действия"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Разрешить звуковой сигнал"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Отключить уведомления"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Без уведомлений"</string>
@@ -3002,6 +3054,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Средняя важность"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Высокая важность"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Крайняя важность"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Включить уведомления"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Настройка уведомлений"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Доступ к уведомлениям"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Доступ к уведомлениям в рабочем профиле заблокирован"</string>
@@ -3034,9 +3087,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Доступ к функции \"Не беспокоить\""</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Установленные приложения не запрашивали доступ к функции \"Не беспокоить\""</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Загрузка..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android блокирует уведомления этого приложения"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android блокирует уведомления этой категории"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android блокирует эту группу уведомлений"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Вы отключили уведомления от этого приложения"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Вы отключили уведомления этой категории"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Вы отключили эту группу уведомлений"</string>
<string name="notification_channels" msgid="5346841743182627500">"Категории"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Другие"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3191,6 +3244,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Вы также можете задать пароль для запуска устройства. Это поможет ещё надежнее защитить ваши данные, если вы, например, потеряете телефон. Пока устройство заблокировано, звонки, сообщения и уведомления (в том числе будильники) будут недоступны.\n\nЗадать пароль?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Да"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Нет"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Да"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Нет"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Запрашивать PIN-код?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Запрашивать ключ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Запрашивать пароль?"</string>
@@ -3349,21 +3404,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Отклонить"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Зарядка этого устройства"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Просто зарядка устройства"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Подача питания"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Зарядка другого подключенного устройства. Доступно только на устройствах, которые поддерживают зарядку через USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Передача файлов"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Передача файлов на другое устройство"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Передача фото (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Передача фотографий или файлов, если МТР не поддерживается (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Подключение как MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Использование устройства как MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Режим работы USB"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Режим работы USB"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Зарядка этого устройства"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Подача питания на подключенное устройство"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Передача файлов"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Передача фото (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Использование устройства как MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Трансляция SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Фоновая проверка"</string>
<string name="background_check_title" msgid="4534254315824525593">"Полный доступ в фоновом режиме"</string>
@@ -3476,19 +3553,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Обои, спящий режим, размер шрифта"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Устройство переходит в спящий режим через 10 минут бездействия"</string>
<string name="memory_summary" msgid="8080825904671961872">"Используется в среднем <xliff:g id="USED_MEMORY">%1$s</xliff:g> из <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Текущий пользователь: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Вы вошли как <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"По умолчанию: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ВКЛ./<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ВКЛ."</string>
<string name="location_off_summary" msgid="6474350053215707957">"ВЫКЛ."</string>
<string name="backup_disabled" msgid="485189128759595412">"Резервное копирование отключено"</string>
- <string name="about_summary" msgid="924181828102801010">"Обновлено до Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Действие запрещено"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Невозможно изменить громкость"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Звонки запрещены"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Отправка SMS запрещена"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Доступ к камере запрещен"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Запрещено делать скриншоты"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Невозможно отключить резервное копирование"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Это действие отключено. За дополнительной информацией обратитесь к администратору организации."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Подробнее…"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Администратор может контролировать настройки, приложения, разрешения и параметры доступа к корпоративным ресурсам в этом профиле, а также связанные с ним данные, например сведения о местоположении или действиях в сети."</string>
@@ -3502,7 +3582,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Включена беспроводная точка доступа (<xliff:g id="ID_1">%1$s</xliff:g>). Wi-Fi на этом устройстве отключен."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Режим полета включен"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth и мобильная сеть отключены. Вы не сможете звонить или подключаться к Интернету."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Уведомления отключены (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Режим энергосбережения включен"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Производительность снижена. Геолокация и фоновый режим отключены."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Мобильный Интернет отключен"</string>
@@ -3512,9 +3593,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Рабочий профиль отключен"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Приложения, фоновая синхронизация и другие функции, связанные с вашим рабочим профилем, отключены."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Расписание ночного режима"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Желтоватый экран для засыпания"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Автоматически изменять оттенок экрана по вечерам."</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Ночной режим включен"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Экран теперь имеет желтоватый оттенок. Это поможет вам быстрее заснуть."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Рекомендовано"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Подсказки"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"Ещё <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3627,6 +3709,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"нет"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Объект отсутствует."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"В объекте нет этого ключа."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Симуляция экрана с вырезом"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Нет"</string>
<string name="special_access" msgid="3458780842491881155">"Специальный доступ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> приложение без ограничений мобильного Интернета</item>
@@ -3651,31 +3735,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Подключено к нескольким устройствам"</string>
<string name="demo_mode" msgid="2798762752209330277">"Интерфейс системы: деморежим"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Фрагменты быстрых настроек"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Мы всегда рады помочь"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Служба поддержки работает круглосуточно"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Служба поддержки работает круглосуточно"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Мы будем рады помочь вам"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Мы готовы помочь вам в любое время дня и ночи."</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Попробуйте найти ответ в Справочном центре или обратитесь к нам в течение рабочего дня (указано местное время):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Позвоните нам в течение рабочего дня (указано местное время):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Выполните поиск по Справочному центру или изучите наши рекомендации"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Служба поддержки:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Трассировка окон"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Трассировка поверхности"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Находитесь за границей?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Может взиматься плата за международные звонки."</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Позвонить"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Написать в чате"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Рекомендации и полезные советы"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Справочный центр / Оставить отзыв"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Свяжитесь со службой поддержки"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Войти"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Не удается войти"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Отправьте информацию о системе"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Больше не показывать"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Запрос от:"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Добавить аккаунт"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Сведения о системе"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Настройки рабочего профиля"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Поиск контактов"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Разрешить поиск контактов в организации для определения вызывающих абонентов"</string>
@@ -3697,11 +3759,11 @@
<item quantity="many"><xliff:g id="NUMBER">%s</xliff:g> секунд</item>
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> секунды</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Ожидание: примерно <xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Управление хранилищем"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Чтобы освободить место, менеджер хранилища удаляет с устройства фото и видео, для которых есть резервные копии."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Удалять фото и видео"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Менеджер хранилища"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Использовать менеджер хранилища"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Автоматически"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Вручную"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Очистить хранилище"</string>
@@ -3712,32 +3774,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Быстрый доступ к камере"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Включение камеры двойным нажатием кнопки питания в любом приложении"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Быстрое включение камеры"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Чтобы включить камеру, дважды нажмите кнопку питания"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Смена камеры"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Быстрое включение фронтальной камеры"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Чтобы включить фронтальную камеру, дважды поверните запястье"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Чтобы включить фронтальную камеру, дважды поверните запястье"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Чтобы включить фронтальную камеру, дважды поверните запястье"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Просмотр времени и уведомлений двойным нажатием"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Просмотр времени и уведомлений двойным нажатием"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Просмотр времени и уведомлений двойным нажатием"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Чтобы увидеть время, значки уведомлений и другую информацию, дважды коснитесь экрана"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Проверять уведомления при отключенном экране"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Поднять, чтобы проверить уведомления"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Просмотр уведомлений в вертикальном положении планшета"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Просмотр уведомлений в вертикальном положении устройства"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Чтобы увидеть время, значки уведомлений и другую информацию, возьмите телефон"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Чтобы увидеть время, значки уведомлений и другую информацию, возьмите планшет"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Чтобы увидеть время, значки уведомлений и другую информацию, возьмите устройство"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Проверять уведомления при отключенном экране"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Использовать сканер отпечатков для просмотра уведомлений"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Сканер отпечатков"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Чтобы увидеть уведомления, проведите вниз по сканеру отпечатков пальцев на задней панели телефона"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Чтобы увидеть уведомления, проведите вниз по сканеру отпечатков пальцев на задней панели планшета"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Чтобы увидеть уведомления, проведите вниз по сканеру отпечатков пальцев на задней панели устройства"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Быстрый просмотр уведомлений"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Проведите вниз по сканеру отпечатков пальцев"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Вкл."</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Выкл."</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Загрузчик ОС уже разблокирован"</string>
@@ -3881,8 +3936,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Познакомьтесь со своим новым планшетом"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Познакомьтесь со своим новым устройством"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Функция недоступна на этом устройстве."</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Полное отслеживание измерений GNSS"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Отслеживать все выкладки и частоты GNSS без рабочего цикла."</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Всегда показывать сообщение об ошибке"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Показывать сообщение при каждом сбое приложения."</string>
+ <string name="directory_access" msgid="4722237210725864244">"Доступ к каталогам"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"доступ к каталогам"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Мой телефон"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Мой планшет"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Мое устройство"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Аккаунт"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Название устройства"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Включать Bluetooth в машине"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Автоматическое включение Bluetooth во время вождения."</string>
</resources>
diff --git a/res/values-si/arrays.xml b/res/values-si/arrays.xml
index 2a2eb75..7f3e5e8 100644
--- a/res/values-si/arrays.xml
+++ b/res/values-si/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"ඔබන බොත්තම"</item>
<item msgid="1624323946324499595">"සමයන්ගේ උපාංග වෙතින් PIN"</item>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index fe69e13..e6ecfd9 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"අගුලු තිර පණිවිඩය"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"විජට් සබල කරන්න"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"ඔබගේ පරිපාලක විසින් අබල කර ඇත"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"අගුලු හැරීමේ විකල්පය පෙන්වන්න"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"විස්තාරිත ප්රවේශය සහ ඇඟිලි සලකුණු අගුලු හැරීම සඳහා වන සංදර්ශක බල සැපයුම් බොත්තම් විකල්පය."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"කිසිවක් නැත"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"උදා., ජෝගේ Android."</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"ඔබ ඇතුළු කළ මුරපදය නිවැරදිය, නමුත් ඔබගේ දත්ත අවලංගු වී තිබේ. \n\nඔබගේ ටැබ්ලටය නැවත ආරම්භ කිරීමට, කර්මාන්ත ශාලා යළි පිහිටු වීමක් කිරීමට ඔබට සිදුවේ, යළි පිහිටු වීමෙන් පසු ඔබගේ ටැබ්ලටය ඔබ නැවත සකස් කරන විට, ඔබගේ Google ගිණුමට උපස්ථ කළ ඕනෑම දත්තයක් ප්රතිස්ථාපනය කිරීමට ඔබට අවස්ථාවක් තිබේ."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"ඔබ ඇතුළු කළ මුරපදය නිවැරදිය, නමුත් ඔබගේ දත්ත අවලංගු වී තිබේ. \n\nඔබගේ දුරකථනය නැවත ආරම්භ කිරීමට, කර්මාන්ත ශාලා යළි පිහිටු වීමක් කිරීමට ඔබට සිදුවේ, යළි පිහිටු වීමෙන් පසු ඔබගේ දුරකථනය ඔබ නැවත සකස් කරන විට, ඔබගේ Google ගිණුමට උපස්ථ කළ ඕනෑම දත්තයක් ප්රතිස්ථාපනය කිරීමට ඔබට අවස්ථාවක් තිබේ."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ආදාන ක්රමය මාරු කරන්න"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"තිර අගුල සැකසීම"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"ඔබගේ උපාංගය ආරක්ෂා කර ගන්න"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"ඇඟිලි සලකුණ භාවිත කිරීම"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"ඔබගේ ඇඟිලි සලකුණ සමගින් අනවහිර කරන්න"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"ආරක්ෂාව සඳහා තිර අගුල සකසන්න"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"අන් අය ඔබගේ ටැබ්ලට් පරිගණකය භාවිත කිරීමෙන් වළක්වන්න"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"අන් අය ඔබගේ උපාංගය භාවිත කිරීමෙන් වළක්වන්න"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"අන් අය ඔබගේ දුරකථනය භාවිත කිරීමෙන් වළක්වන්න"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"ඇඟිලි සලකුණින් අගුළු හරින්න"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"ඔබගේ ඇඟිලි සලකුණ සමගින් අනවහිර කරන්න"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"ඔබගේ ඇඟිලි සලකුණ සමගින් අනවහිර කරන්න"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"ඔබගේ ඇඟිලි සලකුණ සමගින් අනවහිර කරන්න"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"තිර අගුල තෝරාගන්න"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"කාර්යාල අගුල තෝරන්න"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"ඔබගේ ටැබ්ලටය ආරක්ෂා කර ගන්න"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"මුරපදය"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"මුරපදය පෙන්වන්න"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP කලාපය තෝරන්න"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"ස්වයං"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz කලාපය"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz කලාපය"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP සැකසීම්"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi ඇමතීම"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi ඇමතුම ක්රියාත්මක කරන්න"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"ජංගම ජාලය වෙනුවට Wi-Fi භාවිත කරන්න"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi හරහා ඇමතීම මගින් ආවරණය පුළුල් කරන්න"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"ඇමතුම් මනාපය"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi ඇමතුම් මෝඩය"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"රෝමිං මනාප"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"ජංගම ජාල වර්ගය"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ක්රියාකාරී තොරතුරු"</string>
<string name="status_data_state" msgid="5503181397066522950">"ජංගම ජාල තත්වය"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"සේවා තත්වය"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"සංඥා ප්රබලතාව"</string>
<string name="status_roaming" msgid="2638800467430913403">"රෝමිං"</string>
@@ -1372,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"ජාල, යෙදුම්, හෝ උපාංගය යළි සැකසිය හැකිය"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, ජංගම, බ්ලූටූත් යළි සක."</string>
<string name="reset_network_desc" msgid="5547979398298881406">"මෙය, පහත ඒවා ඇතුළුව සියලු ජාල සැකසීම් යළි සකසනු ඇත:\n\n"<li>"Wi‑Fi"</li>\n<li>"ජංගම දත්ත"</li>\n<li>"බ්ලූටූත්"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIM ද නැවත සකසයි"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"දුරකථනයෙහි සියලු eSIM මකන්න. ඔබේ eSIM නැවත බාගැනීමට ඔබට ඔබේ වාහකය ඇමතීමට සිදු වනු ඇත. මෙය ඔබගේ ජංගම සේවා සැලසුම අවලංගු නොකරනු ඇත."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"සැකසීම් යළි පිහිටුවන ලදි"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"සියලු ජාල සැකසීම් යළි පිහිටුවන්නද? ඔබට මෙම ක්රියාව ආපසු හැරවිය නොහැකිය!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"සැකසීම් යළි පිහිටුවන්න"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"යළි පිහිටුවන්නද?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"මෙම පරිශීලකයා වෙත ජාලය යළි පිහිටුවීමේ හැකියාව නැත"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"ජාල සැකසීම් යළි පිහිටුවන ලදි"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIM නැවත සැකසිය නොහැකිය"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"දෝෂයක් හේතුවෙන් මෙම eSIM නැවත සැකසිය නොහැකිය."</string>
<string name="master_clear_title" msgid="3531267871084279512">"සියලු දත්ත මකන්න (කර්මාන්තශාලා යළි සැකසීම)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ඔබගේ ටැබ්ලටයේ "<b>"අභ්යන්තර ආචනය"</b>", සියලු දත්ත මකයි:\n\n"<li>"ඔබගේ Google ගිණුම"</li>\n<li>"පද්ධති සහ යෙදුම් දත්ත සහ සැකසීම්"</li>\n<li>"බාගත යෙදුම්"</li>" අන්තර්ගතය."</string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"මෙය ඔබගේ දුරකථනයේ "<b>"අභ්යන්තර ගබඩාවේ"</b>" සියලු දත්ත මකයි:\n\n"<li>"ඔබගේ Google ගිණුම"</li>\n<li>"පද්ධති සහ යෙදුම් දත්ත සහ සැකසීම්"</li>\n<li>"බාගත යෙදුම්"</li>" අන්තර්ගතය."</string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"ඔබ දැනට පහත ගිණුම් වෙත පුරනය වී සිටියි:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"මෙම උපාංගයේ වෙනත් පරිශීලකයින් සිටි.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"සංගීතය"</li>\n<li>"ඡායාරූප"</li>\n<li>"වෙනත් පරිශීලක දත්ත"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM හි ගෙන යයි"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"මෙය ඔබගේ ජංගම සේවා සැලසුම අවලංගු නොකරනු ඇත."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"සංගීත, පින්තූර, සහ වෙනත් පරිශීලක දත්ත මැකීමට, "<b>"USB ආචයනය"</b>" මැකීමට අවශ්යය."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"සංගීතය, පින්තූර, සහ වෙනත් පරිශීලක දත්ත ඉවත් කිරීමට, "<b>"SD කාඩ් පත"</b>" මැකිය යුතුවේ."</string>
@@ -1444,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"කරුණාකර අන්තර්ජාලය වෙත සම්බන්ධ වන්න"</string>
<string name="location_title" msgid="1029961368397484576">"මගේ ස්ථානය"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"කාර්යාල පැතිකඩ සඳහා ස්ථානය"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"ආකාරය"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"ඉහළ නිරවද්යතාවය"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"බැටරි සුරැකීම"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"උපාංගය පමණි"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"ස්ථානය අක්රියයි"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"යෙදුම මට්ටමේ අවසර"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"මෑත කාලීන ස්ථාන ඉල්ලීම්"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"මෑතකදී යෙදුම් කිසිවක් ස්ථානය ඉල්ලා නැත"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"ස්ථානීය සේවා"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"ඉහළ බැටරි භාවිතය"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"අඩු බැටරි භාවිතය"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"ස්ථාන ආකාරය"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"ස්ථානය නිර්ණය කිරීමට GPS, Wi-Fi, බ්ලූටූත්, හෝ ජංගම ජාල භාවිත කරන්න"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"ස්ථානය නිර්ණය කිරීමට Wi-Fi, බ්ලූටූත්, හෝ ජංගම ජාල භාවිත කරන්න"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"ඔබේ ස්ථානය නිර්ණය කිරීමට GPS සහ උපාංග සංවේදක භාවිත කරන්න"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"පරිලෝකනය කිරීම"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi පරිලෝකනය"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ඕනෑම අවස්ථාවකදී පද්ධති යෙදුම් සහ සේවා වෙත Wi‑Fi ජාල නිර්ණය කිරීමට ඉඩ දීමෙන් ස්ථානය වැඩි දියුණු කරන්න."</string>
@@ -2004,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ක් ඉතිරියි"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> වෙත වෙනස් කරන්න"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"පසුබිම් ක්රියාකාරිත්වය"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"සීමා කළ"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"පසුබිමේ ධාවනය කිරීමට යෙදුමට අවසර දෙන්න"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"භාවිතයේ නොමැති විට යෙදුමට පසුබිමේ ධාවනය කළ හැක"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"යෙදුම භාවිතයේ නොමැති විට එහි පසුබිම් ක්රියාකාරිත්වය සීමා සහිතයි"</string>
@@ -2053,14 +2056,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"බැටරියට හොඳ බැටරි ආයු කාලයක් ලබා දිය නොහැකිය"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ස්මාර්ට් බැටරි කළමනාකරු ක්රියාත්මක කරන්න"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"බැටරි භාවිතය ප්රශස්ත කිරීමට ක්රියාත්මක කරන්න"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"අඩු බැටරි ප්රකාරය ක්රියාත්මක කරන්න"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"ඔබේ බැටරි ආයු කාලය දිගු කරන්න"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"අඩු බැටරි ප්රකාරය ක්රියාත්මකයි"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"සමහර විශේෂාංග සීමිත වේ"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"දුරකථනය දැඩි ලෙස භාවිත වේ"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ටැබ්ලට් උපාංගය දැඩි ලෙස භාවිත වේ"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"උපාංගය දැඩි ලෙස භාවිත වේ"</string>
@@ -2372,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"සමමුහුර්තය දැනට ගැටළුවලට මුහුණපා ඇත. එය සුළු මොහොතකින් ආපසු පැමිණෙනු ඇත."</string>
<string name="add_account_label" msgid="7811707265834013767">"ගිණුමක් එක් කරන්න"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"වැඩ පැතිකඩ තවම නොපවතියි"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"කාර්යාල ප්රකාරය"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"යෙදුම්, පසුබිම සමමුහුර්ත කිරීම, සහ සම්බන්ධිත විශේෂාංග ඇතුළුව ක්රියා කිරීමට කාර්යාල පැතිකඩට ඉඩ දෙන්න"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"කාර්යාල පැතිකඩ"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"ඔබේ සංවිධානය විසින් කළමනාකරණය කරනු ලැබේ"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"යෙදුම් සහ දැනුම්දීම් ක්රියාවිරහිතයි"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"වැඩ පැතිකඩ ඉවත් කරන්න"</string>
<string name="background_data" msgid="5779592891375473817">"පසුබිම් දත්ත"</string>
<string name="background_data_summary" msgid="8328521479872763452">"යෙදුම්වලට ඕනෑම වෙලාවක දත්ත සමමුහුර්ත කිරීමට, යැවීමට, සහ ලබාගැනීමට හැකිය"</string>
@@ -2624,7 +2624,7 @@
<item quantity="one">සහතික පරීක්ෂා කරන්න</item>
<item quantity="other">සහතික පරීක්ෂා කරන්න</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"පරිශීලකයින්"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"බහු පරිශීලකයන්"</string>
<string name="user_list_title" msgid="7937158411137563543">"පරිශීලකයින් සහ පැතිකඩ"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"පරිශීලයෙකු හෝ ගිණුමක් එක් කරන්න"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"පරිශීලකයෙක් එක් කරන්න"</string>
@@ -2814,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"බ්ලුටූත්, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"යෙදුම් සහ දැනුම්දීම්"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"අවසර, පෙරනිමි යෙදුම්"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"පරිශීලකයන් සහ ගිණුම්"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"ගිණුම්"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"පෙරනිමි යෙදුම්"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"භාෂා, වේලාව, උපස්ථය, යාවත්කාලීන"</string>
<string name="search_results_title" msgid="1796252422574886932">"සැකසීම්"</string>
@@ -2845,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"බාධා නොකරන්න එපා, බාධා කිරීම, බාධාව, බිඳීම"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"අවට, ස්ථානය, ඉතිහාසය, වාර්තාකරණය"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"නිරවද්යතාවය"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"ගිණුම"</string>
<string name="keywords_users" msgid="3434190133131387942">"සීමා කිරීම, සීමා කරන්න, සීමා කරන ලදී"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"පෙළ නිවැරදි කිරීම, නිවැරදි, ශබ්දය, කම්පනය, ස්වයං, භාෂාව, අභිනය, යෝජනා කිරීම, යෝජනාව, තේමාව, අහිතකර, වචනය, වර්ගය, ඉමොජි ජාත්යන්තර"</string>
@@ -2869,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"ජාලය, ජංගම ජාල තත්ත්වය, සේවා තත්ත්වය, සංඥා ප්රබලතාව, ජංගම ජාල වර්ගය, රෝමිං, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"අනුක්රමික අංකය, දෘඪාංග අනුවාදය"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android ආරක්ෂක පැච් මට්ටම, බේස්බෑන්ඩ් අනුවාදය, කර්නල් අනුවාදය"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"පරිසර දර්ශකය, අගුලු තිර දර්ශකය"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ටැගයක් ස්ථාපනය කරන්න"</string>
<string name="write_tag" msgid="8571858602896222537">"ලියනවා"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"ලිවීමට ටැගයට තට්ටු කරන්න..."</string>
@@ -2912,6 +2914,7 @@
<item quantity="other">රීති <xliff:g id="ON_COUNT">%d</xliff:g></item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"බාධා නොකරන්න"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"බාධා නොකරන්න ක්රියාත්මක කරන්න"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"හැසිරීම"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"ශබ්ද සහ කම්පනවලට ඉඩ දෙන්න"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ශබ්ද නැත"</string>
@@ -2921,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"ස්වයංක්රියව ක්රියාත්මක කරන්න"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"ස්වයංක්රීය රීති"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"ස්වයංක්රීය රීතිය"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"බාධා නොකරන්න රීති සැකසීම"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ශබ්ද සහ කම්පන ඇතැම් වේලා වල සීමා කරන්න"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"නිශ්චිත වේලාවලදී දුරකථනය නිහඬ කරන්න"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"බාධා නොකරන්න රීති සැකසීම"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"රීතිය භාවිත කරන්න"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ප්රමුඛතාව පමණයි"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"එලාම පමණයි"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"සම්පූර්ණ නිහඬතාව"</string>
@@ -2930,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"දෘශ්ය බාධක අවහිර කරන්න"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"දෘශ්ය සංඥාවලට ඉඩ දෙන්න"</string>
<string name="zen_mode_add" msgid="90014394953272517">"එක් කරන්න"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ක්රියාත්මක කරන්න"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"දැන් ක්රියාත්මක කරන්න"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"දැන් ක්රියාවිරහිත කරන්න"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> දක්වා බාධා නොකරන්න ක්රියාත්මකයි"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"බාධා නොකරන්න එය ඔබ ක්රියාවිරහිත කරන තෙක් ක්රියාත්මකව පවතී"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"<xliff:g id="RULE_NAME">%s</xliff:g> රීතියක් මගින් බාධා නොකරන්න ස්වයංක්රියව ක්රියාත්මක කරන ලදී"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"<xliff:g id="APP_NAME">%s</xliff:g> යෙදුමක් මගින් බාධා නොකරන්න ස්වයංක්රියව ක්රියාත්මක කරන ලදී"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ප්රමුඛතා පමණි"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"කාර්යාල පැතිකඩ හඬවල්"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"පුද්ගලික පැතිකඩ හඬ භාවිත කර."</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"කාර්යාල සහ පුද්ගලික පැතිකඩ සඳහා හඬ වල් එකමය"</string>
@@ -2951,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"නාද රිද්ම"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"වෙනත් ශබ්ද සහ කම්පන"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"දැනුම්දීම්"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"මෑතකදී එවන ලද"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"උසස්"</string>
<string name="profile_section_header" msgid="2320848161066912001">"වැඩ දැනුම්දීම්"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"දැනුම්දීම් තිත් සඳහා ඉඩ දෙන්න"</string>
@@ -3166,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"ඔබේ උපාංගය අගුලු හැරීමට ඔබේ ඇඟිලි සලකුණ භාවිත කිරීමට අමතරව, උපාංගය ආරම්භ වීමට පෙර ඔබගේ මුරපදය අවශ්ය වීම මඟින් ඔබට එය තව දුරටත් ආරක්ෂා කළ හැකිය. උපාංගය ආරම්භ වන තෙක්, එයට එලාම ඇතුළත්ව ඇමතුම්, පණිවිඩ හෝ දැනුම්දීම් ලබා ගත නොහැකිය.\n\nනැතිවූ හෝ සොරකම් කළ උපාංගවල දත්ත ආරක්ෂා කිරීමට මෙය උදවු කරයි. ඔබගේ උපාංගය පණ ගැන්වීමට මුරපදය එක අවශ්යද?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ඔව්"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"නැත"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ඔව්"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"නැත"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN එක අවශ්යද?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"රටාව අවශ්යද?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"මුරපදය අවශ්යද?"</string>
@@ -3312,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"ප්රතික්ෂේප කිරීම"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"මෙම උපාංගය ආරෝපණය කිරීම"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"මෙම උපාංගය දැන් ආරෝපනය කරන්න"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"බලය සැපයීම"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"සම්බන්ධිත උපාංගය ආරෝපණය කරන්න. වැඩ කරන්නේ USB ආරෝපණයට සහය දක්වන උපාංග සමඟ පමණි."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ගොනු මාරු කිරීම"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"වෙනත් උපාංගයකට ගොනු මාරු කරන්න"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ඡායාරූප හුවමාරුව (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP සහාය නොදක්වන්නේනම් ඡායාරූප හෝ ගොනු මාරු කරන්න (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"උපාංගය MIDI ලෙස භාවිත කිරීම"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"මෙම උපාංගය MIDI ලෙස භාවිත කිරිම"</string>
- <string name="usb_use" msgid="3256040963685055320">"USB භාවිත කරන්න"</string>
+ <string name="usb_use" msgid="3372728031108932425">"පහත සඳහා USB භාවිතා කරන්න"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"මෙම උපාංගය ආරෝපණය කරමින්"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"බලය ලබාදෙමින්"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ගොනු හුවමාරු කරමින්"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ඡායාරූප හුවමාරු කරමින් (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"උපාංගය MIDI ලෙස භාවිත කිරීම"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS Mirroring"</string>
<string name="background_check_pref" msgid="7550258400138010979">"පසුබිම් පරීක්ෂාව"</string>
<string name="background_check_title" msgid="4534254315824525593">"පූර්ණ පසුබිම ප්රවේශය"</string>
@@ -3435,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"වෝල්පේපරය, නින්ද, ෆොන්ට තරම"</string>
<string name="display_summary_example" msgid="9102633726811090523">"මිනිත්තු 10ක අක්රිය කාලයකට පසුව නිදන්න"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> මතකයෙන් සාමාන්යයෙන් <xliff:g id="USED_MEMORY">%1$s</xliff:g>ක් භාවිත කෙරේ"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"දැනට සිටින පරිශීලකයා: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g> ලෙස පුරන ලදී"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> පෙරනිමි වේ"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ක්රියාත්මකයි / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ක්රියාත්මකයි"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ක්රියාවිරහිතයි"</string>
<string name="backup_disabled" msgid="485189128759595412">"උපස්ථ කිරීම අබලයි"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> වෙත යාවත්කාලීන කරන ලදි"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"ක්රියාවට ඉඩ නොදේ"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"පරිමාව වෙනස් කළ නොහැකිය"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"ඇමතීමට ඉඩ නොදේ"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS සඳහා ඉඩ නොදේ"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"කැමරාවට ඉඩ නොදේ"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"තිර රුවට ඉඩ නොදේ"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"උපස්ථ ක්රියාවිරහිත කළ නොහැකිය"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"මෙම ක්රියාව අබල කර ඇත. තව දැන ගැනීමට ඔබේ සංවිධානයේ පරිපාලක අමතන්න."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"වැඩි විස්තර"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"සැකසීම්, අවසර, සංස්ථාපිත ප්රවේශය, ජාල ක්රියාකාරකම, සහ උපාංගයේ ස්ථාන තොරතුරු ඇතුළුව, ඔබේ කාර්යාල පැතිකඩ සමඟ සම්බන්ධිත යෙදුම් සහ දත්ත නිරීක්ෂණය කිරීමට සහ කළමනාකරණය කිරීමට ඔබේ පරිපාලකට හැකිය."</string>
@@ -3461,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"අතේ ගෙන යා හැකි Wi-Fi හොට්ස්පොට් <xliff:g id="ID_1">%1$s</xliff:g> සක්රියයි. මෙම උපාංගය සඳහා Wi-Fi ක්රියාවිරහිත කර ඇත."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ගුවන් යානා ප්රකාරය ක්රියාත්මකයි"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, බ්ලූටූත්, සහ ජංගම ජාලය ක්රියාවිරහිත කර ඇත. ඔබට දුරකථන ඇමතුම් සිදු කිරීමට හෝ අන්තර්ජාලයට සබැඳීමට නොහැකිය."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"බාධා නොකරන්න ක්රියාත්මකයි <xliff:g id="ID_1">%1$s</xliff:g>"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"බැටරි සුරැකුම ක්රියාත්මකයි"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"කාර්යසාධන අඩුය. ස්ථාන සේවා සහ පසුබිම් දත්ත ක්රියාවිරහිත කර ඇත."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"ජංගම දත්ත ක්රියාවිරහිතයි"</string>
@@ -3471,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"කාර්යාල පැතිකඩ අක්රියයි"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"යෙදුම්, පසුබිම් සමමුහුර්ත කිරීම, සහ ඔබේ වැඩ පැතිකඩ හා සම්බන්ධ අනෙකුත් විශේෂාංග ක්රියාවිරහිතයි."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"රාත්රී ආලෝක කාලසටහන සකසන්න"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"ඇම්බර් වර්ණ තිරය මඟින් ඔබට නිදාගැනීමට උදව් කරයි"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"සෑම රාත්රියකම .තිරය ස්වයංක්රියව අඳුරු කරන්න"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"රාත්රී ආලෝකය ක්රියාත්මකයි"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"තිරය ඇම්බර් වර්ණ ගන්වා ඇත. මෙය ඔබට නින්දට පත් වීමට උදවු විය හැකිය."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"ඔබ සඳහා යෝජනා කළ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"යෝජනා"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"තවත් +<xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3578,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"කිසිවක් නැත"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ශ්රේණිගත කිරීමේ වස්තුව අස්ථානගතයි."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ශ්රේණිගත කිරීමේ වස්තුවේ මෙම යතුර අඩංගු නොවේ."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"කටවුට් එකක් සමගින් සංදර්ශකයක් අනුකරණය කරන්න"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"කිසිවක් නැත"</string>
<string name="special_access" msgid="3458780842491881155">"විශේෂ යෙදුම් ප්රවේශය"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one">යෙදුම් <xliff:g id="COUNT">%d</xliff:g>කට සීමා නොකළ දත්ත භාවිතා කළ හැක</item>
@@ -3601,7 +3642,8 @@
<string name="demo_mode" msgid="2798762752209330277">"පද්ධති UI ආදර්ශන ප්රකාරය"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"ඉක්මන් සැකසීම් සංවර්ධක ටයිල්"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"කවුළු හඹා යාම"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"ස්තර හඹා යාම"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"මතුපිට හෝඩුවාව"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"කාර්යාල පැතිකඩ සැකසීම්"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"සම්බන්ධතා සෙවීම"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"අමතන්නන් හා සම්බන්ධතා හඳුනා ගැනීම සඳහා ඔබේ ආයතනයෙන් සම්බන්ධතා සෙවීම් ඉඩ දෙන්න"</string>
@@ -3632,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"කැමරාව වෙත පනින්න"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"ඉක්මනින් කැමරාව විවෘත කිරීමට, බල බොත්තම දෙවරක් ඔබන්න. ඕනෑම තිරයක සිට ක්රියා කරයි."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"කැමරාව ඉක්මනින් විවෘත කරන්න"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"කැමරාව විවෘත කිරීමට බල සැපයුම් බොත්තම දෙවරක් ඔබන්න"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"ෆ්ලිප් කැමරාව"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"වඩාත් වේගයෙන් සෙල්ෆී ඡායාරූප ගන්න"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"සෙල්ෆි ප්රකාරය සඳහා දුරකථනය දෙවරක් කරකවන්න"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"සෙල්ෆි ප්රකාරය සඳහා ටැබ්ලට් පරිගණකය දෙවරක් කරකවන්න"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"සෙල්ෆි ප්රකාරය සඳහා උපාංගය දෙවරක් කරකවන්න"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"දුරකථනය පරීක්ෂා කිරීමට දෙවරක් තට්ටු කරන්න"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ටැබ්ලට් පරිගණකය පරීක්ෂා කිරීමට දෙවරක් තට්ටු කරන්න"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"උපාංගය පරීක්ෂා කිරීමට දෙවරක් තට්ටු කරන්න"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"වේලාව, දැනුම්දීම් නිරූපක, සහ වෙනත් තොරතුරු පරීක්ෂා කිරීමට, ඔබේ තිරය දෙවරක් තට්ටු කරන්න."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"තිරය ක්රියාවිරහිත විට දැනුම්දීම් පරීක්ෂා කරන්න"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"දුරකථනය පරීක්ෂාවට ඔසවන්න"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"ටැබ්ලට් පරිගණකය පරීක්ෂා කිරීමට ඔසවන්න"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"උපාංගය පරීක්ෂා කිරීමට ඔසවන්න"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"වේලාව, දැනුම්දීම් නිරූපක, සහ වෙනත් තොරතුරු පරීක්ෂා කිරීමට, ඔබේ දුරකථනය අතට ගන්න."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"වේලාව, දැනුම්දීම් නිරූපක, සහ වෙනත් තොරතුරු පරීක්ෂා කිරීමට, ඔබේ ටැබ්ලට් පරිගණකය අතට ගන්න."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"වේලාව, දැනුම්දීම් නිරූපක, සහ වෙනත් තොරතුරු පරීක්ෂා කිරීමට, ඔබේ උපාංගය අතට ගන්න."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"තිරය ක්රියාවිරහිත විට දැනුම්දීම් පරීක්ෂා කරන්න"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"දැනුම්දීම් සඳහා ඇඟිලි සලකුණ ස්වයිප් කරන්න"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"ඇඟිලි සලකුණ ස්වයිප් කරන්න"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"ඔබේ දැනුම්දීම් පරීක්ෂා කිරීමට, ඔබේ දුරකථනයේ පිටුපස පැත්තේ ඇති ඇඟිලි සලකුණු සංවේදකය මත පහළට ස්වයිප් කරන්න."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"ඔබේ දැනුම්දීම් පරීක්ෂා කිරීමට, ඔබේ ටැබ්ලට් පරිගණකයේ පිටුපස පැත්තේ ඇති ඇඟිලි සලකුණු සංවේදකය මත පහළට ස්වයිප් කරන්න."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"ඔබේ දැනුම්දීම් පරීක්ෂා කිරීමට, ඔබේ උපාංගයේ පිටුපස පැත්තේ ඇති ඇඟිලි සලකුණු සංවේදකය මත පහළට ස්වයිප් කරන්න."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"දැනුම්දීම් ඉක්මනින් බලන්න"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"ඇඟිලි සලකුණු සංවේදකය මත පහළට ස්වයිප් කරන්න"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ක්රියාත්මකයි"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ක්රියාවිරහිතයි"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Bootloader දැනටමත් අගුලු හැර ඇත"</string>
@@ -3789,6 +3824,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"මෙම අංගය මෙම උපාංගයේ ලබා ගත නොහැක"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"සම්පූර්ණ GNSS මිනුම් බලාත්මක කරන්න"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"කාර්ය චක්රය රහිත සියලු GNSS සබැඳි තාරකා ගෝල සහ සංඛ්යාත"</string>
- <string name="storage_access" msgid="8905018810338984531">"ගබඩා ප්රවේශය"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"ගබඩා ප්රවේශ අවකාශ නාමාවලිය"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"බිඳ වැටීම් සංවාදය සැම විට පෙන්වන්න"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"යෙදුමක් බිඳ වැටෙන සෑම විටම සංවාදය පෙන්වන්න"</string>
+ <string name="directory_access" msgid="4722237210725864244">"නාමාවලි ප්රවේශය"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"නාමාවලි ප්රවේශය"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"මගේ දුරකථනය"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"මගේ ටැබ්ලට් පරිගණකය"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"මගේ උපාංගය"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"ගිණුම"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"උපාංගයේ නම"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"රිය ධාවනය කරන විට බ්ලූටූත් භාවිත කරන්න"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"රිය ධාවනය කරන අතරතුර බ්ලූටූත් සහ ස්ථානය ක්රියාත්මක කරන්න"</string>
</resources>
diff --git a/res/values-sl/arrays.xml b/res/values-sl/arrays.xml
index 762e502..e7e99e1 100644
--- a/res/values-sl/arrays.xml
+++ b/res/values-sl/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Pritisnite gumb"</item>
<item msgid="1624323946324499595">"PIN iz enakovredne naprave"</item>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index df85f45..dce1b3a 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -336,16 +336,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Nastavi datum"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Razvrsti po abecedi"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Razvrsti po časovnem pasu"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> se začne dne <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Poletni čas"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Standardni čas"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Časovni pas glede na območje"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Časovni pasovi glede na zamik"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Datum"</string>
<string name="time_picker_title" msgid="483460752287255019">"Ura"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Samodejno zaklepanje"</string>
@@ -356,6 +351,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Spor. na zakl. zasl."</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Omogoči pripomočke"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Onemogočil skrbnik"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Brez"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Npr. Janezov Android"</string>
@@ -364,8 +363,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Podatki za profil"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Računi"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Lokacija"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Uporaba lokacije"</string>
<string name="account_settings_title" msgid="626177544686329806">"Računi"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Varnost in lokacija"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Šifriranje in poverilnice"</string>
@@ -479,9 +477,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Vnesli ste pravilno geslo, vendar so podatki poškodovani. \n\nČe želite še naprej uporabljati tablični računalnik, ga morate ponastaviti na tovarniške nastavitve. Ko boste po ponastavitvi nastavljali tablični računalnik, boste lahko obnovili morebitne podatke, ki so bili varnostno kopirani v Google Račun."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Vnesli ste pravilno geslo, vendar so podatki poškodovani. \n\nČe želite še naprej uporabljati telefon, ga morate ponastaviti na tovarniške nastavitve. Ko boste po ponastavitvi nastavljali telefon, boste lahko obnovili morebitne podatke, ki so bili varnostno kopirani v Google Račun."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Preklopite način vnosa"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Nastavitev zaklepanja zaslona"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Zaščitite napravo"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Uporaba prstnega odtisa"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Odklepanje s prstnim odtisom"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Izberite zaklepanje zaslona"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Izbira zakl. del. p."</string>
@@ -743,8 +748,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Ime"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Prijava"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mb/s"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"Aplikacija <xliff:g id="REQUESTER">%s</xliff:g> želi vklopiti Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"Aplikacija <xliff:g id="REQUESTER">%s</xliff:g> želi izklopiti Wi-Fi"</string>
@@ -762,8 +766,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Vklopi Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Uporabi Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Nastavitve za Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Nastavi in upravljaj brezžične dostopne točke"</string>
@@ -858,6 +861,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Geslo"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Pokaži geslo"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Izbira pasu dostopne točke"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Samodejno"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4-GHz pas"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5-GHz pas"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Nastavitve naslova IP"</string>
@@ -965,7 +969,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Klicanje prek Wi-Fi-ja"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Vklop klicanja prek Wi-Fi-ja"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Uporaba Wi-Fi-ja namesto mobilnega omrežja"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Nastavitev klicanja"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Način klicanja prek Wi-Fi-ja"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Prednostna izbira za gostovanje"</string>
@@ -1220,6 +1225,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Vrsta mobilnega omrežja"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Podatki operaterja"</string>
<string name="status_data_state" msgid="5503181397066522950">"Stanje mobilnega omrežja"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Stanje storitve"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Moč signala"</string>
<string name="status_roaming" msgid="2638800467430913403">"Gostovanje"</string>
@@ -1406,19 +1413,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Ponastavite lahko omrežje, aplikacije ali napravo"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Ponastavi Wi-Fi, prenos podatkov v mobilnem omrežju in Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"S tem boste ponastavili vse omrežne nastavitve, vključno s temi:\n\n"<li>"Wi‑Fi"</li>\n<li>"Prenos podatkov v mobilnih omrežjih"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Ponastavi tudi kartice e-SIM"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Ponastavi nastavitve"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Ali želite ponastaviti vse omrežne nastavitve? Tega dejanja ni mogoče razveljaviti."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Ponastavi nastavitve"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Želite ponastaviti?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Ponastavitev omrežnih nastavitev ni na voljo za tega uporabnika"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Omrežne nastavitve so ponastavljene"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Kartic e-SIM ni mogoče ponastaviti"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Kartic e-SIM ni mogoče ponastaviti zaradi napake."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Izbriši vse podatke (ponastavitev na tovarniške nastavitve)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"S tem boste iz "<b>"notranjega pomnilnika"</b>" tabličnega računalnika izbrisali vse podatke:\n\n"<li>"Google Račun"</li>\n<li>"Podatke in nastavitve sistema in aplikacij"</li>\n<li>"Prenesene aplikacije"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"S tem boste iz "<b>"notranjega pomnilnika"</b>" telefona izbrisali vse podatke:\n\n"<li>"Google Račun"</li>\n<li>"Podatke in nastavitve sistema in aplikacij"</li>\n<li>"Prenesene aplikacije"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Trenutno ste prijavljeni v te račune:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"V napravi so prisotni drugi uporabniki.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Glasba"</li>\n<li>"Fotografije"</li>\n<li>"Drugi uporabniški podatki"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operaterji na digitalni kartici e-SIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"Digitalne kartice e-SIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"S tem ne boste prekinili naročniškega paketa za mobilno telefonijo."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Če želite izbrisati glasbo, slike in druge uporabniške podatke, morate izbrisati "<b>"pomnilnik USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Če želite izbrisati glasbo, slike in druge uporabniške podatke, morate izbrisati "<b>"kartico SD"</b>"."</string>
@@ -1478,21 +1490,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Vzpostavite internetno povezavo"</string>
<string name="location_title" msgid="1029961368397484576">"Moja lokacija"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Mesto za delovni profil"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Način"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Visoka natančnost"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Varč. z energijo akumulatorja"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Samo v napravi"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Lokacija je izklopljena"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Dovoljenja na ravni aplikacije"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Nedavne zahteve za lokacijo"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"V zadnjem času ni nobena aplikacija zahtevala lokacijskih podatkov"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Lokacijske storitve"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Visoka poraba akumulatorja"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Nizka poraba akumulatorja"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Način ugotavljanja lokacije"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Uporaba GPS-ja, Bluetootha, Wi-Fi-ja in mobilnih omrežij za določanje lokacije"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Uporaba Wi-Fi-ja, Bluetootha in mobilnih omrežij za določanje lokacije"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Uporaba GPS-a in tipal naprave za določanje lokacije"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Iskanje"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Iskanje omrežij Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Izboljšajte natančnost lokacijskih podatkov, tako da sistemskim aplikacijam in storitvam omogočite, da kadar koli zaznajo omrežja Wi-Fi."</string>
@@ -1514,8 +1517,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Viri lokacije"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"O tabličnem računalniku"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"O telefonu"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"O napravi"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"O emulirani napravi"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Ogled pravnih informacij, stanja, različice programske opreme"</string>
<string name="legal_information" msgid="5769301644270604095">"Pravne informacije"</string>
@@ -1623,8 +1625,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Prikaži vse aplikacije (<xliff:g id="COUNT">%1$d</xliff:g>)"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Neznane aplikacije lažje napadejo tablični računalnik in osebne podatke v njem. Če namestite aplikacije iz tega vira, se strinjate, da ste sami odgovorni za morebitno škodo, nastalo v tabličnem računalniku, ali izgubo podatkov, ki je lahko posledica uporabe teh aplikacij."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Neznane aplikacije lažje napadejo telefon in osebne podatke v njem. Če namestite aplikacije iz tega vira, se strinjate, da ste sami odgovorni za morebitno škodo, nastalo v telefonu, ali izgubo podatkov, ki je lahko posledica uporabe teh aplikacij."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Neznane aplikacije lažje napadejo napravo in osebne podatke v njej. Če namestite aplikacije iz tega vira, se strinjate, da ste sami odgovorni za morebitno škodo, nastalo v napravi, ali izgubo podatkov zaradi uporabe teh aplikacij."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Dodatne nastavitve"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Omogoči več možnosti nastavitev."</string>
<string name="application_info_label" msgid="5736524913065714880">"Podatki o aplikaciji"</string>
@@ -1926,12 +1927,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Lahko vpliva na učinkovitost delovanja"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Klik, ko se kazalec ustavi"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Zakasnitev pred klikom"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Uporaba storitve"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Uporaba popravljanja barv"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Uporaba napisov"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"VKLOPLJENO"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"IZKLOPLJENO"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Prikaži v »Hitrih nastavitvah«"</string>
@@ -2059,7 +2057,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Preostali čas: <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> do napolnjenosti"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Dejavnost v ozadju"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Omejeno"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Dovoli, da se aplikacija izvaja v ozadju"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Ko aplikacija ni v uporabi, se lahko izvaja v ozadju"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Ko aplikacija ni v uporabi, je njena dejavnost v ozadju omejena"</string>
@@ -2106,18 +2104,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikacije delujejo normalno"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Akumulator je skoraj prazen"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Akumulator ne more zagotoviti dolgega časa delovanja"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Vklopite pametnega upravitelja akumulatorja"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Vklopite za optimiziranje porabe akumulatorja"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Vklop načina za skoraj prazen akumulator"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Podaljšanje časa delovanja akumulatorja"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Vklopljen je način za skoraj prazen akumulator"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Nekatere funkcije so omejene"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefon ste veliko uporabljali"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tablični računalnik ste veliko uporabljali"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Napravo ste veliko uporabljali"</string>
@@ -2243,8 +2235,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Predstavnostni strežnik"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimizacija aplikacij"</string>
<string name="battery_saver" msgid="8172485772238572153">"Varčevanje z energijo akumulatorja"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Uporaba varčevanja z energijo akumulatorja"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Samodejni vklop"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Nikoli"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"pri <xliff:g id="PERCENT">%1$s</xliff:g> napolnjenosti akumulatorja"</string>
@@ -2432,8 +2423,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Težava pri sinhronizaciji. Kmalu bo spet na voljo."</string>
<string name="add_account_label" msgid="7811707265834013767">"Dodaj račun"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Delovni profil še ni na voljo"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Način za delo"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Omogočanje, da delovni profil deluje, vključno z aplikacijami, sinhronizacijo v ozadju in povezanimi funkcijami"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Odstrani delovni profil"</string>
<string name="background_data" msgid="5779592891375473817">"Podatki v ozadju"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikacije lahko kadar koli sinhronizirajo, pošiljajo in prejemajo podatke"</string>
@@ -2465,8 +2460,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Želite odstraniti račun?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Z odstranitvijo računa boste iz tabličnega računalnika izbrisali vsa sporočila, stike in druge podatke v računu."</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Z odstranitvijo računa boste iz telefona izbrisali vsa sporočila, stike in druge podatke v računu."</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Z odstranitvijo računa boste iz naprave izbrisali vsa sporočila, stike in druge podatke v računu."</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Skrbnik ne dovoli te spremembe"</string>
<string name="provider_label" msgid="7724593781904508866">"Potisne naročnine"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2693,7 +2687,8 @@
<item quantity="few">Preveri potrdila</item>
<item quantity="other">Preveri potrdila</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Uporabniki"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Uporabniki in profili"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Dodajanje uporabnika ali profila"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Dodaj uporabnika"</string>
@@ -2885,7 +2880,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikacije in obvestila"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Dovoljenja, privzete aplikacije"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Uporabniki in računi"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Privzete aplikacije"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Jeziki, čas, varnostno kopiranje, posodobitve"</string>
<string name="search_results_title" msgid="1796252422574886932">"Nastavitve"</string>
@@ -2916,7 +2912,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ne moti, prekinjaj, prekinitev, motnja"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"v bližini, lokacija, zgodovina, poročanje"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"natančnost"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"račun"</string>
<string name="keywords_users" msgid="3434190133131387942">"omejitev, omeji, omejeno"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"popravljanje besedila, pravilno, zvok, vibriranje, samodejno, jezik, poteza, predlaganje, predlog, tema, žaljivo, beseda, vrsta, emodžiji, mednarodno"</string>
@@ -2985,6 +2980,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> pravil</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ne moti"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Vklop načina »ne moti«"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Vedenje"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Dovoli te zvoke in vibriranja:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Brez zvoka"</string>
@@ -2994,8 +2990,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Samodejni vklop"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Samodejna pravila"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Samodejno pravilo"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Nastavi pravila za »ne moti«"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Omeji zvoke in vibriranja od določenih urah"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Uporabi pravilo"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Samo prednostno"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Samo alarmi"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Popolna tišina"</string>
@@ -3003,12 +3002,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blokiranje vizualnih motenj"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Dovoli vizualne znake"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Dodaj"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Vklopi"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Vklopi zdaj"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Izklopi zdaj"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Način »ne moti« bo vklopljen do <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Način »ne moti« bo ostal vklopljen, dokler ga ne izklopite"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Način »ne moti« je bil samodejno vklopljen na podlagi pravila (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Način »ne moti« je samodejno vklopila aplikacija (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Samo prednostno"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Zvoki v delovnem profilu"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Uporaba zvokov iz os. profila"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Zvoki v delovnem in osebnem profilu so enaki"</string>
@@ -3024,6 +3026,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Melodije zvonjenja"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Drugi zvoki in vibriranja"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Obvestila"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Nedavno poslano"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Dodatno"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Obvestila za delovni profil"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Dovoli obvestilne pike"</string>
@@ -3251,6 +3254,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Poleg tega, da napravo odklepate s prstnim odtisom, jo lahko dodatno zaščitite tako, da ob zagonu zahteva vaše geslo. Dokler se naprava ne zažene, ne more prejemati klicev, sporočil ali obvestil, vključno z alarmi.\n\nTo je v pomoč pri zaščiti podatkov v izgubljenih ali ukradenih napravah. Ali želite nastaviti zahtevo za geslo za zagon naprave?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Da"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ne"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Da"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ne"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Zahtevanje kode PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Zahtevanje vzorca?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Zahtevanje gesla?"</string>
@@ -3392,8 +3397,8 @@
<string name="high_power_off" msgid="3393904131961263278">"Optimizacija uporabe akumulatorja"</string>
<string name="high_power_system" msgid="7362862974428225301">"Optimizacija akumulatorja ni na voljo"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Ne uporabljaj optimizacije akumulatorja. Akumulator se lahko hitreje izprazni."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Želite omogočiti, da se aplikacija neprekinjeno izvaja v ozadju?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"Če omogočite, da se <xliff:g id="APP_NAME">%1$s</xliff:g> neprekinjeno izvaja v ozadju, to lahko skrajša čas delovanja akumulatorja. \n\nNastavitev lahko pozneje spremenite v »Nastavitve > Aplikacije in obvestila«."</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Želite omogočiti stalno izvajanje aplikacije v ozadju?"</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"Če omogočite aplikaciji <xliff:g id="APP_NAME">%1$s</xliff:g> stalno izvajanje v ozadju, lahko to skrajša čas delovanja na akumulatorsko napajanje. \n\nNastavitev lahko pozneje spremenite v »Nastavitve > Aplikacije in obvestila«."</string>
<string name="battery_summary" msgid="8044042095190688654">"<xliff:g id="PERCENTAGE">%1$s</xliff:g> uporabe od zadnje polne napolnjenosti"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Upravljanje napajanja"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"Akumulator ni bil uporabljen od zadnje polne napolnjenosti"</string>
@@ -3539,7 +3544,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Trenutni uporabnik: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Prijavljeni ste kot <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> je privzeta aplikacija"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"VKLOPLJENO/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"IZKLOPLJENO"</string>
<string name="backup_disabled" msgid="485189128759595412">"Varnostno kopiranje je onemogočeno"</string>
<string name="about_summary" msgid="924181828102801010">"Posodobljeno na Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3549,6 +3555,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Pošiljanje sporočil SMS ni omogočeno"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Fotoaparat ni omogočen"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Ustvarjanje posnetka zaslona ni omogočeno"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Varnostnega kopiranja ni mogoče izklopiti"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"To dejanje je onemogočeno. Če želite izvedeti več, se obrnite na skrbnika organizacije."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Več podrobnosti"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Skrbnik lahko nadzira in upravlja aplikacije ter podatke, povezane s tem delovnim profilom, vključno z nastavitvami, dovoljenji, dostopom za podjetje, omrežno dejavnostjo in podatki o lokaciji naprave."</string>
@@ -3572,9 +3579,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"Delovni profil je izklopljen"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Aplikacije, sinhronizacija v ozadju in druge funkcije, povezane z delovnim profilom, so izklopljeni."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Nastavi razpored za nočno svetlobo"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Jantarno obarvanje zaslona, da lažje zaspite"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Nočna svetloba je vklopljena"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Zaslon ima jantarni odtenek. To vam lahko pomaga prej zaspati."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Predlagano za vas"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Predlogi"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"in še <xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"in še <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3687,6 +3696,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"brez"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Manjka predmet za uvrščanje."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Predmet za uvrščanje ne vsebuje tega ključa."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulacija prikaza z izrezom"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Brez"</string>
<string name="special_access" msgid="3458780842491881155">"Posebni dostop za aplikacije"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> aplikaciji je dovoljen neomejen prenos podatkov</item>
@@ -3711,10 +3722,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Povezan z več napravami"</string>
<string name="demo_mode" msgid="2798762752209330277">"Predstavitveni način uporabniškega vmesnika sistema"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Ploščice razvijalcev za hitre nastavitve"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Sled okna"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Sled površinske plasti"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Nastavitve delovnega profila"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Iskanje po stikih"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Organizaciji dovoli iskanje po stikih zaradi prepoznavanja klicateljev in stikov"</string>
@@ -3740,8 +3749,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Upravitelj shrambe vam pomaga sprostiti prostor za shranjevanje, tako da iz naprave odstrani varnostno kopirane fotografije in videoposnetke."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Odstranjevanje fotografij in videoposnetkov"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Upravitelj shrambe"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Uporaba upravitelja shrambe"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Samodejno"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Ročno"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Sprostitev prostora"</string>
@@ -3752,32 +3760,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Preklop na fotoaparat"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Če želite hitro odpreti fotoaparat, dvakrat pritisnite gumb za vklop. Deluje na vsakem zaslonu."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Hitro odpiranje fotoaparata"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Odpiranje fotoaparata z dvakratnim pritiskom gumba za vklop"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Obrat fotoaparata"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Hitrejši vklop načina za sebke"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Vklop načina za sebke z dvojnim zasukom telefona"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Vklop načina za sebke z dvojnim zasukom tablice"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Vklop načina za sebke z dvojnim zasukom naprave"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Dvakrat se dotaknite, da preverite telefon"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Dvakrat se dotaknite, da preverite tablični računalnik"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Dvakrat se dotaknite, da preverite napravo"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Če želite preveriti uro, ikone obvestil in druge informacije, se dvakrat dotaknite zaslona."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Preverjanje obvestil pri izklopljenem zaslonu"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Preverjanje telefona z dvigom"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Primite tablični računalnik, da ga preverite"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Primite napravo, da jo preverite"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Če želite preveriti uro, ikone obvestil in druge informacije, dvignite telefon."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Če želite preveriti uro, ikone obvestil in druge informacije, primite tablični računalnik."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Če želite preveriti uro, ikone obvestil in druge informacije, primite napravo."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Preverjanje obvestil pri izklopljenem zaslonu"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Poteg s prstom po tipalu prstnih odtisov za prikaz obvestil"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Poteg po prstnem tipalu"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Če želite preveriti obvestila, povlecite navzdol po tipalu prstnih odtisov na hrbtni strani telefona."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Če želite preveriti obvestila, povlecite navzdol po tipalu prstnih odtisov na hrbtni strani tabličnega računalnika."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Če želite preveriti obvestila, povlecite navzdol po tipalu prstnih odtisov na hrbtni strani naprave."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Hiter ogled obvestil"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Vlečenje navzdol po tipalu prstnih odtisov"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Vklopljeno"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Izklopljeno"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Nalagalnik zagona je že odklenjen"</string>
@@ -3923,8 +3924,24 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ta funkcija ni na voljo v tej napravi."</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Vsili popolne meritve GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Spremljaj vse razmestitve in frekvence GNSS brez ciklov"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Vedno pokaži pogovorno okno zrušitve"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Pokaži pogovorno okno ob vsaki zrušitvi aplikacije"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Dostop do imenika"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"dostop do imenika"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-sq/arrays.xml b/res/values-sq/arrays.xml
index b40152d..92e363f 100644
--- a/res/values-sq/arrays.xml
+++ b/res/values-sq/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Shtyp butonin"</item>
<item msgid="1624323946324499595">"Kodi PIN nga pajisja homologe"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 orë"</item>
<item msgid="5198271470953124739">"Skadim të kohës së veprimit, asnjëherë!"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (I parazgjedhur)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"I dobët"</item>
<item msgid="2042505933058940139">"I dobët"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Mbi 60 ditë të vjetra"</item>
<item msgid="5692284879054004388">"Mbi 90 ditë të vjetra"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Përdor preferencën e rrjetit"</item>
+ <item msgid="8745603368609022803">"Trajto si me matje"</item>
+ <item msgid="2266114985518865625">"Trajto si pa matje"</item>
+ </string-array>
</resources>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 87bfef1..80fa88f 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Pajisjet e tua"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Çifto pajisjen e re"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Lejo pajisjen të çiftohet e të lidhet me pajisjet me Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Çaktivizo zilen brenda të njëjtit brez"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Mos luaj zile telefoni të personalizuara në kufjet me Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Të lidhur aktualisht"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Pajisjet e ruajtura"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Shto pajisje"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Vendos datën"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Rendit alfabetikisht"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Rendit sipas brezit orar"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> fillon më <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Ora verore"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Ora standarde"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Brezi orar sipas rajonit"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Brezat orarë me ndryshime fikse"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Data"</string>
<string name="time_picker_title" msgid="483460752287255019">"Ora"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Kyçja automatike"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Mesazhi i ekranit të kyçjes"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Aktivizo miniapl."</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Çaktivizuar nga administratori"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Shfaq opsionin e bllokimit"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Shfaq opsionin e butonit të energjisë që çaktivizon qasjen e zgjeruar dhe shkyçjen me gjurmën e gishtit."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Asnjë"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"P.sh., pajisja Android e Admirit."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Inform. i profilit"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Llogaritë"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Vendndodhja"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Përdor vendndodhjen"</string>
<string name="account_settings_title" msgid="626177544686329806">"Llogaritë"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Siguria dhe vendndodhja"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Enkriptimi dhe kredencialet"</string>
@@ -459,9 +469,11 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Fjalëkalimi që fute është i saktë, por fatkeqësisht të dhënat e tua janë të dëmtuara. \n\nPër të rifilluar përdorimin e tabletit, duhet të kryesh një vendosje në gjendje fabrike. Pas kësaj, do të kesh mundësinë për të restauruar çdo të dhënë që është rezervuar në llogarinë e Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Fjalëkalimi që fute është i saktë, por fatkeqësisht të dhënat e tua janë të dëmtuara. \n\nPër të rifilluar përdorimin e telefonit, duhet të kryesh një vendosje në gjendje fabrike. Pas kësaj, do të kesh mundësinë për të restauruar çdo të dhënë që është rezervuar në llogarinë e Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Ndërro metodën e hyrjes"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Vendos kyçjen e ekranit"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Mbroje pajisjen tënde"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Përdor gjurmën e gishtit"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Cakto kyçjen e ekranit për siguri"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Parandalo që të tjerët të mos e përdorin tabletin tënd"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Parandalo që të tjerët të mos e përdorin pajisjen tënde"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Parandalo që të tjerët të mos e përdorin telefonin tënd"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Shkyçe me gjurmën e gishtit"</string>
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Shkyçe me gjurmën e gishtit"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Zgjidh kyçjen e ekranit"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Zgjidh kyçjen e punës"</string>
@@ -691,6 +703,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Si altoparlant"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"Për muzikë dhe media"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Kujto cilësimet"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Numri maksimal i pajisjeve të lidhura audio me Bluetooth"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Zgjidh numrin maksimal të pajisjeve të lidhura audio me Bluetooth"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Transmetimi"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Aktivizo shfaqjen e rrjetit valor"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Nuk u gjet asnjë pajisje në afërsi."</string>
@@ -705,6 +719,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Emri"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2,4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Identifikohu"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> kërkon të aktivizojë Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> kërkon të çaktivizojë Wi-Fi"</string>
@@ -722,6 +737,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Aktivizo Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Përdor Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Cilësimet e Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Cakto dhe menaxho zonat e qasjes të rrjetit me valë"</string>
@@ -816,6 +832,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Fjalëkalimi"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Shfaq fjalëkalimin"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Zgjidh bandën AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Automatik"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Bandë 2,4 GHz"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Bandë 5 GHz"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Cilësimet e IP-së"</string>
@@ -833,7 +850,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (Ofrohet WPS)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Fut fjalëkalimin e rrjetit"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Rrjeti Wi-Fi i operatorit celular"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"E lidhur përmes <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"E lidhur përmes <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Për të përmirësuar saktësinë e vendndodhjes dhe për qëllime të tjera, <xliff:g id="APP_NAME">%1$s</xliff:g> dëshiron të aktivizojë skanimin e rrjetit, edhe kur Wi-Fi është joaktiv.\n\nTë lejohet kjo për të gjitha aplikacionet që dëshirojnë të skanojnë?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Për ta çaktivizuar këtë, shko te \"Të përparuara\" në menynë e tejkalimit."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Lejo"</string>
@@ -909,10 +926,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"Brezi AP"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Përdor zonën e qasjes së internetit për të krijuar një rrjet Wi‑Fi për pajisjet e tua të tjera. Zona e qasjes e internetit ofron internet duke përdorur lidhjen e të dhënave celulare. Mund të zbatohen tarifa shtesë për të dhënat celulare."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Aplikacionet mund të krijojnë një zonë qasjeje të internetit për të ndarë përmbajtje me pajisjet në afërsi."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Çaktivizo automatikisht zonën e qasjes për internet"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Zona e qasjes për internet e Wi‑Fi do të çaktivizohet nëse nuk është lidhur asnjë pajisje"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Po aktivizon zonën e qasjes..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Po çaktivizon zonën e qasjes..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> është aktiv"</string>
@@ -923,7 +938,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Zona Android e qasjes së lirë për internet"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Telefonata me Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Aktivizo \"Telefonatën me Wi-Fi\""</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Përdor Wi-Fi në vend të rrjetit celular"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Zgjero mbulimin duke telefonuar nëpërmjet Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Preferenca e telefonatës"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Modaliteti i telefonatës me Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Preferenca e roaming-ut"</string>
@@ -961,6 +976,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Adresa e urgjencës"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Përdoret si vendndodhja jote kur kryen një telefonatë urgjence me Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Mëso më shumë"</annotation>" rreth funksioneve të \"DNS-së private\""</string>
<string name="display_settings_title" msgid="1708697328627382561">"Paraqitja"</string>
<string name="sound_settings" msgid="5534671337768745343">"Tingulli"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Volumet"</string>
@@ -1175,6 +1191,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Lloji i rrjetit celular"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Informacioni i operatorit"</string>
<string name="status_data_state" msgid="5503181397066522950">"Gjendja e rrjetit celular"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Gjendja e shërbimit"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Fuqia e sinjalit"</string>
<string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
@@ -1308,6 +1325,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"<xliff:g id="NAME">^1</xliff:g> po funksionon. \n\nPër të zhvendosur fotografitë, skedarët dhe të dhënat e aplikacioneve te kjo pajisje, shko te Cilësimet > Hapësira ruajtëse."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Zhvendos <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Zhvendosja e aplikacionit <xliff:g id="APP">^1</xliff:g> dhe të dhënave të tij te <xliff:g id="NAME_0">^2</xliff:g> do të zgjasë vetëm pak çaste. Nuk do të jesh në gjendje ta përdorësh aplikacionin derisa zhvendosja të përfundojë. \n\n<xliff:g id="NAME_1">^2</xliff:g> nuk duhet të hiqet gjatë zhvendosjes."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Për të hequr të dhënat të nevojitet të shkyçësh përdoruesin <xliff:g id="APP">^1</xliff:g>."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Po zhvendos <xliff:g id="APP">^1</xliff:g> ..."</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Mos e hiq kartën <xliff:g id="NAME">^1</xliff:g> gjatë zhvendosjes. \n\nAplikacioni <xliff:g id="APP">^2</xliff:g> në këtë pajisje nuk do të mund të përdoret derisa të përfundojë zhvendosja."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Anulo zhvendosjen"</string>
@@ -1360,19 +1378,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Rrjeti, aplikacionet ose pajisja mund të rivendosen"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Rivendos Wi-Fi, lidhjen celulare dhe Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Kjo do të rivendosë të gjitha cilësimet e rrjetit, duke përfshirë:\n\n"<li>"Wi‑Fi"</li>\n<li>"Të dhënat celulare"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Rivendos gjithashtu kartat eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Spastro të gjitha kartat eSIM në telefon. Do të duhet të kontaktosh me operatorin celular për të rishkarkuar kartat e tua eSIM. Kjo nuk do të anulojë planin tënd të shërbimit celular."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Rivendos cilësimet"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Të rivendosen të gjitha cilësimet e rrjetit? Ky veprim nuk mund të zhbëhet!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Rivendos cilësimet"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Të rivendosen?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Rivendosja e rrjetit nuk është e disponueshme për këtë përdorues"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Cilësimet e rrjetit janë rivendosur"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Kartat eSIM nuk mund të rivendosen"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Kartat eSIM nuk mund të rivendosen për shkak të një gabimi."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Spastro të gjitha të dhënat (rivendosja e fabrikës)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Kjo do t\'i fshijë të gjitha të dhënat nga "<b>"hapësira e brendshme për ruajtje"</b>" e tabletit, përfshirë:\n\n"<li>"Llogarinë e Google"</li>\n<li>"Të dhënat e sistemit dhe aplikacioneve si dhe cilësimet"</li>\n<li>"Aplikacionet e shkarkuara"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Kjo do t\'i fshijë të gjitha të dhënat nga "<b>"hapësira e brendshme për ruajtje"</b>" e telefonit, përfshirë:\n\n"<li>"Llogarinë e Google"</li>\n<li>"Të dhënat e sistemit dhe aplikacioneve si dhe cilësimet"</li>\n<li>"Aplikacionet e shkarkuara"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Je i identifikuar aktualisht në llogaritë e mëposhtme:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Ka përdorues të tjerë të pranishëm në këtë pajisje.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Muzika"</li>\n<li>"Fotografitë"</li>\n<li>"Të dhëna të tjera të përdoruesit"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Operatorët celularë në eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"Kartat eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Kjo nuk do ta anulojë planin tënd të shërbimit celular."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Për të hequr muzikën, fotografitë dhe të dhëna të tjera të përdoruesit, "<b>"hapësira ruajtëse e USB-së"</b>" duhet të spastrohet."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Për të hequr muzikën, fotografitë dhe të dhëna të tjera të përdoruesit, "<b>"karta SD"</b>" duhet të spastrohet."</string>
@@ -1432,21 +1454,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Lidhu me internetin"</string>
<string name="location_title" msgid="1029961368397484576">"Vendndodhja ime"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Vend. për profilin e punës"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Modaliteti"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Saktësi e lartë"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Kursimi i baterisë"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Vetëm pajisja"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Vendndodhja është çaktivizuar"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Lejet në nivel aplikacioni"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Kërkesat e vendndodhjeve të fundit"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Asnjë aplikacion nuk ka kërkuar vendndodhje kohët e fundit"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Shërbimet e vendndodhjes"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Përdorimi i lartë i baterisë"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Përdorim i ulët baterie"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Vendndodhja"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Përdor funksionin GPS, Wi‑Fi, Bluetooth ose rrjetet celulare për të përcaktuar vendndodhjen"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Përdor funksionin Wi‑Fi, Bluetooth ose rrjetet celulare për të përcaktuar vendndodhjen"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Përdor GPS-në dhe sensorët e pajisjes për të përcaktuar vendndodhjen"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Po skanon"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Skanimi i Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Përmirëso vendndodhjen duke lejuar aplikacionet dhe shërbimet e sistemit të zbulojnë rrjetet Wi-Fi në çdo kohë."</string>
@@ -1468,6 +1481,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Burimet e vendndodhjes"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Rreth tabletit"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Informacion mbi telefonin"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Informacione rreth pajisjes"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Rreth emulatorit"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Shiko informacionin ligjor, statusin dhe versionin e softuerit"</string>
<string name="legal_information" msgid="5769301644270604095">"Informacioni ligjor"</string>
@@ -1575,6 +1589,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Shiko të <xliff:g id="COUNT">%1$d</xliff:g> aplikacionet"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Tableti dhe të dhënat e tua personale janë më të cenueshme për t\'u sulmuar nga aplikacione të panjohura. Duke instaluar aplikacionet nga ky burim, ti pranon se je plotësisht përgjegjës për çdo dëm ndaj tabletit ose çdo humbje të dhënash që mund të rezultojë nga përdorimi i tyre."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Telefoni dhe të dhënat e tua personale janë më të cenueshme për t\'u sulmuar nga aplikacione të panjohura. Duke instaluar aplikacionet nga ky burim, ti pranon se je plotësisht përgjegjës për çdo dëm ndaj telefonit ose çdo humbje të dhënash që mund të rezultojë nga përdorimi i tyre."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Pajisja dhe të dhënat e tua personale janë më të cenueshme nga sulmet nga aplikacionet e panjohura. Duke instaluar aplikacionet nga ky burim, ti pranon se je përgjegjës për çdo dëm ndaj pajisjes tënde ose çdo humbje të të dhënave që mund të rezultojë nga përdorimi i tyre."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Cilësimet e përparuara"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Aktivizo më shumë opsione të cilësimeve"</string>
<string name="application_info_label" msgid="5736524913065714880">"Informacioni i apl."</string>
@@ -1874,6 +1889,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Mund të ndikojë te cilësia e funksionimit"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Kliko pasi kursori të ndalojë së lëvizuri"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Vonesa përpara klikimit"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Përdor shërbimin"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Përdor korrigjimin e ngjyrave"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Përdor titrat"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"AKTIVE"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"JOAKTIVE"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Shfaq në Cilësimet e shpejta"</string>
@@ -1987,7 +2005,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> të mbetura"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> për të ngarkuar"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Aktiviteti në sfond"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"I kufizuar"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Lejo që aplikacioni të ekzekutohet në sfond"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Aplikacioni mund të ekzekutohet në sfond kur nuk është në përdorim."</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Aktiviteti në sfond i aplikacionit është i kufizuar kur nuk është në përdorim"</string>
@@ -2030,14 +2048,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Po e zgjon pajisjen në sfond"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Po kërkon shpesh vendndodhjen"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> aplikacione kanë sjellje jonormale"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Bateria është në formë të mirë"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Aplikacionet sillen normalisht"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Kapacitet i ulët i baterisë"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Bateria nuk mund të ofrojë jetëgjatësi të mirë"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Aktivizo menaxherin e baterisë inteligjente"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Aktivizoje për të optimizuar përdorimin e baterisë"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Aktivizo modalitetin e \"Baterisë së ulët\""</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Zgjat jetëgjatësinë e baterisë"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Modaliteti i \"Baterisë së ulët\" është aktiv"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Disa funksione janë të kufizuara"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefoni është përdorur shumë"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Tableti është përdorur shumë"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Pajisja është përdorur shumë"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Përdorur për rreth <xliff:g id="HOUR">%1$s</xliff:g> që nga ngarkimi i fundit i plotë"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Telefoni është përdorur shumë dhe kjo gjë ka konsumuar shumë bateri. Bateria jote po sillet në mënyrë normale.\n\n Telefoni yt është përdorur për rreth <xliff:g id="HOUR">%1$s</xliff:g> që nga ngarkimi i fundit i plotë.\n\n Përdorimi në total:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Tableti është përdorur shumë dhe kjo gjë ka konsumuar shumë bateri. Bateria jote po sillet në mënyrë normale.\n\n Tableti yt është përdorur për rreth <xliff:g id="HOUR">%1$s</xliff:g> që nga ngarkimi i fundit i plotë.\n\n Përdorimi në total:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Pajisja është përdorur shumë dhe kjo gjë ka konsumuar shumë bateri. Bateria jote po sillet në mënyrë normale.\n\n Pajisja jote është përdorur për rreth <xliff:g id="HOUR">%1$s</xliff:g> që nga ngarkimi i fundit i plotë.\n\n Përdorimi në total:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Menaxheri inteligjent i baterisë"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Menaxho automatikisht baterinë"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Përshtat automatikisht përdorimin e energjisë nga aplikacionet në bazë të përdorimit"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Aplikacionet e kufizuara"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d aplikacione</item>
+ <item quantity="one">%1$d aplikacion</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Të ndalohet aplikacioni?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Telefoni yt nuk mund ta menaxhojë baterinë në mënyrë normale pasi aplikacioni <xliff:g id="APP">%1$s</xliff:g> po e mban zgjuar telefonin.\n\nPër t\'u përpjekur të zgjidhësh këtë problem, mund ta ndalosh aplikacionin.\n\nNëse kjo vazhdon të ndodhë, mund të jetë e nevojshme ta çinstalosh aplikacionin për të përmirësuar cilësinë e funksionimit të baterisë."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Tableti yt nuk mund ta menaxhojë baterinë në mënyrë normale pasi aplikacioni <xliff:g id="APP">%1$s</xliff:g> po e mban zgjuar tabletin.\n\nPër t\'u përpjekur të zgjidhësh këtë problem, mund ta ndalosh aplikacionin.\n\nNëse kjo vazhdon të ndodhë, mund të jetë e nevojshme ta çinstalosh aplikacionin për të përmirësuar cilësinë e funksionimit të baterisë."</string>
@@ -2146,6 +2181,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Serveri i medias"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Optimizimi i aplikacionit"</string>
<string name="battery_saver" msgid="8172485772238572153">"Kursyesi i baterisë"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Përdor \"Kursyesin e baterisë\""</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Aktivizim automatikisht"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Asnjëherë"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"me <xliff:g id="PERCENT">%1$s</xliff:g> bateri"</string>
@@ -2333,8 +2369,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sinkronizimi ka aktualisht probleme. Do të ofrohet sërish së shpejti."</string>
<string name="add_account_label" msgid="7811707265834013767">"Shto një llogari"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Profili i punës nuk ofrohet ende"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Modaliteti i punës"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Lejoje profilin e punës të funksionojë, duke përfshirë aplikacionet, sinkronizimin në sfond dhe funksionet e lidhura"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Profili i punës"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Menaxhohet nga organizata jote"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Aplikacionet dhe njoftimet janë joaktive"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Hiq profilin e punës"</string>
<string name="background_data" msgid="5779592891375473817">"Të dhënat në sfond"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Aplikacionet mund të sinkronizojnë, dërgojnë dhe marrin të dhëna në çdo kohë"</string>
@@ -2366,6 +2403,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Të hiqet llogaria?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Heqja e kësaj llogarie do të fshijë të gjitha mesazhet, kontaktet dhe të dhëna të tjera të saj nga tableti!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Heqja e kësaj llogarie do të fshijë nga telefoni të gjitha mesazhet dhe kontaktet e saj, si dhe të dhëna të tjera!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Heqja e kësaj llogarie do të fshijë të gjitha mesazhet, kontaktet e saj dhe të dhëna të tjera nga pajisja!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Ky ndryshim nuk lejohet nga administratori yt"</string>
<string name="provider_label" msgid="7724593781904508866">"Abonimet me shtytje"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2622,8 @@
<item quantity="other">Kontrollo certifikatat</item>
<item quantity="one">Kontrollo certifikatën</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Përdoruesit"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Përdoruesit dhe profilet"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Shto një përdorues ose një profil"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Shto përdorues"</string>
@@ -2774,7 +2813,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Transmetimi"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Aplikacionet dhe njoftimet"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Lejet, aplikacionet e parazgjedhura"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Përdoruesit dhe llogaritë"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Aplikacionet e parazgjedhura"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Gjuhët, koha, rezervimi, përditësimet"</string>
<string name="search_results_title" msgid="1796252422574886932">"Cilësimet"</string>
@@ -2805,7 +2845,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"mos, mos shqetëso, ndërprit, ndërprerje, pushim"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"në afërsi, vendndodhje, historik, raportim"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"saktësia"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"llogaria"</string>
<string name="keywords_users" msgid="3434190133131387942">"kufizimi, kufizo, të kufizuara"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"korrigjim teksti, saktë, zë, dridhje, automatike, gjuhë, gjest, sugjero, sugjerim, temë, ofenduese, fjalë, emoji. ndërkombëtare"</string>
@@ -2872,6 +2911,7 @@
<item quantity="one">1 rregull</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Mos shqetëso"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Aktivizo \"Mos shqetëso\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Sjellja"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Lejo tingujt dhe dridhjet nga"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Asnjë tingull"</string>
@@ -2881,8 +2921,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Aktivizo automatikisht"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Rregullat automatike"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Rregulli automatik"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Cakto rregullat për \"Mos shqetëso\""</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Kufizo tingujt dhe dridhjet në kohë të caktuara"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Vendose telefonin në heshtje në kohë të caktuara"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Cakto rregullat për \"Mos shqetëso\""</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Përdor rregullin"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Vetëm njoftimet me prioritet"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Vetëm alarmet"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Heshtje e plotë"</string>
@@ -2890,12 +2931,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Blloko shqetësimet vizuale"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Lejo sinjalet vizuale"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Shto"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"AKTIVIZO TANI"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"ÇAKTIVIZO TANI"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Aktivizo"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Aktivizo tani"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Çaktivizo tani"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Modaliteti \"Mos shqetëso\" është aktiv deri në <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Modaliteti \"Mos shqetëso\" do të qëndrojë aktiv deri sa ta çaktivizosh"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Modaliteti \"Mos shqetëso\" është aktivizuar automatikisht nga një rregull <xliff:g id="RULE_NAME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Modaliteti \"Mos shqetëso\" është aktivizuar automatikisht nga një aplikacion <xliff:g id="APP_NAME">%s</xliff:g>"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Vetëm me prioritet"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Tingujt e profilit të punës"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Përdor tingujt e profilit personal"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Tingujt janë të njëjtë për profilin tënd personal dhe atë të punës"</string>
@@ -2911,6 +2955,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Zilet"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Tinguj dhe dridhje të tjera"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Njoftime"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Dërguar së fundi"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Të përparuara"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Njoftimet e punës"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Lejo pikat e njoftimeve"</string>
@@ -2930,7 +2975,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Njoftimet e apl."</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Kategoria e njoftimeve"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Grupi i kategorisë së njoftimeve"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Rëndësia"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Sjellja"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Lejo tingullin"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Mos i shfaq asnjëherë njoftimet"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Asnjë tingull apo ndërprerje vizuale"</string>
@@ -2948,6 +2993,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Rëndësi mesatare"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Rëndësi e lartë"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Rëndësi urgjente"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Shfaq njoftimet"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Asistenti i njoftimeve"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Qasja te njoftimet"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Qasja në njoftimet e profilit të punës është bllokuar"</string>
@@ -2978,9 +3024,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Qasja te \"Mos shqetëso\""</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Asnjë aplikacion i instaluar nuk ka kërkuar qasje te \"Mos shqetëso\""</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Po ngarkon aplikacionet..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android po bllokon shfaqjen e njoftimeve të këtij aplikacioni në këtë pajisje"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android po bllokon shfaqjen e kësaj kategorie njoftimesh në këtë pajisje"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android po bllokon shfaqjen e këtij grupi njoftimesh në këtë pajisje"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Me kërkesën tënde, Android po bllokon shfaqjen e njoftimeve të këtij aplikacioni në këtë pajisje"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Me kërkesën tënde, Android po bllokon shfaqjen e kësaj kategorie njoftimesh në këtë pajisje"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Me kërkesën tënde, Android po bllokon shfaqjen e këtij grupi njoftimesh në këtë pajisje"</string>
<string name="notification_channels" msgid="5346841743182627500">"Kategoritë"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Të tjera"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3171,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Përveç përdorimit të gjurmës të gishtit për të shkyçur pajisjen tënde, mund ta mbrosh edhe më shumë këtë pajisje duke kërkuar fjalëkalimin tënd para se të niset. Deri sa pajisja të niset, ajo nuk mund të marrë telefonata, mesazhe apo njoftime, duke përfshirë alarmet.\n\nKjo ndihmon për mbrojtjen e të dhënave në pajisjet e humbura ose të vjedhura. Të kërkohet fjalëkalimi për të nisur pajisjen?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Po"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Jo"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Po"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Jo"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Të kërkohet kodi PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Të kërkohet motivi?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Të kërkohet fjalëkalim?"</string>
@@ -3397,7 +3445,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Përdoruesi aktual: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Identifikuar si <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> është i parazgjedhur"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"AKTIV / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"JOAKTIV"</string>
<string name="backup_disabled" msgid="485189128759595412">"Rezervimi u çaktivizua"</string>
<string name="about_summary" msgid="924181828102801010">"Përditësuar në Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3407,6 +3456,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Mesazhi SMS nuk lejohet"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kamera nuk lejohet"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Pamja e ekranit nuk lejohet"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Nuk mund çaktivizohen rezervimet"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Ky veprim është çaktivizuar. Kontakto me administratorin e organizatës tënde për të mësuar më shumë."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Më shumë detaje"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administratori yt mund të monitorojë dhe të menaxhojë aplikacionet dhe të dhënat e lidhura me profilin tënd të punës, duke përfshirë cilësimet, lejet, qasjen e korporatës, aktivitetin e rrjetit dhe informacionet e vendndodhjes së pajisjes."</string>
@@ -3430,9 +3480,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Profili i punës është i çaktivizuar"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Janë çaktivizuar aplikacionet, sinkronizimi në sfond dhe veçoritë e tjera që lidhen me profilin e punës."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Vendos planifikimin e \"Dritës së natës\""</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Cakto ekranin në nuancën e qelibarit për të të ndihmuar të flesh"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Cakto automatikisht një nuancë të ekranit çdo natë"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"\"Drita e natës\" është aktive"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ekrani është me nuancë qelibari. Kjo mund të të ndihmojë të biesh në gjumë."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Të sugjeruara për ty"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Sugjerime"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> të tjera"</string>
@@ -3537,6 +3588,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"asnjë"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Objekti i renditjes mungon."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Objekti i renditjes nuk e përmban këtë çelës."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Simulo një ekran me prerje"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Asnjë"</string>
<string name="special_access" msgid="3458780842491881155">"Qasja e veçantë e aplikacionit"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> aplikacione mund të përdorin të dhëna të pakufizuara</item>
@@ -3559,31 +3612,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Lidhur me shumë pajisje"</string>
<string name="demo_mode" msgid="2798762752209330277">"Modaliteti i demonstrimit i ndërfaqes së përdoruesit të sistemit"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Pllakëzat e zhvilluesit të cilësimeve të shpejta"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Ne jemi këtu për të ndihmuar"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Ne jemi këtu për ty 24 orë në ditë"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Ne jemi këtu për ty 24 orë në ditë"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Ekipi ynë i mbështetjes është këtu për t\'iu përgjigjur çdo problemi"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Ekipi ynë i mbështetjes është i disponueshëm gjatë të gjithë ditës, çdo ditë"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Kërko ndihmë ose kthehu sërish gjatë orarit lokal të mbështetjes (ora lokale):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Orari i mbështetjes me telefon (ora lokale)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Kërko ndihmë ose kërko te këshillat dhe marifetet"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Mbështetje për:"</string>
- <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Po udhëton jashtë vendit?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Mund të aplikohen tarifa ndërkombëtare"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Telefoni"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Biseda"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Eksploro këshillat dhe të fshehtat"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Kërko për ndihmë dhe dërgo komente"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Kontakto me ndihmën"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Identifikohu"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Nuk mund të identifikohesh?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Dërgo informacionet e sistemit"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Mos e shfaq përsëri"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Po kërkon si"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Shto llogari"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Informacioni i sistemit"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Gjurma e dritares"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Gjurmimi i sipërfaqes"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Cilësimet e profilit të punës"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kërkimi i kontakteve"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Lejo kërkimet e kontakteve nga organizata jote për të identifikuar telefonuesit dhe kontaktet"</string>
@@ -3599,11 +3629,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> sekonda</item>
<item quantity="one">1 sekondë</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Pritja ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Menaxho hapësirën ruajtëse"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Për të ndihmuar në lirimin e hapësirës ruajtëse, menaxheri i hapësirës ruajtëse i heq fotografitë dhe videot e rezervuara nga pajisja jote."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Hiq fotografitë dhe videot"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Menaxheri i hapësirës ruajtëse"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Përdor \"Menaxherin e hapësirës ruajtëse\""</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Automatike"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Manual"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Liro hapësirën tani"</string>
@@ -3614,32 +3644,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Kalo te kamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Për të hapur me shpejtësi kamerën, shtyp dy herë te butoni i energjisë. Funksionon nga çdo ekran."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Hap kamerën me shpejtësi"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Shtyp dy herë butonin e energjisë për të hapur kamerën"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Rrotulloje kamerën"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Bëj selfi më shpejt"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Rrotullo dy herë telefonin për modalitetin për selfi"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Rrotullo dy herë tabletin për modalitetin për selfi"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Rrotullo dy herë pajisjen për modalitetin për selfi"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Trokit dy herë për të kontrolluar telefonin"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Trokit dy herë për të kontrolluar tabletin"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Trokit dy herë për të kontrolluar pajisjen"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Për të kontrolluar orën, ikonat e njoftimeve dhe informacione të tjera, trokit dy herë tek ekrani."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Kontrollo njoftimet kur ekrani është joaktiv"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Ngrije për ta kontrolluar telefonin"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Ngrije për ta kontrolluar tabletin"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Ngrije për ta kontrolluar pajisjen"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Për të kontrolluar orën, ikonat e njoftimeve dhe informacione të tjera, merre telefonin në dorë."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Për të kontrolluar orën, ikonat e njoftimeve dhe informacione të tjera, merre në duar tabletin tënd."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Për të kontrolluar orën, ikonat e njoftimeve dhe informacione të tjera, merre në duar pajisjen tënde."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Kontrollo njoftimet kur ekrani është joaktiv"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Rrëshqit shpejt gjurmën e gishtit për njoftimet"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Rrëshqit gjurmën e gishtit"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Për të kontrolluar njoftimet, rrëshqit poshtë në sensorin e gjurmës së gishtit në pjesën e pasme të telefonit."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Për të kontrolluar njoftimet, rrëshqit poshtë në sensorin e gjurmës së gishtit në pjesën e pasme të tabletit."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Për të kontrolluar njoftimet, rrëshqit poshtë në sensorin e gjurmës së gishtit në pjesën e pasme të pajisjes."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Shiko njoftimet me shpejtësi"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Rrëshqit shpejt poshtë mbi sensorin e gishtit"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Aktiv"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Joaktiv"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Ngarkuesi i sistemit është i shkyçur tashmë"</string>
@@ -3769,8 +3792,19 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Zhvillo një turne të tabletit tënd të ri"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Zhvillo një turne të pajisjes sate të re"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ky funksion nuk ofrohet në këtë pajisje"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Matjet GNSS me fuqi të plotë"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Gjurmo të gjitha koleksionet dhe frekuencat e GNSS pa ciklim të detyruar"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Gjithmonë shfaq dialogun e ndërprerjes aksidentale"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Shfaq dialogun sa herë që një aplikacion pëson ndërprerje aksidentale"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Qasja në direktori"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"qasja në direktori"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Telefoni im"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Tableti im"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Pajisja ime"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Llogaria"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Emri i pajisjes"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Përdor Bluetooth kur je në makinë"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Aktivizo Bluetooth-in automatikisht gjatë drejtimit të makinës"</string>
</resources>
diff --git a/res/values-sw/arrays.xml b/res/values-sw/arrays.xml
index 4374d27..acaf6cb 100644
--- a/res/values-sw/arrays.xml
+++ b/res/values-sw/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Kichupo cha kusukuma"</item>
<item msgid="1624323946324499595">"PIN kutoka kwa kifaa cha rika"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"Saa 1"</item>
<item msgid="5198271470953124739">"Kamwe muda usiishe"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (Chaguo-msingi)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"Mbaya"</item>
<item msgid="2042505933058940139">"Dhaifu"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"Zilizokaa zaidi ya siku 60"</item>
<item msgid="5692284879054004388">"Zilizokaa zaidi ya siku 90"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"Tumia mapendeleo ya mtandao"</item>
+ <item msgid="8745603368609022803">"Tumia kama mtandao unaopima data"</item>
+ <item msgid="2266114985518865625">"Tumia kama mtandao usiopima data"</item>
+ </string-array>
</resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 8b611d6..cfc91ef 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"Vifaa vyako"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"Oanisha kifaa kipya"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"Ruhusu kifaa kuoanisha na kuunganisha kwenye vifaa vya Bluetooth"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"Zima kipengele cha mlio ule ule"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"Usiweke milio maalum ya simu kwenye vifaa vya sauti vya Bluetooth"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"Kwa sasa imeunganishwa"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"Vifaa vilivyohifadhiwa"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"Ongeza kifaa"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"Weka tarehe"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"Panga kialfabeti"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"Panga kulingana na saa za eneo"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> itaanza <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"Kuongeza saa za mchana"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"Saa za kawaida"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Saa za eneo kulingana na mahali"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"Saa za eneo zenye thamani isiyobadilika"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Tarehe"</string>
<string name="time_picker_title" msgid="483460752287255019">"Saa"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"Funga kiotomatiki"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Ujumbe kwenye skrini wakati imefungwa"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Washa wijeti"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Imezimwa na msimamizi"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Onyesha chaguo la kufunga"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Onyesha chaguo za kitufe cha kuwasha/kuzima ambacho huzima huduma za kufungua kwa kutumia alama ya kidole na kuongeza muda wa ufikiaji."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Hamna"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Mfano, Android ya Joe."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"Maelezo ya wasifu"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"Akaunti"</string>
<string name="location_settings_title" msgid="1369675479310751735">"Kutambua Eneo"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"Tumia mahali"</string>
<string name="account_settings_title" msgid="626177544686329806">"Akaunti"</string>
<string name="security_settings_title" msgid="4918904614964215087">"Mahali na usalama"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"Vitambulisho na usimbaji fiche"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Nenosiri uliloandika ni sahihi, lakini kwa bahati mbaya data yako ina hitilafu. \n\nIli uendelee kutumia kompyuta yako kibao, unahitaji kurejesha mipangilio iliyotoka nayo kiwandani. Wakati wa kuweka mipangilio mipya baada ya kurejesha ile ya kiwandani, utakuwa na nafasi ya kurejesha data yoyote ambayo nakala yake ilikuwa imehifadhiwa katika Akaunti yako ya Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Nenosiri uliloweka ni sahihi, lakini kwa bahati mbaya data yako ina hitilafu. \n\nIli uendelee kutumia simu yako, unahitaji kurejesha mipangilio iliyotoka nayo kiwandani. Wakati wa kuweka mipangilio kwenye simu yako baada ya kurejesha ile ya kiwandani, utakuwa na nafasi ya kurejesha data yoyote ambayo nakala yake ilikuwa imehifadhiwa katika Akaunti yako ya Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Kubadili mbinu ya kuingiza data"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Weka mbinu ya kufunga skrini"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Linda kifaa chako"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Tumia alama ya kidole"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Fungua ukitumia alama ya kidole chako"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Weka kifunga skrini ili uimarishe usalama"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Zuia watu wengine wasitumie kompyuta yako kibao"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Zuia watu wengine wasitumie kifaa chako"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Zuia watu wengine wasitumie simu yako"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Tumia alama ya kidole kufungua"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Fungua ukitumia alama ya kidole chako"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Fungua ukitumia alama ya kidole chako"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Fungua ukitumia alama ya kidole chako"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Mbinu ya kufunga skrini"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Chagua mbinu ya kufunga wasifu wa kazini"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Linda kompyuta yako kibao"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"Kama simu ya spika"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"lli kupata muziki na faili zingine"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"Kumbuka mipangilio"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"Kima cha juu zaidi cha vifaa vya sauti vya Bluetooth vilivyounganishwa"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"Chagua kima cha juu zaidi cha vifaa vya sauti vya Bluetooth vilivyounganishwa"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Tuma"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"Washa kuonyesha skrini bila kutumia waya"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"Hakuna vifaa vilivyopatikana karibu."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"Jina"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"GHz 2.4"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"GHz 5"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"Ingia katika akaunti"</string>
<string name="link_speed" msgid="8896664974117585555">"Mbps %1$d"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> inataka kuwasha Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> inataka kuzima Wi-Fi"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Washa Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Tumia Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Mipangilio ya Wi-Fi"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"Weka na udhibiti vituo vya kufikia mitandao-hewa"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Nenosiri"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Onyesha nenosiri"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Chagua Bendi ya AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Otomatiki"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Bendi ya GHz 2.4"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Bendi ya GHz 5"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Mipangilio ya IP"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" WPS inapatikana"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"Weka nenosiri la mtandao wako"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"Mtandao wa mtoa huduma wa Wi‑Fi"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"Unganisha kupitia <xliff:g id="NAME">%1%s</xliff:g>"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"Unganisha kupitia <xliff:g id="NAME">%1$s</xliff:g>"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Ili kuboresha usahihi wa mahali na kwa madhumuni mengine, <xliff:g id="APP_NAME">%1$s</xliff:g> inataka kuwasha ukaguaji mitandao, hata wakati Wi-Fi imezimwa.\n\nJe, ungependa kuruhusu programu zote ambazo zingependa kukagua ziweza kufanya hivyo?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"Ili uzime hii, nenda kwenye Mahiri katika menyu ya vipengee vya ziada."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Ruhusu"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"Bendi ya AP"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"Tumia kipengele cha mtandao pepe kuunda mtandao wa Wi-Fi kwa ajili ya vifaa vyako vingine. Mtandao pepe hutoa huduma ya intaneti ikitumia muunganisho wa data kwa simu za mkononi. Huenda ukalipia ada za kutumia data ya mtandao wa simu."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"Programu zinaweza kuunda mtandao-hewa ili kushiriki maudhui na vifaa vilivyo karibu."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"Zima mtandao-hewa kiotomatiki"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"Mtandao-hewa wa Wi-Fi utazimwa ikiwa hakuna vifaa vilivyounganishwa"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"Inawezesha mtandao-hewa…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"Inazima intaneti..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> inatumika"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Upigaji simu kwa Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Washa kipengele cha Kupiga Simu Kupitia Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Tumia mtandao wa Wi-Fi badala ya mtandao wa simu"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Ongeza eneo la huduma kwa kupiga simu kupitia Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Mapendeleo ya kupiga simu"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Hali ya upigaji simu kwa Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Mapendeleo ya matumizi ya mitandao mingine"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"Anwani ya Dharura"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Inatumika kama anwani ya mahali ulipo ikiwa utapiga simu ukitumia Wi‑Fi"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"Pata maelezo zaidi"</annotation>" kuhusu vipengele vya DNS ya Faragha"</string>
<string name="display_settings_title" msgid="1708697328627382561">"Skrini"</string>
<string name="sound_settings" msgid="5534671337768745343">"Sauti"</string>
<string name="all_volume_title" msgid="4296957391257836961">"Sauti"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Aina ya mtandao wa simu ya mkononi"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Maelezo ya mtoa huduma"</string>
<string name="status_data_state" msgid="5503181397066522950">"Hali ya mtandao wa simu ya mkononi"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Hali ya huduma"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Nguvu za mawimbi"</string>
<string name="status_roaming" msgid="2638800467430913403">"Uko nje ya mtandao wako wa kawaida"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"<xliff:g id="NAME">^1</xliff:g> yako mpya inafanya kazi. \n\nKuhamishia picha, faili na data ya programu kwenye kifaa hiki, nenda kwenye Mipangilio > Hifadhi."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"Hamisha <xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"Kuhamisha <xliff:g id="APP">^1</xliff:g> na data yake kwenda <xliff:g id="NAME_0">^2</xliff:g> kutachukua dakika chache tu. Hutaweza kutumia programu hadi ukamilishe kuhamisha. \n\nUsiondoe <xliff:g id="NAME_1">^2</xliff:g> wakati wa kuhamisha."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"Ili kuhamisha data, unahitaji kufungua <xliff:g id="APP">^1</xliff:g> ya mtumiaji."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"Inahamisha <xliff:g id="APP">^1</xliff:g>..."</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"Usionde <xliff:g id="NAME">^1</xliff:g> wakati wa kuhamisha. \n\nProgramu ya <xliff:g id="APP">^2</xliff:g> haitapatikana kwenye kifaa hiki hadi ukamilishe kuhamisha."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"Ghairi kuhamisha"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Unaweza kubadilisha mipangilio ya mtandao, programu au kifaa"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Badilisha mipangilio ya Wi-Fi, data ya simu na Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Hatua itabadilisha mipangilio yote ya mtandao ikiwa ni pamoja:\n\n"<li>"Wi‑Fi"</li>\n<li>"Data ya simu"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Futa pia data ya eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Futa eSIMs zote kwenye simu. Ni lazima uwasiliane na anayekupa huduma ili upakue tena eSIMs zako. Hatua hii haitaghairi kifurushi unachotumia katika simu yako."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Badilisha mipangilio"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Ungependa kuweka upya mipangilio yote ya mtandao? Huwezi kutendua kitendo hiki."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Badilisha mipangilio"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Iwekwe upya?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Kuweka upya mtandao hakupatikani kwa mtumiaji huyu"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Mipangilio ya mtandao imewekwa upya"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Imeshindwa kufuta data ya eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Hitilafu imetokea wakati wa kufuta data ya eSIM."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Futa data yote (rejesha mipangilio ambayo kifaa kilitoka nayo kiwandani)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Hii itafuta data yote kutoka hifadhi yako iliyo "<b>"ndani ya kompyuta kibao"</b>", pamoja na:\n \n"<li>"Akaunti yako ya Google"</li>\n<li>"Data na mipangilio ya mfumo na programu"</li>\n<li>"Programu zilizopakuliwa"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Hii itafuta data yote kutoka hifadhi yako iliyo "<b>"ndani ya simu"</b>", pamoja na:\n \n"<li>"Akaunti yako ya Google"</li>\n<li>"Data na mipangilio ya mfumo na programu"</li>\n<li>"Programu zilizopakuliwa"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Kwa sasa umeingia kwenye akaunti zifuatazo:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Kuna watumiaji wengine waliopo kwenye kifaa hiki.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Muziki"</li>\n<li>"Picha"</li>\n<li>"data nyingine ya mtumiaji"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Vipengee vilivyo kwenye eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Hatua hii haitaghairi mpango wako wa huduma ya simu ya mkononi."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Ili kufuta pia muziki, picha, na data zingine za mtumiaji, "<b>" hifadhi ya "</b>" inahitaji kufutwa."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Ili kufuta muziki, picha, na data zingine za mtumiaji, "<b>"kadi ya"</b>" inahitaji kufutwa."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Tafadhali unganisha kwenye Intaneti"</string>
<string name="location_title" msgid="1029961368397484576">"Mahali pangu"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Eneo la wasifu wa kazini"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Hali"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Usahihi wa hali ya juu"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Hali inayookoa betri"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Kifaa tu"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Kitambua eneo kimezimwa"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Ruhusa za kiwango cha programu"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Maombi ya hivi karibuni ya kutambua eneo"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Hakuna programu iliyotaka kutambua eneo hivi karibuni"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Huduma za kutambua eneo"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Matumizi ya betri ya hali ya juu"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Huwa haitumii chaji nyingi"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Hali ya eneo"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Tumia GPS, Wi‑Fi, Bluetooth au mitandao ya simu ili kutambua mahali"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Tumia Wi-Fi, Bluetooth au mitandao ya simu ili kutambua mahali"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Tumia GPS na vitambuzi vya vifaa ili kutambua mahali kifaa kilipo"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Kuchanganua"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Kuchanganua Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Boresha utambuzi wa mahali kwa kuruhusu programu na huduma za mifumo zitambue mitandao ya Wi-Fi wakati wowote."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"Vyanzo vya eneo"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"Kuhusu kompyuta kibao"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"Kuhusu simu"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"Kuhusu kifaa"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"Kuhusu kifaa kinachoigwa"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"Angalia maelezo ya kisheria, hadhi, toleo la programu"</string>
<string name="legal_information" msgid="5769301644270604095">"Maelezo ya kisheria"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"Angalia programu zote <xliff:g id="COUNT">%1$d</xliff:g>"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"Data yako ya binafsi na ya kompyuta kibao yako zinaweza kuathiriwa na programu ambazo hazijulikani. Kwa kusakinisha programu kutoka chanzo hiki, unakubali kuwajibika kila wakati kutokana na uharibifu wowote kwenye simu yako au kupotea kwa data kutokana na matumizi yake."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"Data yako ya binafsi na ya simu yako zinaweza kuathiriwa na programu ambazo hazijulikani. Kwa kusakinisha programu kutoka chanzo hiki, unakubali kuwajibika kila wakati kutokana na uharibifu wowote kwenye simu yako au kupotea kwa data kutokana na matumizi yake."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"Data yako ya binafsi na ya kifaa chako inaweza kuathiriwa na programu ambazo hazijulikani. Kwa kusakinisha programu kutoka chanzo hiki, unakubali kuwajibikia uharibifu wowote kwenye kifaa chako au kupotea kwa data kutokana na matumizi ya programu hizo."</string>
<string name="advanced_settings" msgid="1777249286757067969">"Mipangilio ya kina"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"Wezesha chaguo zaidi ya mipangilio."</string>
<string name="application_info_label" msgid="5736524913065714880">"Maelezo ya programu"</string>
@@ -1596,7 +1613,7 @@
<string name="total_size_label" msgid="1048676419552557254">"Jumla"</string>
<string name="application_size_label" msgid="7376689739076506885">"Ukubwa wa programu"</string>
<string name="external_code_size_label" msgid="3459343140355961335">"Programu ya hifadhi ya USB"</string>
- <string name="data_size_label" msgid="6117971066063850416">"Data ya watumiaji"</string>
+ <string name="data_size_label" msgid="6117971066063850416">"Data ya mtumiaji"</string>
<string name="external_data_size_label" product="nosdcard" msgid="7533821466482000453">"Hifadhi data ya USB"</string>
<string name="external_data_size_label" product="default" msgid="626414192825329708">"Kadi ya SD"</string>
<string name="uninstall_text" msgid="3644892466144802466">"Ondoa"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"Huenda ikaathiri utendaji"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"Bofya kiashiria kikiacha kusonga"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"Muda wa kusubiri kabla ya kubofya"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"Tumia huduma"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"Tumia masahihisho ya rangi"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"Tumia manukuu"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"IMEWASHWA"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"IMEZIMWA"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"Onyesha katika Mipangilio ya Haraka"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Imesalia <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> chaji ijae"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Shughuli za chini chini"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Zilizozuiwa"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Iruhusu programu kutumika chini chini"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Programu inaweza kutumika chini chini wakati huitumii"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Shughuli za programu kutumika chini chini ni chache wakati huitumii"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"Kuwasha kifaa chini chini"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"Inaomba maelezo ya mahali mara kwa mara"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"Programu <xliff:g id="NUMBER">%1$d</xliff:g> hazifanyi kazi vizuri"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"Betri iko katika hali nzuri"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"Programu zinafanya kazi kama kawaida"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"Uwezo wa chini wa betri"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Muda wa matumizi ya betri ni mfupi"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Washa kidhibiti mahiri cha betri"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Washa ili uboreshe matumizi ya betri"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Washa Hali ya Chaji ya Betri Imepungua"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Ongeza muda wa matumizi ya betri yako"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Hali ya Chaji ya Betri Imepungua imewashwa"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Baadhi ya vipengele vinadhibitiwa"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Simu imetumiwa kwa muda mrefu"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Kompyuta kibao imetumiwa kwa muda mrefu"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Kifaa kimetumiwa kwa muda mrefu"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"Imetumika kwa takriban saa <xliff:g id="HOUR">%1$s</xliff:g> tangu ijazwe chaji mara ya mwisho"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"Simu yako ilitumiwa kwa muda mrefu na hali hii ilitumia betri sana. Betri yako inatumika kama kawaida.\n\nSimu yako ilitumiwa kwa angalau saa <xliff:g id="HOUR">%1$s</xliff:g> tangu ijazwe chaji mara ya mwisho.\n\n Jumla ya matumizi:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"Kompyuta yako kibao ilitumiwa kwa muda mrefu na hali hii ilitumia betri sana. Betri yako inatumika kama kawaida.\n\n Kompyuta yako kibao ilitumiwa kwa angalau saa <xliff:g id="HOUR">%1$s</xliff:g> tangu ijazwe chaji mara ya mwisho.\n\n Jumla ya matumizi:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"Kifaa chako kilitumiwa kwa muda mrefu na hali hii ilitumia betri sana. Betri yako inatumika kama kawaida.\n\n Kifaa chako kilitumiwa kwa angalau saa<xliff:g id="HOUR">%1$s</xliff:g> tangu kijazwe chaji mara ya mwisho\n\n Jumla ya matumizi:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"Kidhibiti mahiri cha betri"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"Dhibiti betri kiotomatiki"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"Badilisha kiotomatiki jinsi programu zinavyotumia chaji kulingana na matumizi ya betri"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"Programu zilizodhibitiwa"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">Programu %1$d</item>
+ <item quantity="one">Programu %1$d</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"Unataka kusimamisha programu?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"Simu yako haiwezi kudhibiti matumizi ya chaji ipasavyo kwa sababu <xliff:g id="APP">%1$s</xliff:g> inazuia skrini ya simu kuzimika.\n\nIli kujaribu kurekebisha tatizo hili, unaweza kuzima programu.\n\nIkiwa tatizo hili litaendelea, huenda ukahitaji kuondoa programu hii ili kuboresha utendaji wa betri."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"Kompyuta kibao yako haiwezi kudhibiti matumizi ya chaji ipasavyo kwa sababu <xliff:g id="APP">%1$s</xliff:g> inazuia skrini ya kompyuta kibao kuzimika.\n\nIli kujaribu kurekebisha tatizo hili, unaweza kuzima programu.\n\nIkiwa tatizo hili litaendelea, huenda ukahitaji kuondoa programu hii ili kuboresha utendaji wa betri."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Seva ya media"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"Uboreshaji wa programu"</string>
<string name="battery_saver" msgid="8172485772238572153">"Kiokoa Betri"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"Tumia Kiokoa Betri"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"Kujiwasha kiotomatiki"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"Kisiwahi kujiwasha"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"chaji ya betri ikiwa <xliff:g id="PERCENT">%1$s</xliff:g>"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Kwa sasa usawazishaji una tatizo. Utarudi baada ya muda mfupi."</string>
<string name="add_account_label" msgid="7811707265834013767">"Ongeza akaunti"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Wasifu wa kazini bado haupatikani"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Hali ya kazini"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Ruhusu wasifu wa kazini utumike, ikiwa ni pamoja na usawazishaji wa chini chini, programu na vipengele vinavyohusiana"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Wasifu wa kazini"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Inasimamiwa na shirika lako"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Umezima vipengele vya programu na arifa"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Ondoa wasifu wa kazi"</string>
<string name="background_data" msgid="5779592891375473817">"Data ya maandhari nyuma"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Programu inaweza kusawazisha, kutuma, na kupokea data wakati wowote"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"Je, ungependa kuondoa akaunti?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"Kuondoa hii akaunti kutafuta mazungumzo yako yote, anwani, na data zingine kutoka kwa kompyuta kibao!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"Kuondoa hii akaunti hii kutafuta mazungumzo yako yote, anwani, na data zingine kutoka kwa simu!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"Kuondoa akaunti hii kutasabibisha kufutwa kwa ujumbe, anwani na data nyingine kwenye kifaa!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"Mabadiliko haya hayaruhusiwi na msimamizi wako"</string>
<string name="provider_label" msgid="7724593781904508866">"Usajili wa Push"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">Angalia vyeti</item>
<item quantity="one">Angalia cheti</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Watumiaji"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Watumiaji wengi"</string>
<string name="user_list_title" msgid="7937158411137563543">"Watumiaji na wasifu"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Ongeza mtumiaji au wasifu"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Ongeza mtumiaji"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Programu na arifa"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Ruhusa, programu chaguo msingi"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Akaunti na watumiaji"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Akaunti"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Programu chaguo-msingi"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Lugha, wakati, hifadhi rudufu, masasisho"</string>
<string name="search_results_title" msgid="1796252422574886932">"Mipangilio"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"usinisumbue, katiza, kukatiza, katiza"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"karibu, mahali, historia, kuripoti"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"usahihi"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"akaunti"</string>
<string name="keywords_users" msgid="3434190133131387942">"vikwazo, weka vikwazo, imewekewa vikwazo"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"kusahihisha maandishi, sahihisha, sauti, tetema, otomatiki, lugha, ishara, pendekeza, pendekezo, mandhari, ya kukera, neno, andika, emoji, ya kimataifa"</string>
@@ -2829,6 +2870,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"mtandao, hali ya mtandao wa simu, hali ya huduma, uthabiti wa mtandao, aina ya mtandao wa simu, matumizi ya mitandao mingine, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"nambari ya ufuatiliaji, toleo la maunzi"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"kiwango cha rekebisho la usalama wa android, toleo la mitambo ya redio, toleo la kiini"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Onyesho tulivu, Skrini iliyofungwa"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Sanidi tagi ya NFC ya Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Andika"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Gusa tagi ya NFC ili uandike..."</string>
@@ -2872,6 +2914,7 @@
<item quantity="one">Amri 1</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Usisumbue"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Washa kipengele cha Usinisumbue"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Tabia"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Ruhusu sauti na mitetemo kutoka"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Hakuna sauti"</string>
@@ -2881,8 +2924,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Washa kiotomatiki"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Sheria otomatiki"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Amri ya kiotomatiki"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Weka sheria za Usinisumbue"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Dhibiti sauti na mitetemo wakati fulani"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Zima simu katika vipindi fulani"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Weka sheria za Usinisumbue"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Tumia sheria"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Kipaumbele tu"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Kengele pekee"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Kimya kabisa"</string>
@@ -2890,12 +2934,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Zuia ukatizaji wa maonyesho"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Ruhusu ishara zinazoonekena"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Ongeza"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"WASHA SASA"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"ZIMA SASA"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Washa"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Iwashe sasa"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Izime sasa"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Kipengele cha Usinisumbue kitaendelea kutumika hadi <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Kipengele cha Usinisumbue kitaendelea kutumika hadi utakapokizima"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Kipengele cha Usinisumbue kimewashwa kiotomatiki na amri ya (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Kipengele cha Usinisumbue kimewashwa kiotomatiki na programu ya (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Kipaumbele tu"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Sauti za wasifu wa kazi"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Tumia sauti za wasifu wako binafsi"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Sauti za wasifu wa binafsi na wa kazini ni sawa"</string>
@@ -2911,6 +2958,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Milio ya simu"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Mitetemo na sauti zingine"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Arifa"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Zilizotumwa hivi majuzi"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Mipangilio ya kina"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Arifa za kazini"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Ruhusu vitone vya arifa"</string>
@@ -2930,7 +2980,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"Arifa za programu"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"Aina ya arifa"</string>
<string name="notification_group_title" msgid="7180506440133859601">"Kikundi cha aina za arifa"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"Umuhimu"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"Utendaji"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"Ruhusu sauti"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"Usawahi kuonyesha arifa"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"Hakuna kukatizwa kwa sauti au maonyesho"</string>
@@ -2948,6 +2998,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"Umuhimu wa wastani"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"Umuhimu wa kiwango cha juu"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"Umuhimu wa hali ya dharura"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"Onyesha arifa"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"Mratibu wa arifa"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"Kufikia arifa"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"Ufikiaji kwenye arifa za wasifu wa kazi umezuiwa"</string>
@@ -2978,9 +3029,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"Kufikia kipengele cha Usinisumbue"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"Hakuna programu zilizosakinishwa ambazo zimeomba kufikia kipengele cha Usinisumbue"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"Inapakia programu ..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android inazuia arifa za programu hii ili zisionekane kwenye kifaa hiki"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android inazuia aina hizi za arifa ili zisionekane kwenye kifaa hiki"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android inazuia kikundi hiki cha arifa ili zisionekane kwenye kifaa hiki"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"Kutokana na ombi lako, Android inazuia arifa za programu hii ili zisionekane kwenye kifaa hiki"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"Kutokana na ombi lako, Android inazuia aina hizi za arifa ili zisionekane kwenye kifaa hiki"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"Kutokana na ombi lako, Android inazuia kikundi hiki cha arifa ili zisionekane kwenye kifaa hiki"</string>
<string name="notification_channels" msgid="5346841743182627500">"Aina"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"Nyingine"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3176,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Mbali na kutumia alama ya kidole chako kufungua kifaa, unaweza kulinda kifaa hiki zaidi kwa kuweka nenosiri lako kabla ya kukifungua. Kifaa hakiwezi kupokea simu, ujumbe au arifa, ikiwa ni pamoja na kengele, hadi utakapokifungua.\n\nHii husaidia kulinda data kwenye vifaa vilivyopotea au vilivyoibwa. Ungependa kifaa kiombe nenosiri kabla ya kuanza kukitumia?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ndiyo"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Hapana"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ndiyo"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Hapana"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Je, inahitaji PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Je, inahitaji mchoro?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Je, inahitaji nenosiri?"</string>
@@ -3254,7 +3307,7 @@
<string name="high_power_off" msgid="3393904131961263278">"Kuboresha matumizi ya betri"</string>
<string name="high_power_system" msgid="7362862974428225301">"Chaguo la kuboresha matumizi ya betri halipo"</string>
<string name="high_power_desc" msgid="6283926163708585760">"Usitumie kipengele cha kuboresha matumizi ya betri. Kinaweza kumaliza chaji ya betri yako haraka zaidi."</string>
- <string name="high_power_prompt_title" msgid="6358673688590282655">"Ungependa kuruhusu programu itumike chini chini kila wakati?"</string>
+ <string name="high_power_prompt_title" msgid="6358673688590282655">"Ungependa kuruhusu programu itumike chinichini kila wakati?"</string>
<string name="high_power_prompt_body" msgid="1031422980602565049">"Ukiruhusu <xliff:g id="APP_NAME">%1$s</xliff:g> kutumika chini chini, unaweza kupunguza muda wa matumizi ya betri. \n\nUnaweza kubadilisha hali hii baadaye katika Mipangilio > Programu na arifa."</string>
<string name="battery_summary" msgid="8044042095190688654">"Imetumia <xliff:g id="PERCENTAGE">%1$s</xliff:g> tangu mwisho ilipojazwa chaji"</string>
<string name="battery_power_management" msgid="5571519699679107523">"Udhibiti wa betri"</string>
@@ -3271,21 +3324,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Kataa"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Kuchaji kifaa hiki"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Chaji tu kifaa hiki"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Kusambaza nishati"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Chaji kifaa kilichounganishwa. Hufanya kazi kwenye vifaa vinavyotumia chaja za USB pekee."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Kuhamisha faili"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Hamishia faili kwenye kifaa kingine"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Kuhamisha picha (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Hamisha picha au faili ikiwa MPT haiwezi kutumika (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Kutumia kifaa kama MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Tumia kifaa hiki kama MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Tumia USB"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Tumia USB kwa ajili ya"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Kuchaji kifaa hiki"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Kusambaza nishati"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Kuhamisha faili"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Kuhamisha picha (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Kutumia kifaa kama MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Uakisi wa SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Ukaguzi wa chini chini"</string>
<string name="background_check_title" msgid="4534254315824525593">"Idhini ya kufikia chini chini"</string>
@@ -3394,19 +3469,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Mandhari, hali tuli, ukubwa wa fonti"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Iweke katika hali tuli baada ya dakika 10 za kutokuwa na shughuli"</string>
<string name="memory_summary" msgid="8080825904671961872">"Takriban <xliff:g id="USED_MEMORY">%1$s</xliff:g> kati ya <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> za hifadhi zimetumika"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Mtumiaji wa sasa: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Umeingia katika akaunti ukitumia <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ni chaguo-msingi"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"WASHA / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"IMEWASHWA"</string>
<string name="location_off_summary" msgid="6474350053215707957">"IMEZIMWA"</string>
<string name="backup_disabled" msgid="485189128759595412">"Kipengee cha kuhifadhi nakala kimezimwa"</string>
- <string name="about_summary" msgid="924181828102801010">"Umesasishwa na sasa unatumia Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Kitendo hakiruhusiwi"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Haiwezi kubadilisha sauti"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Huruhusiwi kupiga simu"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Huruhusiwi kutuma SMS"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kamera imezimwa na msimamizi"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Huruhusiwi kupiga picha za skrini"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Huwezi kuzima huduma ya kuhifadhi nakala"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Huduma hii imazimwa. Wasiliana na msimamizi wa shirika lako ili upate maelezo zaidi."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Maelezo zaidi"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Msimamizi wako anaweza kufuatilia na kudhibiti programu na data zinazohusiana na wasifu wako wa kazini, ikiwa ni pamoja na mipangilio, ruhusa, ufikiaji wa shirika, shughuli za mtandao na maelezo ya mahali kilipo kifaa."</string>
@@ -3420,7 +3498,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Mtandao-hewa wa Wi-Fi wa vifaa vya mkononi <xliff:g id="ID_1">%1$s</xliff:g> umewashwa, Wi-Fi imezimwa kwenye kifaa hiki."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Hali ya ndegeni imewashwa"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Umezima Wi-Fi, Bluetooth na mtandao wa simu. Huwezi kupiga simu au kuunganisha kwenye intaneti."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Usinisumbue imewashwa (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Kiokoa Betri kimewashwa"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Utendaji umepunguzwa. Huduma za Mahali na data ya chini chini zimezimwa."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Umezima data ya mtandao wa simu"</string>
@@ -3430,9 +3509,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Wasifu wa kazini umezimwa"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Usawazishaji wa chini chini, programu na vipengele vingine vinavyohusiana na wasifu wako wa kazini vimezimwa."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Weka ratiba ya Mwanga wa Usiku"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Badilisha rangi ya skrini kuwa manjano ili uweze kulala"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Geuza rangi ya skrini kiotomatiki kila usiku"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Mwanga wa Usiku umewashwa"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Skrini imewekewa rangi ya manjano. Hii inaweza kukusaidia kulala kwa urahisi."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Unayopendekezewa"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Mapendekezo"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> zaidi"</string>
@@ -3537,6 +3617,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"hamna"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Haina kipengele cha kuorodhesha."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Kipengele cha kuorodhesha hakina ufunguo huu."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Iga mwonekano uliopunguzwa"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Hamna"</string>
<string name="special_access" msgid="3458780842491881155">"Idhini maalum ya kufikia programu"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other">Programu <xliff:g id="COUNT">%d</xliff:g> zinaweza kutumia data bila kudhibitiwa</item>
@@ -3559,31 +3641,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"Imeunganishwa kwenye vifaa vingi"</string>
<string name="demo_mode" msgid="2798762752209330277">"Hali ya onyesho la kiolesura cha mfumo"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Vigae vya msanidi programu vya mipangilio ya haraka"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"Tuko hapa kukuhudumia"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"Tuko tayari kukuhudumia wakati wowote kila siku"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"Tuko tayari kukuhudumia wakati wowote kila siku"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"Timu yetu ya usaidizi iko tayari kushughulikia tatizo lolote"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"Timu yetu ya usaidizi iko tayari kukuhudumia wakati wowote, kila siku"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"Tafuta usaidizi au urudi wakati wa saa za kazi (saa za nchini):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"Saa za usaidizi kupitia simu (saa za nchini)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"Tafuta katika sehemu ya usaidizi au ugundue vidokezo na mbinu"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"Usaidizi nchini:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Alama ya Dirisha"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Ufuatiliaji wa Juujuu"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"Je, unasafiri nje ya nchi?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"Huenda ukatozwa kwa kupiga simu nje ya nchi yako"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"Simu"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"Gumzo"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"Angalia vidokezo na mbinu"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"Tafuta usaidizi na utume maoni"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"Wasiliana na kituo cha usaidizi"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"Ingia katika akaunti"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"Imeshindwa kuingia katika akaunti?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"Tuma maelezo ya mfumo"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"Usionyeshe tena"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"Akaunti inayotumika"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"Ongeza akaunti"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"Maelezo ya mfumo"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Mipangilio ya wasifu wa kazini"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Utafutaji wa anwani"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Ruhusu utafutaji wa anwani unaofanywa na shirika lako kutambua anwani na anayepiga simu"</string>
@@ -3599,11 +3659,11 @@
<item quantity="other">Sekunde <xliff:g id="NUMBER">%s</xliff:g></item>
<item quantity="one">Sekunde 1</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"Subiri kwa ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"Dhibiti hifadhi"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"Ili kuongeza nafasi ya hifadhi, kidhibiti cha hifadhi huondoa picha na video zilizohifadhiwa nakala kwenye kifaa chako."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"Ondoa picha na video"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"Kidhibiti cha hifadhi"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"Tumia Kidhibiti cha hifadhi"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"Otomatiki"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"Mwongozo"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"Futa ili uongeze nafasi sasa"</string>
@@ -3614,32 +3674,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Nenda kwenye kamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Ili ufungue kamera haraka, bofya kitufe cha kuwasha/kuzima mara mbili. Hufanya kazi katika skrini yoyote."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Fungua kamera haraka"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Bonyeza kitufe cha kuwasha/kuzima mara mbili ili ufungue kamera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Geuza kamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Jipige picha mwenyewe haraka zaidi"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Geuza simu mara mbili ili uweke picha ya kujipiga mwenyewe"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Geuza kompyuta kibao mara mbili ili uweke picha ya kujipiga mwenyewe"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Geuza kifaa mara mbili ili uweke picha ya kujipiga mwenyewe"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Gusa mara mbili ili uangalie simu"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Gusa mara mbili ili uangalie kompyuta kibao"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Gusa mara mbili ili uangalie kifaa"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Ili uangalie saa, aikoni za arifa na maelezo mengine, gusa skrini yako mara mbili."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Angalia arifa wakati skrini imezimwa"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Inua ili uangalie simu"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Inua ili uangalie kompyuta kibao"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Inua ili uangalie kifaa"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ili uangalie saa, aikoni za arifa na maelezo mengine, chukua simu yako."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ili uangalie saa, arifa za aikoni na maelezo mengine, chukua kompyuta yako kibao."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ili uangalie saa, aikoni za arifa na maelezo mengine, chukua kifaa chako."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Angalia arifa wakati skrini imezimwa"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Telezesha kidole ili upate arifa"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Telezesha alama ya kidole"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Ili uangalie arifa zako, telezesha kidole kuelekea chini kwenye kitambua alama ya kidole kilicho upande wa nyuma wa simu yako."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Ili uangalie arifa zako, telezesha kidole kuelekea chini kwenye kitambua alama ya kidole kilicho upande wa nyuma wa kompyuta yako kibao."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Ili uangalie arifa zako, telezesha kidole kuelekea chini kwenye kitambua alama ya kidole nyuma ya kifaa chako."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Angalia arifa haraka"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Telezesha kidole chini kwenye kitambua alama ya kidole"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Imewashwa"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Imezimwa"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Tayari kipakiaji cha mfumo wa uendeshaji kimefunguliwa"</string>
@@ -3769,8 +3822,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"Kagua kompyuta yako kibao mpya"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"Kagua kifaa chako kipya"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Kipengele hiki hakipatikani kwenye kifaa hiki"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Lazimisha vipimo vya GNSS kamili"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Fuatilia mikusanyiko na mawimbi yote yasiyo na utendakazi wa GNSS"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Onyesha kidirisha cha programu kuacha kufanya kazi kila wakati"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Onyesha kisanduku kila wakati programu inapoacha kufanya kazi"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Ufikiaji wa saraka"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ufikiaji wa saraka"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Simu Yangu"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Kompyuta Yangu Kibao"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Kifaa Changu"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Akaunti"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Jina la kifaa"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Tumia Bluetooth unapoendesha gari"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Washa Bluetooth kiotomatiki wakati unaendesha gari"</string>
</resources>
diff --git a/res/values-sw400dp/dimens.xml b/res/values-sw400dp/dimens.xml
index 4f13e09..6a02422 100755
--- a/res/values-sw400dp/dimens.xml
+++ b/res/values-sw400dp/dimens.xml
@@ -23,9 +23,7 @@
<dimen name="support_escalation_card_padding_end">56dp</dimen>
<!-- Suggestion cards-->
- <dimen name="suggestion_card_width_one_card">380dp</dimen>
- <dimen name="suggestion_card_width_two_cards">184dp</dimen>
- <dimen name="suggestion_card_width_multiple_cards">176dp</dimen>
+ <dimen name="suggestion_card_width_multiple_cards">180dp</dimen>
<dimen name="suggestion_card_padding_bottom_one_card">22dp</dimen>
</resources>
diff --git a/res/values-ta/arrays.xml b/res/values-ta/arrays.xml
index 8115916..402375b 100644
--- a/res/values-ta/arrays.xml
+++ b/res/values-ta/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"புஷ் பொத்தான்"</item>
<item msgid="1624323946324499595">"பியர் சாதனத்திலிருந்து பின்"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1 மணிநேரம்"</item>
<item msgid="5198271470953124739">"காலநேரம் முடிய வேண்டாம்"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1 (இயல்பு)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"மோசம்"</item>
<item msgid="2042505933058940139">"மோசம்"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"60 நாட்களுக்கு மேல்"</item>
<item msgid="5692284879054004388">"90 நாட்களுக்கு மேல்"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"நெட்வொர்க் முன்னுரிமையைப் பயன்படுத்து"</item>
+ <item msgid="8745603368609022803">"டேட்டா அளவிடப்பட்டது"</item>
+ <item msgid="2266114985518865625">"டேட்டா அளவிடப்படாதது"</item>
+ </string-array>
</resources>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 3834073..62f0b5d 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"உங்கள் சாதனங்கள்"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"புதிய சாதனத்தை இணை"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"புளூடூத் சாதனங்களுடன் ஜோடி சேரவும், இணைக்கவும் சாதனத்தை அனுமதிக்கிறது"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"இன்-பேண்ட் ஒலியை முடக்கு"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"புளூடூத் ஹெட்செட்களில் தனிப்பயன் மொபைல் ரிங்டோன்களை இயக்க வேண்டாம்"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"தற்போது இணைக்கப்பட்டுள்ளது"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"சேமிக்கப்பட்ட சாதனங்கள்"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"சாதனத்தைச் சேர்க்கவும்"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"தேதியை அமை"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"அகர வரிசைப்படி வரிசைப்படுத்து"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"நேர மண்டலத்தின்படி வரிசைப்படுத்து"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TRANSITION_DATE">%2$s</xliff:g> அன்று <xliff:g id="TIME_TYPE">%1$s</xliff:g> தொடங்குகிறது."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"பகல் ஒளி சேமிப்பு நேரம்"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"சீர் நேரம்"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"பிராந்திய நேர மண்டலம்"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"நிலையான வித்தியாசத்தைக் கொண்ட நேர மண்டலங்கள்"</string>
<string name="date_picker_title" msgid="1338210036394128512">"தேதி"</string>
<string name="time_picker_title" msgid="483460752287255019">"நேரம்"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"தானாகவே பூட்டு"</string>
@@ -340,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"லாக் ஸ்கிரீன் செய்தி"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"விட்ஜெட்களை இயக்கு"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"நிர்வாகி முடக்கியுள்ளார்"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"பூட்டு விருப்பத்தைக் காட்டு"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"நீட்டிக்கப்பட்ட அணுகல் மற்றும் கைரேகை மூலம் திறக்கும் அனுமதியை ஆஃப் செய்யக்கூடிய, பவர் பொத்தான் விருப்பத்தைக் காண்பிக்கும்."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ஏதுமில்லை"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"எ.கா., சந்திராவின் ஆண்ட்ராய்டு."</string>
@@ -348,6 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"சுயவிவரத் தகவல்"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"கணக்குகள்"</string>
<string name="location_settings_title" msgid="1369675479310751735">"இருப்பிடம்"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"இருப்பிடத்தைப் பயன்படுத்து"</string>
<string name="account_settings_title" msgid="626177544686329806">"கணக்குகள்"</string>
<string name="security_settings_title" msgid="4918904614964215087">"பாதுகாப்பு & இருப்பிடம்"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"என்கிரிப்ஷன் & அனுமதிச் சான்றுகள்"</string>
@@ -459,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"சரியான கடவுச்சொல்லை உள்ளிட்டீர்கள், ஆனால் எதிர்பாராதவிதமாக உங்கள் தரவு சிதைந்துவிட்டது. \n\nடேப்லெட்டை மீண்டும் பயன்படுத்த, ஆரம்பநிலை மீட்டமைவைச் செயல்படுத்தவும். மீட்டமைத்த பின் டேப்லெட்டை அமைக்கும் போது, உங்கள் Google கணக்கில் காப்புப் பிரதி எடுக்கப்பட்ட எந்தத் தரவையும் நீங்கள் மீட்டெடுக்க முடியும்."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"சரியான கடவுச்சொல்லை உள்ளிட்டீர்கள், ஆனால் எதிர்பாராதவிதமாக உங்கள் தரவு சிதைந்துவிட்டது. \n\nமொபைலை மீண்டும் பயன்படுத்த, ஆரம்பநிலை மீட்டமைவைச் செயல்படுத்தவும். மீட்டமைத்த பின் மொபைலை அமைக்கும் போது, Google கணக்கில் காப்புப் பிரதி எடுக்கப்பட்ட எந்தத் தரவையும் நீங்கள் மீட்டெடுக்க முடியும்."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"உள்ளீட்டு முறையை மாற்று"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"திரைப் பூட்டை அமைக்கவும்"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"சாதனத்தைப் பாதுகாக்கவும்"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"கைரேகையைப் பயன்படுத்தவும்"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"கைரேகை மூலம் திறக்கலாம்"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"பாதுகாப்பிற்கு, திரைப் பூட்டை அமைக்கலாம்"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"உங்கள் டேப்லெட்டை மற்றவர்கள் பயன்படுத்தாமல் தடுக்கலாம்"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"உங்கள் சாதனத்தை மற்றவர்கள் பயன்படுத்தாமல் தடுக்கலாம்"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"உங்கள் மொபைலை மற்றவர்கள் பயன்படுத்தாமல் தடுக்கலாம்"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"கைரேகை மூலம் திறக்கலாம்"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"கைரேகை மூலம் திறக்கலாம்"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"கைரேகை மூலம் திறக்கலாம்"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"கைரேகை மூலம் திறக்கலாம்"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"திரைப் பூட்டைத் தேர்வுசெய்யவும்"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"பணிப் பூட்டைத் தேர்வுசெய்க"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"டேப்லெட்டைப் பாதுகாக்கவும்"</string>
@@ -691,6 +705,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"ஸ்பீக்கர் ஃபோனாக"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"இசை மற்றும் மீடியாவிற்காக"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"அமைப்புகளை நினைவில்கொள்"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"இணைத்துள்ள புளூடூத் ஆடியோ சாதனங்களின் அதிகபட்ச எண்ணிக்கை"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"இணைத்துள்ள புளூடூத் ஆடியோ சாதனங்களின் அதிகபட்ச எண்ணிக்கையைத் தேர்ந்தெடுக்கவும்"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"Cast"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"வயர்லெஸ் காட்சியை இயக்கு"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"அருகில் சாதனங்கள் எதுவுமில்லை."</string>
@@ -705,6 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"பெயர்"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"உள்நுழை"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"வைஃபையை இயக்க <xliff:g id="REQUESTER">%s</xliff:g> விரும்புகிறது"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"வைஃபையை முடக்க <xliff:g id="REQUESTER">%s</xliff:g> விரும்புகிறது"</string>
@@ -722,6 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"வைஃபை"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"வைஃபையை இயக்கு"</string>
<string name="wifi_settings" msgid="29722149822540994">"வைஃபை"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"வைஃபையைப் பயன்படுத்து"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"வைஃபை அமைப்பு"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"வைஃபை"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"வயர்லெஸ் ஆக்சஸ் பாயிண்ட்களை அமைத்து & நிர்வகிக்கவும்"</string>
@@ -816,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"கடவுச்சொல்"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"கடவுச்சொல்லைக் காட்டு"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP அலைவரிசையைத் தேர்ந்தெடுக்கவும்"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"தானியங்கு"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz அலைவரிசை"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz அலைவரிசை"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP அமைப்பு"</string>
@@ -833,7 +852,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS கிடைக்கிறது)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"நெட்வொர்க் கடவுச்சொல்லை உள்ளிடவும்"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"தொலைத்தொடர்பு நிறுவன வைஃபை நெட்வொர்க்"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1%s</xliff:g> மூலம் இணை"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"<xliff:g id="NAME">%1$s</xliff:g> மூலம் இணை"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"இருப்பிடத்தைத் துல்லியமாக அறிவதற்கு மேம்படுத்த மற்றும் பிற காரணங்களுக்காக, வைஃபை முடக்கத்தில் இருக்கும்போதும் நெட்வொர்க்கை ஸ்கேன் செய்வதை இயக்கத்தில் வைக்க <xliff:g id="APP_NAME">%1$s</xliff:g> விரும்புகிறது.\n\nஸ்கேன் செய்ய விரும்பும் எல்லா பயன்பாடுகளுக்கும் இதை அனுமதிக்கவா?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"இதனை முடக்க, கூடுதல் உருப்படி மெனுவில் மேம்பட்டவை என்பதற்குச் செல்லவும்."</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"அனுமதி"</string>
@@ -909,10 +928,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP அலைவரிசை"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"மற்ற சாதனங்களுக்கு வைஃபை நெட்வொர்க்கை உருவாக்க, ஹாட்ஸ்பாட்டைப் பயன்படுத்தவும். ஹாட்ஸ்பாட்டானது, மொபைல் டேட்டா இணைப்பைப் பயன்படுத்தி இண்டர்நெட்டை வழங்குகிறது. கூடுதல் மொபைல் டேட்டா பேமெண்ட்கள் விதிக்கப்படலாம்."</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"அருகிலுள்ள சாதனங்களுடன் உள்ளடக்கத்தைப் பகிர, பயன்பாடுகள் ஹாட்ஸ்பாட்டையும் உருவாக்கலாம்."</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"ஹாட்ஸ்பாட்டைத் தானாக ஆஃப் செய்"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"சாதனங்கள் எதுவும் இணைக்கப்படவில்லை எனில், வைஃபை ஹாட்ஸ்பாட் ஆஃப் செய்யப்படும்"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"ஹாட்ஸ்பாட்டை இயக்குகிறது…"</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"ஹாட்ஸ்பாட்டை முடக்குகிறது…"</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> செயலில் உள்ளது"</string>
@@ -923,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"வைஃபை அழைப்பு"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"வைஃபை அழைப்பை இயக்கு"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"மொபைல் நெட்வொர்க்கிற்குப் பதில் வைஃபையைப் பயன்படுத்தும்"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"வைஃபை மூலம் அழைப்பதால், கவரேஜை அதிகரிக்கவும்"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"அழைப்புக்கான முன்னுரிமை"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"வைஃபை அழைப்புப் பயன்முறை"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"ரோமிங் விருப்பத்தேர்வு"</string>
@@ -961,6 +978,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"அவசர முகவரி"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"Wi-Fi மூலம் அவசர அழைப்பை மேற்கொள்ளும்போது, உங்களின் அப்போதைய இருப்பிடமே உங்கள் முகவரியாகக் கருதப்படும்"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958">"தனிப்பட்ட DNS அம்சங்கள் பற்றி "<annotation id="url">"மேலும் அறிக"</annotation></string>
<string name="display_settings_title" msgid="1708697328627382561">"திரை அமைப்பு"</string>
<string name="sound_settings" msgid="5534671337768745343">"ஒலி"</string>
<string name="all_volume_title" msgid="4296957391257836961">"ஒலியளவுகள்"</string>
@@ -1175,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"மொபைல் நெட்வொர்க் வகை"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ஆபரேட்டர் தகவல்"</string>
<string name="status_data_state" msgid="5503181397066522950">"மொபைல் நெட்வொர்க் நிலை"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"சேவையின் நிலை"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"சிக்னலின் வலிமை"</string>
<string name="status_roaming" msgid="2638800467430913403">"ரோமிங்"</string>
@@ -1308,6 +1327,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"புதிய <xliff:g id="NAME">^1</xliff:g> வேலை செய்கிறது. \n\nசாதனத்திற்கு படங்கள், கோப்புகள், ஆப்ஸ் டேட்டாவை நகர்த்த, அமைப்புகள் > சேமிப்பகம் என்பதற்குச் செல்லவும்."</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"<xliff:g id="APP">^1</xliff:g>ஐ நகர்த்தவும்"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"<xliff:g id="APP">^1</xliff:g>ஐயும் அதன் தரவையும் <xliff:g id="NAME_0">^2</xliff:g>க்கு நகர்த்த ஒருசில வினாடிகள் மட்டுமே எடுக்கும். நகர்த்தப்படும்போது பயன்பாட்டைப் பயன்படுத்த முடியாது. \n\nநகர்த்தும்போது <xliff:g id="NAME_1">^2</xliff:g>ஐ அகற்ற வேண்டாம்."</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"தரவை நகர்த்துவதற்கு, பயனர் <xliff:g id="APP">^1</xliff:g> அனுமதிக்கப்பட வேண்டும்."</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"<xliff:g id="APP">^1</xliff:g> நகர்த்தப்படுகிறது…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"நகர்த்தும்போது <xliff:g id="NAME">^1</xliff:g>ஐ அகற்ற வேண்டாம். \n\nநகர்த்தி முடிக்கும்வரை, சாதனத்தில் <xliff:g id="APP">^2</xliff:g> பயன்பாடு கிடைக்காது."</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"நகர்த்துவதை ரத்துசெய்"</string>
@@ -1360,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"நெட்வொர்க், ஆப்ஸ் அல்லது சாதனத்தை மீட்டமைக்கலாம்"</string>
<string name="reset_network_title" msgid="6166025966016873843">"வைஃபை, மொபைல் & புளூடூத்தை மீட்டமை"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"பின்வருபவை உட்பட, எல்லா நெட்வொர்க் அமைப்புகளையும் இது மீட்டமைக்கும்:\n\n"<li>"வைஃபை"</li>\n<li>"மொபைல் தரவு"</li>\n<li>"புளூடூத்"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIMகளை மீட்டமைக்கவும்"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"மொபைலில் உள்ள எல்லா eSIMகளும் அழிக்கப்படும். தொலைத்தொடர்பு சேவை வழங்கும் நிறுவனத்தைத் தொடர்புகொண்டு eSIMகளை மீண்டும் பதிவிறக்க வேண்டும். இதனால், உங்கள் மொபைல் சேவைத் திட்டம் ரத்து செய்யப்படாது."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"அமைப்புகளை மீட்டமை"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"எல்லா நெட்வொர்க் அமைப்புகளையும் மீட்டமைக்கவா? இதைச் செயல்தவிர்க்க முடியாது!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"அமைப்புகளை மீட்டமை"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"மீட்டமைக்கவா?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"நெட்வொர்க் அமைப்புகளை மீட்டமைக்க, இந்தப் பயனருக்கு அனுமதியில்லை"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"நெட்வொர்க் அமைப்புகள் மீட்டமைக்கப்பட்டன"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIMகளை மீட்டமைக்க முடியவில்லை"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"பிழை காரணமாக eSIMகளை மீட்டமைக்க முடியாது."</string>
<string name="master_clear_title" msgid="3531267871084279512">"எல்லாத் டேட்டாவையும் அழி (ஆரம்பநிலை மீட்டமைவு)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"இது, உங்கள் டேப்லெடின் "<b>"அகச் சேமிப்பிடத்தில்"</b>" உள்ள எல்லா டேட்டாவையும் அழித்துவிடும், இவற்றில் உள்ளடங்குவன:\n\n"<li>"உங்கள் Google கணக்கு"</li>\n<li>"சிஸ்டம் மற்றும் ஆப்ஸ் டேட்டா, மற்றும் அமைப்புகள்"</li>\n<li>"பதிவிறக்கப்பட்ட பயன்பாடுகள்"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"இது, உங்கள் மொபைலின் "<b>"அகச் சேமிப்பிடத்தில்"</b>" உள்ள பின்வரும் எல்லா டேட்டாவையும் அழித்துவிடும்:\n\n"<li>"உங்கள் Google கணக்கு"</li>\n<li>"சிஸ்டம், ஆப்ஸ் டேட்டா மற்றும் அமைப்புகள்"</li>\n<li>"பதிவிறக்கிய பயன்பாடுகள்"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"தற்போது, பின்வரும் கணக்குகளில் உள்நுழைந்துள்ளீர்கள்:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"இந்தச் சாதனத்தில் பிற பயனர்கள் உள்ளனர்.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"இசை"</li>\n<li>"படங்கள்"</li>\n<li>"பிற பயனர் தரவு"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"இ-சிம்மை ஆதரிக்கும் தொலைத்தொடர்பு நிறுவனங்கள்"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMகள்"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"இதைச் செய்வதால், உங்கள் மொபைல் சேவைத் திட்டம் ரத்துசெய்யப்படாது."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"இசை, படங்கள் மற்றும் பிற பயனர் தரவை அழிப்பதற்கு, "<b>"USB சேமிப்பிடத்தை"</b>" அழிக்க வேண்டியிருக்கும்."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"இசை, படங்கள் மற்றும் பிற பயனர் தரவை அழிக்க "<b>"SD கார்டு"</b>" அழிக்கப்பட வேண்டும்."</string>
@@ -1432,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"இணையத்துடன் இணைக்கவும்"</string>
<string name="location_title" msgid="1029961368397484576">"எனது இருப்பிடம்"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"பணி சுயவிவரத்திற்கான இருப்பிடம்"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"பயன்முறை"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"அதிக துல்லியம்"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"பேட்டரி சேமிப்பு"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"சாதனம் மட்டும்"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"இருப்பிடம் முடக்கத்தில்"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"பயன்பாட்டு நிலை அனுமதிகள்"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"சமீபத்திய இருப்பிட கோரிக்கைகள்"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"எந்தப் பயன்பாடுகளும் சமீபத்தில் இருப்பிடத்தைக் கோரவில்லை"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"இருப்பிடச் சேவைகள்"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"அதிகப் பேட்டரி பயன்பாடு"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"குறைவான பேட்டரி பயன்பாடு"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"இருப்பிடப் பயன்முறை"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"இருப்பிடத்தைக் கண்டறிய GPS, வைஃபை, புளூடூத் அல்லது மொபைல் நெட்வொர்க்குகளைப் பயன்படுத்தும்"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"இருப்பிடத்தைக் கண்டறிய வைஃபை, புளூடூத் அல்லது மொபைல் நெட்வொர்க்குகளைப் பயன்படுத்தும்"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"இருப்பிடத்தைக் கண்டறிய, GPS மற்றும் சாதன உணர்விகளைப் பயன்படுத்து"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"ஸ்கேன் செய்தல்"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"வைஃபை ஸ்கேன் செய்தல்"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"முறைமையின் பயன்பாடுகளும் சேவைகளும் எந்த நேரத்திலும் வைஃபை நெட்வொர்க்குகளைக் கண்டறிய அனுமதிப்பதன் மூலம், இருப்பிட அறிதலை மேம்படுத்தவும்."</string>
@@ -1468,6 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"இருப்பிட ஆதாரங்கள்"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"டேப்லெட் அறிமுகம்"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"மொபைல் விவரம்"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"சாதனம் பற்றிய அறிமுகம்"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"சாதனம் பற்றிய தகவல்"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"சட்டத் தகவல், நிலை மற்றும் மென்பொருள் பதிப்பைக் காட்டு"</string>
<string name="legal_information" msgid="5769301644270604095">"சட்டத் தகவல்"</string>
@@ -1575,6 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"<xliff:g id="COUNT">%1$d</xliff:g> பயன்பாடுகளையும் பார்க்கவும்"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"அறியப்படாத பயன்பாடுகளால் உங்கள் டேப்லெட்டும் தனிப்பட்ட தரவும் அதிகம் பாதிப்பிற்கு உள்ளாகும். இந்த மூலத்திலிருந்து பயன்பாடுகளை நிறுவுவதால், அவற்றைப் பயன்படுத்தும் போது உங்கள் டேப்லெட்டுக்கு ஏதேனும் சேதம் ஏற்பட்டாலோ அல்லது தரவை இழந்தாலோ, அதற்கு நீங்கள்தான் பொறுப்பாவீர்கள் என்பதை ஏற்கிறீர்கள்."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"அறியப்படாத பயன்பாடுககளால் உங்கள் மொபைலும் தனிப்பட்ட தரவும் அதிகம் பாதிப்பிற்கு உள்ளாகும். இந்த மூலத்திலிருந்து பயன்பாடுகளை நிறுவுவதால், அவற்றைப் பயன்படுத்தும் போது உங்கள் மொபைலுக்கு ஏதேனும் சேதம் ஏற்பட்டாலோ அல்லது தரவை இழந்தாலோ, அதற்கு நீங்கள்தான் பொறுப்பாவீர்கள் என்பதை ஏற்கிறீர்கள்."</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"அறியப்படாத ஆப்ஸால் உங்கள் சாதனம் மற்றும் தனிப்பட்ட தரவு மிக எளிதாகப் பாதிப்புக்குள்ளாகும். இந்த மூலத்திலிருந்து ஆப்ஸை நிறுவி, பயன்படுத்தும்போது, உங்கள் சாதனத்திற்கு ஏதேனும் சேதம் ஏற்பட்டாலோ தரவை இழந்தாலோ, அதற்கு நீங்கள்தான் பொறுப்பாவீர்கள் என்பதை ஏற்கிறீர்கள்."</string>
<string name="advanced_settings" msgid="1777249286757067969">"மேம்பட்ட அமைப்பு"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"மேலும் அமைப்பு விருப்பங்களை இயக்கு"</string>
<string name="application_info_label" msgid="5736524913065714880">"ஆப்ஸ் தகவல்"</string>
@@ -1874,6 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"செயல்திறனைப் பாதிக்கலாம்"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"குறிப்பான் நகர்வதை நிறுத்தியதும் கிளிக் செய்"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"கிளிக்கிற்கு முந்தைய தாமதம்"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"சேவையைப் பயன்படுத்து"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"வண்ணத் திருத்தத்தைப் பயன்படுத்து"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"தலைப்புகளைப் பயன்படுத்து"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ஆன்"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"முடக்கப்பட்டுள்ளது"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"விரைவு அமைப்புகளில் காட்டு"</string>
@@ -1987,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> மீதமுள்ளது"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"சார்ஜ் செய்வதற்கு <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"பின்னணிச் செயல்பாடு"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"வரம்பிட்டவை"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"பின்னணியில் இயங்குவதற்குப் பயன்பாட்டை அனுமதிக்கும்"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"பயன்பாட்டைப் பயன்படுத்தாத போது, அதைப் பின்னணியில் இயக்கலாம்"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"பயன்பாட்டைப் பயன்படுத்தாத போது, அதன் பின்னணி செயல்பாடு வரம்பிடப்படும்"</string>
@@ -2030,14 +2050,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"பின்னணியில் சாதனத்தை எழுப்புகிறது"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"இருப்பிடத்தை அடிக்கடிக் கோருகிறது"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> பயன்பாடுகள், வழக்கத்திற்கு மாறாகச் செயல்படுகின்றன"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"பேட்டரி நன்றாக வேலை செய்கிறது"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"ஆப்ஸ் வழக்கம்போல் இயங்குகின்றன"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"குறைந்த பேட்டரி திறன்"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"இந்த பேட்டரியால் நீண்ட நேர பேட்டரி ஆயுளை வழங்க முடியாது"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"ஸ்மார்ட் பேட்டரி நிர்வாகியை ஆன் செய்தல்"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"பேட்டரி உபயோகத்தை மேம்படுத்த, ஆன் செய்யவும்"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"குறைந்த பேட்டரிப் பயன்முறையை ஆன் செய்யவும்"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"பேட்டரியின் நிலையை நீட்டிக்கவும்"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"குறைந்த பேட்டரிப் பயன்முறை ஆன் செய்யப்பட்டுள்ளது"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"சில அம்சங்கள் வரம்பிடப்பட்டுள்ளன"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"மொபைல் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளது"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"டேப்லெட் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளது"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"சாதனம் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளது"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"கடைசியாக முழுச் சார்ஜ் செய்யப்பட்டதிலிருந்து, சுமார் <xliff:g id="HOUR">%1$s</xliff:g> மணிநேரம் பயன்படுத்தப்பட்டுள்ளது"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"உங்கள் மொபைல் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளதால், பேட்டரி அதிகளவில் செலவாகியுள்ளது. பேட்டரியின் செயல்பாடு இயல்பாக உள்ளது.\n\n உங்கள் மொபைல் கடைசியாக முழுச் சார்ஜ் செய்யப்பட்டதிலிருந்து, சுமார் <xliff:g id="HOUR">%1$s</xliff:g> மணிநேரம் பயன்படுத்தப்பட்டுள்ளது.\n\n மொத்த உபயோகம்:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"உங்கள் டேப்லெட் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளதால், பேட்டரி அதிகளவில் செலவாகியுள்ளது. பேட்டரியின் செயல்பாடு இயல்பாக உள்ளது.\n\n உங்கள் டேப்லெட் கடைசியாக முழுச் சார்ஜ் செய்யப்பட்டதிலிருந்து, சுமார் <xliff:g id="HOUR">%1$s</xliff:g> மணிநேரம் பயன்படுத்தப்பட்டுள்ளது.\n\n மொத்த உபயோகம்:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"உங்கள் சாதனம் மிக அதிகமாகப் பயன்படுத்தப்பட்டுள்ளதால், பேட்டரி அதிகளவில் செலவாகியுள்ளது. பேட்டரியின் செயல்பாடு இயல்பாக உள்ளது.\n\n உங்கள் சாதனம் கடைசியாக முழுச் சார்ஜ் செய்யப்பட்டதிலிருந்து, சுமார் <xliff:g id="HOUR">%1$s</xliff:g> மணிநேரம் பயன்படுத்தப்பட்டுள்ளது.\n\n மொத்த உபயோகம்:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"ஸ்மார்ட் பேட்டரி நிர்வாகி"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"பேட்டரியைத் தானாகவே நிர்வகி"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"உபயோகத்தின் அடிப்படையில், ஆப்ஸின் பவர் உபயோகத்தைத் தானாகவே மாற்றியமைத்துக் கொள்ளும்"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"தடைசெய்யப்பட்ட ஆப்ஸ்"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d ஆப்ஸ்</item>
+ <item quantity="one">%1$d பயன்பாடு</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"பயன்பாட்டை நிறுத்தவா?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"<xliff:g id="APP">%1$s</xliff:g> உங்கள் மொபைலைத் தொடர்ந்து செயல்பாட்டில் வைப்பதால், எப்போதும் போல் மொபைலால் பேட்டரியை நிர்வகிக்க முடியாது.\n\nஇந்தச் சிக்கலைத் தீர்க்க, பயன்பாட்டை நிறுத்தலாம்.\n\nதொடர்ந்து சிக்கல் ஏற்பட்டால், பேட்டரிச் செயல்திறனை மேம்படுத்த, பயன்பாட்டை நிறுவல்நீக்க வேண்டியிருக்கும்."</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"<xliff:g id="APP">%1$s</xliff:g> உங்கள் டேப்லெட்டைத் தொடர்ந்து செயல்பாட்டில் வைப்பதால், எப்போதும் போல் டேப்லெட்டால் பேட்டரியை நிர்வகிக்க முடியாது.\n\nஇந்தச் சிக்கலைத் தீர்க்க, பயன்பாட்டை நிறுத்தலாம்.\n\nதொடர்ந்து சிக்கல் ஏற்பட்டால், பேட்டரிச் செயல்திறனை மேம்படுத்த, பயன்பாட்டை நிறுவல்நீக்க வேண்டியிருக்கும்."</string>
@@ -2146,6 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"மீடியாசர்வர்"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"பயன்பாட்டிற்கான மேம்படுத்தல்"</string>
<string name="battery_saver" msgid="8172485772238572153">"பேட்டரி சேமிப்பான்"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"பேட்டரி சேமிப்பானைப் பயன்படுத்து"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"தானாகவே இயக்கு"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ஒருபோதும் வேண்டாம்"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> பேட்டரி இருக்கும் போது"</string>
@@ -2333,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"ஒத்திசைவில் தற்போது சிக்கல்களை எதிர்கொள்கிறோம். விரைவில் இது சரிசெய்யப்படும்."</string>
<string name="add_account_label" msgid="7811707265834013767">"கணக்கைச் சேர்"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"இன்னும் பணி சுயவிவரம் கிடைக்கவில்லை"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"பணிப் பயன்முறை"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"செயல்பட, பணி சுயவிவரத்தை அனுமதி. இதில் பயன்பாடுகள், பின்புல ஒத்திசைவு மற்றும் தொடர்புடைய அம்சங்கள் அடங்கும்"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"பணிச் சுயவிவரம்"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"உங்கள் நிறுவனம் நிர்வகிக்கிறது"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ஆப்ஸ் மற்றும் அறிவிப்புகள் ஆஃப் செய்யப்பட்டுள்ளன"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"பணி சுயவிவரத்தை அகற்று"</string>
<string name="background_data" msgid="5779592891375473817">"பின்புலத் தரவு"</string>
<string name="background_data_summary" msgid="8328521479872763452">"பயன்பாடுகளால் எந்நேரத்திலும் தரவை ஒத்திசைக்கவும், அனுப்பவும் பெறவும் முடியும்"</string>
@@ -2366,6 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"கணக்கை அகற்றவா?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"கணக்கை அகற்றுவது அதிலுள்ள செய்திகள், தொடர்புகள் மற்றும் டேப்லெட்டில் உள்ள பிற தகவல்களையும் நீக்கும்!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"இந்தக் கணக்கை அகற்றுவது, அதிலுள்ள செய்திகள், தொடர்புகள் மற்றும் மொபைலில் உள்ள பிற தகவல்களையும் நீக்கும்!"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"இந்தக் கணக்கை அகற்றினால், சாதனத்தில் உள்ள தொடர்புகள், செய்திகள் மற்றும் பிற தரவு ஆகியவை நீக்கப்படும்!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"உங்கள் நிர்வாகி இந்த மாற்றத்தை அனுமதிக்கவில்லை"</string>
<string name="provider_label" msgid="7724593781904508866">"சந்தாக்களை உறுதிப்படுத்து"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2624,7 @@
<item quantity="other">சான்றிதழ்களைச் சரிபார்</item>
<item quantity="one">சான்றிதழைச் சரிபார்</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"பயனர்கள்"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"பல பயனர்கள்"</string>
<string name="user_list_title" msgid="7937158411137563543">"பயனர்கள் & சுயவிவரங்கள்"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"பயனர் அல்லது சுயவிவரத்தைச் சேர்"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"பயனரைச் சேர்"</string>
@@ -2774,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"புளூடூத், அனுப்புதல்"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ஆப்ஸ் & அறிவிப்புகள்"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"அனுமதிகள், இயல்பு ஆப்ஸ்"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"பயனர்களும் கணக்குகளும்"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"கணக்குகள்"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"இயல்புப் பயன்பாடுகள்"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"மொழிகள், நேரம், காப்புப் பிரதி, புதுப்பிப்புகள்"</string>
<string name="search_results_title" msgid="1796252422574886932">"அமைப்பு"</string>
@@ -2805,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"வேண்டாம், தொந்தரவு செய்யாதே, குறுக்கீடு, குறுக்கிடல், இடைநிறுத்தம்"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"அருகாமை, இருப்பிடம், வரலாறு, அறிக்கையிடல்"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"துல்லியம்"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"கணக்கு"</string>
<string name="keywords_users" msgid="3434190133131387942">"வரம்பிடல், வரம்பு, வரம்பிட்டது"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"உரை திருத்தம், சரிசெய், ஒலி, அதிர்வு, தானியங்கு, மொழி, சைகை, பரிந்துரை, பரிந்துரைப்பு, தீம், வன்மொழி, சொல், வகை, ஈமோஜி, சர்வதேசம்"</string>
@@ -2829,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"நெட்வொர்க், மொபைல் நெட்வொர்க் நிலை, சேவை நிலை, சிக்னலின் வலிமை, மொபைல் நெட்வொர்க் வகை, ரோமிங், iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"வரிசை எண், வன்பொருள் பதிப்பு"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android பாதுகாப்பு பேட்ச் நிலை, பேஸ்பேண்ட் பதிப்பு, கர்னல் பதிப்பு"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"வைஃபை NFC குறியை அமை"</string>
<string name="write_tag" msgid="8571858602896222537">"எழுது"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"எழுத, குறியைத் தட்டவும்..."</string>
@@ -2872,6 +2915,7 @@
<item quantity="one">1 விதி</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"தொந்தரவு செய்யாதே"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"தொந்தரவு செய்ய வேண்டாம் என்பதை ஆன் செய்யும்"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"செயல்பாடு"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"இந்த ஒலிகள்/அதிர்வுகளை அனுமதி"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ஒலியெழுப்ப வேண்டாம்"</string>
@@ -2881,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"தானாகவே ஆன் செய்"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"தானியங்கு விதிகள்"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"தானியங்கு விதி"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"டிஎன்டி விதிகளை அமை"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"ஒலி & அதிர்வுகளை வரம்பிடு"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"குறிப்பிட்ட நேரத்தில் ஒலி முடக்கு"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'தொந்தரவு செய்ய வேண்டாம்’ விதிகளை அமைத்தல்"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"விதியைப் பயன்படுத்து"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"முதன்மை மட்டும்"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"அலாரங்கள் மட்டும்"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"அறிவிப்புகள் வேண்டாம்"</string>
@@ -2890,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"விஷுவல் குறுக்கீடுகளைத் தடு"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"விஷுவல் சிக்னல்களை அனுமதி"</string>
<string name="zen_mode_add" msgid="90014394953272517">"சேர்"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"இப்போது ஆன் செய்"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"இப்போது ஆஃப் செய்"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ஆன் செய்"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"இப்போது ஆன் செய்"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"இப்போது ஆஃப் செய்"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> வரை ‘தொந்தரவு செய்ய வேண்டாம்’ ஆன் நிலையில் இருக்கும்"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"ஆஃப் செய்யப்படும் வரை, ‘தொந்தரவு செய்ய வேண்டாம்’ ஆன் நிலையில் இருக்கும்"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"(<xliff:g id="RULE_NAME">%s</xliff:g>) விதியின் காரணமாக, ‘தொந்தரவு செய்ய வேண்டாம்’ தானாக ஆன் செய்யப்பட்டது"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"(<xliff:g id="APP_NAME">%s</xliff:g>) பயன்பாட்டின் மூலம், ‘தொந்தரவு செய்ய வேண்டாம்’ தானாக ஆன் செய்யப்பட்டது"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"முக்கியமானவை மட்டும்"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"பணி விவர ஒலிகள்"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"தனிப்பட்ட சுயவிவர ஒலிகளைப் பயன்படுத்து"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"பணி மற்றும் தனிப்பட்ட சுயவிவரங்களுக்கு ஒரே ஒலிகள்"</string>
@@ -2911,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"ரிங்டோன்கள்"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"பிற ஒலிகள் மற்றும் அதிர்வுகள்"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"அறிவிப்புகள்"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"சமீபத்தில் அனுப்பியவை"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"மேம்பட்டவை"</string>
<string name="profile_section_header" msgid="2320848161066912001">"பணி அறிவிப்புகள்"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"அறிவிப்புப் புள்ளிகளைக் காட்டு"</string>
@@ -2930,7 +2981,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"ஆப்ஸ் அறிவிப்புகள்"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"அறிவிப்பு வகை"</string>
<string name="notification_group_title" msgid="7180506440133859601">"அறிவிப்புப் பிரிவின் குழு"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"முக்கியத்துவம்"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"செயல்பாடு"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"ஒலியை அனுமதிக்கவும்"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"அறிவிப்புகளை ஒருபோதும் காட்டாது"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"ஒலியெழுப்பாது அல்லது காட்சிக் குறுக்கீடு செய்யாது"</string>
@@ -2948,6 +2999,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"நடுத்தர முக்கியத்துவம்"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"அதிக முக்கியத்துவம்"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"மிக அதிக முக்கியத்துவம்"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"அறிவிப்புகளைக் காட்டு"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"அறிவிப்பு உதவி"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"அறிவிப்பு அணுகல்"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"பணி விவர அறிவிப்புகளுக்கான அணுகல் தடுக்கப்பட்டுள்ளது"</string>
@@ -2978,9 +3030,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"\'தொந்தரவு செய்யாதே\' அணுகல்"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"\'தொந்தரவு செய்யாதே\' அணுகலை நிறுவப்பட்ட பயன்பாடுகள் எதுவும் கோரவில்லை"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"பயன்பாடுகளை ஏற்றுகிறது..."</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"இந்தப் பயன்பாட்டின் அறிவிப்புகளை Android இயங்குதளம் இந்தச் சாதனத்தில் காட்டாது"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"இந்தச் சாதனத்தில் இந்த வகையிலான அறிவிப்புகள் தோன்றுவதை Android தடுக்கிறது"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"சாதனத்தில், இந்தக் குழு அறிவிப்புகள் தோன்றுவதை Android தடுக்கிறது"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"உங்கள் கோரிக்கையின் படி, இந்தச் சாதனத்தில், இந்தப் பயன்பாட்டின் அறிவிப்புகள் தோன்றுவதை Android தடுக்கிறது"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"உங்கள் கோரிக்கையின் படி, இந்தச் சாதனத்தில், இந்த வகை அறிவிப்புகள் தோன்றுவதை Android தடுக்கிறது"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"உங்கள் கோரிக்கையின் படி, இந்தச் சாதனத்தில், இந்தக் குழு அறிவிப்புகள் தோன்றுவதை Android தடுக்கிறது"</string>
<string name="notification_channels" msgid="5346841743182627500">"வகைகள்"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"மற்றவை"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"சாதனத்தைத் திறக்க கைரேகையைப் பயன்படுத்துவதுடன் சேர்த்து, கடவுச்சொல் தேவைப்படுமாறு அமைத்து உங்கள் சாதனத்திற்குக் கூடுதல் பாதுகாப்பு வழங்கிடலாம். சாதனம் தொடங்கும் வரை, அழைப்புகள், செய்திகள் அல்லது அலாரங்கள் உள்ளிட்ட அறிவிப்புகளை இதில் பெற முடியாது. \n\nஉங்கள் சாதனம் தொலைந்து போனாலோ திருடப்பட்டாலோ, அதில் உள்ள உங்கள் டேட்டாவைப் பாதுகாக்க இதைக் கடைபிடிக்கலாம். சாதனத்தைத் தொடங்கும் போது, கடவுச்சொல்லைக் கேட்பதை அமைக்கவா?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ஆம்"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"வேண்டாம்"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ஆம்"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"இல்லை"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"பின் தேவையா?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"வடிவம் தேவையா?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"கடவுச்சொல் தேவையா?"</string>
@@ -3255,7 +3309,7 @@
<string name="high_power_system" msgid="7362862974428225301">"பேட்டரியைச் சேமிக்காது"</string>
<string name="high_power_desc" msgid="6283926163708585760">"பேட்டரி மேம்படுத்தலைப் பயன்படுத்தவில்லை எனில், உங்கள் பேட்டரி மிக விரைவில் தீர்ந்துவிடக்கூடும்."</string>
<string name="high_power_prompt_title" msgid="6358673688590282655">"எப்போதும் பின்னணியில் இயங்க, பயன்பாட்டை அனுமதிக்கவா?"</string>
- <string name="high_power_prompt_body" msgid="1031422980602565049">"எப்போதும் பின்னணியில் இயங்குவதற்கு <xliff:g id="APP_NAME">%1$s</xliff:g>ஐ அனுமதிப்பதால், பேட்டரி நிலை குறையக்கூடும். \n\nஇதை அமைப்புகள் > பயன்பாடுகள் & அறிவிப்புகள் என்பதற்குச் சென்று, மாற்றலாம்."</string>
+ <string name="high_power_prompt_body" msgid="1031422980602565049">"எப்போதும் பின்னணியில் இயங்க <xliff:g id="APP_NAME">%1$s</xliff:g> பயன்பாட்டை அனுமதிப்பதால், பேட்டரியின் ஆயுள் குறையக்கூடும். \n\nஇதை அமைப்புகள் > பயன்பாடுகள் & அறிவிப்புகள் என்பதற்குச் சென்று, மாற்றலாம்."</string>
<string name="battery_summary" msgid="8044042095190688654">"முழு சார்ஜ் ஆனதிலிருந்து <xliff:g id="PERCENTAGE">%1$s</xliff:g> பயன்படுத்தப்பட்டுள்ளது"</string>
<string name="battery_power_management" msgid="5571519699679107523">"பேட்டரி திறன் மேலாண்மை"</string>
<string name="no_battery_summary" msgid="3528036835462846814">"கடைசியாக முழு சார்ஜ் செய்த நேரத்திலிருந்து, பேட்டரி பயன்படுத்தப்படவில்லை"</string>
@@ -3271,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"வேண்டாம்"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"இந்தச் சாதனத்தை சார்ஜ் செய்ய"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"இந்தச் சாதனத்தைச் சார்ஜ் செய்யும்"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"பவர் சப்ளை செய்ய"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"இணைத்துள்ள சாதனம் சார்ஜாகும். இது USB சார்ஜிங்கை ஆதரிக்கும் சாதனங்களில் மட்டுமே வேலை செய்யும்."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ஃபைல்களைப் பரிமாற்ற"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"கோப்புகளை மற்றொரு சாதனத்திற்கு இடமாற்றும்"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"படங்களைப் பரிமாற்ற (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTP ஆதரிக்கப்படவில்லை எனில், படங்கள் அல்லது கோப்புகளைப் பரிமாற்றும் (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"சாதனத்தை MIDIயாகப் பயன்படுத்த"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"இந்தச் சாதனத்தை MIDI ஆகப் பயன்படுத்தும்"</string>
- <string name="usb_use" msgid="3256040963685055320">"USBஐ இதற்குப் பயன்படுத்து:"</string>
+ <string name="usb_use" msgid="3372728031108932425">"இதற்காக USBஐப் பயன்படுத்து:"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"இந்தச் சாதனத்தைச் சார்ஜ் செய்வதற்கு"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"பவரைச் சப்ளை செய்கிறது"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"கோப்புகளை இடமாற்றுகிறது"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"படங்களை இடமாற்றுகிறது (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"சாதனத்தை MIDI ஆகப் பயன்படுத்துகிறது"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS மிரரிங்"</string>
<string name="background_check_pref" msgid="7550258400138010979">"பின்புலச் சோதனை"</string>
<string name="background_check_title" msgid="4534254315824525593">"முழுமையான பின்புல அணுகல்"</string>
@@ -3394,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"வால்பேப்பர், உறக்கம், எழுத்தின் அளவு"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 நிமிடங்களாக எந்தச் செயல்பாடும் இல்லை எனில், உறக்கநிலைக்குச் செல்லும்"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> இல் சராசரியாக <xliff:g id="USED_MEMORY">%1$s</xliff:g> நினைவகம் பயன்படுத்தப்பட்டுள்ளது"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"தற்போதைய பயனர்: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"உள்நுழைந்துள்ள முகவரி: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> இயல்பு பயன்பாடாகும்"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ஆன் / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ஆன்"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ஆஃப்"</string>
<string name="backup_disabled" msgid="485189128759595412">"காப்புப் பிரதி முடக்கப்பட்டுள்ளது"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g>க்குப் புதுப்பிக்கப்பட்டது"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"செயல் அனுமதிக்கப்படவில்லை"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"ஒலியளவை மாற்ற முடியாது"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"அழைப்பு அனுமதிக்கப்படவில்லை"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS அனுமதிக்கப்படவில்லை"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"கேமரா அனுமதிக்கப்படவில்லை"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"ஸ்கிரீன்ஷாட் அனுமதிக்கப்படவில்லை"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"காப்புப்பிரதிகள் எடுப்பதை ஆஃப் செய்ய முடியாது"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"இந்தச் செயல் முடக்கப்பட்டது. மேலும் அறிய, உங்கள் நிறுவனத்தின் நிர்வாகியைத் தொடர்புகொள்ளவும்."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"மேலும் விவரங்கள்"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"உங்கள் நிர்வாகியால் அமைப்புகள், அனுமதிகள், கார்ப்பரேட் அணுகல், நெட்வொர்க் செயல்பாடு, சாதனத்தின் இருப்பிடத் தகவல் உட்பட உங்கள் பணி விவரத்துடன் தொடர்புடைய பயன்பாடுகளையும் தரவையும் கண்காணிக்கவும் நிர்வகிக்கவும் முடியும்."</string>
@@ -3420,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"கையடக்க வைஃபை ஹாட்ஸ்பாட் <xliff:g id="ID_1">%1$s</xliff:g> இயக்கத்தில் உள்ளது, இந்தச் சாதனத்தில் வைஃபை முடக்கப்பட்டுள்ளது."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"விமானப் பயன்முறை: இயக்கத்தில்"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"வைஃபை, புளூடூத், மொபைல் நெட்வொர்க் போன்றவை ஆஃப் செய்யப்பட்டுள்ளன. ஃபோன் அழைப்புகளைச் செய்யவோ இண்டர்நெட்டுடன் இணைக்கவோ முடியாது."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"தொந்தரவு செய்யவேண்டாம்: இயக்கத்தில்(<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"பேட்டரிசேமிப்பான்: இயக்கத்தில்"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"செயல்திறன் குறைக்கப்பட்டது. இருப்பிடச் சேவைகளும் பின்புலத் தரவும் முடக்கப்பட்டுள்ளன."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"மொபைல் டேட்டா முடக்கப்பட்டுள்ளது"</string>
@@ -3430,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"பணி சுயவிவரம் முடக்கப்பட்டது"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"உங்கள் பணி சுயவிவரத்துடன் தொடர்புடைய பயன்பாடுகள், பின்புல ஒத்திசைவு மற்றும் பிற அம்சங்கள் ஆகியவை முடக்கப்பட்டன."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"இரவு ஒளி அட்டவணையை அமை"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"திரையின் பிரகாசத்தை குறைக்கும்"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"தினமும் இரவு நேரத்தில், திரை ஒளியைத் தானாகக் குறைக்கும்"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"இரவு ஒளி இயக்கப்பட்டுள்ளது"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"மென்னிற மஞ்சளும் ஆரஞ்சும் கலந்த நிறத்தில் திரை இருப்பது நீங்கள் உறங்குவதற்கு உதவக்கூடும்."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"உங்களுக்கானவை"</string>
<string name="suggestions_title" msgid="7280792342273268377">"பரிந்துரைகள்"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+மேலும் <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3537,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"எதுவுமில்லை"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"மதிப்பீட்டுத் தகவல் இல்லை."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"மதிப்பீட்டுத் தகவலில் இந்த விசை இல்லை."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"காட்சியை, கட் அவுட் போலக் காட்டு"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ஏதுமில்லை"</string>
<string name="special_access" msgid="3458780842491881155">"பயன்பாட்டின் சிறப்பு அணுகல்"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> பயன்பாடுகளால் எல்லா தகவலையும் பயன்படுத்த முடியும்</item>
@@ -3559,31 +3642,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"பல சாதனங்களுடன் இணைக்கப்பட்டுள்ளது"</string>
<string name="demo_mode" msgid="2798762752209330277">"சிஸ்டம் பயனர் இடைமுக டெமோ பயன்முறை"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"விரைவு அமைப்புகளின் டெவெலப்பர் கட்டங்கள்"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"உதவுவதற்காகக் காத்திருக்கிறோம்"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"உங்களுக்கு உதவுவதற்காக வாரத்தில் 7 நாட்களும் 24 மணிநேரமும் காத்திருக்கிறோம்"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"உங்களுக்கு உதவுவதற்காக வாரத்தில் 7 நாட்களும் நாளில் 24 மணிநேரமும் காத்திருக்கிறோம்"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"சிக்கலைத் தீர்ப்பதற்கு உதவ, எங்கள் ஆதரவுக் குழுவினர் காத்திருக்கின்றனர்"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"உங்களுக்கு உதவுவதற்காக எங்கள் ஆதரவுக் குழு என்றும், எப்பொழுதும் காத்திருக்கிறது"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"உதவிப் பிரிவில் தேடவும் அல்லது ஆதரவு நேரத்தின் போது தொடர்புகொள்ளவும் (உள்ளூர் நேரம்):<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"ஃபோன் ஆதரவு நேரம் (உள்ளூர் நேரம்)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"உதவியில் தேடவும் அல்லது உதவிக்குறிப்புகளையும் உத்திகளையும் ஆராயவும்"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"இந்த நாட்டிற்கான ஆதரவு:"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"விண்டோ ட்ரேஸ்"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"சர்ஃபேஸ் டிரேஸ்"</string>
<string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"வெளிநாட்டிற்குப் பயணிக்கிறீர்களா?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"சர்வதேசக் பேமெண்ட்கள் விதிக்கப்படலாம்"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"ஃபோன்"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"அரட்டை"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"உதவிக் குறிப்புகள் & உத்திகள் ஆராய்க"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"உதவிக்குச் செல் & கருத்து அனுப்பு"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"ஆதரவைத் தொடர்புகொள்ளவும்"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"உள்நுழைக"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"உள்நுழைய முடியவில்லையா?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"முறைமை தகவலை அனுப்பு"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"மீண்டும் காட்டாதே"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"இவராகக் கோருகிறது:"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"கணக்கைச் சேர்"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"கணினித் தகவல்"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"பணிச் சுயவிவர அமைப்புகள்"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"தொடர்புகளில் தேடு"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"எனது நிறுவனத்தின்படி அழைப்பாளர்களையும் தொடர்புகளையும் கண்டறிய, ”தொடர்புகளில் தேடு” அம்சத்தை அனுமதி"</string>
@@ -3599,11 +3660,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> வினாடிகள்</item>
<item quantity="one">1 வினாடி</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"காத்திருப்பு நேரம்: ~<xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"சேமிப்பகத்தை நிர்வகி"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"சேமிப்பக இடத்தைக் காலியாக்க உதவ, காப்புப் பிரதி எடுக்கப்பட்ட படங்களையும் வீடியோக்களையும் உங்கள் சாதனத்திலிருந்து சேமிப்பக நிர்வாகி அகற்றும்."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"படங்கள் & வீடியோக்களை அகற்று"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"சேமிப்பக நிர்வாகி"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"சேமிப்பக நிர்வாகியைப் பயன்படுத்து"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"தானியங்கு"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"கைமுறை"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"இப்போதே இடத்தைக் காலியாக்கு"</string>
@@ -3614,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"கேமராவிற்குச் செல்லுதல்"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"கேமராவை விரைவாகத் திறக்க, பவர் பொத்தானை இருமுறை அழுத்தவும். எந்தத் திரையிலும் கேமரா இயங்கும்."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"கேமராவை உடனடியாகத் திறக்கவும்"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"கேமராவைத் திறக்க, பவர் பொத்தானை இருமுறை அழுத்தவும்"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"கேமராவை மாற்றுதல்"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"வேகமாக செல்ஃபிகளை எடுக்கவும்"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"செல்ஃபிப் பயன்முறைக்கு, மொபைலை இருமுறை திருப்பவும்"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"செல்ஃபிப் பயன்முறைக்கு, டேப்லெட்டை இருமுறை திருப்பவும்"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"செல்ஃபிப் பயன்முறைக்கு, சாதனத்தை இருமுறை திருப்பவும்"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"மொபைல் திரையில் அறிவிப்புகளைப் பார்க்க, இருமுறை தட்டவும்"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"டேப்லெட் திரையில் அறிவிப்புகளைப் பார்க்க, இருமுறை தட்டவும்"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"சாதனத் திரையில் அறிவிப்புகளைப் பார்க்க, இருமுறை தட்டவும்"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"நேரம், அறிவிப்பு ஐகான்கள் மற்றும் பிற தகவலைப் பார்க்க, திரையை இருமுறை தட்டவும்."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"திரை அணைக்கப்பட்டிருக்கும் போது, அறிவிப்புகளைப் பார்க்கலாம்"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"திரையில் அறிவிப்புகளைப் பார்க்க, மொபைலை கையில் எடுக்கவும்"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"திரையில் அறிவிப்புகளை பார்க்க, டேப்லெட்டை கையில் எடுக்கவும்"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"திரையில் அறிவிப்புகளைப் பார்க்க, சாதனத்தை கையில் எடுக்கவும்"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"நேரம், அறிவிப்பு ஐகான்கள் மற்றும் பிற தகவலைப் பார்க்க, மொபைலைக் கையில் எடுக்கவும்."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"நேரம், அறிவிப்பு ஐகான்கள் மற்றும் பிற தகவலைப் பார்க்க, டேப்லெட்டைக் கையில் எடுக்கவும்."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"நேரம், அறிவிப்பு ஐகான்கள் மற்றும் பிற தகவலைப் பார்க்க, சாதனத்தைக் கையில் எடுக்கவும்."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"திரை அணைக்கப்பட்டிருக்கும் போது, அறிவிப்புகளைப் பார்க்கலாம்"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"அறிவிப்புகளைப் பெற சென்சாரில் ஸ்வைப் செய்தல்"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"கைரேகையை ஸ்வைப் செய்யவும்"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"அறிவிப்புகளைப் பார்க்க, மொபைலின் பின்புறத்தில் உள்ள கைரேகை சென்சாரில் கீழ் நோக்கி ஸ்வைப் செய்தல்."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"அறிவிப்புகளைப் பார்க்க, டேப்லெட்டின் பின்புறத்தில் உள்ள கைரேகை உணர்வியில் கீழே ஸ்வைப் செய்யவும்."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"அறிவிப்புகளைப் பார்க்க, சாதனத்தின் பின்புறத்தில் உள்ள கைரேகை உணர்வியில் கீழே ஸ்வைப் செய்யவும்."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"அறிவிப்புகளை உடனடியாகப் பார்க்கவும்"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"கைரேகை உணர்வியில் கீழே ஸ்வைப் செய்யவும்"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ஆன்"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ஆஃப்"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"பூட்லோடர் ஏற்கனவே திறந்துள்ளது"</string>
@@ -3769,8 +3823,18 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"உங்கள் புதிய டேப்லெட்டைப் பற்றி அறிக"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"உங்கள் புதிய சாதனத்தைப் பற்றி அறிக"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"இந்தச் சாதனத்தில் இந்த அம்சம் இல்லை"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
- <skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
- <skip />
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"முழுமையான Gnss அளவீடுகளை அமலாக்கு"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"பணி சுழற்சியை முடக்கி, GNSS வழிசெலுத்துதல்கள் மற்றும் அதிர்வெண்கள் அனைத்தையும் கண்காணித்தல்."</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"சிதைவு அறிவிப்பை எப்போதும் காட்டு"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"பயன்பாடு செயலிழக்கும் போதெல்லாம் சிதைவு அறிவிப்பைக் காட்டு"</string>
+ <string name="directory_access" msgid="4722237210725864244">"கோப்பக அணுகல்"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"கோப்பக அணுகல்"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"எனது மொபைல்"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"எனது டேப்லெட்"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"எனது சாதனம்"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"கணக்கு"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"சாதனத்தின் பெயர்"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"வாகனம் ஓட்டும்போது புளூடூத் உபயோகி"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"வாகனம் ஓட்டும்போது புளூடூத் தானாகவே ஆன் செய்யப்படும்"</string>
</resources>
diff --git a/res/values-te/arrays.xml b/res/values-te/arrays.xml
index 91d95bf..5e04466 100644
--- a/res/values-te/arrays.xml
+++ b/res/values-te/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"పుష్ బటన్"</item>
<item msgid="1624323946324499595">"పీర్ డివైజ్ నుండి పిన్"</item>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 0ee61cf..b718da7 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"తేదీని సెట్ చేయి"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"అక్షరక్రమంలో క్రమబద్ధీకరించు"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"సమయ మండలి ద్వారా క్రమబద్ధీకరించు"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>న ప్రారంభమవుతుంది."</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"డేలైట్ ఆదా సమయం"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"ప్రామాణిక సమయం"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"ప్రాంతం ద్వారా సమయ మండలి"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"స్థిరమైన ఆఫ్సెట్ సమయ మండళ్లు"</string>
<string name="date_picker_title" msgid="1338210036394128512">"తేదీ"</string>
<string name="time_picker_title" msgid="483460752287255019">"సమయం"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"స్వయంచాలకంగా లాక్ చేయి"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"లాక్ స్క్రీన్ సందేశం"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"విడ్జెట్లను ప్రారంభించు"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"నిర్వాహకులు నిలిపివేసారు"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"అన్నీ లాక్ చేయి ఎంపికను చూపు"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"విస్తారిత యాక్సెస్ మరియు వేలిముద్ర అన్లాకింగ్ని ఆఫ్ చేసే పవర్ బటన్ను ప్రదర్శిస్తుంది."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"ఏమీ లేదు"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"ఉదా., రాజేష్ గారి Android."</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"ప్రొఫైల్ సమాచారం"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"ఖాతాలు"</string>
<string name="location_settings_title" msgid="1369675479310751735">"స్థానం"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"స్థానం ఉపయోగించండి"</string>
<string name="account_settings_title" msgid="626177544686329806">"ఖాతాలు"</string>
<string name="security_settings_title" msgid="4918904614964215087">"భద్రత & స్థానం"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"ఎన్క్రిప్షన్ & ఆధారాలు"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"మీరు నమోదు చేసిన పాస్వర్డ్ సరైనది, కానీ దురదృష్టవశాత్తూ మీ డేటా పాడైంది. \n\nమీ టాబ్లెట్ను ఉపయోగించడం పునఃప్రారంభించడానికి, మీరు ఫ్యాక్టరీ రీసెట్ను అమలు చేయాలి. మీరు రీసెట్ చేసిన తర్వాత మీ టాబ్లెట్ను సెటప్ చేసినప్పుడు, మీ Google ఖాతాకు బ్యాకప్ చేసిన ఏదైనా డేటాను పునరుద్ధరించుకునే అవకాశం మీకు అందించబడుతుంది."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"మీరు నమోదు చేసిన పాస్వర్డ్ సరైనది, కానీ దురదృష్టవశాత్తూ మీ డేటా పాడైంది. \n\nమీ ఫోన్ను ఉపయోగించడం పునఃప్రారంభించడానికి, మీరు ఫ్యాక్టరీ రీసెట్ను అమలు చేయాలి. మీరు రీసెట్ చేసిన తర్వాత మీ ఫోన్ను సెటప్ చేసినప్పుడు, మీ Google ఖాతాకు బ్యాకప్ చేసిన ఏదైనా డేటాను పునరుద్ధరించుకునే అవకాశం మీకు అందించబడుతుంది."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"ఇన్పుట్ పద్ధతిని మార్చు"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"స్క్రీన్ లాక్ను సెట్ చేయండి"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"మీ పరికరాన్ని సంరక్షిస్తుంది"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"వేలిముద్రను ఉపయోగించండి"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"మీ వేలిముద్రతో అన్లాక్ చేయండి"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"భద్రత కోసం స్క్రీన్ లాక్ సెట్ చేయండి"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"మీ టాబ్లెట్ని ఉపయోగించకుండా ఇతరులను అడ్డుకుంటుంది"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"మీ పరికరాన్ని ఉపయోగించకుండా ఇతరులను అడ్డుకుంటుంది"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"మీ ఫోన్ని ఉపయోగించకుండా ఇతరులను అడ్డుకుంటుంది"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"వేలిముద్రతో అన్లాక్ చేయండి"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"మీ వేలిముద్రతో అన్లాక్ చేయండి"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"మీ వేలిముద్రతో అన్లాక్ చేయండి"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"మీ వేలిముద్రతో అన్లాక్ చేయండి"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"స్క్రీన్ లాక్ను ఎంచుకోండి"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"కార్యాలయ లాక్ను ఎంచుకోండి"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"మీ టాబ్లెట్ రక్షించుకోండి"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"పేరు"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"సైన్ ఇన్ చేయి"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fiని ఆన్ చేయాలనుకుంటోంది"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fiని ఆఫ్ చేయాలనుకుంటోంది"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi‑Fiని ప్రారంభించండి"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fiని ఉపయోగించండి"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi సెట్టింగ్లు"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"వైర్లెస్ యాక్సెస్ స్థానాలను సెటప్ చేయండి & నిర్వహించండి"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"పాస్వర్డ్"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"పాస్వర్డ్ను చూపు"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP బ్యాండ్ ఎంచుకోండి"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"స్వీయ"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz బ్యాండ్"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz బ్యాండ్"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP సెట్టింగ్లు"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android హాట్స్పాట్"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi కాలింగ్"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi కాలింగ్ను ఆన్ చేయండి"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"మొబైల్ నెట్వర్క్ బదులుగా Wi-Fiని ఉపయోగిస్తుంది"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fiతో కాల్ చేయడం ద్వారా కవరేజీని విస్తరిస్తుంది"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"కాలింగ్ ప్రాధాన్యత"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi కాలింగ్ మోడ్"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"రోమింగ్ ప్రాధాన్యత"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"మొబైల్ నెట్వర్క్ రకం"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"ఆపరేటర్ సమాచారం"</string>
<string name="status_data_state" msgid="5503181397066522950">"మొబైల్ నెట్వర్క్ స్థితి"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"సేవ స్థితి"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"సిగ్నల్ సామర్థ్యం"</string>
<string name="status_roaming" msgid="2638800467430913403">"రోమింగ్లో ఉంది"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"నెట్వర్క్, యాప్లు లేదా పరికరాన్ని రీసెట్ చేయవచ్చు"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, మొబైల్ & బ్లూటూత్ని రీసెట్ చేయండి"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"ఇది అన్ని నెట్వర్క్ సెట్టింగ్లను రీసెట్ చేస్తుంది, వీటితో సహా:\n\n"<li>"Wi‑Fi"</li>\n<li>"మొబైల్ డేటా"</li>\n<li>"బ్లూటూత్"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIMలను కూడా రీసెట్ చేయి"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"ఫోన్లో ఉన్న అన్ని eSIMలను క్లియర్ చేయండి. మీ eSIMలను తిరిగి డౌన్లోడ్ చేయాలంటే మీ క్యారియర్ని సంప్రదించాలి. ఇది మీ మొబైల్ సేవా ప్లాన్ని రద్దు చేయదు."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"సెట్టింగ్లను రీసెట్ చేయి"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"అన్ని నెట్వర్క్ సెట్టింగ్లను రీసెట్ చేయాలా? మీరు ఈ చర్యను తిరిగి రద్దు చేయలేరు!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"సెట్టింగ్లను రీసెట్ చేయి"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"రీసెట్ చేయాలా?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"ఈ వినియోగదారు కోసం నెట్వర్క్ రీసెట్ అందుబాటులో లేదు"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"నెట్వర్క్ సెట్టింగ్లు రీసెట్ చేయబడ్డాయి"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIMలను రీసెట్ చేయడం సాధ్యం కాదు"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"ఎర్రర్ కారణంగా eSIMలను రీసెట్ చేయడం సాధ్యం కాదు."</string>
<string name="master_clear_title" msgid="3531267871084279512">"మొత్తం డేటాను తొలగించండి (ఫ్యాక్టరీ రీసెట్)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"ఇందువలన మీ టాబ్లెట్ యొక్క "<b>"అంతర్గత నిల్వ"</b>" నుండి వీటితో సహా, మొత్తం డేటా ఎరేజ్ చేయబడుతుంది:\n\n"<li>"మీ Google ఖాతా"</li>\n<li>"సిస్టమ్ మరియు అనువర్తన డేటా మరియు సెట్టింగ్లు"</li>\n<li>"డౌన్లోడ్ చేయబడిన అనువర్తనాలు"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"ఇందువలన మీ ఫోన్ "<b>"అంతర్గత నిల్వ"</b>" నుండి వీటితో సహా మొత్తం డేటా ఎరేజ్ చేయబడుతుంది:\n\n"<li>"Google ఖాతా"</li>\n<li>"సిస్టమ్ మరియు యాప్ డేటా మరియు సెట్టింగ్లు"</li>\n<li>"డౌన్లోడ్ చేయబడిన యాప్లు"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"మీరు ప్రస్తుతం క్రింది ఖాతాలకు సైన్ ఇన్ చేసారు:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"ఈ పరికరంలో ఇతర వినియోగదారులు ఉన్నారు.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"సంగీతం"</li>\n<li>"ఫోటోలు"</li>\n<li>"ఇతర వినియోగదారు డేటా"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIMలో క్యారియర్లు"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMలు"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"ఇది మొబైల్ సేవా ప్లాన్ని రద్దు చేయదు."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"సంగీతం, చిత్రాలు మరియు ఇతర వినియోగదారు డేటాను క్లియర్ చేయడానికి, "<b>"USB నిల్వ"</b>"ను ఎరేజ్ చేయాల్సి ఉంటుంది."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"సంగీతం, చిత్రాలు మరియు ఇతర వినియోగదారు డేటాను క్లియర్ చేయడానికి, "<b>"SD కార్డు"</b>"ను ఎరేజ్ చేయాల్సి ఉంటుంది."</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"దయచేసి ఇంటర్నెట్కు కనెక్ట్ చేయండి"</string>
<string name="location_title" msgid="1029961368397484576">"నా స్థానం"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"కార్యాలయ ప్రొఫైల్ యొక్క స్థానం"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"మోడ్"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"అధిక నిర్దిష్టత"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"బ్యాటరీ ఆదా"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"పరికరం మాత్రమే"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"స్థానం ఆఫ్లో ఉంది"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"అనువర్తన-స్థాయి అనుమతులు"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"ఇటీవలి స్థాన అభ్యర్థనలు"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"స్థానాన్ని ఇటీవల అనువర్తనాలు ఏవీ అభ్యర్థించలేదు"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"స్థానం సేవలు"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"అధిక బ్యాటరీ వినియోగం"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"తక్కువ బ్యాటరీ వినియోగం"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"స్థానం మోడ్"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"స్థానాన్ని కనుగొనడానికి GPS, Wi‑Fi, బ్లూటూత్ లేదా మొబైల్ నెట్వర్క్లను ఉపయోగిస్తుంది"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"స్థానాన్ని కనుగొనడానికి Wi‑Fi, బ్లూటూత్ లేదా మొబైల్ నెట్వర్క్లను ఉపయోగిస్తుంది"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"స్థానాన్ని గుర్తించడానికి GPS మరియు పరికర సెన్సార్లను ఉపయోగిస్తుంది"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"స్కానింగ్"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi స్కానింగ్"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"ఏ సమయంలోనైనా Wi‑Fi నెట్వర్క్లను గుర్తించడానికి సిస్టమ్ అనువర్తనాలు మరియు సేవలను అనుమతించడం ద్వారా స్థానాన్ని మెరుగుపరుస్తుంది."</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"స్థానం మూలాలు"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"టాబ్లెట్ పరిచయం"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"ఫోన్ గురించి"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"పరికరం గురించి"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"పునరుత్పాదిత పరికరం గురించి"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"చట్టపరమైన సమాచారం, స్థితి, సాఫ్ట్వేర్ సంస్కరణను వీక్షించండి"</string>
<string name="legal_information" msgid="5769301644270604095">"చట్టబద్ధమైన సమాచారం"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"మొత్తం <xliff:g id="COUNT">%1$d</xliff:g> అనువర్తనాలను చూడండి"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"మీ టాబ్లెట్ మరియు వ్యక్తిగత డేటా తెలియని మూలాల్లోని అనువర్తనాల ద్వారా దాడికి గురి కావడానికి ఎక్కువ అవకాశం ఉంటుంది. ఈ మూలం నుండి అనువర్తనాలను ఇన్స్టాల్ చేయడం ద్వారా, ఈ అనువర్తనాలను ఉపయోగించడం ద్వారా మీ టాబ్లెట్కు సంభవించే ఏదైనా నష్టానికి లేదా కోల్పోయే డేటాకి బాధ్యత వహించడానికి మీరు అంగీకరిస్తున్నారు."</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"మీ ఫోన్ మరియు వ్యక్తిగత డేటా తెలియని మూలాల్లోని అనువర్తనాల ద్వారా దాడికి గురి కావడానికి ఎక్కువ అవకాశం ఉంటుంది. ఈ మూలం నుండి అనువర్తనాలను ఇన్స్టాల్ చేయడం ద్వారా, ఈ అనువర్తనాలను ఉపయోగించడం వలన మీ ఫోన్కు సంభవించే ఏదైనా నష్టానికి లేదా కోల్పోయే డేటాకి బాధ్యత వహించడానికి మీరు అంగీకరిస్తున్నారు."</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"మీ పరికరం మరియు వ్యక్తిగత డేటాపై తెలియని మూలాధారాల నుండి పొందిన యాప్లు దాడి చేసే అవకాశం ఎక్కువగా ఉంది. ఈ మూలాధారం నుండి పొందిన యాప్లను ఇన్స్టాల్ చేయడం ద్వారా, వాటి ఉపయోగం కారణంగా మీ పరికరానికి జరిగే హాని లేదా డేటాని కోల్పోవడం వంటి వాటికి మీరే పూర్తి బాధ్యత వహించడానికి మీరు అంగీకరించాలి."</string>
<string name="advanced_settings" msgid="1777249286757067969">"అధునాతన సెట్టింగ్లు"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"మరిన్ని సెట్టింగ్ల ఎంపికలను ప్రారంభించు"</string>
<string name="application_info_label" msgid="5736524913065714880">"యాప్ సమాచారం"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"పనితీరుపై ప్రభావం చూపవచ్చు"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"పాయింటర్ కదలడం ఆగిపోయిన తర్వాత క్లిక్ చర్య అమలు చేస్తుంది"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"క్లిక్ చేయడానికి ముందు జాప్యం"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"సేవని ఉపయోగించండి"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"రంగు సవరణను ఉపయోగించండి"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"శీర్షికలను ఉపయోగించండి"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"ఆన్"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"ఆఫ్"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"శీఘ్ర సెట్టింగ్ల్లో చూపు"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> ఉంది"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>లోపు ఛార్జ్ చేయాలి"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"నేపథ్య కార్యకలాపం"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"నియంత్రించబడింది"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"నేపథ్యంలో అమలు కావడానికి అనువర్తనాన్ని అనుమతించండి"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"ఉపయోగంలో లేకపోయినా యాప్ నేపథ్యంలో అమలు కాగలదు"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"ఉపయోగంలో లేని సమయంలో యాప్ నేపథ్య కార్యకలాపం పరిమితంగా ఉంటుంది"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"యాప్లు సాధారణంగా పనిచేస్తున్నాయి"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"తక్కువ బ్యాటరీ సామర్థ్యం"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"బ్యాటరీ మంచి బ్యాటరీ జీవితకాలాన్ని అందించలేదు"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"స్మార్ట్ బ్యాటరీ మేనేజర్ని ఆన్ చేయండి"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"బ్యాటరీ వినియోగాన్ని అనుకూలీకరించడం కోసం ఆన్ చేయండి"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"తక్కువ బ్యాటరీ మోడ్ని ఆన్ చేయండి"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"మీ బ్యాటరీ జీవితకాలాన్ని పెంచండి"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"తక్కువ బ్యాటరీ మోడ్ ఆన్లో ఉంది"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"కొన్ని ఫీచర్లు పరిమితం చేయబడ్డాయి"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"ఫోన్ అధికంగా ఉపయోగించబడింది"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"టాబ్లెట్ అధికంగా ఉపయోగించబడింది"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"పరికరం అధికంగా ఉపయోగించబడింది"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"మీడియా సర్వర్"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"అనువర్తన అనుకూలీకరణ"</string>
<string name="battery_saver" msgid="8172485772238572153">"బ్యాటరీ సేవర్"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"బ్యాటరీ సేవర్ని ఉపయోగించండి"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"స్వయంచాలకంగా ఆన్ చేయి"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"ఎప్పటికీ వద్దు"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> బ్యాటరీ ఉన్నప్పుడు"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"సమకాలీకరణ ప్రస్తుతం సమస్యలను ఎదుర్కొంటోంది. ఇది త్వరలో అందుబాటులోకి వస్తుంది."</string>
<string name="add_account_label" msgid="7811707265834013767">"ఖాతాను జోడించు"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"కార్యాలయ ప్రొఫైల్ ఇప్పటికీ అందుబాటులో లేదు"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"కార్యాలయ మోడ్"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"అనువర్తనాలు, నేపథ్య సమకాలీకరణ మరియు సంబంధిత లక్షణాలతో సహా కార్యాలయ ప్రొఫైల్ను పని చేయడానికి అనుమతిస్తుంది"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"కార్యాలయ ప్రొఫైల్"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"మీ సంస్థ ద్వారా నిర్వహించబడుతుంది"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"యాప్లు మరియు నోటిఫికేషన్లు ఆఫ్ చేయబడ్డాయి"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"కార్యాలయ ప్రొఫైల్ను తీసివేయి"</string>
<string name="background_data" msgid="5779592891375473817">"నేపథ్య డేటా"</string>
<string name="background_data_summary" msgid="8328521479872763452">"అనువర్తనాలు ఏ సమయంలోనైనా డేటాను సమకాలీకరించవచ్చు, పంపవచ్చు మరియు స్వీకరించవచ్చు"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"ఖాతాను తీసివేయాలా?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"ఈ ఖాతాను తీసివేయడం వలన టాబ్లెట్ నుండి దీనికి చెందిన మొత్తం సందేశాలు, పరిచయాలు మరియు ఇతర డేటా తొలగించబడతాయి!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"ఈ ఖాతాను తీసివేయడం వలన ఫోన్ నుండి దానికి సంబంధించిన మొత్తం సందేశాలు, పరిచయాలు మరియు ఇతర డేటా తొలగించబడతాయి!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"ఈ ఖాతాను తీసివేయడం వలన పరికరం నుండి దానికి సంబంధించిన అన్ని సందేశాలు, పరిచయాలు మరియు ఇతర డేటా తొలగించబడతాయి!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"ఈ మార్పును మీ నిర్వాహకులు అనుమతించలేదు"</string>
<string name="provider_label" msgid="7724593781904508866">"పుష్ చందాలు"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="other">ప్రమాణపత్రాలను తనిఖీ చేయి</item>
<item quantity="one">ప్రమాణపత్రాన్ని తనిఖీ చేయి</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"వినియోగదారులు"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"బహుళ వినియోగదారులు"</string>
<string name="user_list_title" msgid="7937158411137563543">"వినియోగదారులు & ప్రొఫైల్లు"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"వినియోగదారు లేదా ప్రొఫైల్ను జోడించు"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"వినియోగదారును జోడించు"</string>
@@ -2831,7 +2814,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"బ్లూటూత్, ప్రసారం"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"యాప్లు & నోటిఫికేషన్లు"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"అనుమతులు, డిఫాల్ట్ యాప్లు"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"వినియోగదారులు & ఖాతాలు"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"ఖాతాలు"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"డిఫాల్ట్ యాప్లు"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"భాషలు, సమయం, బ్యాకప్, అప్డేట్లు"</string>
<string name="search_results_title" msgid="1796252422574886932">"సెట్టింగ్లు"</string>
@@ -2862,7 +2847,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ఆటంకం కలిగించవద్దు, అంతరాయం కలిగించు, అంతరాయం, విరామం"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"సమీపం, స్థానం, చరిత్ర, నివేదన"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ఖచ్చితత్వం"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"ఖాతా"</string>
<string name="keywords_users" msgid="3434190133131387942">"పరిమితి, పరిమితం చేయి, పరిమితం చేయబడింది"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"వచన దిద్దుబాటు, దిద్దుబాటు చేయి, ధ్వని, వైబ్రేట్, స్వయంచాలకం, భాష, సంజ్ఞ, సూచించు, సూచన, థీమ్, అభ్యంతరకరం, పదం, రకం, ఎమోజీ, అంతర్జాతీయం"</string>
@@ -2886,6 +2870,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"నెట్వర్క్, మొబైల్ నెట్వర్క్ స్థితి, సేవ స్థితి, సిగ్నల్ సామర్థ్యం, మొబైల్ నెట్వర్క్ రకం, రోమింగ్, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"క్రమ సంఖ్య, హార్డ్వేర్ వెర్షన్"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"android భద్రతా అతికింపు స్థాయి, బేస్బ్యాండ్ వెర్షన్, కెర్నెల్ వెర్షన్"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ట్యాగ్ను సెటప్ చేయండి"</string>
<string name="write_tag" msgid="8571858602896222537">"వ్రాయి"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"వ్రాయడానికి ట్యాగ్ను నొక్కండి..."</string>
@@ -2929,6 +2915,7 @@
<item quantity="one">1 నియమం</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"అంతరాయం కలిగించవద్దు"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"అంతరాయం కలిగించవద్దును ఆన్ చేయండి"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"ప్రవర్తన"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"దీని నుండి అన్ని ధ్వనులు మరియు వైబ్రేషన్లు"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"ధ్వని చేయదు"</string>
@@ -2938,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"స్వయంచాలకంగా ఆన్ చేయండి"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"స్వయంచాలక నిబంధనలు"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"స్వయంచాలక నియమం"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"అంతరాయం కలిగించవద్దు నియమాలు సెట్ చేయి"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"నిర్దిష్ట సమయాలలో ధ్వనులు, వైబ్రేషన్లను పరిమితంగా ఉంచుతుంది"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"కొన్ని సమయాల్లో ఫోన్ని నిశ్శబ్దంగా ఉంచు"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"అంతరాయం కలిగించవద్దు నియమాలు సెట్ చేయండి"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"నియమం ఉపయోగించు"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"ప్రాధాన్యత మాత్రమే"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"అలారాలు మాత్రమే"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"మొత్తం నిశ్శబ్దం"</string>
@@ -2947,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"దృశ్య అంతరాయాలను బ్లాక్ చేయండి"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"దృశ్యమానత సంకేతాలను అనుమతించండి"</string>
<string name="zen_mode_add" msgid="90014394953272517">"జోడించు"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"ఆన్ చేయండి"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ఇప్పుడు ఆన్ చేయండి"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ఇప్పుడు ఆఫ్ చేయండి"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"<xliff:g id="FORMATTED_TIME">%s</xliff:g> వరకు అంతరాయం కలిగించవద్దు ఆన్లో ఉంటుంది"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"మీరు అంతరాయం కలిగించవద్దుని ఆఫ్ చేసేంత వరకు ఇది ఆన్లో ఉంటుంది"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"<xliff:g id="RULE_NAME">%s</xliff:g> నియమం ద్వారా అంతరాయం కలిగించవద్దు స్వయంచాలకంగా ఆన్ చేయబడింది"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"యాప్ <xliff:g id="APP_NAME">%s</xliff:g> ద్వారా అంతరాయం కలిగించవద్దు స్వయంచాలకంగా ఆన్ చేయబడింది"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"ప్రాధాన్యత మాత్రమే"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"కార్యాలయ ప్రొఫైల్ శబ్దాలు"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"వ్యక్తిగత ప్రొఫైల్ శబ్దాలు ఉంచు"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"కార్యాలయ మరియు వ్యక్తిగత ప్రొఫైల్లకు ఒకే ధ్వనులు ఉపయోగించబడతాయి"</string>
@@ -2968,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"రింగ్టోన్లు"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"ఇతర ధ్వనులు మరియు వైబ్రేషన్లు"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"నోటిఫికేషన్లు"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"ఇటీవల పంపినవి"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"అధునాతనం"</string>
<string name="profile_section_header" msgid="2320848161066912001">"కార్యాలయ నోటిఫికేషన్లు"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"నోటిఫికేషన్ డాట్లను అనుమతించండి"</string>
@@ -3184,6 +3178,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"మీ పరికరాన్ని అన్లాక్ చేయడానికి మీ వేలిముద్రను ఉపయోగించడంతో పాటు, దీనిని ప్రారంభించిన వెంటనే మీ పాస్వర్డ్ని అడిగే విధంగా సెట్ చేయడం ద్వారా మీరు దీనికి అదనపు రక్షణను అందించవచ్చు. పరికరాన్ని ప్రారంభించే వరకు, అది అలారాలతో సహా కాల్లు, సందేశాలు లేదా నోటిఫికేషన్లను స్వీకరించదు. \n\nకోల్పోయిన లేదా దొంగిలించబడిన పరికరాలలో ఉన్న డేటాని రక్షించడంలో ఇది సహాయపడుతుంది. మీ పరికరాన్ని ప్రారంభించడం కోసం పాస్వర్డ్ని అడగాలా?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"అవును"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"వద్దు"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"అవును"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"లేదు"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"పిన్ అవసరమా?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"ఆకృతి అవసరమా?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"పాస్వర్డ్ అవసరమా?"</string>
@@ -3330,21 +3326,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"తిరస్కరిస్తున్నాను"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"ఈ పరికరాన్ని ఛార్జ్ చేయడం"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"కేవలం ఈ పరికరాన్ని ఛార్జ్ చేస్తుంది"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"పవర్ సరఫరా చేయడం"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"కనెక్ట్ చేయబడిన పరికరాన్ని ఛార్జ్ చేస్తుంది. USB ఛార్జింగ్కు మద్దతిచ్చే పరికరాలతో మాత్రమే పనిచేస్తుంది."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"ఫైల్లను బదిలీ చేయడం"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"మరొక పరికరానికి ఫైల్లను బదిలీ చేస్తుంది"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"ఫోటోలను బదిలీ చేయడం (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"MTPకి మద్దతు లేకపోతే ఫోటోలు లేదా ఫైల్లను బదిలీ చేస్తుంది (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"పరికరాన్ని MIDI వలె ఉపయోగించడం"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"ఈ పరికరాన్ని MIDI వలె ఉపయోగించడం"</string>
- <string name="usb_use" msgid="3256040963685055320">"వీటి కోసం USBని ఉపయోగించండి"</string>
+ <string name="usb_use" msgid="3372728031108932425">"దీని కోసం USBని ఉపయోగించండి"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"ఈ పరికరాన్ని ఛార్జ్ చేయడం"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"విద్యుత్తు శక్తి సరఫరా"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"ఫైల్లను బదిలీ చేయడం"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"ఫోటోలను (PTP) బదిలీ చేయడం"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"పరికరాన్ని MIDI వలె ఉపయోగించడం"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS మిర్రరింగ్"</string>
<string name="background_check_pref" msgid="7550258400138010979">"నేపథ్య తనిఖీ"</string>
<string name="background_check_title" msgid="4534254315824525593">"పూర్తి నేపథ్య యాక్సెస్"</string>
@@ -3453,19 +3471,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"వాల్పేపర్, నిద్రావస్థ, ఫాంట్ పరిమాణం"</string>
<string name="display_summary_example" msgid="9102633726811090523">"10 నిమిషాల నిష్క్రియాత్మకత తర్వాత నిద్రావస్థకు వెళ్తుంది"</string>
<string name="memory_summary" msgid="8080825904671961872">"సగటున <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>లో <xliff:g id="USED_MEMORY">%1$s</xliff:g> మెమరీ వినియోగించబడింది"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"ప్రస్తుత వినియోగదారు: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"<xliff:g id="USER_NAME">%1$s</xliff:g>గా సైన్ ఇన్ చేసారు"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> డిఫాల్ట్గా ఉంది"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"ఆన్ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"ఆన్"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ఆఫ్"</string>
<string name="backup_disabled" msgid="485189128759595412">"బ్యాకప్ నిలిపివేయబడింది"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g>కి నవీకరించబడింది"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"చర్య అనుమతించబడదు"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"వాల్యూమ్ని మార్చలేరు"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"కాల్ చేయడానికి అనుమతి లేదు"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS పంపడానికి అనుమతి లేదు"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"కెమెరాకి అనుమతి లేదు"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"స్క్రీన్షాట్ తీయడానికి అనుమతి లేదు"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"బ్యాకప్లను ఆపివేయడం సాధ్యపడదు"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"ఈ చర్య నిలిపివేయబడింది. మరింత తెలుసుకోవాలంటే, మీ సంస్థ యొక్క నిర్వాహకులను సంప్రదించండి."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"మరిన్ని వివరాలు"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"సెట్టింగ్లు, అనుమతులు, కార్పొరేట్ యాక్సెస్, నెట్వర్క్ కార్యకలాపం మరియు డివైజ్ యొక్క స్థాన సమాచారంతో పాటు మీ కార్యాలయ ప్రొఫైల్కి అనుబంధితంగా ఉన్న యాప్లు మరియు డేటాని మీ నిర్వాహకులు పర్యవేక్షించగలరు మరియు నిర్వహించగలరు ."</string>
@@ -3479,7 +3500,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"పోర్టబుల్ Wi-Fi హాట్స్పాట్ <xliff:g id="ID_1">%1$s</xliff:g> సక్రియంగా ఉంది, ఈ పరికర Wi-Fi ఆఫ్ చేయబడింది."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ఎయిర్ప్లేన్ మోడ్ ఆన్లో ఉంది"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, బ్లూటూత్ మరియు మొబైల్ నెట్వర్క్ ఆఫ్ చేయబడ్డాయి. మీరు ఫోన్ కాల్లు చేయలేరు లేదా ఇంటర్నెట్కు కనెక్ట్ చేయలేరు."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"అంతరాయం వద్దు ఆన్లో ఉంది (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"బ్యాటరీ సేవర్ ఆన్లో ఉంది"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"పనితీరు తగ్గించబడింది. స్థాన సేవలు మరియు నేపథ్య డేటా ఆఫ్ చేయబడ్డాయి."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"మొబైల్ డేటా ఆఫ్ చేయబడింది"</string>
@@ -3489,9 +3511,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"కార్యాలయ ప్రొఫైల్ ఆఫ్లో ఉంది"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"మీ కార్యాలయ ప్రొఫైల్కి సంబంధించిన అనువర్తనాలు, నేపథ్య సమకాలీకరణ మరియు ఇతర లక్షణాలు ఆఫ్ చేయబడ్డాయి."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"రాత్రి కాంతి షెడ్యూల్ని సెట్ చేయండి"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"నిద్ర పట్టేలా స్క్రీన్ కాషాయ రంగు వర్ణబేధం మారుస్తుంది"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"రాత్రిళ్లు స్క్రీన్లో స్వయంచాలకంగా వర్ణభేదం చూపుతుంది"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"రాత్రి కాంతి ఆన్లో ఉంది"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"స్క్రీన్ లేత కాషాయ రంగులో ఉంది. మీరు నిద్రలోకి జారుకోవడంలో ఇది సహాయకరంగా ఉండవచ్చు."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"మీ కోసం సూచించబడినవి"</string>
<string name="suggestions_title" msgid="7280792342273268377">"సూచనలు"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> మరిన్ని"</string>
@@ -3596,6 +3619,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"ఏదీ లేదు"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"ర్యాంకింగ్ ఆబ్జెక్ట్ లేదు."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"ర్యాంకింగ్ ఆబ్జెక్ట్లో ఈ కీ లేదు."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"కట్అవుట్తో ప్రదర్శనను అనుకరించండి"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"ఏదీ కాదు"</string>
<string name="special_access" msgid="3458780842491881155">"ప్రత్యేక యాప్ యాక్సెస్"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> యాప్లు అనియంత్రిత డేటాని ఉపయోగించగలవు</item>
@@ -3618,10 +3643,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"బహుళ పరికరాలకు కనెక్ట్ చేయబడింది"</string>
<string name="demo_mode" msgid="2798762752209330277">"సిస్టమ్ UI డెమో మోడ్"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"త్వరిత సెట్టింగ్లు డెవలపర్ టైల్లు"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"విండో స్థితిగతి కనుగొనడం"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"ఉపరితలం స్థితిగతి"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"కార్యాలయ ప్రొఫైల్ సెట్టింగ్లు"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"పరిచయ శోధన"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"కాలర్లు మరియు పరిచయాలను గుర్తించడానికి మీ సంస్థ ద్వారా పరిచయ శోధనలను చేయడానికి అనుమతిస్తుంది"</string>
@@ -3641,8 +3665,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"నిల్వ స్థలాన్ని ఖాళీ చేయడంలో సహాయపడటానికి, నిల్వ నిర్వాహికి మీ పరికరం నుండి బ్యాకప్ చేసిన ఫోటోలు మరియు వీడియోలను తీసివేస్తుంది."</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"ఫోటోలు & వీడియోలను తీసివేయి"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"నిల్వ నిర్వాహికి"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"నిల్వ మేనేజర్ని ఉపయోగించండి"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"స్వయంచాలకం"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"మాన్యువల్"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"ఇప్పుడు స్థలాన్ని ఖాళీ చేయి"</string>
@@ -3653,32 +3676,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"తక్షణమే కెమెరా మోడ్కు వెళ్లండి"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"కెమెరాను త్వరగా తెరవడానికి, పవర్ బటన్ను రెండుసార్లు నొక్కండి. ఏ స్క్రీన్పైన అయినా పని చేస్తుంది."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"కెమెరాని త్వరగా తెరవండి"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"కెమెరాని తెరవడం కోసం పవర్ బటన్ని రెండుసార్లు నొక్కండి"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"కెమెరాను ముందు/వెనుకకు మార్చడం"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"మరింత వేగంగా సెల్ఫీలు తీసుకోండి"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"సెల్ఫీ మోడ్ కోసం ఫోన్ని రెండుసార్లు ముందుకు వెనుకకు కదపండి"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"సెల్ఫీ మోడ్ కోసం టాబ్లెట్ని రెండుసార్లు ముందుకు వెనుకకు కదపండి"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"సెల్ఫీ మోడ్ కోసం పరికరాన్ని రెండుసార్లు ముందుకు వెనుకకు కదపండి"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"ఫోన్ను తరచి చూడటానికి రెండుసార్లు నొక్కండి"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"టాబ్లెట్ను తరచి చూడటానికి రెండుసార్లు నొక్కండి"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"పరికరాన్ని తరచి చూడటానికి రెండుసార్లు నొక్కండి"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"సమయం, నోటిఫికేషన్ చిహ్నాలు మరియు ఇతర సమాచారాన్ని తనిఖీ చేయడం కోసం, మీ స్క్రీన్ని రెండుసార్లు నొక్కండి."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"స్క్రీన్ ఆఫ్ చేయబడినప్పుడు నోటిఫికేషన్ల కోసం తనిఖీ చేయి"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"ఫోన్ను తరచి చూడటానికి పైకి ఎత్తండి"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"టాబ్లెట్ను తరచి చూడటానికి పైకి ఎత్తండి"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"పరికరాన్ని తరచి చూడటానికి పైకి ఎత్తండి"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"సమయం, నోటిఫికేషన్ చిహ్నాలు మరియు ఇతర సమాచారాన్ని తనిఖీ చేయడం కోసం, మీ ఫోన్ని చేతిలోకి తీసుకోండి."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"సమయం, నోటిఫికేషన్ చిహ్నాలు మరియు ఇతర సమాచారాన్ని తనిఖీ చేయడం కోసం, మీ టాబ్లెట్ని చేతిలోకి తీసుకోండి."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"సమయం, నోటిఫికేషన్ చిహ్నాలు మరియు ఇతర సమాచారాన్ని తనిఖీ చేయడం కోసం, మీ పరికరాన్ని చేతిలోకి తీసుకోండి."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"స్క్రీన్ ఆఫ్ చేయబడినప్పుడు నోటిఫికేషన్ల కోసం తనిఖీ చేయి"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"నోటిఫికేషన్ల కోసం వేలిముద్రతో స్వైప్ చేయండి"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"వేలిముద్రతో స్వైప్ చేయి"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"మీ నోటిఫికేషన్లను తనిఖీ చేయడానికి, మీ ఫోన్ వెనుకవైపు ఉన్న వేలిముద్ర సెన్సార్పై క్రిందికి స్వైప్ చేయండి."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"మీ నోటిఫికేషన్లను తనిఖీ చేయడానికి, మీ టాబ్లెట్ వెనుకవైపు ఉన్న వేలిముద్ర సెన్సార్పై క్రిందికి స్వైప్ చేయండి."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"మీ నోటిఫికేషన్లను తనిఖీ చేయడానికి, మీ పరికరం వెనుకవైపు ఉన్న వేలిముద్ర సెన్సార్పై క్రిందికి స్వైప్ చేయండి."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"నోటిఫికేషన్లను త్వరగా చూడండి"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"వేలిముద్ర సెన్సార్పై దిగువకు స్వైప్ చేయండి"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"ఆన్"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"ఆఫ్"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"బూట్లోడర్ ఇప్పటికే అన్లాక్ చేయబడింది"</string>
@@ -3810,8 +3826,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"ఈ లక్షణం ఈ పరికరంలో అందుబాటులో లేదు"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"శక్తివంతమైన GNSS కొలతలు"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"డ్యూటీ సైక్లింగ్ లేకుండా అన్ని GNSS నక్షత్రరాశులను మరియు తరచుదనాలను ట్రాక్ చేయండి"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ఎల్లప్పుడూ క్రాష్ డైలాగ్ని చూపు"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"యాప్ క్రాష్ అయిన ప్రతిసారి డైలాగ్ని చూపు"</string>
+ <string name="directory_access" msgid="4722237210725864244">"డైరెక్టరీ యాక్సెస్"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"డైరెక్టరీ యాక్సెస్"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"నా ఫోన్"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"నా టాబ్లెట్"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"నా పరికరం"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"ఖాతా"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"పరికరం పేరు"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"డ్రైవింగ్ సమయంలో బ్లూటూత్ని ఉపయోగించు"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"డ్రైవింగ్ సమయంలో బ్లూటూత్ను స్వయంచాలకంగా ఆన్ చేస్తుంది"</string>
</resources>
diff --git a/res/values-uk/arrays.xml b/res/values-uk/arrays.xml
index d83aa73..289a712 100644
--- a/res/values-uk/arrays.xml
+++ b/res/values-uk/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Кнопка Push"</item>
<item msgid="1624323946324499595">"PIN з однорангового пристрою"</item>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index d9110f2..10fe589 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -351,6 +351,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Текст на екрані"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Увімкнути віджети"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Вимкнено адміністратором"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Показувати опцію блокування"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Показувати кнопку живлення, яка вимикає розширений доступ і розблокування відбитком пальця."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Немає"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g>/<xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Наприклад, \"Android Олега\"."</string>
@@ -473,10 +475,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Ви ввели правильний пароль, але ваші дані пошкоджено. \n\nЩоб знову користуватися планшетом, відновіть заводські налаштування. Після цього ви зможете відновити на планшеті всі дані, які зберігаються у вашому обліковому записі Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Ви ввели правильний пароль, але ваші дані пошкоджено. \n\nЩоб знову користуватися телефоном, відновіть заводські налаштування. Після цього ви зможете відновити на телефоні всі дані, які зберігаються у вашому обліковому записі Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Переключити метод введення"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Налаштуйте блокування екрана"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Захистіть свій пристрій"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Використовуйте відбиток пальця"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Розблоковувати пристрій відбитком пальця"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Налаштуйте блокування екрана"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Захистіть планшет від сторонніх осіб"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Захистіть пристрій від сторонніх осіб"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Захистіть телефон від сторонніх осіб"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Розблоковуйте відбитком пальця"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Розблоковувати пристрій відбитком пальця"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Розблоковувати пристрій відбитком пальця"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Розблоковувати пристрій відбитком пальця"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Блокування екрана"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Вибер. спосіб розблок."</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Захистіть свій планшет"</string>
@@ -850,6 +856,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Пароль"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Показати пароль"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Виберіть діапазон частот точки доступу"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Автоматично"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"Діапазон 2,4 ГГц"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"Діапазон 5 ГГц"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Налаштування IP"</string>
@@ -957,7 +964,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Дзвінки через Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Увімкнути дзвінки через Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Використовувати Wi-Fi"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Розширте покриття, телефонуючи через Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Режим дзвінків"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Режим дзвінків через Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Параметри роумінгу"</string>
@@ -1212,6 +1219,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Тип мобільної мережі"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Відомості про оператора"</string>
<string name="status_data_state" msgid="5503181397066522950">"Стан мобільної мережі"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Стан служби"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Рівень сигналу:"</string>
<string name="status_roaming" msgid="2638800467430913403">"Роумінг"</string>
@@ -1398,19 +1406,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Можна скинути налаштування мережі, додатків або пристрою"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Скинути параметри Wi-Fi, мобільного передавання даних і Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Буде скинуто всі налаштування мережі, зокрема \n\n"<li>"Wi‑Fi"</li>\n<li>"мобільний трафік"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Також скинути eSIM-карти"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Стерти всі eSIM-карти на телефоні. Щоб знову завантажити eSIM-карти, потрібно буде зв’язатися з оператором. Ваш тарифний план не буде скасовано."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Скинути налаштування"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Скинути всі налаштування мереж? Цю дію не можна скасувати."</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Скинути налаштування"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Скинути?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Цей користувач не може скидати налаштування мережі"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Налаштування мереж скинуто"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Не вдається скинути eSIM-карти"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Не вдається скинути eSIM-карти через помилку."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Стерти всі дані (відновити заводські налаштування)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Буде видалено всі дані з "<b>"внутрішньої пам’яті"</b>" вашого планшета, зокрема:\n\n"<li>"ваш обліковий запис Google"</li>\n<li>"дані й налаштування системи та додатків"</li>\n<li>"завантажені додатки"</li>"."</string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Буде видалено всі дані з "<b>"внутрішньої пам’яті"</b>" вашого телефона, зокрема:\n\n"<li>"Ваш обліковий запис Google"</li>\n<li>"Дані й налаштування системи та додатків"</li>\n<li>"Завантажені додатки"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Наразі ви ввійшли в такі облікові записи:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"На цьому пристрої є інші користувачі.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Музика"</li>\n<li>"Фото"</li>\n<li>"Інші дані користувача"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Оператори eSIM-карт"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM-карти"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Ваш тарифний план не буде скасовано."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Щоб видалити музику, зображення й інші дані користувача, треба стерти "<b>"носій USB"</b>"."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Щоб видалити музику, зображення й інші дані користувача, треба стерти "<b>"карту SD"</b>"."</string>
@@ -1470,21 +1482,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Під’єднайтеся до Інтернету"</string>
<string name="location_title" msgid="1029961368397484576">"Моє місцезнах."</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Місцезнах.для робочого профілю"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Режим"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Висока точність"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Економія заряду акумулятора"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Лише датчики пристрою"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Надсилання геоданих вимкнено"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Дозволи на рівні додатка"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Останні запити геоданих"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Жодна програма не запитувала місцезнаходження останнім часом"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Служби локації"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Значне використання заряду"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Низьке використання заряду"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Режим локації"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Визначати місцезнаходження за допомогою GPS, Wi-Fi, Bluetooth і мобільних мереж"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Визначати місцезнаходження за допомогою Wi-Fi, Bluetooth і мобільних мереж"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Визначати місцезнаходження за допомогою GPS і датчиків пристрою"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Пошук"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Шукати мережі Wi‑Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Щоб покращити точність визначення місцеположення, дозвольте додаткам і сервісам системи будь-коли шукати мережі Wi‑Fi."</string>
@@ -2046,7 +2049,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> – <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Залишилося <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Залишилося заряджати <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Робота у фоновому режимі"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Обмежено"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Дозволити додаткам працювати у фоновому режимі"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Додаток може працювати у фоновому режимі, коли не використовується"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Роботу додатка у фоновому режимі обмежено, коли він не використовується"</string>
@@ -2095,14 +2098,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Акумулятор працюватиме недовго"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Увімкніть диспетчер заряду акумулятора"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Увімкніть, щоб оптимізувати використання акумулятора"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Увімкніть режим низького заряду акумулятора"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Продовжте час роботи акумулятора"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Режим низького заряду акумулятора ввімкнено"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Деякі функції обмежено"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Телефон використовувався активно"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Планшет використовувався активно"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Пристрій використовувався активно"</string>
@@ -2416,8 +2415,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Наразі виникли проблеми із синхронізацією. Незабаром вона відновиться."</string>
<string name="add_account_label" msgid="7811707265834013767">"Додати обліковий запис"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Робочий профіль ще недоступний"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Робочий режим"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Увімкнути робочий профіль, зокрема додатки, фонову синхронізацію та пов’язані функції"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Робочий профіль"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Профілем керує ваша організація"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Додатки й сповіщення вимкнено"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Видалити службовий профіль"</string>
<string name="background_data" msgid="5779592891375473817">"Фонові дані"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Програми можуть будь-коли синхроніз., надсил. й отрим. дані"</string>
@@ -2676,7 +2676,7 @@
<item quantity="many">Перевірити сертифікати</item>
<item quantity="other">Перевірити сертифікати</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Користувачі"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Кілька користувачів"</string>
<string name="user_list_title" msgid="7937158411137563543">"Користувачі та профілі"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Додати користувача чи профіль"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Додати користувача"</string>
@@ -2868,7 +2868,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth і Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Додатки та сповіщення"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Дозволи та додатки за умовчанням"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Користувачі й облікові записи"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Облікові записи"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Додатки за умовчанням"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Мови, час, резервне копіювання й оновлення"</string>
<string name="search_results_title" msgid="1796252422574886932">"Налаштування"</string>
@@ -2899,7 +2901,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"не турбувати, пріоритет, пріоритетні сповіщення, втручатися"</string>
<string name="keywords_app" msgid="6334757056536837791">"оперативна пам’ять"</string>
<string name="keywords_location" msgid="6615286961552714686">"поблизу, місцезнаходження, історія, надсилання"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"точність"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"обліковий запис"</string>
<string name="keywords_users" msgid="3434190133131387942">"обмеження, обмежувати, обмежено"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"виправлення тексту, виправити, звук, вібросигнал. автоматично, мова, жести, пропонувати, пропозиція, тема, образливо, слово, ввести текст, смайли міжнародний"</string>
@@ -2923,6 +2924,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"мережа, стан мобільної мережі, стан служби, потужність сигналу, тип мобільної мережі, роумінг, iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"серійний номер, версія апаратного забезпечення"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"рівень виправлення системи безпеки android, версія каналу зв’язку, версія ядра"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Активний екран, заблокований екран"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Налаштувати NFC-тег для Wi-Fi"</string>
<string name="write_tag" msgid="8571858602896222537">"Записати"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Торкніться тегу, у який потрібно записати дані…"</string>
@@ -2968,6 +2970,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> правила</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Не турбувати"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Увімкнути режим \"Не турбувати\""</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Поведінка"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Дозволити звуки й вібросигнали:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Без звуку"</string>
@@ -2977,8 +2980,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Вмикати автоматично"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Автоматичні правила"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Автоматичне правило"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Налаштувати правила режиму \"Не турбувати\""</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Обмежувати звуки й вібросигнали в певний час"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Вимикати звук телефона в певний час"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Налаштувати правила режиму \"Не турбувати\""</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Застосовувати правило"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Лише пріоритетні"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Лише будильник"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Без сигналів"</string>
@@ -2986,12 +2990,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Блокувати візуальні сповіщення"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Дозволити візуальні сигнали"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Додати"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Увімкнути"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Увімкнути"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Вимкнути"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Режим \"Не турбувати\" ввімкнено до <xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Режим \"Не турбувати\" буде ввімкнено, доки ви його не вимкнете."</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Правило (<xliff:g id="RULE_NAME">%s</xliff:g>) автоматично ввімкнуло режим \"Не турбувати\""</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Додаток (<xliff:g id="APP_NAME">%s</xliff:g>) автоматично ввімкнув режим \"Не турбувати\""</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Лише пріоритетні"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Звуки робочого профілю"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Звуки особистого профілю"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Звуки однакові для робочого й особистого профілів"</string>
@@ -3007,6 +3014,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Сигнали дзвінка"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Інші звуки та вібросигнали"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Сповіщення"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Нещодавно надсилали"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Розширені налаштування"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Робочі сповіщення"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Дозволити значки сповіщень"</string>
@@ -3234,6 +3244,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Якщо ви розблоковуєте пристрій відбитком пальця, можна додатково захистити його паролем перед запуском. Доки пристрій не запуститься, він не прийматиме виклики, повідомлення чи сповіщення, зокрема сигнали.\n\nЦе допомагає захистити дані на загублених чи вкрадених пристроях. Запитувати пароль перед запуском пристрою?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Так"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Ні"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Так"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Ні"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Вводити PIN-код?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Вводити ключ?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Вводити пароль?"</string>
@@ -3392,21 +3404,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Відхилити"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Заряджати цей пристрій"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Лише заряджати цей пристрій"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Постачати живлення"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Зарядіть під’єднаний пристрій. Він працює лише з пристроями, які підтримують заряджання через USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Переносити файли"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Переносити файли на інший пристрій"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Переносити фотографії (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Переносити фотографії або файли, якщо МТР не підтримується (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Використовувати пристрій як MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Використовувати цей пристрій як MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Використовувати USB, щоб"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Використання USB"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Заряджання пристрою"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Живлення пристрою"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Перенесення файлів"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Перенесення фото (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Використовувати пристрій як MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Дзеркалювання SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Перевірка у фоновому режимі"</string>
<string name="background_check_title" msgid="4534254315824525593">"Повний доступ у фоновому режиміj"</string>
@@ -3519,19 +3553,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Фоновий малюнок, режим сну та розмір шрифту"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Перейти в режим сну після 10 хвилин бездіяльності"</string>
<string name="memory_summary" msgid="8080825904671961872">"У середньому використовується <xliff:g id="USED_MEMORY">%1$s</xliff:g> пам’яті з <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Поточний користувач: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Ви ввійшли як <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> використовується за умовчанням"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"УВІМКНЕНО / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"УВІМКНЕНО"</string>
<string name="location_off_summary" msgid="6474350053215707957">"ВИМКНЕНО"</string>
<string name="backup_disabled" msgid="485189128759595412">"Резервне копіювання вимкнено"</string>
- <string name="about_summary" msgid="924181828102801010">"Оновлено до версії Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Дію не дозволено"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Змінювати гучність заборонено"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Телефонувати заборонено"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"Надсилати SMS заборонено"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Користуватися камерою заборонено"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Робити знімки екрана заборонено"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Не вдається вимкнути резервне копіювання"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Цю дію вимкнено. Щоб отримати докладнішу інформацію, зв’яжіться з адміністратором своєї організації."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Докладніше"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Адміністратор може відстежувати та контролювати додатки й дані, пов’язані з вашим робочим профілем, зокрема налаштування, дозволи, корпоративний доступ, активність у мережі чи інформацію про місцезнаходження пристрою."</string>
@@ -3545,7 +3582,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"Портативна точка доступу Wi-Fi <xliff:g id="ID_1">%1$s</xliff:g> активна. Wi-Fi вимкнено на цьому пристрої."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Режим польоту ввімкнено"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi, Bluetooth і мобільну мережу вимкнено. Ви не можете телефонувати чи під’єднуватися до Інтернету."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\"Не турбувати\" ввімкнено (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Режим енергозбереження ввімкнено"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Продуктивність знизилася. Служби локації та фоновий режим вимкнено."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Мобільний трафік вимкнено"</string>
@@ -3555,9 +3593,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Робочий профіль вимкнено"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Вимкнено додатки, фонову синхронізацію й інші функції, пов’язані з вашим робочим профілем."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Налаштувати графік нічного режиму"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Бурштиновий відтінок екрана сприятиме сну"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Автоматично відтіняти екран щовечора"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Нічне освітлення ввімкнено"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Можливо, бурштиновий відтінок екрана допоможе вам заснути."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Пропоноване для вас"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Пропозиції"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"і ще <xliff:g id="ID_1">%1$d</xliff:g>"</string>
@@ -3670,6 +3709,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"немає"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Об’єкта немає в рейтингу."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Об’єкт у рейтингу не містить цього ключа."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Імітувати відключення дисплея"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Немає"</string>
<string name="special_access" msgid="3458780842491881155">"Спеціальний доступ"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> додаток може без обмежень передавати дані</item>
@@ -3695,7 +3736,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Демо-режим інтерфейсу системи"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Швидкі налаштування блоку розробника"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Трасування вікон"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Трасування шарів"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Трасування поверхні"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> – <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Налаштування робочого профілю"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Пошук контактів"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Дозволити вашій організації шукати контакти, щоб визначати абонентів і контактних осіб"</string>
@@ -3732,32 +3774,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Перейти до камери"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Щоб швидко відкрити камеру, двічі натисніть кнопку живлення. Працює на будь-якому екрані."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Швидке відкривання камери"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Відкривати камеру подвійним натисканням кнопки живлення"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Змінити камеру"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
- <string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Робіть автопортрети швидше"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Двічі покрутити телефоном, щоб перейти в режим автопортрета"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Двічі покрутити планшетом, щоб перейти в режим автопортрета"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Двічі покрутити пристроєм, щоб перейти в режим автопортрета"</string>
+ <string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Робіть селфі швидше"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Двічі торкніться, щоб перевірити телефон"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Двічі торкніться, щоб перевірити планшет"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Двічі торкніться, щоб перевірити пристрій"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Щоб переглянути час, значки сповіщень тощо, двічі торкніться екрана."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Переглядати сповіщення, коли екран вимкнено"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Підняти телефон, щоб перевірити сповіщення"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Підніміть планшет, щоб перевірити його"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Підніміть пристрій, щоб перевірити його"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Щоб переглянути час, значки сповіщень тощо, підніміть телефон."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Щоб переглянути час, значки сповіщень тощо, підніміть планшет."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Щоб переглянути час, значки сповіщень тощо, підніміть пристрій."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Переглядати сповіщення, коли екран вимкнено"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Використати відбиток, щоб переглянути сповіщення"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Провести по сенсору відбитків пальців"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Щоб переглянути сповіщення, проведіть пальцем униз по сканеру відбитків на задній панелі телефона."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Щоб переглянути сповіщення, проведіть пальцем униз по сканеру відбитків на задній панелі планшета."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Щоб переглянути сповіщення, проведіть пальцем униз по сканеру відбитків на задній панелі пристрою."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Швидкий перегляд сповіщень"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Провести вниз на сканері відбитків пальців"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Увімкнено"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Вимкнено"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"Завантажувач уже розблоковано"</string>
@@ -3903,6 +3938,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Ця функція недоступна на цьому пристрої"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Увімкнути повне вимірювання GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Відстежувати всі фотосхеми й частоти GNSS без застосування циклічного режиму"</string>
- <string name="storage_access" msgid="8905018810338984531">"Доступ до пам’яті"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"пам’ять доступ охоплення каталог"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Завжди показувати вікно збоїв"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Показувати вікно під час кожного збою додатка"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Доступ до каталогу"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"доступ до каталогу"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Мій телефон"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Мій планшет"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Мій пристрій"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"Обліковий запис"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Назва пристрою"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Вмикати Bluetooth за кермом"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Автоматично вмикати Bluetooth за кермом"</string>
</resources>
diff --git a/res/values-ur/arrays.xml b/res/values-ur/arrays.xml
index e4e4548..0a9eb86 100644
--- a/res/values-ur/arrays.xml
+++ b/res/values-ur/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"پش بٹن"</item>
<item msgid="1624323946324499595">"ہمسر آلہ سے PIN"</item>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 26f53d2..3d050eb 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"تاریخ سیٹ کریں"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"حروف تہجی کے لحاظ سے ترتیب دیں"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"ٹائم زون کے لحاظ سے ترتیب دیں"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> کو شروع ہوتا ہے۔"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"ڈے لائٹ سیونگز کا وقت"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"معیاری وقت"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"علاقے کے لحاظ سے ٹائم زون"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"طے شدہ آف سیٹ ٹائم زونز"</string>
<string name="date_picker_title" msgid="1338210036394128512">"تاریخ"</string>
<string name="time_picker_title" msgid="483460752287255019">"وقت"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"خود کار طور پر مقفل کریں"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"مقفل اسکرین پیغام"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"ویجیٹس کو فعال کریں"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"منتظم کی طرف سے غیر فعال کردہ"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"مقفل کرنے کا اختیار دکھائیں"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"توسیعی رسائی اور فنگر پرنٹ غیر مقفل کرنے کے عمل کو آف کرنے والے پاور بٹن کا اختیار ڈسپلے کریں۔"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"کوئی نہیں"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"مثلاً، Joe کا Android۔"</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"پروفائل کی معلومات"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"اکاؤنٹس"</string>
<string name="location_settings_title" msgid="1369675479310751735">"مقام"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"مقام استعمال کریں"</string>
<string name="account_settings_title" msgid="626177544686329806">"اکاؤنٹس"</string>
<string name="security_settings_title" msgid="4918904614964215087">"سیکیورٹی اور مقام"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"مرموز کاری اور اسناد"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"آپ کا درج کردہ پاس ورڈ درست ہے لیکن بدقسمتی سے آپ کا ڈیٹا خراب ہے۔ \n\nاپنا ٹیبلٹ دوبارہ استعمال کرنا شروع کرنے کیلئے آپ کو فیکٹری ری سیٹ انجام دینے کی ضرورت ہے۔ ری سیٹ کے بعد اپنا ٹیبلٹ سیٹ اپ کر لینے پر، آپ کو کوئی بھی ایسا ڈیٹا بحال کرنے کا ایک موقع ملے گا جس کا بیک اپ آپ کے Google اکاؤنٹ میں لیا گیا تھا۔"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"آپ کا درج کردہ پاس ورڈ درست ہے لیکن بدقسمتی سے آپ کا ڈیٹا خراب ہے۔ \n\nاپنا فون دوبارہ استعمال کرنا شروع کرنے کیلئے آپ کو فیکٹری ری سیٹ انجام دینے کی ضرورت ہے۔ ری سیٹ کے بعد اپنا فون سیٹ اپ کر لینے پر، آپ کو کوئی بھی ایسا ڈیٹا بحال کرنے کا ایک موقع ملے گا جس کا بیک اپ آپ کے Google اکاؤنٹ میں لیا گیا تھا۔"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"اندراج کا طریقہ سوئچ کریں"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"اسکرین کا قفل سیٹ کریں"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"اپنے آلہ کا تحفظ کریں"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"فنگر پرنٹ استعمال کریں"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"اپنے فنگر پرنٹ کے ساتھ غیر مقفل کریں"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"سیکیورٹی کیلئے اسکرین لاک سیٹ کریں"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"دوسروں کو اپنا ٹیبلیٹ استعمال کرنے سے روکیں"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"دوسروں کو اپنا آلہ استعمال کرنے سے روکیں"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"دوسروں کو اپنا فون استعمال کرنے سے روکیں"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"فنگر پرنٹ کی مدد سے غیر مقفل کریں"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"اپنے فنگر پرنٹ کے ساتھ غیر مقفل کریں"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"اپنے فنگر پرنٹ کے ساتھ غیر مقفل کریں"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"اپنے فنگر پرنٹ کے ساتھ غیر مقفل کریں"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"اسکرین لاک منتخب کریں"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"دفتری قفل منتخب کریں"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"اپنے ٹیبلٹ کا تحفظ کریں"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"نام"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"سائن ان کریں"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi کو آن کرنا چاہتی ہے"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g> Wi-Fi کو آف کرنا چاہتی ہے"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Wi‑Fi آن کریں"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"Wi-Fi استعمال کریں"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi‑Fi ترتیبات"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"وائرلیس رسائی پوائنٹس کو ترتیب دیں اور ان کا نظم کریں"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"پاس ورڈ"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"پاس ورڈ دکھائیں"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"AP بینڈ منتخب کریں"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"خودکار"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz بینڈ"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz بینڈ"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP ترتیبات"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi کالنگ"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi کالنگ آن کریں"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"موبائل نیٹ ورک کے بجائے Wi-Fi استعمال کریں"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Wi-Fi کے ذریعے کال کر کے کوَریج کی توسیع کریں"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"کال کرنے کی ترجیح"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi کالنگ کی وضع"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"رومنگ کی ترجیح"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"موبائل نیٹ ورک کی قسم"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"آپریٹر کی معلومات"</string>
<string name="status_data_state" msgid="5503181397066522950">"موبائل نیٹ ورک کی صورت حال"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"سروس کی صورت حال"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"سگنل کی قوت"</string>
<string name="status_roaming" msgid="2638800467430913403">"رومنگ"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"نیٹ ورک، ایپس، یا آلہ کو ری سیٹ کیا جا سکتا ہے"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi، موبائل اور بلوٹوتھ کو دوبارہ ترتیب دیں"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"یہ نیٹ ورک کی سبھی ترتیبات کو دوبارہ ترتیب دے گا، بشمول:\n\n"<li>"Wi‑Fi"</li>\n<li>"موبائل ڈیٹا"</li>\n<li>"بلوٹوتھ"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"eSIMs کو بھی دوبارہ ترتیب دیں"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"فون پر تمام eSIMs صاف کریں۔ اپنی eSIMs دوبارہ ڈاؤن لوڈ کرنے کیلئے، آپ کو اپنے کیریئر سے رابطہ کرنا ہوگا۔ اس سے آپ کے موبائل سروس کا پلان منسوخ نہیں ہوگا۔"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"ترتیبات دوبارہ ترتیب دیں"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"نیٹ ورک کی سبھی ترتیبات کو دوبارہ ترتیب دیں؟ آپ اس کارروائی کو کالعدم نہیں کر سکتے ہیں!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"ترتیبات دوبارہ ترتیب دیں"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"دوبارہ ترتیب دیں؟"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"اس صارف کیلئے نیٹ ورک کو دوبارہ ترتیب دینا دستیاب نہیں ہے"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"نیٹ ورک کی ترتیبات کو دوبارہ ترتیب دیا گیا ہے"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"eSIMs کو دوبارہ ترتیب نہیں دے سکتے"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"ایک خرابی کی وجہ سے eSIMs کو دوبارہ ترتیب نہیں دیا جا سکتا۔"</string>
<string name="master_clear_title" msgid="3531267871084279512">"تمام ڈیٹا (فیکٹری ری سیٹ) حذف کریں"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"یہ آپ کے ٹیبلٹ کے "<b>"داخلی اسٹوریج"</b>" سے سبھی ڈیٹا کو حذف کر دے گا، بشمول:\n\n"<li>"آپ کا Google اکاؤنٹ"</li>\n<li>"سسٹم اور ایپ ڈیٹا اور ترتیبات"</li>\n<li>"ڈاؤن لوڈ کردہ ایپس"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"یہ آپ کے فون کے "<b>"داخلی اسٹوریج"</b>" سے سبھی ڈیٹا کو حذف کر دے گا، بشمول:\n\n"<li>"آپ کا Google اکاؤنٹ"</li>\n<li>"سسٹم اور ایپ ڈیٹا اور ترتیبات"</li>\n<li>"ڈاؤن لوڈ کردہ ایپس"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"آپ فی الحال مندرجہ ذیل اکاؤنٹس میں سائن ان ہیں:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"اس آلہ پر دوسرے صارفین موجود ہیں۔\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"موسیقی"</li>\n<li>"تصاویر"</li>\n<li>"صارف کا دیگر ڈیٹا"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008">""<li>"eSIM پر موجود کیریئرس"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIMs"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"اس سے آپ کے موبائل سروس کا پلان منسوخ نہیں ہوگا۔"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">"\n\nموسیقی، تصاویر اور صارف کا دیگر ڈیٹا، "<b>"USB اسٹوریج"</b>" کو حذف کیے جانے کی ضرورت ہے۔"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">"\n\nموسیقی، تصاویر اور صارف کا دیگر ڈیٹا صاف کرنے کیلئے، "<b>"SD کارڈ"</b>" کو حذف کیے جانے کی ضرورت ہے۔"</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"براہ کرم انٹرنیٹ سے مربوط کریں"</string>
<string name="location_title" msgid="1029961368397484576">"میرا مقام"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"دفتری پروفائل کیلئے مقام"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"وضع"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"اعلی درستگی"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"بیٹری کی بچت"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"صرف آلہ"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"مقام آف ہے"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"ایپ کی سطح کی اجازتیں"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"حالیہ مقام کی درخواستیں"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"حال میں کسی ایپس نے مقام کی درخواست نہیں کی ہے"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"مقام کی سروسز"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"بیٹری کا زیادہ استعمال"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"بیٹری کا کم استعمال"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"مقام وضع"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"مقام کا تعین کرنے کیلئے GPS، Wi‑Fi، بلوٹوتھ یا موبائل نیٹ ورکس استعمال کریں"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"مقام کا تعین کرنے کیلئے Wi‑Fi، بلوٹوتھ یا موبائل نیٹ ورکس استعمال کریں"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"مقام کا تعین کرنے کیلئے GPS اور آلہ کے سینسرز کا استعمال کریں"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"اسکیننگ"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi‑Fi اسکیننگ"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"سسٹم ایپس اور سروسز کو کسی بھی وقت Wi‑Fi نیٹ ورکس کا پتا لگانے کی اجازت دے کر مقام کو بہتر بنائیں۔"</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"مقام کے مآخذ"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"ٹیبلٹ کے بارے میں"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"فون کے بارے میں"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"آلے کے بارے میں"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"ہمسر آلہ کے بارے میں"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"قانونی معلومات، اسٹیٹس، سافٹ ویئر ورژن دیکھیں"</string>
<string name="legal_information" msgid="5769301644270604095">"قانونی معلومات"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"سبھی <xliff:g id="COUNT">%1$d</xliff:g> ایپس دیکھیں"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"آپ کے ٹیبلیٹ اور ذاتی ڈیٹا کو نامعلوم ایپس کی جانب سے حملے کا زیادہ خطرہ ہے۔ اس ذریعے سے ایپس ڈاؤن لوڈ کر کے، آپ اس بات سے اتفاق کرتے ہیں کہ آپ ان ایپس سے اپنے ٹیبلیٹ کو ہونے والے کسی بھی نقصان یا ڈیٹا کے نقصان کیلئے تنہا خود ذمہ دار ہوں گے۔"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"آپ کے فون اور ذاتی ڈیٹا کو نامعلوم ایپس کی جانب سے حملے کا زیادہ خطرہ ہے۔ اس ذریعے سے ایپس ڈاؤن لوڈ کر کے، آپ اس بات سے اتفاق کرتے ہیں کہ آپ ان ایپس سے اپنے فون کو ہونے والے کسی بھی نقصان یا ڈیٹا کے نقصان کیلئے تنہا خود ذمہ دار ہوں گے۔"</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"آپ کے آلے اور ذاتی ڈیٹا کو نامعلوم ایپس کی جانب سے حملے کا زیادہ خطرہ ہے۔ اس ذریعے سے ایپس ڈاؤن لوڈ کر کے، آپ اس بات سے اتفاق کرتے ہیں کہ آپ ان ایپس سے اپنے آلے کو ہونے والے کسی بھی نقصان یا ڈیٹا کے نقصان کیلئے تنہا خود ذمہ دار ہوں گے۔"</string>
<string name="advanced_settings" msgid="1777249286757067969">"جدید ترین ترتیبات"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"مزید ترتیبات اختیارات کو فعال کریں"</string>
<string name="application_info_label" msgid="5736524913065714880">"ایپ کی معلومات"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"کارکردگی متاثر ہو سکتی ہے"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"پوائنٹر رُک جائے تو کلک کریں"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"کلک سے قبل توقف"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"سروس استعمال کریں"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"رنگ کی اصلاح استعمال کریں"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"کیپشنز استعمال کریں"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"آن"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"آف"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"فوری ترتیبات میں دکھائیں"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> باقی"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> چارج کرنے کیلئے"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"پس منظر کی سرگرمی"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"ممنوع"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"ایپ کو پس منظر میں چلنے کی اجازت دیں"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"استعمال نہ ہونے پر ایپ پس منظر میں چل سکتی ہے"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"استعمال نہ ہونے پر، ایپ کے پس منظر کی سرگرمی محدود ہوتی ہے"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"ایپس حسب معمول برتاؤ کر رہی ہیں"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"بیٹری کی صلاحیت کم ہے"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"بیٹری زیادہ دیر تک نہیں چل سکتی"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"اسمارٹ بیٹری مینیجر آن کریں"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"بیٹری کے استعمال کو بہتر بنانے کیلئے آن کریں"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"کم بیٹری کی وضع آن کریں"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"اپنی بیٹری لائف بڑھائیں"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"کم بیٹری کی وضع آن ہے"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"کچھ خصوصیات محدود ہیں"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"فون بہت زیادہ استعمال ہوا"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"ٹیبلیٹ بہت زیادہ استعمال ہوا"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"آلہ بہت زیادہ استعمال ہوا"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"Mediaserver"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"ایپ کو بہتر بنانا"</string>
<string name="battery_saver" msgid="8172485772238572153">"بیٹری سیور"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"بیٹری سیور استعمال کریں"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"خود کار طور پر آن کریں"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"کبھی نہیں"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"<xliff:g id="PERCENT">%1$s</xliff:g> بیٹری پر"</string>
@@ -2388,8 +2371,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"مطابقت پذیری میں فی الحال دشواریاں پیش آ رہی ہیں۔ یہ جلد ہی واپس آ جائے گا۔"</string>
<string name="add_account_label" msgid="7811707265834013767">"اکاؤنٹ شامل کریں"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"دفتری پروفائل ابھی دستیاب نہیں ہے"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"کام موڈ"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"دفتری پروفائل کو کام کرنے دیں، بشمول ایپس، پس منظر کی مطابقت پذیری اور متعلقہ خصوصیات۔"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"دفتری پروفائل"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"آپ کی تنظیم کے زیر انتظام"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"ایپس اور اطلاعات آف ہیں"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"دفتری پروفائل ہٹائیں"</string>
<string name="background_data" msgid="5779592891375473817">"پس منظر کا ڈیٹا"</string>
<string name="background_data_summary" msgid="8328521479872763452">"ایپس کسی بھی وقت ڈیٹا سنک، بھیج اور وصول کر سکتی ہیں"</string>
@@ -2421,8 +2405,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"اکاؤنٹ ہٹائیں؟"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"اس اکاؤنٹ کو ہٹانے سے اس کے سبھی پیغامات، رابطے اور ٹیبلٹ سے دیگر ڈیٹا حذف ہو جائیں گے!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"اس اکاؤنٹ کو ہٹانے سے اس کے سبھی پیغامات، رابطے اور فون سے دیگر ڈیٹا حذف ہو جائیں گے!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"اس اکاؤنٹ کو ہٹانے سے اس کے تمام پیغامات، رابطے اور اس آلے کا دیگر ڈیٹا حذف ہو جائے گا!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"آپ کے منتظم کی طرف سے اس تبدیلی کی اجازت نہیں ہے"</string>
<string name="provider_label" msgid="7724593781904508866">"پُش سبسکرپشنز"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2641,7 +2624,7 @@
<item quantity="other">سرٹیفکیٹس چیک کریں</item>
<item quantity="one">سرٹیفیکیٹ چیک کریں</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"صارفین"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"متعدد صارفین"</string>
<string name="user_list_title" msgid="7937158411137563543">"صارفین اور پروفائلز"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"صارف یا پروفائل شامل کریں"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"صارف کو شامل کریں"</string>
@@ -2829,7 +2812,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"بلوٹوتھ، کاسٹ"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"ایپس اور اطلاعات"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"اجازتیں، ڈیفالٹ ایپس"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"صارفین اور اکاؤنٹس"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"اکاؤنٹس"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"ڈیفالٹ ایپس"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"زبانیں، وقت، بیک اپ، اپ ڈیٹس"</string>
<string name="search_results_title" msgid="1796252422574886932">"ترتیبات"</string>
@@ -2860,7 +2845,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ڈسٹرب نہ کریں، مداخلت کرنا، مداخلت، بریک"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"قریبی، مقام، سرگزشت، اطلاع دہندگی"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"قطعیت"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"اکاؤنٹ"</string>
<string name="keywords_users" msgid="3434190133131387942">"پابندی، پابندی لگائیں، پابندی شدہ"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"متن کی اصلاح، اصلاح، آواز، ارتعاش، خودکار، زبان، اشارہ، تجویز کریں، تجویز، تھیم، ناگوار، لفظ، ٹائپ کریں، emoji، بین الاقوامی"</string>
@@ -2884,6 +2868,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"نیٹ ورک، موبائل نیٹ ورک کی صورت حال، سروس کی صورت حال، سگنل کی قوت، موبائل نیٹ ورک کی قسم، رومنگ، iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"نمبر شمار، ہارڈ ویئر کا ورژن"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android سیکیورٹی پیچ کی سطح، بیس بینڈ ورژن، کرنل ورژن"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Wi-Fi NFC ٹیگ ترتیب دیں"</string>
<string name="write_tag" msgid="8571858602896222537">"تحریر کریں"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"لکھنے کیلئے ایک ٹیگ کو تھپتھپائیں…"</string>
@@ -2927,6 +2913,7 @@
<item quantity="one">1 اصول</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"ڈسٹرب نہ کریں"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"\'ڈسٹرب نہ کریں\' کو آن کریں"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"برتاؤ"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"اس سے آوازیں اور وائبریشنز کی اجازت دیں"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"کوئی آواز نہیں ہے"</string>
@@ -2936,8 +2923,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"خودکار طور پر آن کریں"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"خودکار اصول"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"خودکار اصول"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"\'ڈسٹرب نہ کریں\' اصول سیٹ کریں"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"مخصوص اوقات پر آوازیں اور وائبریشنز کو محدود کریں"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"مخصوص اوقات میں فون خاموش کر دیں"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"\'ڈسٹرب نہ کریں\' اصول سیٹ کریں"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"اصول استعمال کریں"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"صرف ترجیحی"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"صرف الارمز"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"مکمل خاموشی"</string>
@@ -2945,12 +2933,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"بصری مداخلتیں مسدود کریں"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"بصری سگنلز کی اجازت دیں"</string>
<string name="zen_mode_add" msgid="90014394953272517">"شامل کریں"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"آن کریں"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"ابھی آن کریں"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"ابھی آف کریں"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"\'ڈسٹرب نہ کریں\' <xliff:g id="FORMATTED_TIME">%s</xliff:g> تک آن ہے"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"جب تک آپ \'ڈسٹرب نہ کریں\' بند نہیں کرتے تب تک وہ آن ہی رہے گا"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"\'ڈسٹرب نہ کریں\' کسی اصول (<xliff:g id="RULE_NAME">%s</xliff:g>) کے ذریعے خودکار طور پر آن ہو گیا تھا"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"\'ڈسٹرب نہ کریں\' کسی ایپ (<xliff:g id="APP_NAME">%s</xliff:g>) کے ذریعے خودکار طور پر آن ہو گیا تھا"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"صرف ترجیحی"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"دفتری پروفائل کی آوازیں"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"ذاتی پروفائل کی آوازیں استعمال کریں"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"دفتری اور ذاتی پروفائلز کی آوازیں ایک ہی جیسی ہیں"</string>
@@ -2966,6 +2957,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"رنگ ٹونز"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"دیگر آوازیں اور وائبریشنز"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"اطلاعات"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"حال ہی میں اطلاعات بھیجنے والی ایپس"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"جدید ترین"</string>
<string name="profile_section_header" msgid="2320848161066912001">"دفتری اطلاعات"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"اطلاعاتی ڈاٹس کی اجازت دیں"</string>
@@ -3181,6 +3175,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"اپنے آلہ کو غیر مقفل کرنے کیلئے اپنی انگلی کا نشان استعمال کرنے کے علاوہ، آپ یہ آلہ شروع ہونے سے پہلے اپنے پاس ورڈ کا تقاضہ کر کے اسے مزید محفوظ بنا سکتے ہیں۔ جب تک آلہ شروع نہیں ہو جاتا ہے، یہ الارمز سمیت، کالیں، پیغامات یا اطلاعات موصول نہیں کر سکتا۔\n\nاس سے گمشدہ یا چوری ہوئے آلات پر ڈیٹا کی حفاظت کرنے میں مدد ملتی ہے۔ آپ کا آلہ شروع ہونے سے پہلے پاس ورڈ طلب کریں؟"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"ہاں"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"نہیں"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"ہاں"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"نہیں"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN درکار ہے؟"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"پیٹرن درکار ہے؟"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"پاس ورڈ درکار ہے؟"</string>
@@ -3327,21 +3323,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"مسترد کریں"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"اس آلہ کو چارج کریں"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"صرف یہ آلہ چارج کریں"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"پاور فراہم کریں"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"منسلک آلہ چارج کریں۔ صرف USB چارجنگ کو سپورٹ کرنے والے آلات کے ساتھ کام کرتا ہے۔"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"فائلز منتقل کریں"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"کسی اور آلے پر فائلیں منتقل کریں"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"تصاویر منتقل کریں (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"اگر MTP تعاون یافتہ نہیں ہے تو تصاویر اور فائلیں منتقل کریں (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"آلہ کو بطور MIDI استعمال کریں"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"اس آلہ کو بطور MIDI استعمال کریں"</string>
- <string name="usb_use" msgid="3256040963685055320">"USB کو اس لئے استعمال کریں"</string>
+ <string name="usb_use" msgid="3372728031108932425">"اس کیلئے USB استعمال کریں"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"اس آلہ کو چارج کر رہی ہے"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"پاور سپلائی کرنا"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"فائلیں منتقل کرنا"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"تصاویر منتقل کرنا (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"آلے کو بطور MIDI استعمال کرنا"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"SMS مررنگ"</string>
<string name="background_check_pref" msgid="7550258400138010979">"پس منظر کی جانچ"</string>
<string name="background_check_title" msgid="4534254315824525593">"پس منظر تک مکمل رسائی"</string>
@@ -3450,19 +3468,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"وال پیپر، سلیپ وضع، فونٹ سائز"</string>
<string name="display_summary_example" msgid="9102633726811090523">"غیر فعالیت کے 10 منٹ بعد سلیپ وضع میں بھیج دیں"</string>
<string name="memory_summary" msgid="8080825904671961872">"<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> میں سے اوسط <xliff:g id="USED_MEMORY">%1$s</xliff:g> میموری استعمال ہوئی"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"موجودہ صارف: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"بطور <xliff:g id="USER_NAME">%1$s</xliff:g> سائن ان ہے"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> ڈیفالٹ ہے"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"آن / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"آن"</string>
<string name="location_off_summary" msgid="6474350053215707957">"آف"</string>
<string name="backup_disabled" msgid="485189128759595412">"بیک اپ غیر فعال ہے"</string>
- <string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> پر اپ ڈیٹ کردہ"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"کارروائی کی اجازت نہیں ہے"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"والیوم تبدیل نہیں کر سکتے"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"کال کرنے کی اجازت نہیں ہے"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS کی اجازت نہیں ہے"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"کیمرے کی اجازت نہیں ہے"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"اسکرین شاٹ کی اجازت نہیں ہے"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"بیک اپس کو آف نہیں کر سکتے ہیں"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"یہ کارروائی غیر فعال ہے۔ مزید جاننے کیلئے اپنی تنظیم کے منتظم سے رابطہ کریں۔"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"مزید تفصیلات"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"آپ کا منتظم آپ کے دفتری پروفائل سے وابستہ ایپس اور ڈیٹا، بشمول ترتیبات، اجازتیں، کارپوریٹ رسائی، نیٹ ورک کی سرگرمی اور آلہ کے مقام کی معلومات مانیٹر اور منظم کر سکتا ہے۔"</string>
@@ -3476,7 +3497,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"پورٹیبل Wi‑Fi ہاٹ اسپاٹ <xliff:g id="ID_1">%1$s</xliff:g> فعال ہے، اس آلہ کیلئے Wi-Fi آف ہے۔"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"ہوائی جہاز وضع آن ہے"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi، بلوٹوتھ اور موبائل نیٹ ورک آف ہیں۔ آپ فون کالز نہیں کر سکتے یا انٹرنیٹ سے منسلک نہیں ہو سکتے ہیں۔"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"\'ڈسٹرب نہ کریں\' آن ہے (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"بیٹری سیور آن ہے"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"کارکردگی گھٹا دی گئی ہے۔ مقام سروسز اور پس منظر ڈیٹا آف کر دیا گیا ہے۔"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"موبائل ڈیٹا آف ہے"</string>
@@ -3486,9 +3508,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"دفتری پروفائل آف ہے"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"آپ کے دفتری پروفائل سے متعلق ایپس، پس منظر کی مطابقت پذیری اور دیگر خصوصیات آف ہیں۔"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"نائٹ لائٹ شیڈول سیٹ کریں"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"سونے میں مدد کیلئے اسکرین کا رنگ ہلکا امبر کریں"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"ہر رات خودکار طور پر اسکرین کا رنگ ہلکا کریں"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"رات کی روشنی آن ہے"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"اسکرین کا رنگ ہلکا امبر ہے۔ اس سے ممکن ہے آپ کو سونے میں مدد ملے۔"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"آپ کیلئے تجویز کردہ"</string>
<string name="suggestions_title" msgid="7280792342273268377">"تجاویز"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"<xliff:g id="ID_1">%1$d</xliff:g>+"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> مزید"</string>
@@ -3593,6 +3616,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"کوئی نہیں"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"رینکنگ آبجیکٹ غائب ہے۔"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"یہ کلید رینکنگ آبجیکٹ میں موجود نہیں ہے۔"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"کٹ آؤٹ کے ساتھ ڈسپلے کو تحریک دیں"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"کوئی نہیں"</string>
<string name="special_access" msgid="3458780842491881155">"ایپ کی خاص رسائی"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ایپس غیر محدود ڈیٹا کا استعمال کر سکتی ہیں</item>
@@ -3615,10 +3640,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"متعدد آلات سے منسلک کردہ"</string>
<string name="demo_mode" msgid="2798762752209330277">"سسٹم UI ڈیمو موڈ"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"فوری ترتیبات کے ڈیولپر ٹائلز"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"ونڈو ٹریس"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"سطح کا ٹریس"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"دفتری پروفائل کی ترتیبات"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"رابطہ تلاش"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"کالرز اور رابطوں کی شناخت کیلئے اپنی تنظیم کی جانب سے رابطہ تلاشیوں کی اجازت دیں"</string>
@@ -3638,8 +3662,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"اسٹوریج کی جگہ خالی کرنے میں مدد کیلئے، اسٹوریج مینیجر آپ کے آلہ سے بیک اپ شدہ تصاویر اور ویڈیوز ہٹا دیتا ہے۔"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"تصاویر اور ویڈیوز ہٹائیں"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"اسٹوریج مینیجر"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"اسٹوریج مینیجر استعمال کریں"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"خودکار"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"مینوئل"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"اب جگہ خالی کریں"</string>
@@ -3650,32 +3673,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"کیمرا پر جائیں"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"کیمرہ کو تیزی سے کھولنے کیلئے، پاور بٹن کو دوبار دبائیں۔ کسی بھی اسکرین سے ہو جاتا ہے۔"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"جلدی سے کیمرا کھولیں"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"کیمرا کھولنے کے لیے پاور بٹن کو دوبار دبائیں"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"کیمرا پلٹیں"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"سیلفیز زیادہ تیزی سے لیں"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"سیلفی موڈ کے لیے فون کو دو بار مروڑیں"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"سیلفی موڈ کے لیے ٹیبلیٹ کو دو بار مروڑیں"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"سیلفی موڈ کے لیے آلہ کو دو بار مروڑیں"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"فون کو چیک کرنے کیلئے دو بار تھپتھپائیں"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"ٹیبلیٹ کو چیک کرنے کیلئے دو بار تھپتھپائیں"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"آلہ کو چیک کرنے کیلئے دو بار تھپتھپائیں"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"وقت، اطلاعاتی آئیکنز، اور دیگر معلومات چیک کرنے کے لیے، اپنی اسکرین کو دو بار تھپتھپائیں۔"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"اسکرین آف ہونے پر اطلاعات چیک کریں"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"چیک کرنے کیلئے فون کو اٹھائیں"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"چیک کرنے کیلئے ٹیبلیٹ کو اٹھائیں"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"چیک کرنے کیلئے آلہ کو اٹھائیں"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"وقت، اطلاعاتی آئیکنز، اور دیگر معلومات چیک کرنے کے لیے، اپنا فون اٹھائیں۔"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"وقت، اطلاعاتی آئیکنز، اور دیگر معلومات چیک کرنے کے لیے، اپنا ٹیبلیٹ اٹھائیں۔"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"وقت، اطلاعاتی آئیکنز، اور دیگر معلومات چیک کرنے کے لیے، اپنا آلہ اٹھائیں۔"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"اسکرین آف ہونے پر اطلاعات چیک کریں"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"اطلاعات کیلئے فنگر پرنٹ سوائپ"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"فنگر پرنٹ سوائپ کریں"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"اپنی اطلاعات چیک کرنے کیلئے اپنے فون کی پشت پر فنگر پرنٹ سینسر پر نیچے سوائپ کریں۔"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"اپنی اطلاعات چیک کرنے کیلئے اپنے ٹیبلیٹ کی پشت پر فنگر پرنٹ سینسر پر نیچے سوائپ کریں۔"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"اپنی اطلاعات چیک کرنے کیلئے اپنے آلہ کی پشت پر فنگر پرنٹ سینسر پر نیچے سوائپ کریں۔"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"جلدی سے اطلاعات دیکھیں"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"فنگر پرنٹ سینسر پر نیچے سوائپ کریں"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"آن"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"آف"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"بوٹ لوڈر پہلے سے غیر مقفل ہے"</string>
@@ -3807,8 +3823,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"یہ خصوصیت اس آلہ میں دستیاب نہیں ہے"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"مکمل GNSS پیمائشوں کو زبردستی لاگو کریں"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"ڈیوٹی سائیکلنگ کے بغیر سبھی GNSS مجموعوں اور کثرتوں کو ٹریک کریں"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"ہمیشہ ناکامی کا ڈائیلاگ دکھائیں"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"جب بھی ایپ ناکام ہو تو ڈائیلاگ دکھائیں"</string>
+ <string name="directory_access" msgid="4722237210725864244">"ڈائرکٹری تک رسائی"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ڈائرکٹری تک رسائی"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"میرا فون"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"میرا ٹیبلیٹ"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"میرا آلہ"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"اکاؤنٹ"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"آلے کا نام"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"ڈرائیونگ کرتے وقت بلوٹوتھ استعمال کریں"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"ڈرائیونگ کرتے وقت خودکار طور بلوٹوتھ آن کریں"</string>
</resources>
diff --git a/res/values-uz/arrays.xml b/res/values-uz/arrays.xml
index 9c9b39c..b278c78 100644
--- a/res/values-uz/arrays.xml
+++ b/res/values-uz/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Bog‘lash tugmasi"</item>
<item msgid="1624323946324499595">"ulashma qurilmadagi PIN-kod"</item>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 81e4cc0..0041d4c 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -335,7 +335,7 @@
<string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g> <xliff:g id="TRANSITION_DATE">%2$s</xliff:g> sanasida boshlanadi."</string>
<string name="zone_time_type_dst" msgid="8850494578766845276">"Yozgi vaqt"</string>
<string name="zone_time_type_standard" msgid="3462424485380376522">"Standart vaqt"</string>
- <string name="zone_menu_by_region" msgid="4603214570803607532">"Hududlar bo‘yicha vaqt mintaqasi"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"Hududlar asosidagi vaqt mintaqasi"</string>
<string name="zone_menu_by_offset" msgid="1172774718486088771">"Vaqt mintaqalarining surilishi tuzatildi"</string>
<string name="date_picker_title" msgid="1338210036394128512">"Sana"</string>
<string name="time_picker_title" msgid="483460752287255019">"Vaqt"</string>
@@ -347,6 +347,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Qulflangan ekran ustidagi matn"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Vidjetlarni yoqish"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Administrator tomonidan o‘chirilgan"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Yo‘q"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"M-n: Alisherning Android telefoni"</string>
@@ -467,9 +471,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Siz kiritgan parol to‘g‘ri, biroq planshetdagi ma’lumotlar shikastlangan.\n\nPlanshetdan foydalanishda davom etish uchun uning zavod sozlamalarini tiklashingiz lozim. Shundan so‘ng, Google hisobingizga zaxiralangan barcha ma’lumotlaringizni qayta tiklab olishingiz mumkin bo‘ladi."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Siz kiritgan parol to‘g‘ri, biroq telefondagi ma’lumotlar shikastlangan.\n\nTelefondan foydalanishda davom etish uchun uning zavod sozlamalarini tiklashingiz lozim. Shundan so‘ng, Google hisobingizga zaxiralangan barcha ma’lumotlaringizni qayta tiklab olishingiz mumkin bo‘ladi."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Yozish usulini o‘zgartirish"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Ekranni qulfini o‘rnatish"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Qurilmangizni himoyalang"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Barmoq izidan foydalaning"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Barmoq izingiz bilan oching"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Ekran qulfini tanlang"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Ishchi profil qulfini tanlang"</string>
@@ -828,6 +839,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Parol"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Parol berkitilmasin"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Wi-Fi chastotalari diapazoni"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Avtomatik"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2,4 GGs"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GGs"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP sozlamalari"</string>
@@ -933,7 +945,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"AndroidHotspot"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi qo‘ng‘iroq"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Wi-Fi qo‘ng‘iroqni yoqing"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Mobil aloqa o‘rniga Wi-Fi tarmog‘idan foydalaning"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Qo‘ng‘iroqlar sozlamalari"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi qo‘ng‘iroq rejimi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Rouming sozlamalari"</string>
@@ -1186,6 +1199,8 @@
<string name="status_network_type" msgid="3279383550222116235">"Mobil tarmoq turi"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Operator ma‘lumoti"</string>
<string name="status_data_state" msgid="5503181397066522950">"Mobil tarmoq ahvoli"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"Xizmat holati"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Signal darajasi"</string>
<string name="status_roaming" msgid="2638800467430913403">"Rouming"</string>
@@ -1372,19 +1387,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Tarmoq, ilova yoki qurilma sozlamalarini asliga qaytarishingiz mumkin"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Wi-Fi, mobil internet va Bluetooth parametrlarini tiklash"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Bu barcha tarmoq sozlamalarini, jumladan, mazkur sozlamalarni asliga qaytaradi:\n\n"<li>"Wi‑Fi"</li>\n<li>"Mobil internet"</li>\n<li>"Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Shuningdek, eSIM kartalar asliga qaytarilsin"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"Sozlamalarni tiklash"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Barcha tarmoq sozlamalari qayta tiklansinmi? Bu amalni ortga qaytarib bo‘lmaydi!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Sozlamalarni tiklash"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Asliga qaytarilsinmi?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Bu foydalanuvchi tarmoq sozlamalarini tiklay olmaydi"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Tarmoq sozlamalari qayta tiklandi"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Xatolik yuz berdi"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"eSIM asliga qaytarilmadi."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Barcha ma’lumotlarni o‘chirish (zavod sozlamalarini tiklash)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Planshetning "<b>"ichki xotirasidagi"</b>" barcha ma’lumotlar o‘chib ketadi, jumladan:\n\n"<li>" Google hisobingiz"</li>\n<li>"Tizim va ilovalarning ma’lumotlari/sozlamalari"</li>\n<li>"Yuklab olingan ilovalar"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Telefonning "<b>"ichki xotirasidagi"</b>" barcha ma’lumotlar o‘chib ketadi, jumladan:\n\n"<li>" Google hisobingiz"</li>\n<li>"Tizim va ilovalarning ma’lumotlari/sozlamalari"</li>\n<li>"Yuklab olingan ilovalar"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"Siz hozir tizimga quyidagi hisoblardan kirgansiz:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Bu qurilmada boshqa foydalanuvchilar ham bor.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Musiqa"</li>\n<li>"Rasmlar"</li>\n<li>"Foydalanuvchining boshqa ma\'lumotlari"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM uchun aloqa operatorlari"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM kartalar"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Bu mobil xizmatining tarif rejasini bekor qilmaydi."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Musiqa, rasm va boshqa ma’lumotlarni o\'chirish uchun "<b>"USB xotirani"</b>" ham tozalash kerak."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Musiqa, rasm va boshqa ma’lumotlarni o‘chirish uchun "<b>"SD kartani"</b>" ham tozalash kerak."</string>
@@ -1444,21 +1464,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Iltimos, Internetga ulaning"</string>
<string name="location_title" msgid="1029961368397484576">"Mening joylashuvim"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Ishchi profil joyi"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Rejim"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Yuqori aniqlik"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Batareya quvvatini tejash"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Faqat qurilma asosida"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Joylashuv xizmati o‘chiq"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Ilovalar uchun ruxsatlar"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Joylashuv axboroti so‘rovlari"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Hech qanday ilova yaqin vaqtda joylashuv ma‘lumotini so‘ramadi"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Joylashuv axboroti xizmatlari"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Yuqori batareya sarfi"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Batareya sarfi kam"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Joylashuvni aniqlash"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Joylashuvni aniqlash uchun GPS, Wi-Fi, Bluetooth yoki mobil tarmoqlardan foydalanish"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Joylashuvni aniqlash uchun Wi-Fi, Bluetooth yoki mobil tarmoqlardan foydalanish"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Joylashuvni GPS va qurilma sensorlari yordamida aniqlash"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Qidiruv"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi orqali aniqlash"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Joylashuv axboroti aniq bo‘lishi uchun tizimga oid ilova va xizmatlarga xohlagan vaqtda yaqin-atrofdagi Wi-Fi tarmoqlarini qidirishiga ruxsat bering."</string>
@@ -2004,7 +2015,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"Batareya quvvati <xliff:g id="REMAIN">%1$s</xliff:g>dan so‘ng tugaydi"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"Batareya quvvati <xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>dan so‘ng to‘ladi"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Fondagi jarayonlar"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Cheklangan"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Ilovaga fonda ishlashiga ruxsat berish"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Bu ilova ochilmagan vaqtda ham fonda ishlayveradi"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Ilova ishlatilmaganda, fondagi harakati cheklanadi"</string>
@@ -2059,14 +2070,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Batareya uzoq muddat ishlay olmaydi"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Smart batareya boshqaruvini yoqing"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Batareya sarfini optimallashtirish uchun yoqing"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Tejamkor batareya rejimini yoqing"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Batareya quvvatini tejang"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Tejamkor batareya rejimi yoniq"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Ayrim funksiyalar cheklangan"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Telefon qattiq ishlatildi"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Planshet qattiq ishlatildi"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Qurilma qattiq ishlatildi"</string>
@@ -2392,8 +2399,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Sinxronizatsiyada muammo bor. Tez orada qayta tiklanadi."</string>
<string name="add_account_label" msgid="7811707265834013767">"Hisob qo‘shish"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Ishchi profil hali mavjud emas"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Ish rejimi"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Ishchi profilini yoqish: ilovalar, fonda sinxronlash va bog‘liq funksiyalar"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Ishchi profilni o‘chirish"</string>
<string name="background_data" msgid="5779592891375473817">"Ma’lumotlarni fonda yuklash"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Ilovalar sinxronlanishi, ma’lumotlarni istalgan paytda jo‘natishi va qabul qilishi mumkin"</string>
@@ -2644,7 +2655,8 @@
<item quantity="other">Sertifikatlarni tekshirish</item>
<item quantity="one">Sertifikatni tekshirish</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Foydalanuvchilar"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"Foydalanuvchilar & profillar"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Foydalanuvchi yoki profil qo‘shish"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Foydalanuvchi qo‘shish"</string>
@@ -2834,7 +2846,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"Bluetooth, Cast"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Ilovalar va bildirishnomalar"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Ruxsatnomalar, birlamchi ilovalar"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Foydalanuvchilar va hisoblar"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Birlamchi ilovalar"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Tillar, vaqt, zaxira, yangilanishlar"</string>
<string name="search_results_title" msgid="1796252422574886932">"Sozlamalar"</string>
@@ -2865,7 +2878,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"bezovta qilmaslik, bezovta, bezovtalik, uzish"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"yaqin atrof, joylashuv, tarix, hisobot"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"aniqlik"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"hisob"</string>
<string name="keywords_users" msgid="3434190133131387942">"cheklov, cheklash, cheklangan"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"matnni tuzatish, to‘g‘ri, ovoz, tebranish, avto, til, imo-ishora, taklif qilish, taklif, mavzu, haqoratomuz so‘z, yozish, kulgich, xalqaro"</string>
@@ -2932,6 +2944,7 @@
<item quantity="one">1 ta qoida</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Bezovta qilinmasin"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Bezovta qilinmasin rejimini yoqing"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Xatti-harakatlar"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Ovoz va tebranishlarga ruxsat:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Ovozsiz"</string>
@@ -2941,8 +2954,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Avtomatik yoqish"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Avtomatik qoidalar"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Avtomatik qoida"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Bezovta qilmaslik qoidalari"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Tovush va tebranishlarni muayyan vaqtga cheklash"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Qoidadan foydalanish"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Faqat muhimlari"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Faqat signallar"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Jimjitlik"</string>
@@ -2950,12 +2966,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Vizual bildirishnomalarni bloklash"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Vizual signallarga ruxsat"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Qo‘shish"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Yoqish"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Yoqish"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Faolsizlantirish"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Bezovta qilinmasin rejimi <xliff:g id="FORMATTED_TIME">%s</xliff:g> gacha yoqilgan"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Bezovta qilinmasin rejimi uni o‘chirmaguningizcha yoniq qoladi"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Bezovta qilinmasin rejimi <xliff:g id="RULE_NAME">%s</xliff:g> qoidasi tomonidan yoqilgan"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Bezovta qilinmasin rejimi <xliff:g id="APP_NAME">%s</xliff:g> ilovasi tomonidan yoqilgan"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Faqat muhimlari"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Ishchi profil ovozlari"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Shaxsiy profil ovozlaridan foydalanish"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Tovushlar ishchi va shaxsiy profillar uchun bir xil"</string>
@@ -2971,6 +2990,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Ringtonlar"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Boshqa tovush va tebranishlar"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Bildirishnomalar"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Yaqinda yuborilgan"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"Kengaytirilgan sozlamalar"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Ishga oid bildirishnomalar"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Bildirishnoma belgisi"</string>
@@ -3186,6 +3206,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Qurilmani qulfini ochish uchun siz nafaqat barmoq izidan foydalanish, balki unga qo‘shimcha tarzda parol kiritilishini ham talab qilishingiz mumkin. Qurilma ishga tushmaguncha, chaqiruvlar, xabarlar yoki bildirishnomalar, jumladan, uyg‘otkich signallari ishlamaydi.\n\nBu xususiyat yo‘qolgan yoki o‘g‘irlangan qurilmadagi ma’lumotlarni himoyalashga yordam beradi. Qurilmani ishga tushirish uchun parol talab qilinsinmi?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Ha"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Yo‘q"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Ha"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Yo‘q"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"PIN-kod talab qilinsinmi?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Chiz. parol talab qil-mi?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Parol talab qilinsinmi?"</string>
@@ -3458,7 +3480,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"Joriy foydalanuvchi: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Siz <xliff:g id="USER_NAME">%1$s</xliff:g> sifatida kirgansiz"</string>
<string name="payment_summary" msgid="3472482669588561110">"Birlamchi ilova: <xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"YONIQ / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"O‘CHIQ"</string>
<string name="backup_disabled" msgid="485189128759595412">"Zaxiralash o‘chirilgan"</string>
<string name="about_summary" msgid="924181828102801010">"Android <xliff:g id="VERSION">%1$s</xliff:g> versiyasiga yangilandi"</string>
@@ -3468,6 +3491,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"SMS yuborishga ruxsat berilmagan"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Kameraga ruxsat berilmagan"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Skrinshot olishga ruxsat berilmagan"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Zaxiralashni faolsizlantirish imkonsiz"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Bu funksiya o‘chirib qo‘yilgan. Administrator bilan bog‘laning."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Qo‘shimcha tafsilotlar"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Administratoringiz ishchi profilingiz bilan bog‘liq ilova va ma’lumotlarni, jumladan, sozlamalar, ruxsatnomalar, korporativ kirish huquqi, tarmoqdagi faollik va qurilmaning joylashuvi haqidagi ma’lumotlarni kuzatishi va boshqarishi mumkin."</string>
@@ -3491,9 +3515,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"Ishchi profil o‘chirilgan"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Ishchi profil bilan bog‘liq ilovalar, fonda sinxronlash va boshqa funksiyalar o‘chirib qo‘yildi."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Tungi rejim jadvalini sozlash"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Uyqu uchun sariq ekran"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"Tungi rejim yoqilgan"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Ekran qizg‘ish tusga kirdi. Bu osonroq uyquga ketishga yordamlashadi."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Taklif etiladi"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Tavsiyalar"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> ta"</string>
@@ -3598,6 +3624,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"yo‘q"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Obyekt mavjud emas."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Obyektda bu kalit yo‘q."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Kesimli displey simulyatsiyasi"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Hech biri"</string>
<string name="special_access" msgid="3458780842491881155">"Maxsus ruxsatlar"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> ta ilova uchun trafik cheklanmagan</item>
@@ -3621,7 +3649,7 @@
<string name="demo_mode" msgid="2798762752209330277">"Tizim interfeysi demo rejimi"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Tezkor sozlamalarning dasturchi tugmalari"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Oyna trassirovkasi"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Qatlam trassirovkasi"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Yuza trassirovkasi"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Ishchi profil sozlamalari"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Kontaktlarni qidirish"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Tashkilot nomi bo‘yicha qidiruvda qo‘ng‘iroq qiluvchi abonent va uning kontaktini aniqlashga ruxsat berish"</string>
@@ -3652,32 +3680,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Kameraga o‘tish"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Kamerani tezda ochish uchun quvvat tugmasini ikki marta bosing. Har qanday ekranda ishlaydi."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Kamerani tezkor ochish"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Kamerani ochish uchun quvvat tugmasini ikki marta bosish"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Kamerani almashtirish"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Tezkor selfi olish"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Selfi rejimiga o‘tish uchun telefonni ikki marta silkiting"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Selfi rejimiga o‘tish uchun planshetni ikki marta silkiting"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Selfi rejimiga o‘tish uchun qurilmani ikki marta silkiting"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Telefonni tekshirish uchun ekranni ikki marta bosing"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Planshetni tekshirish uchun ekranni ikki marta bosing"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Qurilmani tekshirish uchun ekranni ikki marta bosing"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Vaqt, bildirishnoma belgilari va boshqa ma’lumotlarni tekshirish uchun ekranni ikki marta bosing."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Ekran o‘chiqligida bildirishnomalarni tekshirish"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Bildirishnomalarni tekshirish uchun ko‘tarish"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Tekshirish uchun planshetni yuqoriga ko‘taring"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Tekshirish uchun qurilmani yuqoriga ko‘taring"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Vaqt, bildirishnoma belgilari va boshqa ma’lumotlarni tekshirish uchun telefonni qo‘lingizga oling."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Vaqt, bildirishnoma belgilari va boshqa ma’lumotlarni tekshirish uchun planshetni qo‘lingizga oling."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Vaqt, bildirishnoma belgilari va boshqa ma’lumotlarni tekshirish uchun qurilmani qo‘lingizga oling."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Ekran o‘chiqligida bildirishnomalarni tekshirish"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Barmoq izi skaneridan foydalanish"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Barmoq izini surish"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Bildirishnomalarni tekshirish uchun telefon orqasidagi barmoq izi skaneri ustida pastga suring"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Bildirishnomalarni tekshirish uchun planshet orqasidagi barmoq izi skaneri ustida pastga suring"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Bildirishnomalarni tekshirish uchun qurilma orqasidagi barmoq izi skaneri ustida pastga suring"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Bildirishnomalarni tezda ko‘rish"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Barmoq izi skanerida pastga surish"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Yoniq"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"O‘chiq"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"OT yuklagich allaqachon qulfdan chiqarilgan"</string>
@@ -3809,6 +3830,24 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Bu funksiya ushbu qurilmada ishlamaydi"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Butun GNSS statistikasini yuklash"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Siklsiz barcha GNSS sxema va davriyliklarini kuzatish"</string>
- <string name="storage_access" msgid="8905018810338984531">"Xotiraga kirish"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"xotira ruxsati katalogga berilgan"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Buzilish oynasi doim ko‘rsatilsin"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Ilova ishdan chiqqanda har safar muloqot oynasi ko‘rsatilsin"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Kataloglarga kirish"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"kataloglarga kirish"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
+ <skip />
</resources>
diff --git a/res/values-zh-rCN/arrays.xml b/res/values-zh-rCN/arrays.xml
index 76988e4..b31d67f 100644
--- a/res/values-zh-rCN/arrays.xml
+++ b/res/values-zh-rCN/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"按钮"</item>
<item msgid="1624323946324499595">"从对等设备获取的 PIN 码"</item>
@@ -136,6 +138,20 @@
<item msgid="477015974247590543">"1小时"</item>
<item msgid="5198271470953124739">"永不超时"</item>
</string-array>
+ <string-array name="bluetooth_max_connected_audio_devices">
+ <item msgid="60897909354162249">"1(默认)"</item>
+ <item msgid="7584056855393485416">"2"</item>
+ <item msgid="844570832050176311">"3"</item>
+ <item msgid="1896812737336024220">"4"</item>
+ <item msgid="2664420770707984266">"5"</item>
+ </string-array>
+ <string-array name="bluetooth_max_connected_audio_devices_values">
+ <item msgid="1992185266918208754">"1"</item>
+ <item msgid="2731443086402670729">"2"</item>
+ <item msgid="74627748729027880">"3"</item>
+ <item msgid="2654447223197666662">"4"</item>
+ <item msgid="7026157954713482328">"5"</item>
+ </string-array>
<string-array name="wifi_signal">
<item msgid="2245412278046491293">"弱"</item>
<item msgid="2042505933058940139">"微弱"</item>
@@ -476,4 +492,9 @@
<item msgid="2900554746706302178">"超过 60 天"</item>
<item msgid="5692284879054004388">"超过 90 天"</item>
</string-array>
+ <string-array name="wifi_metered_entries">
+ <item msgid="2975784243692054526">"使用网络偏好设置"</item>
+ <item msgid="8745603368609022803">"视为按流量计费"</item>
+ <item msgid="2266114985518865625">"视为不按流量计费"</item>
+ </string-array>
</resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 48adb3d..2fd220d 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -170,6 +170,8 @@
<string name="bluetooth_paired_device_title" msgid="8638994696317952019">"您的设备"</string>
<string name="bluetooth_pairing_page_title" msgid="7712127387361962608">"与新设备配对"</string>
<string name="bluetooth_pref_summary" msgid="2606502649251443574">"允许设备与蓝牙设备配对并进行连接"</string>
+ <string name="bluetooth_disable_inband_ringing" msgid="8919353393497325693">"停用通过蓝牙播放铃声"</string>
+ <string name="bluetooth_disable_inband_ringing_summary" msgid="7898974890913984364">"不通过蓝牙耳机播放自定义手机铃声"</string>
<string name="connected_device_connected_title" msgid="5871712271201945606">"当前已连接"</string>
<string name="connected_device_saved_title" msgid="688364359746674536">"保存的设备"</string>
<string name="connected_device_add_device_title" msgid="7803521577708810621">"添加设备"</string>
@@ -330,6 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"设置日期"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"按字母顺序排序"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"按时区排序"</string>
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"<xliff:g id="TIME_TYPE">%1$s</xliff:g>开始于 <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>。"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"夏令时"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"标准时间"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"按地区选择时区"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"固定偏移量时区"</string>
<string name="date_picker_title" msgid="1338210036394128512">"日期"</string>
<string name="time_picker_title" msgid="483460752287255019">"时间"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"自动锁定"</string>
@@ -340,6 +347,10 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"锁定屏幕消息"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"启用微件"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"已被管理员停用"</string>
+ <!-- no translation found for lockdown_settings_title (7393790212603280213) -->
+ <skip />
+ <!-- no translation found for lockdown_settings_summary (8678086272188880615) -->
+ <skip />
<string name="owner_info_settings_summary" msgid="7472393443779227052">"无"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"例如,小明的 Android 设备。"</string>
@@ -348,6 +359,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"个人资料信息"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"帐号"</string>
<string name="location_settings_title" msgid="1369675479310751735">"位置信息"</string>
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"使用位置信息"</string>
<string name="account_settings_title" msgid="626177544686329806">"帐号"</string>
<string name="security_settings_title" msgid="4918904614964215087">"安全性和位置信息"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"加密与凭据"</string>
@@ -459,9 +471,16 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"您输入的密码正确无误,但遗憾的是,您的数据已损坏。\n\n要继续使用您的平板电脑,您需要将其恢复出厂设置。对恢复出厂设置后的平板电脑进行设置时,您可以恢复之前备份到 Google 帐号的任何数据。"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"您输入的密码正确无误,但遗憾的是,您的数据已损坏。\n\n要继续使用您的手机,您需要将其恢复出厂设置。对恢复出厂设置后的手机进行设置时,您可以恢复之前备份到 Google 帐号的任何数据。"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"切换输入法"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"设置屏幕锁定"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"保护您的设备"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"使用指纹"</string>
+ <!-- no translation found for suggested_lock_settings_title (8195437597439375655) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (7915739444107426777) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (9202820303111653610) -->
+ <skip />
+ <!-- no translation found for suggested_lock_settings_summary (1252628838133344781) -->
+ <skip />
+ <!-- no translation found for suggested_fingerprint_lock_settings_title (414499342011664436) -->
+ <skip />
<string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"使用指纹解锁"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"选择屏幕锁定方式"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"选择工作资料锁屏方式"</string>
@@ -691,6 +710,8 @@
<string name="bluetooth_dock_settings_headset" msgid="1001821426078644650">"将基座用作免提电话"</string>
<string name="bluetooth_dock_settings_a2dp" msgid="8791004998846630574">"用于音乐和媒体"</string>
<string name="bluetooth_dock_settings_remember" msgid="5551459057010609115">"记住设置"</string>
+ <string name="bluetooth_max_connected_audio_devices_string" msgid="6752690395207847881">"已连接蓝牙音频设备的数量上限"</string>
+ <string name="bluetooth_max_connected_audio_devices_dialog_title" msgid="5936561749790095473">"选择已连接蓝牙音频设备的数量上限"</string>
<string name="wifi_display_settings_title" msgid="8740852850033480136">"投射"</string>
<string name="wifi_display_enable_menu_item" msgid="4883036464138167674">"开启无线显示"</string>
<string name="wifi_display_no_devices_found" msgid="1382012407154143453">"未在附近找到设备。"</string>
@@ -705,6 +726,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"名称"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"登录"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"<xliff:g id="REQUESTER">%s</xliff:g>请求开启 WLAN"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"<xliff:g id="REQUESTER">%s</xliff:g>请求关闭 WLAN"</string>
@@ -722,6 +744,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"WLAN"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"打开WLAN"</string>
<string name="wifi_settings" msgid="29722149822540994">"WLAN"</string>
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"使用 WLAN"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"WLAN设置"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"WLAN"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"设置和管理无线接入点"</string>
@@ -816,6 +839,7 @@
<string name="wifi_password" msgid="5948219759936151048">"密码"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"显示密码"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"选择 AP 频段"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"自动"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz 频段"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz 频段"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP 设置"</string>
@@ -833,7 +857,7 @@
<string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (可使用 WPS)"</string>
<string name="wifi_wps_nfc_enter_password" msgid="2288214226916117159">"请输入您的网络密码"</string>
<string name="wifi_carrier_connect" msgid="8174696557882299911">"运营商 WLAN 网络"</string>
- <string name="wifi_carrier_content" msgid="4634077285415851933">"通过<xliff:g id="NAME">%1%s</xliff:g>连接"</string>
+ <string name="wifi_carrier_content" msgid="4634077285415851933">"通过<xliff:g id="NAME">%1$s</xliff:g>连接"</string>
<string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"为了提高位置信息精确度以及其他目的,“<xliff:g id="APP_NAME">%1$s</xliff:g>”请求启用网络扫描功能(在关闭了WLAN时也可进行扫描)。\n\n是否对所有需要进行扫描的应用批准这项请求?"</string>
<string name="wifi_scan_always_turnoff_message" msgid="5538901671131941043">"要关闭此功能,请转到菜单下的“高级”。"</string>
<string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"允许"</string>
@@ -909,10 +933,8 @@
<string name="wifi_hotspot_ap_band_title" msgid="1165801173359290681">"AP 频段"</string>
<string name="wifi_hotspot_footer_info_regular" msgid="4789553667374849566">"使用热点创建 WLAN 网络供其他设备使用。热点会使用您的移动数据连接提供互联网连接。这可能会产生额外的移动数据流量费用。"</string>
<string name="wifi_hotspot_footer_info_local_only" msgid="857988412470694109">"应用可以通过创建热点,与附近的设备共享内容。"</string>
- <!-- no translation found for wifi_hotspot_auto_off_title (1590313508558948079) -->
- <skip />
- <!-- no translation found for wifi_hotspot_auto_off_summary (5858098059725925084) -->
- <skip />
+ <string name="wifi_hotspot_auto_off_title" msgid="1590313508558948079">"自动关闭热点"</string>
+ <string name="wifi_hotspot_auto_off_summary" msgid="5858098059725925084">"如果未连接任何设备,WLAN 热点将关闭"</string>
<string name="wifi_tether_starting" msgid="1322237938998639724">"正在打开热点..."</string>
<string name="wifi_tether_stopping" msgid="4835852171686388107">"正在关闭热点..."</string>
<string name="wifi_tether_enabled_subtext" msgid="7842111748046063857">"<xliff:g id="NETWORK_SSID">%1$s</xliff:g> 已连接"</string>
@@ -923,7 +945,8 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android热点"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"WLAN 通话"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"开启 WLAN 通话功能"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"使用 WLAN 网络(而非移动网络)"</string>
+ <!-- no translation found for wifi_calling_suggestion_summary (4277772016570248405) -->
+ <skip />
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"通话偏好设置"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"WLAN 通话模式"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"漫游偏好设置"</string>
@@ -961,6 +984,7 @@
<string name="wifi_calling_off_explanation_2" msgid="2329334487851497223"></string>
<string name="emergency_address_title" msgid="932729250447887545">"紧急联系地址"</string>
<string name="emergency_address_summary" msgid="7751971156196115129">"当您通过 WLAN 网络拨打紧急呼救电话时,系统会判定您位于这个位置"</string>
+ <string name="private_dns_help_message" msgid="3299567069152568958"><annotation id="url">"详细了解"</annotation>"私人 DNS 功能"</string>
<string name="display_settings_title" msgid="1708697328627382561">"显示"</string>
<string name="sound_settings" msgid="5534671337768745343">"声音"</string>
<string name="all_volume_title" msgid="4296957391257836961">"音量"</string>
@@ -1175,6 +1199,8 @@
<string name="status_network_type" msgid="3279383550222116235">"手机网络类型"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"运营商信息"</string>
<string name="status_data_state" msgid="5503181397066522950">"移动网络状态"</string>
+ <!-- no translation found for status_esim_id (6456255368300906317) -->
+ <skip />
<string name="status_service_state" msgid="2323931627519429503">"服务状态"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"信号强度"</string>
<string name="status_roaming" msgid="2638800467430913403">"漫游"</string>
@@ -1308,6 +1334,7 @@
<string name="storage_wizard_ready_internal_body" msgid="122532674037860197">"新的<xliff:g id="NAME">^1</xliff:g>可以使用了。\n\n要将照片、文件和应用数据移动到此设备,请转到“设置”>“存储”。"</string>
<string name="storage_wizard_move_confirm_title" msgid="292782012677890250">"移动<xliff:g id="APP">^1</xliff:g>"</string>
<string name="storage_wizard_move_confirm_body" msgid="5176432115206478941">"将<xliff:g id="APP">^1</xliff:g>及其相关数据移动到<xliff:g id="NAME_0">^2</xliff:g>仅需几分钟时间。在移动操作完成前,您将无法使用该应用。\n\n请勿在移动过程中移除该<xliff:g id="NAME_1">^2</xliff:g>。"</string>
+ <string name="storage_wizard_move_unlock" msgid="1526216561023200694">"您必须解锁用户“<xliff:g id="APP">^1</xliff:g>”,才能移动数据。"</string>
<string name="storage_wizard_move_progress_title" msgid="4443920302548035674">"正在移动<xliff:g id="APP">^1</xliff:g>…"</string>
<string name="storage_wizard_move_progress_body" msgid="7802577486578105609">"请勿在移动过程中移除该<xliff:g id="NAME">^1</xliff:g>。\n\n在移动操作完成前,您将无法使用此设备上的<xliff:g id="APP">^2</xliff:g>应用。"</string>
<string name="storage_wizard_move_progress_cancel" msgid="542047237524588792">"取消移动"</string>
@@ -1360,19 +1387,24 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"网络、应用或设备可以重置"</string>
<string name="reset_network_title" msgid="6166025966016873843">"重置 WLAN、移动数据网络和蓝牙设置"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"此操作会重置所有网络设置,包括:\n\n"<li>"WLAN"</li>\n<li>"移动数据网络"</li>\n<li>"蓝牙"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"一并重置 eSIM 卡"</string>
+ <!-- no translation found for reset_esim_desc (6412324670559060446) -->
+ <skip />
<string name="reset_network_button_text" msgid="2035676527471089853">"重置设置"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"要重置所有网络设置吗?此操作无法撤消!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"重置设置"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"要重置网络设置吗?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"此用户无权重置网络设置"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"网络设置已重置"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"无法重置 eSIM 卡"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"出现错误,无法重置 eSIM 卡。"</string>
<string name="master_clear_title" msgid="3531267871084279512">"清除所有数据(恢复出厂设置)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"此操作会清除您平板电脑"<b>"内部存储设备"</b>"中的所有数据,包括:\n\n"<li>"您的Google帐号"</li>\n<li>"系统和应用的数据和设置"</li>\n<li>"下载的应用"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"此操作会清除您手机"<b>"内部存储空间"</b>"中的所有数据,包括:\n\n"<li>"您的 Google 帐号"</li>\n<li>"系统和应用的数据和设置"</li>\n<li>"已下载的应用"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"目前,您已登录以下帐号:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"此设备上目前还有其他用户。\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"音乐"</li>\n<li>"照片"</li>\n<li>"其他的用户数据"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM 卡中的运营商"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM 卡"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"这样并不会取消您的移动服务套餐。"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"要清除音乐、照片和其他用户数据,请清空该 "<b>"USB存储设备"</b>"。"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"要清除音乐、图片和其他用户数据,您需要清空该 "<b>"SD卡"</b>"。"</string>
@@ -1432,21 +1464,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"请连接到互联网"</string>
<string name="location_title" msgid="1029961368397484576">"我的位置"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"工作资料位置信息"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"模式"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"高精确度"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"低耗电量"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"仅限设备"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"位置信息:关闭"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"应用级权限"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"最近的位置信息请求"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"最近没有任何应用申请使用位置信息"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"位置信息服务"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"高电耗"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"低电耗"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"位置信息模式"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"使用 GPS、WLAN、蓝牙或移动网络确定位置"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"使用 WLAN、蓝牙或移动网络确定位置"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"使用 GPS 和设备传感器确定位置"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"扫描"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"WLAN 扫描"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"允许系统应用和服务随时检测 WLAN 网络,以便提高位置信息的精确度。"</string>
@@ -1468,6 +1491,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"位置信息来源"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"关于平板电脑"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"关于手机"</string>
+ <string name="about_settings" product="device" msgid="6717640957897546887">"关于设备"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"关于模拟设备"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"查看法律信息、状态和软件版本"</string>
<string name="legal_information" msgid="5769301644270604095">"法律信息"</string>
@@ -1575,6 +1599,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"查看全部 <xliff:g id="COUNT">%1$d</xliff:g> 个应用"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"您的平板电脑和个人数据更容易受到未知应用的攻击。安装来自该来源的应用即表示,您同意对因使用这些应用可能导致的平板电脑损坏或数据丢失承担责任。"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"您的手机和个人数据更容易受到未知应用的攻击。安装来自该来源的应用即表示,您同意对因使用这些应用可能导致的手机损坏或数据丢失承担责任。"</string>
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"您的设备和个人数据更容易受到未知应用的攻击。安装来自该来源的应用即表示,您同意对因使用这些应用可能导致的设备损坏或数据丢失问题承担责任。"</string>
<string name="advanced_settings" msgid="1777249286757067969">"高级设置"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"启用更多设置选项"</string>
<string name="application_info_label" msgid="5736524913065714880">"应用信息"</string>
@@ -1874,6 +1899,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"可能会影响性能"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"指针停止移动后点击"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"点击前延迟"</string>
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"使用服务"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"使用色彩校正"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"使用字幕"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"开启"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"关闭"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"在“快捷设置”中显示"</string>
@@ -1987,7 +2015,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"还可用:<xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"充电剩余时间:<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"后台活动"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"受限"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"允许应用在后台运行"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"在您未使用应用时,应用可在后台运行"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"在您未使用应用时,应用的后台活动会受限"</string>
@@ -2030,14 +2058,31 @@
<string name="battery_abnormal_wakeup_alarm_summary" msgid="644657277875785240">"在后台唤醒设备"</string>
<string name="battery_abnormal_location_summary" msgid="6552797246798806002">"请求获取位置信息的频率过高"</string>
<string name="battery_abnormal_apps_summary" msgid="792553273248686972">"<xliff:g id="NUMBER">%1$d</xliff:g> 个应用出现异常"</string>
- <!-- no translation found for battery_tip_summary_title (7060523369832289878) -->
- <skip />
- <!-- no translation found for battery_tip_summary_summary (7832491466325707487) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_title (5103420355109677385) -->
- <skip />
- <!-- no translation found for battery_tip_low_battery_summary (4702986182940709150) -->
- <skip />
+ <string name="battery_tip_summary_title" msgid="7060523369832289878">"电池状况良好"</string>
+ <string name="battery_tip_summary_summary" msgid="7832491466325707487">"应用行为正常"</string>
+ <string name="battery_tip_low_battery_title" msgid="5103420355109677385">"电池电量不足"</string>
+ <string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"电池的续航时间不理想"</string>
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"开启智能电池管理器"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"开启即可优化电池用量"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"开启“电量不足模式”"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"延长电池续航时间"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"“电量不足模式”已开启"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"部分功能受到限制"</string>
+ <string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"频繁使用手机"</string>
+ <string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"频繁使用平板电脑"</string>
+ <string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"频繁使用设备"</string>
+ <string name="battery_tip_high_usage_summary" msgid="5437023146333888605">"自上次充满电后已使用了大约 <xliff:g id="HOUR">%1$s</xliff:g>"</string>
+ <string name="battery_tip_dialog_message" product="default" msgid="6744251070067861233">"您的手机因频繁使用而消耗了很多电量。您的电池目前运行正常。\n\n自上次充满电后,您的手机已使用了大约 <xliff:g id="HOUR">%1$s</xliff:g>。\n\n总用电量:"</string>
+ <string name="battery_tip_dialog_message" product="tablet" msgid="7091442312127403445">"您的平板电脑因频繁使用而消耗了很多电量。您的电池目前运行正常。\n\n自上次充满电后,您的平板电脑已使用了大约 <xliff:g id="HOUR">%1$s</xliff:g>。\n\n总用电量:"</string>
+ <string name="battery_tip_dialog_message" product="device" msgid="7621045312469814256">"您的设备因频繁使用而消耗了很多电量。您的电池目前运行正常。\n\n自上次充满电后,您的设备已使用了大约 <xliff:g id="HOUR">%1$s</xliff:g>。\n\n总用电量:"</string>
+ <string name="smart_battery_manager_title" msgid="5677222263071864438">"智能电池管理器"</string>
+ <string name="smart_battery_title" msgid="7014692334636228916">"自动管理电池"</string>
+ <string name="smart_battery_summary" msgid="6435844879637999044">"根据使用情况自动调整应用的耗电量"</string>
+ <string name="restricted_app_title" msgid="8982477293044330653">"受限应用"</string>
+ <plurals name="restricted_app_summary" formatted="false" msgid="2541739220193274244">
+ <item quantity="other">%1$d 个应用</item>
+ <item quantity="one">%1$d 个应用</item>
+ </plurals>
<string name="dialog_stop_title" msgid="6395127715596746479">"要停止该应用吗?"</string>
<string name="dialog_stop_message" product="default" msgid="4006631636646776488">"由于<xliff:g id="APP">%1$s</xliff:g>一直让手机保持唤醒状态,因此您的手机无法正常管理电池。\n\n要尝试解决此问题,您可以停止该应用。\n\n如果问题仍然存在,您可能需要卸载此应用,以改善电池性能。"</string>
<string name="dialog_stop_message" product="tablet" msgid="2369957934555162428">"由于<xliff:g id="APP">%1$s</xliff:g>一直让平板电脑保持唤醒状态,因此您的平板电脑无法正常管理电池。\n\n要尝试解决此问题,您可以停止该应用。\n\n如果问题仍然存在,您可能需要卸载此应用,以改善电池性能。"</string>
@@ -2146,6 +2191,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"媒体服务器"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"应用优化"</string>
<string name="battery_saver" msgid="8172485772238572153">"省电模式"</string>
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"使用省电模式"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"自动开启"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"一律不"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"电量剩余 <xliff:g id="PERCENT">%1$s</xliff:g> 时"</string>
@@ -2333,8 +2379,12 @@
<string name="sync_is_failing" msgid="1591561768344128377">"同步操作当前遇到了一些问题,很快便可恢复。"</string>
<string name="add_account_label" msgid="7811707265834013767">"添加帐号"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"工作资料尚不可用"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"工作模式"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"启用工作资料,包括应用、后台同步和相关功能"</string>
+ <!-- no translation found for work_mode_label (7157582467956920750) -->
+ <skip />
+ <!-- no translation found for work_mode_on_summary (3628349169847990263) -->
+ <skip />
+ <!-- no translation found for work_mode_off_summary (2657138190560082508) -->
+ <skip />
<string name="remove_managed_profile_label" msgid="3856519337797285325">"移除工作资料"</string>
<string name="background_data" msgid="5779592891375473817">"后台流量"</string>
<string name="background_data_summary" msgid="8328521479872763452">"应用可以随时同步、发送和接收数据"</string>
@@ -2366,6 +2416,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"要移除帐号吗?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"移除该帐号会从平板电脑中删除所有相关的邮件、联系人以及其他数据。"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"移除该帐号会从手机中删除所有相关的邮件、联系人以及其它数据。"</string>
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"移除该帐号后,设备上的相关消息、联系人和其他数据也将全部删除!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"您的管理员不允许进行这项更改"</string>
<string name="provider_label" msgid="7724593781904508866">"推送订阅"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2584,7 +2635,8 @@
<item quantity="other">检查证书</item>
<item quantity="one">检查证书</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"用户"</string>
+ <!-- no translation found for user_settings_title (3493908927709169019) -->
+ <skip />
<string name="user_list_title" msgid="7937158411137563543">"用户和个人资料"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"添加用户或个人资料"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"添加用户"</string>
@@ -2774,7 +2826,8 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"蓝牙、投射"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"应用和通知"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"权限、默认应用"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"用户和帐号"</string>
+ <!-- no translation found for account_dashboard_title (5895948991491438911) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"默认应用"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"语言、时间、备份、更新"</string>
<string name="search_results_title" msgid="1796252422574886932">"设置"</string>
@@ -2805,7 +2858,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"勿扰, 请勿打扰, 打扰, 打断"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM 内存"</string>
<string name="keywords_location" msgid="6615286961552714686">"附近, 位置信息, 位置, 记录, 历史记录, 报告"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"精确度 准确度"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"帐号"</string>
<string name="keywords_users" msgid="3434190133131387942">"限制, 限定, 受限"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"文字, 文本, 更正, 声音, 提示音, 振动, 自动, 语言, 手势, 推荐, 建议, 主题, 主题背景, 令人反感, 字词, 输入, 表情符号, 国际"</string>
@@ -2872,6 +2924,7 @@
<item quantity="one">1 条规则</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"勿扰模式"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"开启“勿扰”模式"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"行为"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"允许以下类型的提示音和振动:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"不发出提示音"</string>
@@ -2881,8 +2934,11 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"自动开启"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"自动规则"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"自动规则"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"设置“勿扰”规则"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"在特定时段限制声音和振动"</string>
+ <!-- no translation found for zen_mode_automation_suggestion_title (4321254843908888574) -->
+ <skip />
+ <!-- no translation found for zen_mode_automation_suggestion_summary (6223252025075862701) -->
+ <skip />
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"使用规则"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"仅限优先事项"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"仅限闹钟"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"完全阻止"</string>
@@ -2890,12 +2946,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"屏蔽视觉打扰"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"允许视觉信号"</string>
<string name="zen_mode_add" msgid="90014394953272517">"添加"</string>
- <string name="zen_mode_button_turn_on" msgid="5074744714613374902">"立即开启"</string>
- <string name="zen_mode_button_turn_off" msgid="1995551537320422792">"立即关闭"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"开启"</string>
+ <string name="zen_mode_button_turn_on" msgid="2824380626482175552">"立即开启"</string>
+ <string name="zen_mode_button_turn_off" msgid="6181953727880503094">"立即关闭"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"勿扰模式结束时间:<xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"勿扰模式将一直开启,直到您将其关闭"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"某个规则(<xliff:g id="RULE_NAME">%s</xliff:g>)已自动开启勿扰模式"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"某个应用(<xliff:g id="APP_NAME">%s</xliff:g>)已自动开启勿扰模式"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"仅限优先事项"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>。<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"工作资料提示音"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"使用个人资料提示音"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"工作资料和个人资料会使用相同的提示音"</string>
@@ -2911,6 +2970,7 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"铃声"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"其他提示音和振动"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"通知"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"最近发送"</string>
<string name="advanced_section_header" msgid="8833934850242546903">"高级"</string>
<string name="profile_section_header" msgid="2320848161066912001">"工作通知"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"允许使用通知圆点"</string>
@@ -2930,7 +2990,7 @@
<string name="app_notifications_title" msgid="5810577805218003760">"应用通知"</string>
<string name="notification_channel_title" msgid="2260666541030178452">"通知类别"</string>
<string name="notification_group_title" msgid="7180506440133859601">"通知类别组"</string>
- <string name="notification_importance_title" msgid="848692592679312666">"重要程度"</string>
+ <string name="notification_importance_title" msgid="4368578960344731828">"行为"</string>
<string name="notification_importance_unspecified" msgid="6622173510486113958">"允许发出提示音"</string>
<string name="notification_importance_blocked" msgid="7938180808339386300">"一律不显示通知"</string>
<string name="notification_importance_min" msgid="5455049524984686275">"不发出提示音,也不在屏幕上弹出通知"</string>
@@ -2948,6 +3008,7 @@
<string name="notification_channel_summary_low" msgid="322317684244981244">"重要性:中等"</string>
<string name="notification_channel_summary_default" msgid="1111749130423589931">"重要性:高"</string>
<string name="notification_channel_summary_high" msgid="2085017556511003283">"重要性:紧急"</string>
+ <string name="notification_switch_label" msgid="6843075654538931025">"显示通知"</string>
<string name="default_notification_assistant" msgid="7631945224761430146">"通知助手"</string>
<string name="manage_notification_access_title" msgid="7510080164564944891">"通知使用权"</string>
<string name="work_profile_notification_access_blocked_summary" msgid="8748026238701253040">"已禁止访问工作资料通知"</string>
@@ -2978,9 +3039,9 @@
<string name="manage_zen_access_title" msgid="2611116122628520522">"“勿扰”权限"</string>
<string name="zen_access_empty_text" msgid="8772967285742259540">"没有任何已安装应用申请“勿扰”权限"</string>
<string name="loading_notification_apps" msgid="5031818677010335895">"正在加载应用…"</string>
- <string name="app_notifications_off_desc" msgid="4882445501376722969">"Android 会阻止此应用的通知显示在此设备上"</string>
- <string name="channel_notifications_off_desc" msgid="5899225298718840635">"Android 会阻止这类通知显示在此设备上"</string>
- <string name="channel_group_notifications_off_desc" msgid="1620950416247316370">"Android 会阻止这组通知显示在此设备上"</string>
+ <string name="app_notifications_off_desc" msgid="8289223211387083447">"根据您的要求,Android 会阻止此应用的通知显示在此设备上"</string>
+ <string name="channel_notifications_off_desc" msgid="9013011134681491778">"根据您的要求,Android 会阻止这类通知显示在此设备上"</string>
+ <string name="channel_group_notifications_off_desc" msgid="2315252834146837470">"根据您的要求,Android 会阻止这组通知显示在此设备上"</string>
<string name="notification_channels" msgid="5346841743182627500">"类别"</string>
<string name="notification_channels_other" msgid="5645317113885788226">"其他"</string>
<plurals name="notification_group_summary" formatted="false" msgid="3420621520561455358">
@@ -3125,6 +3186,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"为了进一步保护此设备的安全,除了使用指纹解锁设备之外,您还可以将设备设为需要输入密码才能启动。在设备启动之前,无法接听电话、接收消息或通知(包括闹钟)。\n\n这样一来,即使设备丢失或被盗,其中的数据仍安全无虞。要将设备设为需要输入密码才能启动吗?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"是"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"否"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"是"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"否"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"要求输入 PIN 码吗?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"要求绘制图案吗?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"要求输入密码吗?"</string>
@@ -3224,7 +3287,7 @@
<string name="usage_access" msgid="5479504953931038165">"使用情况访问权限"</string>
<string name="permit_usage_access" msgid="4012876269445832300">"允许访问使用记录"</string>
<string name="app_usage_preference" msgid="7065701732733134991">"应用使用偏好设置"</string>
- <string name="usage_access_description" msgid="1352111094596416795">"使用记录访问权限允许应用跟踪您正在使用的其他应用和使用频率,以及您的运营商、语言设置及其他详细信息。"</string>
+ <string name="usage_access_description" msgid="1352111094596416795">"使用情况访问权限允许应用跟踪您正在使用的其他应用和使用频率,以及您的运营商、语言设置及其他详细信息。"</string>
<string name="memory_settings_title" msgid="7490541005204254222">"内存"</string>
<string name="memory_details_title" msgid="8542565326053693320">"内存详情"</string>
<string name="always_running" msgid="6042448320077429656">"始终运行 (<xliff:g id="PERCENTAGE">%s</xliff:g>)"</string>
@@ -3397,7 +3460,8 @@
<string name="users_and_accounts_summary" msgid="245282689646897882">"当前用户:<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"目前登录的用户为:<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"默认使用<xliff:g id="APP_NAME">%1$s</xliff:g>"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"开启/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <!-- no translation found for location_on_summary (4083334422422067511) -->
+ <skip />
<string name="location_off_summary" msgid="6474350053215707957">"关闭"</string>
<string name="backup_disabled" msgid="485189128759595412">"备份功能已停用"</string>
<string name="about_summary" msgid="924181828102801010">"已更新至 Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
@@ -3407,6 +3471,7 @@
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"不允许使用短信功能"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"不允许使用相机"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"不允许使用屏幕截图功能"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"无法关闭备份功能"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"此操作已被禁止执行。要了解详情,请与贵单位的管理员联系。"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"更多详情"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"您的管理员可以监控和管理与您的工作资料相关的应用和数据(其中包括设置、权限、企业权限、网络活动和设备的位置信息)。"</string>
@@ -3430,9 +3495,11 @@
<string name="condition_work_title" msgid="7293722361184366648">"工作资料已关闭"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"与您的工作资料相关的应用、后台同步功能和其他功能均已关闭。"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"设置“夜间模式”时间安排"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"将屏幕色调调节为琥珀色以帮助您入睡"</string>
+ <!-- no translation found for night_display_suggestion_summary (228346372178218442) -->
+ <skip />
<string name="condition_night_display_title" msgid="5599814941976856183">"“夜间模式”已开启"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"屏幕已变成琥珀色,这可能有助于您安然入睡。"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"为您推荐"</string>
<string name="suggestions_title" msgid="7280792342273268377">"建议"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"另外 <xliff:g id="ID_1">%1$d</xliff:g> 条"</string>
@@ -3537,6 +3604,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"无"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"缺少排名对象。"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"排名对象不包含此键。"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"模拟具有凹口的显示屏"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"无"</string>
<string name="special_access" msgid="3458780842491881155">"特殊应用权限"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> 个应用可以无限量使用数据</item>
@@ -3559,31 +3628,8 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"已连接到多部设备"</string>
<string name="demo_mode" msgid="2798762752209330277">"系统界面演示模式"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"快捷设置开发者图块"</string>
- <string name="support_escalation_title" msgid="4111071371281023145">"我们会随时为您提供帮助"</string>
- <string name="support_escalation_24_7_title" msgid="8118369197749832074">"我们可全天候为您提供服务"</string>
- <string name="support_escalation_24_7_content_description" msgid="3772776213036994533">"我们可全天候为您提供服务"</string>
- <string name="support_escalation_summary" msgid="8473084168776014405">"我们的支持团队会协助您解决任何问题"</string>
- <string name="support_escalation_24_7_summary" msgid="2802773279262547187">"我们的支持团队可全天候为您提供服务"</string>
- <string name="support_escalation_closed_summary" msgid="2240967274380168303">"请搜索相关帮助内容或在支持服务时段内(当地时间)再次联系我们:<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_no_internet_summary" msgid="2526082812336597989">"电话支持服务时段(当地时间)<br><b><xliff:g id="OPERATION_HOURS">%s</xliff:g></b>"</string>
- <string name="support_escalation_unavailable_summary" msgid="5208552975245211898">"搜索帮助或发现更多提示与技巧"</string>
- <string name="support_country_list_title" msgid="823853371280534111">"支持的国家/地区:"</string>
- <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
- <string name="support_phone_international_format" msgid="2143528744844720829">"<xliff:g id="LANGUAGE">%1$s</xliff:g> (<xliff:g id="PHONE">%2$s</xliff:g>)"</string>
- <string name="support_international_phone_title" msgid="1308334014138718455">"您目前人在国外吗?"</string>
- <string name="support_international_phone_summary" msgid="208231793637026927">"可能需要支付国际通话费用"</string>
- <string name="support_escalation_by_phone" msgid="4843223043487058711">"电话"</string>
- <string name="support_escalation_by_chat" msgid="977019859110763749">"聊天"</string>
- <string name="support_tips_and_tricks_title" msgid="4153466795695447828">"探索更多提示和技巧"</string>
- <string name="support_help_feedback_title" msgid="693440287222186718">"搜索帮助与发送反馈"</string>
- <string name="support_sign_in_required_title" msgid="1367187789121480440">"与支持人员联系"</string>
- <string name="support_sign_in_button_text" msgid="3054769428620671241">"登录"</string>
- <string name="support_sign_in_required_help" msgid="5200654782405538114">"无法登录?"</string>
- <string name="support_disclaimer_title" msgid="4825302018208770031">"发送系统信息"</string>
- <string name="support_disclaimer_do_not_show" msgid="3378367075323727539">"不再显示"</string>
- <string name="support_account_request_prefix" msgid="6387847874661861650">"通过以下帐号提出请求:"</string>
- <string name="support_account_picker_add_account" msgid="5076277544846506214">"添加帐号"</string>
- <string name="support_system_information_title" msgid="3439905790018934773">"系统信息"</string>
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"窗口跟踪"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"表面跟踪"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"工作资料设置"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"联系人搜索"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"允许您的单位搜索联系人,以便识别来电者和联系人的身份"</string>
@@ -3599,11 +3645,11 @@
<item quantity="other"><xliff:g id="NUMBER">%s</xliff:g> 秒</item>
<item quantity="one">1 秒</item>
</plurals>
- <string name="support_estimated_wait_time" msgid="6523081420029378051">"大约需等待 <xliff:g id="ESTIMATE">%1$s</xliff:g>"</string>
<string name="automatic_storage_manager_settings" msgid="7819434542155181607">"管理存储空间"</string>
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"存储空间管理器会从您的设备中移除已备份的照片和视频,从而释放存储空间。"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"移除照片和视频"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"存储空间管理器"</string>
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"使用存储空间管理器"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"自动"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"手动"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"立即释放空间"</string>
@@ -3614,32 +3660,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"快速打开相机"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"要快速打开相机,请按两次电源按钮(适用于任何屏幕)。"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"快速打开相机"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"按电源按钮两次即可打开相机"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"切换相机模式"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"自拍更便捷"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"扭转手机两次即可开启自拍模式"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"扭转平板电脑两次即可开启自拍模式"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"扭转设备两次即可开启自拍模式"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"点按两次即可查看手机"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"点按两次即可查看平板电脑"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"点按两次即可查看设备"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"点按两次屏幕即可查看时间、通知图标和其他信息。"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"屏幕关闭时查看通知"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"拿起手机即显示"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"拿起平板电脑即可查看"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"拿起设备即可查看"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"拿起您的手机即可查看时间、通知图标和其他信息。"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"拿起您的平板电脑即可查看时间、通知图标和其他信息。"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"要查看时间、通知图标和其他信息,请拿起您的设备。"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"屏幕关闭时查看通知"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"滑动指纹即可查看通知"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"滑动指纹"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"要查看通知,请在手机背面的指纹传感器上向下滑动手指。"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"要查看通知,请在平板电脑背面的指纹传感器上向下滑动手指。"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"要查看通知,请在设备背面的指纹传感器上向下滑动手指。"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"快速查看通知"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"在指纹传感器上向下滑动手指"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"开启"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"关闭"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"引导加载程序已解锁"</string>
@@ -3769,8 +3808,26 @@
<string name="new_device_suggestion_summary" product="tablet" msgid="393751455688210956">"新平板电脑功能导览"</string>
<string name="new_device_suggestion_summary" product="device" msgid="2939870049868336652">"新设备功能导览"</string>
<string name="disabled_low_ram_device" msgid="3751578499721173344">"该设备不支持此功能"</string>
- <!-- no translation found for enable_gnss_raw_meas_full_tracking (1294470289520660584) -->
+ <string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"强制启用 GNSS 测量结果全面跟踪"</string>
+ <string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"在停用工作周期的情况下跟踪所有 GNSS 群集和频率"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"一律显示崩溃对话框"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"在每次应用崩溃时显示对话框"</string>
+ <string name="directory_access" msgid="4722237210725864244">"目录访问权限"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"目录访问权限"</string>
+ <!-- no translation found for directory_on_volume (1246959267814974387) -->
<skip />
- <!-- no translation found for enable_gnss_raw_meas_full_tracking_summary (496344699046454200) -->
+ <!-- no translation found for my_device_info_title (5512426315065239032) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (7850936731324591758) -->
+ <skip />
+ <!-- no translation found for my_device_info_title (5512071003076176919) -->
+ <skip />
+ <!-- no translation found for my_device_info_account_preference_title (342933638925781861) -->
+ <skip />
+ <!-- no translation found for my_device_info_device_name_preference_title (7104085224684165324) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_pref (2460847604498343330) -->
+ <skip />
+ <!-- no translation found for bluetooth_on_while_driving_summary (3196190732516898541) -->
<skip />
</resources>
diff --git a/res/values-zh-rTW/arrays.xml b/res/values-zh-rTW/arrays.xml
index c991cab..a54945e 100644
--- a/res/values-zh-rTW/arrays.xml
+++ b/res/values-zh-rTW/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"按鈕"</item>
<item msgid="1624323946324499595">"來自對端裝置的 PIN"</item>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index a52183c..d6d9ce9 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -332,16 +332,11 @@
<string name="date_time_set_date" msgid="7021491668550232105">"設定日期"</string>
<string name="zone_list_menu_sort_alphabetically" msgid="5683377702671088588">"依照字母排序"</string>
<string name="zone_list_menu_sort_by_timezone" msgid="2720190443744884114">"依照時區排序"</string>
- <!-- no translation found for zone_change_to_from_dst (118656001224045590) -->
- <skip />
- <!-- no translation found for zone_time_type_dst (8850494578766845276) -->
- <skip />
- <!-- no translation found for zone_time_type_standard (3462424485380376522) -->
- <skip />
- <!-- no translation found for zone_menu_by_region (4603214570803607532) -->
- <skip />
- <!-- no translation found for zone_menu_by_offset (1172774718486088771) -->
- <skip />
+ <string name="zone_change_to_from_dst" msgid="118656001224045590">"從 <xliff:g id="TRANSITION_DATE">%2$s</xliff:g>開始改成<xliff:g id="TIME_TYPE">%1$s</xliff:g>。"</string>
+ <string name="zone_time_type_dst" msgid="8850494578766845276">"日光節約時間"</string>
+ <string name="zone_time_type_standard" msgid="3462424485380376522">"標準時間"</string>
+ <string name="zone_menu_by_region" msgid="4603214570803607532">"依區域選取時區"</string>
+ <string name="zone_menu_by_offset" msgid="1172774718486088771">"固定偏移量時區"</string>
<string name="date_picker_title" msgid="1338210036394128512">"日期"</string>
<string name="time_picker_title" msgid="483460752287255019">"時間"</string>
<string name="lock_after_timeout" msgid="4590337686681194648">"自動鎖定"</string>
@@ -352,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"鎖定螢幕訊息"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"啟用小工具"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"已由管理員停用"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"顯示鎖定選項"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"顯示電源按鈕選項,可停用額外權限和指紋解鎖功能。"</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"無"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"例如:小明的 Android。"</string>
@@ -360,8 +357,7 @@
<string name="profile_info_settings_title" msgid="3518603215935346604">"個人資料資訊"</string>
<string name="Accounts_settings_title" msgid="1643879107901699406">"帳戶"</string>
<string name="location_settings_title" msgid="1369675479310751735">"定位"</string>
- <!-- no translation found for location_settings_master_switch_title (3560242980335542411) -->
- <skip />
+ <string name="location_settings_master_switch_title" msgid="3560242980335542411">"使用位置資訊"</string>
<string name="account_settings_title" msgid="626177544686329806">"帳戶"</string>
<string name="security_settings_title" msgid="4918904614964215087">"安全性與位置資訊"</string>
<string name="encryption_and_credential_settings_title" msgid="6514904533438791561">"加密和憑證"</string>
@@ -473,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"你所輸入的密碼正確,但你的資料已毀損。\n\n如要繼續使用平板電腦,請將該裝置重設為原廠設定。重設完成後,當你對平板電腦進行設定時,可以將備份在個人 Google 帳戶中的資料全部還原。"</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"你所輸入的密碼正確,但你的資料已毀損。\n\n如要繼續使用手機,請將該裝置重設為原廠設定。重設完成後,當你對手機進行設定時,可以將備份在個人 Google 帳戶中的資料全部還原。"</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"切換輸入法"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"設定螢幕鎖定"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"保護你的裝置"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"使用指紋"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"以指紋解鎖"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"設定螢幕鎖定以保障安全"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"防止他人擅自使用你的平板電腦"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"防止他人擅自使用你的裝置"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"防止他人擅自使用你的手機"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"使用指紋解鎖"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"以指紋解鎖"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"以指紋解鎖"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"以指紋解鎖"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"選擇螢幕鎖定方式"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"選擇 Work 鎖定方式"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"保護你的平板電腦"</string>
@@ -721,8 +721,7 @@
<string name="wifi_display_options_name" msgid="4756080222307467898">"名稱"</string>
<string name="wifi_band_24ghz" msgid="852929254171856911">"2.4 GHz"</string>
<string name="wifi_band_5ghz" msgid="6433822023268515117">"5 GHz"</string>
- <!-- no translation found for wifi_sign_in_button_text (8404345621836792112) -->
- <skip />
+ <string name="wifi_sign_in_button_text" msgid="8404345621836792112">"登入"</string>
<string name="link_speed" msgid="8896664974117585555">"%1$d Mbps"</string>
<string name="wifi_ask_enable" msgid="2795469717302060104">"「<xliff:g id="REQUESTER">%s</xliff:g>」要求開啟 Wi-Fi"</string>
<string name="wifi_ask_disable" msgid="728366570145493573">"「<xliff:g id="REQUESTER">%s</xliff:g>」要求關閉 Wi-Fi"</string>
@@ -740,8 +739,7 @@
<string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi‑Fi"</string>
<string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"開啟 Wi-Fi"</string>
<string name="wifi_settings" msgid="29722149822540994">"Wi‑Fi"</string>
- <!-- no translation found for wifi_settings_master_switch_title (4746267967669683259) -->
- <skip />
+ <string name="wifi_settings_master_switch_title" msgid="4746267967669683259">"使用 Wi-Fi"</string>
<string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi 設定"</string>
<string name="wifi_settings_title" msgid="3103415012485692233">"Wi‑Fi"</string>
<string name="wifi_settings_summary" msgid="668767638556052820">"設定、管理無線網路存取點"</string>
@@ -836,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"密碼"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"顯示密碼"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"選取存取點頻帶"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"自動"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz 頻帶"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz 頻帶"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"IP 設定"</string>
@@ -941,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Android 無線基地台"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Wi-Fi 通話"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"開啟 Wi-Fi 通話功能"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"使用 Wi-Fi 而非行動網路"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"透過 Wi-Fi 網路擴大通話涵蓋範圍"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"撥號偏好"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Wi-Fi 通話模式"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"漫遊偏好設定"</string>
@@ -1194,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"行動網路類型"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"電信業者資訊"</string>
<string name="status_data_state" msgid="5503181397066522950">"行動網路狀態"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"服務狀態"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"訊號強度"</string>
<string name="status_roaming" msgid="2638800467430913403">"漫遊"</string>
@@ -1380,19 +1380,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"網路、應用程式或裝置可以重設"</string>
<string name="reset_network_title" msgid="6166025966016873843">"重設 Wi-Fi、行動網路和藍牙"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"這項操作會重設所有網路設定,包括:\n\n"<li>"Wi‑Fi"</li>\n<li>"行動數據"</li>\n<li>"藍牙"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"一併重設 eSIM 卡"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"清除手機上的所有 eSIM 卡。你必須與電信業者聯絡才能重新下載 eSIM 卡。這項操作不會導致你現有的行動服務方案取消。"</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"重設設定"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"你要重設所有網路設定嗎?這個動作無法復原!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"重設設定"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"你要重設嗎?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"這個使用者無法重設網路設定"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"已重設網路設定"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"無法重設 eSIM 卡"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"發生錯誤,因此無法重設 eSIM 卡。"</string>
<string name="master_clear_title" msgid="3531267871084279512">"清除所有資料 (恢復原廠設定)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"這會清除你平板電腦"<b>"內部儲存裝置"</b>"中的所有資料,包括:\n\n"<li>"你的 Google 帳戶"</li>\n<li>"系統和應用程式資料及設定"</li>\n<li>"已下載的應用程式"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"這會清除你手機"<b>"內部儲存裝置"</b>"中的所有資料,包括:\n\n"<li>"你的 Google 帳戶"</li>\n<li>"系統和應用程式資料及設定"</li>\n<li>"已下載的應用程式"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n\n"你目前已登入下列帳戶:\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"這個裝置上還有其他使用者。\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"音樂"</li>\n<li>"相片"</li>\n<li>"其他使用者資料"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"eSIM 卡中的電信業者"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177"><li>"eSIM 卡"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"這項操作並不會取消你的行動服務方案。"</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"如要一併清除音樂、圖片及其他用戶資料,則需清除 "<b>"USB 儲存裝置"</b>"資料。"</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"如要清除音樂、圖片及其他使用者資料,必須先清除 "<b>"SD 卡"</b>"。"</string>
@@ -1452,21 +1456,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"請連線至網際網路"</string>
<string name="location_title" msgid="1029961368397484576">"我的位置"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Work 設定檔位置資訊"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"模式"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"高精確度"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"節約耗電量"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"僅限裝置"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"定位服務已關閉"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"應用程式層級權限"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"最近的定位要求"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"最近沒有應用程式要求存取位置資訊"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"定位服務"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"耗電量高"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"耗電量低"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"定位模式"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"使用 GPS、Wi-Fi、藍牙或行動網路判斷所在位置"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"使用 Wi-Fi、藍牙或行動網路判斷所在位置"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"使用 GPS 和裝置感應器判斷所在位置"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"掃描"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Wi-Fi 掃描"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"允許系統應用程式和服務隨時偵測 Wi‑Fi 網路,以提升定位精確度。"</string>
@@ -1488,8 +1483,7 @@
<string name="location_sources_heading" msgid="1278732419851088319">"位置資訊來源"</string>
<string name="about_settings" product="tablet" msgid="593457295516533765">"關於平板電腦"</string>
<string name="about_settings" product="default" msgid="1743378368185371685">"關於手機"</string>
- <!-- no translation found for about_settings (6717640957897546887) -->
- <skip />
+ <string name="about_settings" product="device" msgid="6717640957897546887">"關於裝置"</string>
<string name="about_settings" product="emulator" msgid="221313099578564438">"關於模擬裝置"</string>
<string name="about_settings_summary" msgid="3371517697156165959">"查看法律資訊、狀態、軟體版本"</string>
<string name="legal_information" msgid="5769301644270604095">"法律資訊"</string>
@@ -1597,8 +1591,7 @@
<string name="see_all_apps_title" msgid="1317153498074308438">"查看全部共 <xliff:g id="COUNT">%1$d</xliff:g> 個應用程式"</string>
<string name="install_all_warning" product="tablet" msgid="8310489909586138165">"來歷不明的應用程式可能會損害你的平板電腦和個人資料。安裝這個來源提供的應用程式集表示你同意,如因使用這些應用程式導致你的平板電腦受損或資料遺失,須自行負責。"</string>
<string name="install_all_warning" product="default" msgid="1952257127370115988">"來歷不明的應用程式可能會損害你的手機和個人資料。安裝這個來源提供的應用程式即表示你同意,如因使用這些應用程式導致你的手機受損或資料遺失,須自行負責。"</string>
- <!-- no translation found for install_all_warning (3648003301476423145) -->
- <skip />
+ <string name="install_all_warning" product="device" msgid="3648003301476423145">"來歷不明的應用程式可能會損害你的裝置和個人資料。安裝這個來源提供的應用程式即表示你同意,如因使用這些應用程式導致你的裝置受損或資料遺失,須自行負責。"</string>
<string name="advanced_settings" msgid="1777249286757067969">"進階設定"</string>
<string name="advanced_settings_summary" msgid="4016682978071086747">"啟用更多設定選項"</string>
<string name="application_info_label" msgid="5736524913065714880">"應用程式資訊"</string>
@@ -1898,12 +1891,9 @@
<string name="accessibility_display_inversion_preference_subtitle" msgid="7052959202195368109">"可能會影響效能"</string>
<string name="accessibility_autoclick_preference_title" msgid="7014499339068449623">"游標停止移動後點擊"</string>
<string name="accessibility_autoclick_delay_preference_title" msgid="3962261178385106006">"點擊前延遲"</string>
- <!-- no translation found for accessibility_service_master_switch_title (6835441300276358239) -->
- <skip />
- <!-- no translation found for accessibility_daltonizer_master_switch_title (8655284637968823154) -->
- <skip />
- <!-- no translation found for accessibility_caption_master_switch_title (4010227386676077826) -->
- <skip />
+ <string name="accessibility_service_master_switch_title" msgid="6835441300276358239">"使用服務"</string>
+ <string name="accessibility_daltonizer_master_switch_title" msgid="8655284637968823154">"使用色彩校正"</string>
+ <string name="accessibility_caption_master_switch_title" msgid="4010227386676077826">"使用字幕"</string>
<string name="accessibility_summary_state_enabled" msgid="8359913912320966304">"開啟"</string>
<string name="accessibility_summary_state_disabled" msgid="2241315620132005595">"關閉"</string>
<string name="enable_quick_setting" msgid="2366999897816894536">"在快速設定中顯示"</string>
@@ -2017,7 +2007,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"還剩 <xliff:g id="REMAIN">%1$s</xliff:g>"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g>後充電完畢"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"背景活動"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"限制"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"允許應用程式在背景執行"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"應用程式不使用時可在背景執行"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"應用程式的背景活動會在不使用時受限"</string>
@@ -2064,18 +2054,12 @@
<string name="battery_tip_summary_summary" msgid="7832491466325707487">"應用程式正常運作中"</string>
<string name="battery_tip_low_battery_title" msgid="5103420355109677385">"電池電量不足"</string>
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"電量衰退過快"</string>
- <!-- no translation found for battery_tip_smart_battery_title (8471762806923764455) -->
- <skip />
- <!-- no translation found for battery_tip_smart_battery_summary (3024670691742861841) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"開啟 Smart battery manager"</string>
+ <string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"開啟即可最佳化電池用量"</string>
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"開啟「節約耗電量模式」"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"延長電池壽命"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"已開啟「節約耗電量模式」"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"部分功能受到限制"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"頻繁使用手機"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"頻繁使用平板電腦"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"頻繁使用裝置"</string>
@@ -2199,8 +2183,7 @@
<string name="process_mediaserver_label" msgid="6500382062945689285">"媒體伺服器"</string>
<string name="process_dex2oat_label" msgid="2592408651060518226">"應用程式最佳化"</string>
<string name="battery_saver" msgid="8172485772238572153">"節約耗電量"</string>
- <!-- no translation found for battery_saver_master_switch_title (622539414546588436) -->
- <skip />
+ <string name="battery_saver_master_switch_title" msgid="622539414546588436">"使用節約耗電量模式"</string>
<string name="battery_saver_turn_on_automatically_title" msgid="9023847300114669426">"自動開啟"</string>
<string name="battery_saver_turn_on_automatically_never" msgid="6610846456314373">"永遠不要"</string>
<string name="battery_saver_turn_on_automatically_pct" msgid="8665950426992057191">"電量為 <xliff:g id="PERCENT">%1$s</xliff:g> 時"</string>
@@ -2392,8 +2375,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"目前同步處理發生問題。稍後會回復正常。"</string>
<string name="add_account_label" msgid="7811707265834013767">"新增帳戶"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"尚未提供工作設定檔"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Work 模式"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"啟用 Work 設定檔,包括應用程式、背景同步處理和相關功能"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Work 設定檔"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"由貴機構管理"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"已關閉應用程式和通知"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"移除工作設定檔"</string>
<string name="background_data" msgid="5779592891375473817">"背景資料"</string>
<string name="background_data_summary" msgid="8328521479872763452">"應用程式隨時可以同步處理、傳送和接收資料"</string>
@@ -2425,8 +2409,7 @@
<string name="really_remove_account_title" msgid="8800653398717172460">"確定要移除帳戶?"</string>
<string name="really_remove_account_message" product="tablet" msgid="1936147502815641161">"移除帳戶後,平板電腦上所有的訊息、聯絡人和其他資料將全部遭到刪除!"</string>
<string name="really_remove_account_message" product="default" msgid="3483528757922948356">"移除帳戶後,手機上所有的郵件、聯絡人和其他資料將全部遭到刪除!"</string>
- <!-- no translation found for really_remove_account_message (7507474724882080166) -->
- <skip />
+ <string name="really_remove_account_message" product="device" msgid="7507474724882080166">"移除帳戶後,裝置上所有的訊息、聯絡人和其他資料將全部遭到刪除!"</string>
<string name="remove_account_failed" msgid="3901397272647112455">"你的管理員不允許這項變更"</string>
<string name="provider_label" msgid="7724593781904508866">"發送訂閱"</string>
<!-- no translation found for sync_item_title (4782834606909853006) -->
@@ -2645,7 +2628,7 @@
<item quantity="other">查看憑證</item>
<item quantity="one">查看憑證</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"使用者"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"多位使用者"</string>
<string name="user_list_title" msgid="7937158411137563543">"使用者和個人資料"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"新增使用者或個人資料"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"新增使用者"</string>
@@ -2835,7 +2818,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"藍牙、投放"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"應用程式和通知"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"權限、預設應用程式"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"使用者和帳戶"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"帳戶"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"預設應用程式"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"語言、時間、備份、更新"</string>
<string name="search_results_title" msgid="1796252422574886932">"設定"</string>
@@ -2866,7 +2851,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"零干擾, 干擾, 打擾, 中斷"</string>
<string name="keywords_app" msgid="6334757056536837791">"RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"附近, 位置資訊, 紀錄, 回報"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"精確度"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"帳戶"</string>
<string name="keywords_users" msgid="3434190133131387942">"限制, 限制, 受限"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"文字修正, 校正, 音效, 震動, 自動, 語言, 手勢, 建議, 字詞建議, 主題, 令人反感, 字詞, 輸入, 表情符號, 國際"</string>
@@ -2890,6 +2874,8 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"網路、行動網路狀態、服務狀態、訊號強度、行動網路類型、漫遊、ICCID"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"序號、硬體版本"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"Android 安全性修補程式等級、基頻版本、核心版本"</string>
+ <!-- no translation found for keywords_ambient_display_screen (5874969496073249362) -->
+ <skip />
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"設定 Wi-Fi NFC 標記"</string>
<string name="write_tag" msgid="8571858602896222537">"寫入"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"輕觸標記即可寫入..."</string>
@@ -2933,6 +2919,7 @@
<item quantity="one">1 項規則</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"零打擾"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"開啟「零打擾」模式"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"行為"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"只允許下列類型的音效與震動:"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"不發出音效"</string>
@@ -2942,8 +2929,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"自動開啟"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"自動規則"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"自動規則"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"設定「零打擾」規則"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"在特定時間禁用音效和震動"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"在特定時間將手機設為靜音"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"設定「零打擾」規則"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"使用規則"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"僅限優先通知"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"僅限鬧鐘"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"完全靜音"</string>
@@ -2951,12 +2939,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"封鎖視覺干擾"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"允許視覺信號"</string>
<string name="zen_mode_add" msgid="90014394953272517">"新增"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"開啟"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"立即開啟"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"立即關閉"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"零打擾模式結束時間:<xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"零打擾模式會保持開啟,直到你關閉為止"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"規則 (<xliff:g id="RULE_NAME">%s</xliff:g>) 已將零打擾模式自動開啟"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"應用程式 (<xliff:g id="APP_NAME">%s</xliff:g>) 已將零打擾模式自動開啟"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"僅限優先通知"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>。<xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Work 設定檔音效"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"使用個人設定檔音效"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Work 設定檔和個人設定檔使用相同的音效"</string>
@@ -2972,6 +2963,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"鈴聲"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"其他音效與震動"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"通知"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"最近傳送通知的應用程式"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"進階"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Work 通知"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"允許使用通知圓點"</string>
@@ -3187,6 +3181,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"除了啟用裝置的指紋解鎖功能,你還可以將裝置設為需要輸入密碼才能啟動,增添多一道防護。裝置必須成功啟動才能接聽電話及接收訊息或通知 (包括鬧鐘)。\n\n這樣一來,即使裝置遺失或遭竊,其中的資料仍安全無虞。要將裝置設為需要輸入密碼才能啟動嗎?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"是"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"否"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"是"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"否"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"需要輸入 PIN?"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"需要畫出解鎖圖案?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"需要輸入密碼?"</string>
@@ -3333,21 +3329,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"拒絕"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"為這個裝置充電"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"僅為這個裝置充電"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"提供電源"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"為連接的裝置充電。只有支援 USB 充電功能的裝置才有效。"</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"傳輸檔案"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"將檔案轉移到另一個裝置"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"傳輸相片 (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"如果 MTP 不受支援,則轉移相片或檔案 (PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"將裝置用做 MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"將這個裝置用做 MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"請選擇 USB 的使用方式"</string>
+ <string name="usb_use" msgid="3372728031108932425">"USB 用途"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"為這個裝置充電"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"提供電力"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"傳輸檔案"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"傳輸相片 (PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"以 MIDI 模式使用裝置"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"簡訊鏡像"</string>
<string name="background_check_pref" msgid="7550258400138010979">"背景檢查"</string>
<string name="background_check_title" msgid="4534254315824525593">"完整背景存取權"</string>
@@ -3456,19 +3474,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"桌布、休眠、字型大小"</string>
<string name="display_summary_example" msgid="9102633726811090523">"閒置 10 分鐘後休眠"</string>
<string name="memory_summary" msgid="8080825904671961872">"平均記憶體用量為 <xliff:g id="USED_MEMORY">%1$s</xliff:g> (共 <xliff:g id="TOTAL_MEMORY">%2$s</xliff:g>)"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"目前的使用者:<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"登入身分:<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"預設使用「<xliff:g id="APP_NAME">%1$s</xliff:g>」"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"開啟/<xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"開啟"</string>
<string name="location_off_summary" msgid="6474350053215707957">"關閉"</string>
<string name="backup_disabled" msgid="485189128759595412">"備份功能已停用"</string>
- <string name="about_summary" msgid="924181828102801010">"已更新至 Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"不允許此操作"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"無法變更音量"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"不允許使用通話功能"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"不允許使用簡訊功能"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"不允許使用相機功能"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"不允許使用螢幕畫面擷取功能"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"無法關閉備份功能"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"這個動作已停用。如要瞭解詳情,請與你的機構管理員聯絡。"</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"其他詳細資訊"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"你的管理員可以監控及管理與你的 Work 設定檔相關聯的應用程式和資料,包括設定、權限、公司系統權限、網路活動,以及裝置的位置資訊。"</string>
@@ -3482,7 +3503,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"可攜式 Wi-Fi 無線基地台 <xliff:g id="ID_1">%1$s</xliff:g> 已開啟,因此系統關閉了這個裝置的 Wi-Fi。"</string>
<string name="condition_airplane_title" msgid="287356299107070503">"飛航模式已開啟"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"Wi-Fi、藍牙和行動網路都已關閉。你無法撥打電話或連線到網際網路。"</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"「零打擾」設定已開啟 (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"節約耗電量模式已開啟"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"已降低執行效能,並停用定位服務和背景資料功能。"</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"行動數據已關閉"</string>
@@ -3492,9 +3514,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Work 設定檔已停用"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"應用程式、背景同步處理以及其他與你的 Work 設定檔相關的功能已停用。"</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"設定夜燈時間表"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"將螢幕調成暖色調幫助入眠"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"每晚自動調整螢幕色調"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"夜燈模式已開啟"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"已將螢幕色調改為琥珀色,讓你比較容易入睡。"</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"為你推薦"</string>
<string name="suggestions_title" msgid="7280792342273268377">"建議"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"另外 <xliff:g id="ID_1">%1$d</xliff:g> 個"</string>
@@ -3599,6 +3622,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"無"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"缺少排名物件。"</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"排名物件不包含這組金鑰。"</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"模擬具有凹口的顯示畫面"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"無"</string>
<string name="special_access" msgid="3458780842491881155">"特殊應用程式存取權"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="other"><xliff:g id="COUNT">%d</xliff:g> 個應用程式可使用無限量的資料</item>
@@ -3621,10 +3646,9 @@
<string name="bluetooth_connected_multiple_devices_summary" msgid="9173661896296663932">"已連線到多個裝置"</string>
<string name="demo_mode" msgid="2798762752209330277">"系統 UI 示範模式"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"快速設定開發人員圖塊"</string>
- <!-- no translation found for window_trace_quick_settings_title (3839917000546526898) -->
- <skip />
- <!-- no translation found for layer_trace_quick_settings_title (2447147947568109649) -->
- <skip />
+ <string name="window_trace_quick_settings_title" msgid="3839917000546526898">"視窗追蹤"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Surface 追蹤"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Work 設定檔設定"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"聯絡人搜尋"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"允許你的機構搜尋聯絡人,以便識別來電者和聯絡人的身分"</string>
@@ -3644,8 +3668,7 @@
<string name="automatic_storage_manager_text" msgid="4562950476680600604">"儲存空間管理員會將已備份的相片和影片從裝置中移除,藉此釋出儲存空間。"</string>
<string name="automatic_storage_manager_days_title" msgid="2017913896160914647">"移除相片和影片"</string>
<string name="automatic_storage_manager_preference_title" msgid="5753702798151073383">"儲存空間管理員"</string>
- <!-- no translation found for automatic_storage_manager_master_switch_title (6792996736190821417) -->
- <skip />
+ <string name="automatic_storage_manager_master_switch_title" msgid="6792996736190821417">"使用儲存空間管理員"</string>
<string name="deletion_helper_automatic_title" msgid="6605660435498272520">"自動"</string>
<string name="deletion_helper_manual_title" msgid="7947432164411214029">"手動"</string>
<string name="deletion_helper_preference_title" msgid="5271510052022285884">"立即釋出空間"</string>
@@ -3656,32 +3679,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"快速開啟相機"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"只要在任何畫面中按兩下電源按鈕,即可快速開啟相機。"</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"快速開啟相機"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"按兩下電源鍵來開啟相機"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"快速切換鏡頭"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"自拍更快速"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"將手機扭動兩下來開啟自拍模式"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"將平板電腦扭動兩下來開啟自拍模式"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"將裝置扭動兩下來開啟自拍模式"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"輕觸兩下手機即可查看"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"輕觸兩下平板電腦即可查看"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"輕觸兩下裝置即可查看"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"輕觸兩下螢幕即可查看時間、通知圖示和其他資訊。"</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"在螢幕關閉時查看通知"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"拿起手機即可查看"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"拿起平板電腦即可查看"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"拿起裝置即可查看"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"拿起手機即可查看時間、通知圖示和其他資訊。"</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"拿起平板電腦即可查看時間、通知圖示和其他資訊。"</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"拿起裝置即可查看時間、通知圖示和其他資訊。"</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"在螢幕關閉時查看通知"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"滑動感應指紋以查看通知"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"滑動手指"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"將手指放在手機背面的指紋感應器上並向下滑動,即可查看通知。"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"將手指放在平板電腦背面的指紋感應器上並向下滑動,即可查看通知。"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"將手指放在裝置背面的指紋感應器上並向下滑動,即可查看通知。"</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"快速查看通知"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"將手指放在指紋感應器上並向下滑動"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"開啟"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"關閉"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"開機載入器已解除鎖定"</string>
@@ -3813,8 +3829,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"這個裝置不支援此功能"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"強制啟用完整的 GNSS 測量資料"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"在停用工作週期的情況下追蹤所有 GNSS 星座圖和頻率"</string>
- <!-- no translation found for storage_access (8905018810338984531) -->
- <skip />
- <!-- no translation found for keywords_storage_access (3708874088152933579) -->
- <skip />
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"一律顯示當機對話方塊"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"在每次應用程式當機時顯示對話方塊"</string>
+ <string name="directory_access" msgid="4722237210725864244">"目錄存取權"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"目錄存取權"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"我的手機"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"我的平板電腦"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"我的裝置"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"帳戶"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"裝置名稱"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"開車時使用藍牙"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"開車時自動開啟藍牙"</string>
</resources>
diff --git a/res/values-zu/arrays.xml b/res/values-zu/arrays.xml
index b7ff086..dfd6f9f 100644
--- a/res/values-zu/arrays.xml
+++ b/res/values-zu/arrays.xml
@@ -117,7 +117,9 @@
</string-array>
<!-- no translation found for wifi_ap_band_config_full:0 (1085243288162893079) -->
<!-- no translation found for wifi_ap_band_config_full:1 (5531376834915607202) -->
+ <!-- no translation found for wifi_ap_band_config_full:2 (3580217704310339410) -->
<!-- no translation found for wifi_ap_band_config_2G_only:0 (7006771583217001015) -->
+ <!-- no translation found for wifi_ap_band_config_2G_only:1 (8904289885593822837) -->
<string-array name="wifi_p2p_wps_setup">
<item msgid="5085064298144493867">"Cindezela inkinobho"</item>
<item msgid="1624323946324499595">"Iphinikhodi kusuka kudivaysisi yabangani"</item>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 704c64e..1940a8a 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -347,6 +347,8 @@
<string name="owner_info_settings_title" msgid="5530285568897386122">"Umlayezo wokukhiya isikrini"</string>
<string name="security_enable_widgets_title" msgid="2754833397070967846">"Nika amandla amawijethi"</string>
<string name="security_enable_widgets_disabled_summary" msgid="6392489775303464905">"Kukhutshazwe umlawuli"</string>
+ <string name="lockdown_settings_title" msgid="7393790212603280213">"Bonisa inketho yokukhiya"</string>
+ <string name="lockdown_settings_summary" msgid="8678086272188880615">"Bonisa inketho yenkinobho yamandla evala ukufinyelela okunwetshiwe nokuvula kwezigxivizo zeminwe."</string>
<string name="owner_info_settings_summary" msgid="7472393443779227052">"Lutho"</string>
<string name="owner_info_settings_status" msgid="120407527726476378">"<xliff:g id="COUNT_0">%1$d</xliff:g> / <xliff:g id="COUNT_1">%2$d</xliff:g>"</string>
<string name="owner_info_settings_edit_text_hint" msgid="7591869574491036360">"Isb. I-Android ka-Joe."</string>
@@ -467,10 +469,14 @@
<string name="crypt_keeper_data_corrupt_summary" product="tablet" msgid="840107296925798402">"Iphasiwedi oyifakile ilungile, kodwa ngeshwa idatha yakho yonakele. \n\nUkuze uqhubeke usebenzise ithebhulethi yakho, udinga ukwenza ukusetha kwefekthri. Uma usetha ithebhulethi yakho ngemva kokusetha kabusha, uzothola ithuba lokubuyisa idatha yakho ebekade yenziwe isipele ku-Akhawunti yakho ye-Google."</string>
<string name="crypt_keeper_data_corrupt_summary" product="default" msgid="8843311420059663824">"Iphasiwedi oyifakile ilungile, kodwa ngeshwa idatha yakho yonakele.\n\nUkuze uqalise kabusha usebenzisa ifoni yakho, kuzomele wenze ukusetha kabusha kwasekuqaleni. Uma usetha ifoni yakho ngemuva kokusetha kabusha, uzoba nethuba lokubuyisela noma iyiphi idatha eye yenziwa isipele ku-Akhawunti yakho ye-Google."</string>
<string name="crypt_keeper_switch_input_method" msgid="4168332125223483198">"Shintsha indlela yokufaka"</string>
- <string name="suggested_lock_settings_title" msgid="8971630898700461034">"Setha ukukhiya kwesikrini"</string>
- <string name="suggested_lock_settings_summary" msgid="8778462376012231110">"Vikela idivayisi yakho"</string>
- <string name="suggested_fingerprint_lock_settings_title" msgid="3655973509619012084">"Sebenzisa izigxivizo zeminwe"</string>
- <string name="suggested_fingerprint_lock_settings_summary" msgid="2149569133725273864">"Vula izigxivizo zakho zeminwe"</string>
+ <string name="suggested_lock_settings_title" msgid="8195437597439375655">"Setha ukukhiya kwesikrini ukuze iphephe"</string>
+ <string name="suggested_lock_settings_summary" product="tablet" msgid="7915739444107426777">"Gwema abanye ekusebenziseni ithebhulethi yakho"</string>
+ <string name="suggested_lock_settings_summary" product="device" msgid="9202820303111653610">"Gwema abanye ekusebenziseni idivayisi yakho"</string>
+ <string name="suggested_lock_settings_summary" product="default" msgid="1252628838133344781">"Gwema abanye ekusebenziseni ifoni yakho"</string>
+ <string name="suggested_fingerprint_lock_settings_title" msgid="414499342011664436">"Vula ngezigxivizo zeminwe"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet" msgid="2149569133725273864">"Vula izigxivizo zakho zeminwe"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="device" msgid="2149569133725273864">"Vula izigxivizo zakho zeminwe"</string>
+ <string name="suggested_fingerprint_lock_settings_summary" product="default" msgid="2149569133725273864">"Vula izigxivizo zakho zeminwe"</string>
<string name="lock_settings_picker_title" msgid="1095755849152582712">"Khetha isivali sesikrini"</string>
<string name="lock_settings_picker_title_profile" msgid="8822511284992306796">"Khetha isikhiya somsebenzi"</string>
<string name="setup_lock_settings_picker_title" product="tablet" msgid="90329443364067215">"Vikela ithebulethi yakho"</string>
@@ -828,6 +834,7 @@
<string name="wifi_password" msgid="5948219759936151048">"Iphasiwedi"</string>
<string name="wifi_show_password" msgid="6461249871236968884">"Bonisa iphasiwedi"</string>
<string name="wifi_ap_band_config" msgid="1611826705989117930">"Khetha ibhendi le-AP"</string>
+ <string name="wifi_ap_choose_auto" msgid="2677800651271769965">"Okuzenzakalelayo"</string>
<string name="wifi_ap_choose_2G" msgid="8724267386885036210">"2.4 GHz Ibhendi"</string>
<string name="wifi_ap_choose_5G" msgid="8137061170937978040">"5 GHz Ibhendi"</string>
<string name="wifi_ip_settings" msgid="3359331401377059481">"Izilungiselelo ze-IP"</string>
@@ -933,7 +940,7 @@
<string name="wifi_tether_configure_ssid_default" msgid="8467525402622138547">"Indawo ye-Android"</string>
<string name="wifi_calling_settings_title" msgid="4102921303993404577">"Ukushaya kwe-Wi-Fi"</string>
<string name="wifi_calling_suggestion_title" msgid="9008010480466359578">"Vula ukushaya kwe-Wi-Fi"</string>
- <string name="wifi_calling_suggestion_summary" msgid="3765923249566552233">"Sebenzisa i-Wi-Fi esikhundleni senethiwekhi yeselula"</string>
+ <string name="wifi_calling_suggestion_summary" msgid="4277772016570248405">"Nwebisa ukumboza ngokushaya nge-Wi-Fi"</string>
<string name="wifi_calling_mode_title" msgid="2164073796253284289">"Okuncanyelwayo kokushaya"</string>
<string name="wifi_calling_mode_dialog_title" msgid="8149690312199253909">"Imodi yokushaya ye-Wi-Fi"</string>
<string name="wifi_calling_roaming_mode_title" msgid="1565039047187685115">"Okuncamelayo kokuzulazula"</string>
@@ -1186,6 +1193,7 @@
<string name="status_network_type" msgid="3279383550222116235">"Uhlobo lwenethiwekhi yeselula"</string>
<string name="status_latest_area_info" msgid="7222470836568238054">"Ulwazi lwenkampani yenethiwekhi"</string>
<string name="status_data_state" msgid="5503181397066522950">"Isimo senethiwekhi yeselula"</string>
+ <string name="status_esim_id" msgid="6456255368300906317">"I-EID"</string>
<string name="status_service_state" msgid="2323931627519429503">"Isimo seseva"</string>
<string name="status_signal_strength" msgid="3732655254188304547">"Amandla esiginali"</string>
<string name="status_roaming" msgid="2638800467430913403">"Iyazulazula"</string>
@@ -1373,19 +1381,23 @@
<string name="reset_dashboard_summary" msgid="4851012632493522755">"Inethiwekhi, izinhlelo zokusebenza, noma idivayisi ingasethwa kabusha"</string>
<string name="reset_network_title" msgid="6166025966016873843">"Setha kabusha i-Wi-Fi, iselula ne-Bluetooth"</string>
<string name="reset_network_desc" msgid="5547979398298881406">"Lokhu kuzosetha kabusha zonke izilungiselelo zenethiwekhi ezifaka:\n\n"<li>"i-Wi‑Fi"</li>\n<li>"Idatha yeselula"</li>\n<li>"ne-Bluetooth"</li></string>
+ <string name="reset_esim_title" msgid="5914265121343650792">"Phinda usethe ama-eSIM"</string>
+ <string name="reset_esim_desc" msgid="6412324670559060446">"Sula onke ama-eSIM kufoni. Kuzomele uxhumane nenkampani yakho yenethiwekhi ukuze uphinde ulande ama-eSIM akho. Lokhu ngeke kukhansele uhlelo lwakho lwesevisi yeselula."</string>
<string name="reset_network_button_text" msgid="2035676527471089853">"Setha kabusha izilungiselelo"</string>
<string name="reset_network_final_desc" msgid="6388371121099245116">"Setha kabusha zonke izilungiselelo zenethiwekhi? Awukwazi ukuhlehlisa lesi senzo!"</string>
<string name="reset_network_final_button_text" msgid="1797434793741744635">"Setha kabusha izilungiselelo"</string>
<string name="reset_network_confirm_title" msgid="1759888886976962773">"Setha kabusha?"</string>
<string name="network_reset_not_available" msgid="7188610385577164676">"Ukusetha kabusha inethiwekhi akutholakali kulo msebenzisi"</string>
<string name="reset_network_complete_toast" msgid="787829973559541880">"Izilungiselelo zenethiwekhi zisethwe kabusha"</string>
+ <string name="reset_esim_error_title" msgid="1464195710538232590">"Ayikwazi ukusetha kabusha ama-eSIM"</string>
+ <string name="reset_esim_error_msg" msgid="8434956817922668388">"Ama-eSIM awakwazi ukusethwa kabusha ngenxa yephutha."</string>
<string name="master_clear_title" msgid="3531267871084279512">"Sula yonke idatha (ukusethwa kabusha kwasekuqaleni)"</string>
<string name="master_clear_desc" product="tablet" msgid="9146059417023157222">"Lokhu kuzosusa yonke idatha "<b>"ekwistoreji sangaphakathi kuthebhulethi yakho"</b>", ehlanganisa:\n\n"<li>"I-akhawunti yakho ye-Google"</li>\n<li>"Uhlelo lokusebenza kanye nezilungiselelo"</li>\n<li>"Izinhlelo zokusebenza ezilayishiwe"</li></string>
<string name="master_clear_desc" product="default" msgid="4800386183314202571">"Lokhu kuzosusa yonke idatha "<b>"ekwisitoreji sangaphakathi sefoni yakho"</b>", ehlanganisa:\n\n"<li>"I-akhawunti yakho ye-Google"</li>\n<li>"Uhlelo lokusebenza kanye nezilungiselelo"</li>\n<li>"Izinhlelo zokusebenza ezilayishiwe"</li></string>
<string name="master_clear_accounts" product="default" msgid="6412857499147999073">\n"Okwamanje ungene ngemvume kuma-akhawunti alandelayo:\n\n"</string>
<string name="master_clear_other_users_present" product="default" msgid="5161423070702470742">\n\n"Kukhona abanye abasebenzisi abakhona kule divayisi.\n"</string>
<string name="master_clear_desc_also_erases_external" msgid="1903185203791274237"><li>"Umculo"</li>\n<li>"Izithombe"</li>\n<li>"Enye idatha yomsebenzisi"</li></string>
- <string name="master_clear_desc_also_erases_esim" msgid="312352697653096008"><li>"Izinkampani zenethiwekhi ku-eSIM"</li></string>
+ <string name="master_clear_desc_also_erases_esim" msgid="6008213558725767177">"Ama"<li>"eSIM"</li></string>
<string name="master_clear_desc_no_cancel_mobile_plan" msgid="5460926449093211144">\n\n"Lokhu ngeke kukhansele uhlelo lwakho lwesevisi yefoni."</string>
<string name="master_clear_desc_erase_external_storage" product="nosdcard" msgid="7744115866662613411">\n\n"Ukusula futhi umculo, izithombe, nenye idatha yomsebenzisi, "<b>" indawo yokugcina ye-USB"</b>"idinga ukusulwa."</string>
<string name="master_clear_desc_erase_external_storage" product="default" msgid="4801026652617377093">\n\n"Ukusula umculo, izithombe, nenye imininingo yomsebenzisi, "<b>"ikhadi le-SD"</b>"kumele lisuswe."</string>
@@ -1445,21 +1457,12 @@
<string name="mobile_connect_to_internet" msgid="1733894125065249639">"Sicela uxhume ku-inthanethi"</string>
<string name="location_title" msgid="1029961368397484576">"Indawo Yami"</string>
<string name="managed_profile_location_switch_title" msgid="6712332547063039683">"Indawo yephrofayela yokusebenza"</string>
- <string name="location_mode_title" msgid="3982009713118421689">"Imodi"</string>
- <string name="location_mode_high_accuracy_title" msgid="8241802585110932849">"Ukunemba okuphezulu"</string>
- <string name="location_mode_battery_saving_title" msgid="711273645208158637">"Ukulondolozwa kwebhethri"</string>
- <string name="location_mode_sensors_only_title" msgid="3040366132175435160">"Idivayisi kuphela"</string>
- <string name="location_mode_location_off_title" msgid="2829713015012529465">"Indawo ivaliwe"</string>
<string name="location_app_level_permissions" msgid="1825588230817081339">"Izimvume zeleveli yohlelo lokusebenza"</string>
<string name="location_category_recent_location_requests" msgid="1938721350424447421">"Izicelo zendawo zakamuva"</string>
<string name="location_no_recent_apps" msgid="2800907699722178041">"Azikho izinhlelo zokusebenza ezicele indawo kamuva nje"</string>
<string name="location_category_location_services" msgid="7437150886946685979">"Amasevisi wendawo"</string>
<string name="location_high_battery_use" msgid="517199943258508020">"Ukusebenzisa ibhethri okuphezulu"</string>
<string name="location_low_battery_use" msgid="8602232529541903596">"Ukusebenzisa ibhethri okuphansi"</string>
- <string name="location_mode_screen_title" msgid="4528716772270246542">"Imodi yendawo"</string>
- <string name="location_mode_high_accuracy_description" msgid="3453010562265338113">"Sebenzisa i-GPS, i-Wi-Fi, i-Bluetooth, noma amanethiwekhi eselula ukuze unqume indawo"</string>
- <string name="location_mode_battery_saving_description" msgid="2365298246603348985">"Sebenzisa i-Wi-Fi, i-Bluetooth, noma amanethiwekhi eselula ukuze unqume indawo"</string>
- <string name="location_mode_sensors_only_description" msgid="7247994752324805202">"Sebenzisa i-GPS nezinzwa zedivayisi ukunquma indawo"</string>
<string name="location_scanning_screen_title" msgid="4408076862929611554">"Iyaskena"</string>
<string name="location_scanning_wifi_always_scanning_title" msgid="6216705505621183645">"Ukuskena kwe-Wi-Fi"</string>
<string name="location_scanning_wifi_always_scanning_description" msgid="8036382029606868081">"Thuthukisa indawo ngokuvumela izinhlelo zokusebenza zesistimu namasevisi ukuthola amanethiwekhi we-Wi-Fi noma kunini."</string>
@@ -2005,7 +2008,7 @@
<string name="power_usage_level_and_status" msgid="7449847570973811784">"<xliff:g id="LEVEL">%1$s</xliff:g> - <xliff:g id="STATUS">%2$s</xliff:g>"</string>
<string name="power_discharge_remaining" msgid="4925678997049911808">"<xliff:g id="REMAIN">%1$s</xliff:g> osele"</string>
<string name="power_charge_remaining" msgid="6132074970943913135">"<xliff:g id="UNTIL_CHARGED">%1$s</xliff:g> ukuze lishajiwe"</string>
- <string name="background_activity_title" msgid="8618384801540759730">"Umsebenzi wangemuva"</string>
+ <string name="background_activity_title" msgid="4797874712348525348">"Kuvinjelwe"</string>
<string name="background_activity_summary" msgid="8140094430510517362">"Vumela uhlelo lokusebenza ukuthi lusebenze ngemuva"</string>
<string name="background_activity_summary_on" msgid="649282072540085599">"Uhlelo lokusebenza lingasebenza ngasemuva uma lingasebenzi"</string>
<string name="background_activity_summary_off" msgid="7666330699090632040">"Umsebenzi wangasemuva wohlelo lokusebenza ukhawulelwe uma ungasebenzi"</string>
@@ -2054,14 +2057,10 @@
<string name="battery_tip_low_battery_summary" msgid="4702986182940709150">"Ibhethri alikwazi ukunikeza impilo enhle yebhethri"</string>
<string name="battery_tip_smart_battery_title" msgid="8471762806923764455">"Vula isiphathi sebhethri esihlakaniphile"</string>
<string name="battery_tip_smart_battery_summary" msgid="3024670691742861841">"Vula ukuze uthuthukise ukusebenza kwebhethri"</string>
- <!-- no translation found for battery_tip_early_heads_up_title (1454605424618204941) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_summary (4003736326324428487) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_title (1545434816346760843) -->
- <skip />
- <!-- no translation found for battery_tip_early_heads_up_done_summary (8191928150995385163) -->
- <skip />
+ <string name="battery_tip_early_heads_up_title" msgid="1454605424618204941">"Vula imodi yebhethri eliphansi"</string>
+ <string name="battery_tip_early_heads_up_summary" msgid="4003736326324428487">"Khulisa impilo yebhethri lakho"</string>
+ <string name="battery_tip_early_heads_up_done_title" msgid="1545434816346760843">"Imodi yebhethri eliphansi ivuliwe"</string>
+ <string name="battery_tip_early_heads_up_done_summary" msgid="8191928150995385163">"Ezinye izici zikhawulelwe"</string>
<string name="battery_tip_high_usage_title" product="default" msgid="7981031050318555946">"Ifoni isetshenziswe kakhulu"</string>
<string name="battery_tip_high_usage_title" product="tablet" msgid="8767749911858231430">"Ithebhulethi isetshenziswe kakhulu"</string>
<string name="battery_tip_high_usage_title" product="device" msgid="4964729505519290954">"Idivayisi isetshenziswe kakhulu"</string>
@@ -2373,8 +2372,9 @@
<string name="sync_is_failing" msgid="1591561768344128377">"Ukuvumelanisa okwamanje kubhekene nenkinga. Izobuya maduze."</string>
<string name="add_account_label" msgid="7811707265834013767">"Yengeza i-akhawunti"</string>
<string name="managed_profile_not_available_label" msgid="852263300911325904">"Iphrofayela yomsebenzi ayitholakali okwamanje"</string>
- <string name="work_mode_label" msgid="5794470908668593961">"Imodi yomsebenzi"</string>
- <string name="work_mode_summary" msgid="1620246003886940776">"Vumela iphrofayela yomsebenzi ukuthi isebenze, okufaka izinhlelo zokusebenza, ukuvumelanisa okungemuva, nezici ezisondelene"</string>
+ <string name="work_mode_label" msgid="7157582467956920750">"Iphrofayela yomsebenzi"</string>
+ <string name="work_mode_on_summary" msgid="3628349169847990263">"Kuphethwe inhlangano yakho"</string>
+ <string name="work_mode_off_summary" msgid="2657138190560082508">"Izinhlelo zokusebenza nezaziso kuvaliwe"</string>
<string name="remove_managed_profile_label" msgid="3856519337797285325">"Susa iphrofayela yomsebenzi"</string>
<string name="background_data" msgid="5779592891375473817">"Idatha yasemuva"</string>
<string name="background_data_summary" msgid="8328521479872763452">"Izinhlelo zokusebenza zingavumelanisa, zithumele, futhi zithole imininingo nganoma isiphi isikhathi"</string>
@@ -2625,7 +2625,7 @@
<item quantity="one">Hlola izitifiketi</item>
<item quantity="other">Hlola izitifiketi</item>
</plurals>
- <string name="user_settings_title" msgid="6151874007858148344">"Abasebenzisi"</string>
+ <string name="user_settings_title" msgid="3493908927709169019">"Abasebenzisi abaningi"</string>
<string name="user_list_title" msgid="7937158411137563543">"Abasebenzisi namaphrofayela"</string>
<string name="user_add_user_or_profile_menu" msgid="6923838875175259418">"Engeza umsebenzisi noma iphrofayela"</string>
<string name="user_add_user_menu" msgid="1675956975014862382">"Engeza umsebenzisi"</string>
@@ -2815,7 +2815,9 @@
<string name="connected_devices_dashboard_no_nfc_summary" msgid="9106040742715366495">"I-Bluetooth, Sakaza"</string>
<string name="app_and_notification_dashboard_title" msgid="7838365599185397539">"Izinhlelo zokusebenza nezaziso"</string>
<string name="app_and_notification_dashboard_summary" msgid="2363314178802548682">"Izimvume, izinhlelo zokusebenza ezienzakalelayo"</string>
- <string name="account_dashboard_title" msgid="4936890821712178853">"Abasebenzisi nama-akhawunti"</string>
+ <string name="account_dashboard_title" msgid="5895948991491438911">"Ama-akhawunti"</string>
+ <!-- no translation found for account_dashboard_default_summary (3998347400161811075) -->
+ <skip />
<string name="app_default_dashboard_title" msgid="7342549305933047317">"Izinhlelo zokusebenza ezizenzakalelayo"</string>
<string name="system_dashboard_summary" msgid="5797743225249766685">"Izilimi, isikhathi, isipele, izibuyekezo"</string>
<string name="search_results_title" msgid="1796252422574886932">"Izilungiselelo"</string>
@@ -2846,7 +2848,6 @@
<string name="keywords_sounds_and_notifications_interruptions" msgid="5426093074031208917">"ungaphazamisi ukungaphazamisi, phazamisa, ukuphazamisa, ikhefu"</string>
<string name="keywords_app" msgid="6334757056536837791">"I-RAM"</string>
<string name="keywords_location" msgid="6615286961552714686">"eduze, indawo, umlando, ukubika"</string>
- <string name="keywords_location_mode" msgid="8584992704568356084">"ukunemba"</string>
<string name="keywords_accounts" msgid="1957925565953357627">"i-akhawunti"</string>
<string name="keywords_users" msgid="3434190133131387942">"umkhawulo, khawulela, okukhawulelwe"</string>
<string name="keywords_keyboard_and_ime" msgid="9143339015329957107">"ukulungiswa kombhalo, ukulunga, umsindo, ukudlidliza, okuzenzakalelayo, ulimi, ukuthinta, phakamisa, isiphakamiso, itimu, okuhlaselayo, igama, uhlobo, i-emoji, okwamazwe ngamazwe"</string>
@@ -2870,6 +2871,7 @@
<string name="keywords_sim_status" msgid="1474422416860990564">"inethiwekhi, isimo senethiwekhi yeselula, isimo sesevisi, amandla esignali, uhlobo lwenethiwekhi yeselula, ukuzula, i-iccid"</string>
<string name="keywords_model_and_hardware" msgid="1459248377212829642">"inombolo yomkhiqizo, inguqulo yehadiwe"</string>
<string name="keywords_android_version" msgid="9069747153590902819">"ileveli yepeshi yokuvikelwa kwe-android, inguqulo ye-baseband, inguqulo ye-kernel"</string>
+ <string name="keywords_ambient_display_screen" msgid="5874969496073249362">"Isibonisi se-Ambient, isibonisi sesikrini sokukhiya"</string>
<string name="setup_wifi_nfc_tag" msgid="9028353016222911016">"Setha umaka we-Wi-Fi NFC"</string>
<string name="write_tag" msgid="8571858602896222537">"Bhala"</string>
<string name="status_awaiting_tap" msgid="2130145523773160617">"Thepha umaki ukuze ubhale..."</string>
@@ -2913,6 +2915,7 @@
<item quantity="other"><xliff:g id="ON_COUNT">%d</xliff:g> izimiso</item>
</plurals>
<string name="zen_mode_settings_title" msgid="1066226840983908121">"Ungaphazamasi"</string>
+ <string name="zen_mode_settings_turn_on_dialog_title" msgid="2297134204747331078">"Vula ukungaphazamisi"</string>
<string name="zen_mode_behavior_settings_title" msgid="1463303933529313969">"Ukuziphatha"</string>
<string name="zen_mode_behavior_allow_title" msgid="3845615648136218141">"Vumela imisindo nokudlidliza kusuka ku-"</string>
<string name="zen_mode_behavior_no_sound" msgid="1219626004723208056">"Awukho umsindo"</string>
@@ -2922,8 +2925,9 @@
<string name="zen_mode_automation_settings_title" msgid="2517800938791944915">"Vula ngokuzenzakalela"</string>
<string name="zen_mode_automation_settings_page_title" msgid="7069221762714457987">"Izimiso ezizenzakalelayo"</string>
<string name="zen_mode_automatic_rule_settings_page_title" msgid="9041488774587594301">"Umthetho wokuzenzakalela"</string>
- <string name="zen_mode_automation_suggestion_title" msgid="5105443455143476201">"Setha imithetho yokuthi ungaphazamisi"</string>
- <string name="zen_mode_automation_suggestion_summary" msgid="4732808039946935657">"Khawulela imisindo nokudlidliza kwezinye izikhathi"</string>
+ <string name="zen_mode_automation_suggestion_title" msgid="4321254843908888574">"Thulisa ifoni ngezinye izikhathi"</string>
+ <string name="zen_mode_automation_suggestion_summary" msgid="6223252025075862701">"Setha imithetho yokuthi ungaphazamisi"</string>
+ <string name="zen_mode_use_automatic_rule" msgid="4509513632574025380">"Sebenzisa isimiso"</string>
<string name="zen_mode_option_important_interruptions" msgid="3903928008177972500">"Okubalulekile kuphela"</string>
<string name="zen_mode_option_alarms" msgid="5785372117288803600">"Ama-alamu kuphela"</string>
<string name="zen_mode_option_no_interruptions" msgid="8107126344850276878">"Ukuthula okuphelele"</string>
@@ -2931,12 +2935,15 @@
<string name="zen_mode_visual_interruptions_settings_title" msgid="6751708745442997940">"Vimbela ukuphazamiseka okubonakalayo"</string>
<string name="zen_mode_visual_signals_settings_subtitle" msgid="6308824824208120508">"Vumela amasignali okubuka"</string>
<string name="zen_mode_add" msgid="90014394953272517">"Engeza"</string>
+ <string name="zen_mode_enable_dialog_turn_on" msgid="8287824809739581837">"Vula"</string>
<string name="zen_mode_button_turn_on" msgid="2824380626482175552">"Vula manje"</string>
<string name="zen_mode_button_turn_off" msgid="6181953727880503094">"Vala manje"</string>
<string name="zen_mode_settings_dnd_manual_end_time" msgid="8860646554263965569">"Okuthi ungaphazamisi kuvuliwe kuze kube ngu-<xliff:g id="FORMATTED_TIME">%s</xliff:g>"</string>
<string name="zen_mode_settings_dnd_manual_indefinite" msgid="7186615007561990908">"Okuthi Ungaphazamisi kuzohlala kuvuliwe uze ukuvale"</string>
<string name="zen_mode_settings_dnd_automatic_rule" msgid="7780048616476170427">"Okuthi Ungaphazamisi kuvulwe ngokuzenzakalelayo ngomthetho (<xliff:g id="RULE_NAME">%s</xliff:g>)"</string>
<string name="zen_mode_settings_dnd_automatic_rule_app" msgid="1721179577382915270">"Okuthi Ungaphazamisi kuvulwe ngokuzenzakalelayo ngohlelo lokusebenza (<xliff:g id="APP_NAME">%s</xliff:g>)"</string>
+ <string name="zen_interruption_level_priority" msgid="2078370238113347720">"Okubalulekile kuphela"</string>
+ <string name="zen_mode_and_condition" msgid="4927230238450354412">"<xliff:g id="ZEN_MODE">%1$s</xliff:g>. <xliff:g id="EXIT_CONDITION">%2$s</xliff:g>"</string>
<string name="sound_work_settings" msgid="6774324553228566442">"Imisindo yephrofayela yomsebenzi"</string>
<string name="work_use_personal_sounds_title" msgid="1148331221338458874">"Sebenzisa imisindo yephrofayela yomuntu siqu"</string>
<string name="work_use_personal_sounds_summary" msgid="6207040454949823153">"Imisindo iyefana yomsebenzi namaphrofayela omuntu siqu"</string>
@@ -2952,6 +2959,9 @@
<string name="ringtones_category_preference_title" msgid="5675912303120102366">"Amaringithoni"</string>
<string name="other_sound_category_preference_title" msgid="2521096636124314015">"Eminye imisindo nokudlidliza"</string>
<string name="configure_notification_settings" msgid="7616737397127242615">"Izaziso"</string>
+ <string name="recent_notifications" msgid="5660639387705060156">"Kuthunyelwe kamuva nje"</string>
+ <!-- no translation found for recent_notifications_see_all_title (3935564140468680831) -->
+ <skip />
<string name="advanced_section_header" msgid="8833934850242546903">"Okuthuthukisiwe"</string>
<string name="profile_section_header" msgid="2320848161066912001">"Izaziso zomsebenzi"</string>
<string name="notification_badging_title" msgid="5938709971403474078">"Vumela amachashazi esaziso"</string>
@@ -3167,6 +3177,8 @@
<string name="encryption_interstitial_message_password_for_fingerprint" msgid="5560954719370251702">"Ngokungeziwe ekusebenziseni izigxivizo zakho zeminwe ukuze uvule idivayisi yakho, ungaqhubeka uvikele le divayisi ngokucela iphinikhodi yakho ngaphambi kokuthi iqale. Kuze kube idivayisi iyaqala, ayikwazi ukwamukela amakholi, imilayezo, noma izaziso ezifaka ama-alamu.\n\nLokhu kusiza ukuvikela idatha kumadivayisi alahlekile noma antshontshiwe. Udinga iphasiwedi ukuze uqale idivayisi yakho?"</string>
<string name="encryption_interstitial_yes" msgid="4439509435889513411">"Yebo"</string>
<string name="encryption_interstitial_no" msgid="8935031349097025137">"Cha"</string>
+ <string name="restricted_true_label" msgid="1793719723017395175">"Yebo"</string>
+ <string name="restricted_false_label" msgid="6374816254102233858">"Cha"</string>
<string name="encrypt_talkback_dialog_require_pin" msgid="8299960550048989807">"Idinga iphinikhodi"</string>
<string name="encrypt_talkback_dialog_require_pattern" msgid="1499790256154146639">"Idinga iphethini?"</string>
<string name="encrypt_talkback_dialog_require_password" msgid="8841994614218049215">"Idinga iphasiwedi?"</string>
@@ -3313,21 +3325,43 @@
<string name="decline_remote_bugreport_action" msgid="518720235407565134">"Yenqaba"</string>
<string name="usb_use_charging_only" msgid="2180443097365214467">"Shaja le divayisi"</string>
<string name="usb_use_charging_only_desc" msgid="3066256793008540627">"Vele ushaje le divayisi"</string>
- <string name="usb_use_power_only" msgid="6426550616883919530">"Sabalalisa amandla"</string>
- <string name="usb_use_power_only_desc" msgid="3461232831015575152">"Shaja idivayisi exhunyiwe. Isebenza kuphela namadivayisi asekela ukushaja kwe-USB."</string>
- <string name="usb_use_file_transfers" msgid="7409600791007250137">"Dlulisela amafayela"</string>
+ <!-- no translation found for usb_use_power_only (6449381364444187612) -->
+ <skip />
+ <!-- no translation found for usb_use_power_only_desc (5674490059427055197) -->
+ <skip />
+ <!-- no translation found for usb_use_file_transfers (1223134119354320726) -->
+ <skip />
<string name="usb_use_file_transfers_desc" msgid="4235764784331804488">"Dlulisela amafayela kwenye idivayisi"</string>
- <string name="usb_use_photo_transfers" msgid="7794775645350330454">"Dlulisa izithombe (PTP)"</string>
+ <!-- no translation found for usb_use_photo_transfers (8192719651229326283) -->
+ <skip />
<string name="usb_use_photo_transfers_desc" msgid="2963034811151325996">"Dlulisela izithombe noma amafayela uma i-MTP ingasekelwe (i-PTP)"</string>
- <string name="usb_use_MIDI" msgid="870922185938298263">"Sebenzisa idivayisi njenge-MIDI"</string>
+ <!-- no translation found for usb_use_tethering (3944506882789422118) -->
+ <skip />
+ <string name="usb_use_MIDI" msgid="5116404702692483166">"I-MIDI"</string>
<string name="usb_use_MIDI_desc" msgid="8473936990076693175">"Sebenzisa le divayisi njenge-MIDI"</string>
- <string name="usb_use" msgid="3256040963685055320">"Sebenzisa i-USB"</string>
+ <string name="usb_use" msgid="3372728031108932425">"Sebenzisela i-USB i-"</string>
+ <!-- no translation found for usb_use_also (557340935190819370) -->
+ <skip />
<string name="usb_pref" msgid="1400617804525116158">"I-USB"</string>
<string name="usb_summary_charging_only" msgid="7544327009143659751">"Ishaja le divayisi"</string>
- <string name="usb_summary_power_only" msgid="3629517713817003738">"Nikezela amandla"</string>
- <string name="usb_summary_file_transfers" msgid="6435943692610175111">"Idlulisela amafayela"</string>
- <string name="usb_summary_photo_transfers" msgid="8440204169576585250">"Idlulisela izithombe (i-PTP)"</string>
- <string name="usb_summary_MIDI" msgid="5687906612187885908">"Isebenzisa idivayisi njenge-MIDI"</string>
+ <!-- no translation found for usb_summary_power_only (1996391096369798526) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers (6925168380589489645) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether (951190049557074535) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers (665584667685030007) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI (2399066753961085360) -->
+ <skip />
+ <!-- no translation found for usb_summary_file_transfers_power (7700800611455849806) -->
+ <skip />
+ <!-- no translation found for usb_summary_tether_power (5825335393952752238) -->
+ <skip />
+ <!-- no translation found for usb_summary_photo_transfers_power (6826058111908423069) -->
+ <skip />
+ <!-- no translation found for usb_summary_MIDI_power (3308250484012677596) -->
+ <skip />
<string name="sms_mirroring_pref" msgid="6475043279147376031">"Ukufanisela i-SMS"</string>
<string name="background_check_pref" msgid="7550258400138010979">"Ukuhlola kwangasemuva"</string>
<string name="background_check_title" msgid="4534254315824525593">"Ukufinyelela kwangasemuva okuphele"</string>
@@ -3436,19 +3470,22 @@
<string name="display_dashboard_summary" msgid="4145888780290131488">"Isithombe sangemuva, ukulala, usayizi wefonti"</string>
<string name="display_summary_example" msgid="9102633726811090523">"Lalisa ngemuva kwamaminithi angu-10 okungasebenzi"</string>
<string name="memory_summary" msgid="8080825904671961872">"Okumaphakathi okungu-<xliff:g id="USED_MEMORY">%1$s</xliff:g> kokungu-<xliff:g id="TOTAL_MEMORY">%2$s</xliff:g> imemori esetshenzisiwe"</string>
- <string name="users_and_accounts_summary" msgid="245282689646897882">"Umsebenzisi wamanje: <xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="users_summary" msgid="1674864467098487328">"Ungene ngemvume njengo-<xliff:g id="USER_NAME">%1$s</xliff:g>"</string>
<string name="payment_summary" msgid="3472482669588561110">"<xliff:g id="APP_NAME">%1$s</xliff:g> eyokuzenzakalela"</string>
- <string name="location_on_summary" msgid="5127631544018313587">"VULIWE / <xliff:g id="LOCATION_MODE">%1$s</xliff:g>"</string>
+ <string name="location_on_summary" msgid="4083334422422067511">"KUVULIWE"</string>
<string name="location_off_summary" msgid="6474350053215707957">"KUCINYIWE"</string>
<string name="backup_disabled" msgid="485189128759595412">"Ukwenza isipele kukhutshaziwe"</string>
- <string name="about_summary" msgid="924181828102801010">"Ibuyekezelwe ku-Android <xliff:g id="VERSION">%1$s</xliff:g>"</string>
+ <!-- no translation found for android_version_summary (2935995161657697278) -->
+ <skip />
+ <!-- no translation found for android_version_pending_update_summary (487831391976523090) -->
+ <skip />
<string name="disabled_by_policy_title" msgid="627023216027648534">"Isenzo asivunyelwe"</string>
<string name="disabled_by_policy_title_adjust_volume" msgid="7399450998356045023">"Ayikwazi ukushintsha ivolumu"</string>
<string name="disabled_by_policy_title_outgoing_calls" msgid="7919816644946067058">"Ukushaya akuvunyelwe"</string>
<string name="disabled_by_policy_title_sms" msgid="5733307423899610340">"I-SMS ayivunyelwe"</string>
<string name="disabled_by_policy_title_camera" msgid="6225008536855644874">"Ikhamera ayivunyelwe"</string>
<string name="disabled_by_policy_title_screen_capture" msgid="4066913623298047094">"Isithombe-skrini asivunyelwe"</string>
+ <string name="disabled_by_policy_title_turn_off_backups" msgid="6346948990624612516">"Ayikwazi ukuvala izipele"</string>
<string name="default_admin_support_msg" msgid="2853684309779513863">"Lesi senzo sikhutshaziwe. Xhumana nomqondisi wenhlangano yakho."</string>
<string name="admin_support_more_info" msgid="8901377038510512654">"Imininingwane engaphezulu"</string>
<string name="admin_profile_owner_message" msgid="5860816886981109626">"Umqondisi wakho angakwazi ukwengamela futhi aphathe izinhlelo zokusebenza nedatha ephathelene nephrofayela yakho yomsebenzi kufaka phakathi izilungiselelo, izimvume, ukufinyelela kwezinkampani, umsebenzi wenethiwekhi kanye nolwazi lwedivayisi yakho."</string>
@@ -3462,7 +3499,8 @@
<string name="condition_hotspot_summary" msgid="3433182779269409683">"I-Wi-Fi hotspot ephathekayo <xliff:g id="ID_1">%1$s</xliff:g> ayisebenzi, i-Wi-Fi kule divayisi ivaliwe."</string>
<string name="condition_airplane_title" msgid="287356299107070503">"Imodi yendiza ivuliwe"</string>
<string name="condition_airplane_summary" msgid="3738805058182535606">"I-Wi-Fi, i-Bluetooth, nenethiwekhi yeselula kuvaliwe. Awukwazi ukwenza amakholi efoni noma uxhumeke ku-inthanethi."</string>
- <string name="condition_zen_title" msgid="2679168532600816392">"Ungaphazamisi ivuliwe (<xliff:g id="ID_1">%1$s</xliff:g>)"</string>
+ <!-- no translation found for condition_zen_title (2897779738211625) -->
+ <skip />
<string name="condition_battery_title" msgid="3272131008388575349">"Isilondolozi sebhethri sivuliwe"</string>
<string name="condition_battery_summary" msgid="4418839236027977450">"Ukusebenza kuncishisiwe. Amasevisi endaweni nedatha yangemuva kuvaliwe."</string>
<string name="condition_cellular_title" msgid="1327317003797575735">"Idatha yeselula ivaliwe"</string>
@@ -3472,9 +3510,10 @@
<string name="condition_work_title" msgid="7293722361184366648">"Iphrofayela yomsebenzi ivaliwe"</string>
<string name="condition_work_summary" msgid="7543202177571590378">"Izinhlelo zokusebenza, ukuvumelanisa okungemuva, nezinye izici ezihlobene nephrofayela yakho yomsebenzi zivaliwe."</string>
<string name="night_display_suggestion_title" msgid="6602129097059325291">"Bona ishejuli yokukhanya kwasebusuku"</string>
- <string name="night_display_suggestion_summary" msgid="1747638280833631187">"Shintsha i-amber yesikrini ukukusiza ukuthi ulale"</string>
+ <string name="night_display_suggestion_summary" msgid="228346372178218442">"Ngokuzenzakalela yenza i-tint yesikrini njalo ngobusuku"</string>
<string name="condition_night_display_title" msgid="5599814941976856183">"Ukukhanya kwasebusuku kuvuliwe"</string>
<string name="condition_night_display_summary" msgid="5443722724310650381">"Isikrini sefiphazwe nge-amber. Lokhu kungakusiza ukuthi ulale."</string>
+ <string name="suggestions_title_v2" msgid="5601181602924147569">"Okuphakanyiselwe Wena"</string>
<string name="suggestions_title" msgid="7280792342273268377">"Iziphakamiso"</string>
<string name="suggestions_summary" msgid="2509040178581728056">"+<xliff:g id="ID_1">%1$d</xliff:g>"</string>
<string name="suggestions_more_title" msgid="8223690393059519879">"+<xliff:g id="ID_1">%1$d</xliff:g> okuningi"</string>
@@ -3579,6 +3618,8 @@
<string name="notification_log_details_none" msgid="184131801230614059">"lutho"</string>
<string name="notification_log_details_ranking_null" msgid="244660392058720919">"Into yokulinganisa ilahlekile."</string>
<string name="notification_log_details_ranking_none" msgid="599607025882587844">"Into yokulinganisa ayiqukethe lo khiye."</string>
+ <string name="display_cutout_emulation" msgid="6306593933746393170">"Hlalisa isiboniso ngokusika ukhiphe"</string>
+ <string name="display_cutout_emulation_none" msgid="5144174674654097316">"Lutho"</string>
<string name="special_access" msgid="3458780842491881155">"Ukufinyelela kohlelo lokusebenza okukhethekile"</string>
<plurals name="special_access_summary" formatted="false" msgid="260765309935675867">
<item quantity="one"><xliff:g id="COUNT">%d</xliff:g> izinhlelo zokusebenza zingasebenzisa idatha engakhawulelwe</item>
@@ -3602,7 +3643,8 @@
<string name="demo_mode" msgid="2798762752209330277">"Imodi yedemo ye-UI yesistimu"</string>
<string name="quick_settings_developer_tiles" msgid="5947788063262762448">"Othayela bonjiniyela bezilungiselelo ezisheshayo"</string>
<string name="window_trace_quick_settings_title" msgid="3839917000546526898">"Ukulandela kwewindi"</string>
- <string name="layer_trace_quick_settings_title" msgid="2447147947568109649">"Ukulandela isendlalelo"</string>
+ <string name="layer_trace_quick_settings_title" msgid="876797401275734018">"Ukulandelela okuphansi"</string>
+ <string name="support_country_format" msgid="4502523713489559595">"<xliff:g id="COUNTRY">%1$s</xliff:g> - <xliff:g id="LANGUAGE">%2$s</xliff:g>"</string>
<string name="managed_profile_settings_title" msgid="2729481936758125054">"Izilungiselelo zephrofayela yomsebenzi"</string>
<string name="managed_profile_contact_search_title" msgid="6034734926815544221">"Usesho loxhumana naye"</string>
<string name="managed_profile_contact_search_summary" msgid="5431253552272970512">"Vumela usesho loxhumana naye ngenhlangano yakho ukuze ukhombe abashayayo noxhumana nabo"</string>
@@ -3633,32 +3675,25 @@
<string name="double_tap_power_for_camera_title" msgid="64716226816032800">"Yeqela kukhamera"</string>
<string name="double_tap_power_for_camera_summary" msgid="242037150983277829">"Ukuze uvule ngokushesha ikhamera yakho, cindezela inkinobho yamandla kabili. Isebenza kusukela kunoma isiphi isikrini."</string>
<string name="double_tap_power_for_camera_suggestion_title" msgid="6500405261202883589">"Vula ikhamera ngokushesha"</string>
- <string name="double_tap_power_for_camera_suggestion_summary" msgid="7010153544554016996">"Cindezela inkinobho yamandla kabili ukuze uvule ikhamera"</string>
<string name="double_twist_for_camera_mode_title" msgid="4877834147983530479">"Jikisa ikhamera"</string>
<string name="double_twist_for_camera_mode_summary" msgid="122977081337563340"></string>
<string name="double_twist_for_camera_suggestion_title" msgid="4689410222517954869">"Zishude ngokushesha"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="default" msgid="447403641027147153">"Shintsha kabili ifoni ngemodi yokuzishuda"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="tablet" msgid="1724660290703318739">"Shintsha kabili ithebhulethi ngemodi yokuzishuda"</string>
- <string name="double_twist_for_camera_suggestion_summary" product="device" msgid="5980398380988039489">"Shintsha kabili idivayisi ngemodi yokuzishuda"</string>
<string name="ambient_display_title" product="default" msgid="5144814600610448504">"Thepha kabili ukuze uhlole ifoni"</string>
<string name="ambient_display_title" product="tablet" msgid="8688795028609563837">"Thepha kabili ukuze uhlole ithebulethi"</string>
<string name="ambient_display_title" product="device" msgid="3423781975742145894">"Thepha kabili ukuze uhlole idivayisi"</string>
<string name="ambient_display_summary" msgid="525662960806416373">"Ukuze uhlole isikhathi, izithonjana zesaziso, nolunye ulwazi, thepha kabili isikrini sakho."</string>
- <string name="ambient_display_suggestion_summary" msgid="5987443721392571847">"Hlola izaziso uma isikrini sivalekile"</string>
<string name="ambient_display_pickup_title" product="default" msgid="818688002837687268">"Phakamisa ukuze uhlole ifoni"</string>
<string name="ambient_display_pickup_title" product="tablet" msgid="4455864282995698097">"Phakamisa ukuze uhlole ithebulethi"</string>
<string name="ambient_display_pickup_title" product="device" msgid="5380534405773531175">"Phakamisa ukuze uhlole idivayisi"</string>
<string name="ambient_display_pickup_summary" product="default" msgid="4567020486787561873">"Ukuze uhlole isikhathi, izithonjana zesaziso, nolunye ulwazi, khetha ifoni yakho."</string>
<string name="ambient_display_pickup_summary" product="tablet" msgid="5435283849947236648">"Ukuze uhlole isikhathi, izithonjana zesaziso, nolunye ulwazi, khetha ithebhulethi yakho."</string>
<string name="ambient_display_pickup_summary" product="device" msgid="8256669101643381568">"Ukuze uhlole isikhathi, izithonjana zesaziso, nolunye ulwazi, khetha idivayisi yakho."</string>
- <string name="ambient_display_pickup_suggestion_summary" msgid="7014700589991761035">"Hlola izaziso uma isikrini sivalekile"</string>
<string name="fingerprint_swipe_for_notifications_title" msgid="5816346492253270243">"Swayipha izigxivizo zeminwe ukuze uthole izaziso"</string>
<string name="fingerprint_gesture_screen_title" msgid="8562169633234041196">"Swayipha izigxivizo zeminwe"</string>
<string name="fingerprint_swipe_for_notifications_summary" product="default" msgid="1770661868393713922">"Ukuze uhlole izaziso zakho, swayiphela phansi kunzwa yezigxivizo zeminwe ngemuva kwefoni yakho."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="tablet" msgid="902719947767712895">"Ukuze uhlole izaziso zakho, swayiphela phansi kunzwa yezigxivizo zeminwe ngemuva kwethebulethi yakho."</string>
<string name="fingerprint_swipe_for_notifications_summary" product="device" msgid="5372926094116306647">"Ukuze uhlole izaziso zakho, swayiphela phansi kunzwa yezigxivizo zeminwe ngemuva kwedivayisi yakho."</string>
<string name="fingerprint_swipe_for_notifications_suggestion_title" msgid="1677291167470357802">"Bona izaziso ngokushesha"</string>
- <string name="fingerprint_swipe_for_notifications_suggestion_summary" msgid="127592803294414082">"Swayiphela phansi kwinzwa yezigxivizo zeminwe"</string>
<string name="gesture_setting_on" msgid="3455094265233870280">"Kuvuliwe"</string>
<string name="gesture_setting_off" msgid="5230169535435881894">"Kuvaliwe"</string>
<string name="oem_unlock_enable_disabled_summary_bootloader_unlocked" msgid="4265541229765635629">"I-Bootloader isivele ivuliwe"</string>
@@ -3790,6 +3825,16 @@
<string name="disabled_low_ram_device" msgid="3751578499721173344">"Lesi sici asitholakali kule divayisi"</string>
<string name="enable_gnss_raw_meas_full_tracking" msgid="1294470289520660584">"Phoqa izikali ezigcwele ze-GNSS"</string>
<string name="enable_gnss_raw_meas_full_tracking_summary" msgid="496344699046454200">"Landelela onke ama-constellation nezimvamisa ngomjikelezo ongenawo umsebenzi"</string>
- <string name="storage_access" msgid="8905018810338984531">"Ukufinyelela kwesotoreji"</string>
- <string name="keywords_storage_access" msgid="3708874088152933579">"ukufinyelela kwesitoreji kuhleleke ngqo"</string>
+ <string name="show_first_crash_dialog" msgid="8889957119867262599">"Njalo bonisa ibhokisi lokusaphazeka"</string>
+ <string name="show_first_crash_dialog_summary" msgid="703224456285060428">"Bonisa ibhokisi njalo izinhlelo zokusebenza zisaphazeka"</string>
+ <string name="directory_access" msgid="4722237210725864244">"Ukufinyelela kuhla lwemibhalo"</string>
+ <string name="keywords_directory_access" msgid="360557532842445280">"ukufinyelela kuhla lwemibhalo"</string>
+ <string name="directory_on_volume" msgid="1246959267814974387">"<xliff:g id="VOLUME">%1$s</xliff:g> (<xliff:g id="DIRECTORY">%2$s</xliff:g>)"</string>
+ <string name="my_device_info_title" product="default" msgid="5512426315065239032">"Ifoni yami"</string>
+ <string name="my_device_info_title" product="tablet" msgid="7850936731324591758">"Ithebhulethi"</string>
+ <string name="my_device_info_title" product="device" msgid="5512071003076176919">"Idivayisi yami"</string>
+ <string name="my_device_info_account_preference_title" msgid="342933638925781861">"I-Akhawunti"</string>
+ <string name="my_device_info_device_name_preference_title" msgid="7104085224684165324">"Igama ledivayisi"</string>
+ <string name="bluetooth_on_while_driving_pref" msgid="2460847604498343330">"Sebenzisa i-Bluetooth uma ushayela"</string>
+ <string name="bluetooth_on_while_driving_summary" msgid="3196190732516898541">"Vula i-Bluetooth ngokuzenzakalelayo uma ushayela"</string>
</resources>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index 2d48e42..d37091c 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -162,4 +162,12 @@
<attr name="showPercentString" format="boolean" />
<attr name="thickness" format="dimension" />
</declare-styleable>
+
+ <!-- For TwoStatesButtonPreference -->
+ <declare-styleable name="TwoStateButtonPreference">
+ <attr name="textOn" format="reference" />
+ <attr name="textOff" format="reference" />
+ </declare-styleable>
+
+ <attr name="twoStateButtonPreferenceStyle" format="reference" />
</resources>
diff --git a/res/values/bools.xml b/res/values/bools.xml
index ab8a6fd..0cf085f 100644
--- a/res/values/bools.xml
+++ b/res/values/bools.xml
@@ -57,6 +57,12 @@
<!-- Whether toggle_airplane is available or not. -->
<bool name="config_show_toggle_airplane">true</bool>
+ <!-- Whether memory from app_info_settings is available or not. -->
+ <bool name="config_show_app_info_settings_memory">true</bool>
+
+ <!-- Whether battery from app_info_settings is available or not. -->
+ <bool name="config_show_app_info_settings_battery">true</bool>
+
<!-- Whether location mode is available or not. -->
<bool name="config_location_mode_available">true</bool>
@@ -158,4 +164,13 @@
<!-- Whether system_update_settings should be shown or not. -->
<bool name="config_show_system_update_settings">true</bool>
+
+ <!-- Whether device_model should be shown or not. -->
+ <bool name="config_show_device_model">true</bool>
+
+ <!-- Whether wifi_ip_address should be shown or not. -->
+ <bool name="config_show_wifi_ip_address">true</bool>
+
+ <!-- Whether wifi_mac_address should be shown or not. -->
+ <bool name="config_show_wifi_mac_address">true</bool>
</resources>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index e10b4cb..3d86208 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -30,8 +30,6 @@
<color name="divider_color">#20ffffff</color>
<color name="title_color">@android:color/holo_blue_light</color>
- <color name="setup_divider_color_dark">#33ffffff</color>
- <color name="setup_divider_color_light">#33000000</color>
<color name="setup_lock_pattern_view_regular_color_dark">#ffbdbdbd</color>
<color name="setup_lock_pattern_view_regular_color_light">@color/lock_pattern_view_regular_color</color>
<color name="setup_lock_pattern_view_success_color_dark">#ff84ffff</color>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 332deea..6ede7c6 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -22,7 +22,7 @@
<dimen name="action_bar_switch_padding">16dip</dimen>
<dimen name="app_icon_size">40dip</dimen>
- <dimen name="secondary_app_icon_size">24dp</dimen>
+ <dimen name="secondary_app_icon_size">32dp</dimen>
<dimen name="min_tap_target_size">48dp</dimen>
<dimen name="screen_margin_sides">64dip</dimen>
<dimen name="screen_margin_top">72dip</dimen>
@@ -110,7 +110,7 @@
<dimen name="dashboard_tile_foreground_image_inset">6dp</dimen>
<!-- Dashboard tile image margin start / end -->
- <dimen name="dashboard_tile_image_margin">24dp</dimen>
+ <dimen name="dashboard_tile_image_margin">18dp</dimen>
<!-- SwitchBar sub settings margin start / end -->
<dimen name="switchbar_subsettings_margin_start">72dp</dimen>
@@ -119,8 +119,8 @@
<!-- The following two margins need to match, with the caveat that
the second should be negative. The second one ensures that the icons and text
align despite the additional padding caused by the search bar's card background. -->
- <dimen name="search_bar_margin">8dp</dimen>
- <dimen name="search_bar_negative_margin">-8dp</dimen>
+ <dimen name="search_bar_margin">16dp</dimen>
+ <dimen name="search_bar_negative_margin">-16dp</dimen>
<dimen name="search_bar_height">48dp</dimen>
<dimen name="search_bar_corner_radius">2dp</dimen>
@@ -304,10 +304,8 @@
<!-- Suggestion cards size and padding -->
<dimen name="suggestion_card_icon_size">24dp</dimen>
- <dimen name="suggestion_card_width_one_card">328dp</dimen>
- <dimen name="suggestion_card_width_two_cards">158dp</dimen>
- <dimen name="suggestion_card_width_multiple_cards">152dp</dimen>
- <dimen name="suggestion_card_outer_margin">16dp</dimen>
+ <dimen name="suggestion_card_width_multiple_cards">156dp</dimen>
+ <dimen name="suggestion_card_outer_margin">14dp</dimen>
<dimen name="suggestion_card_inner_margin">12dp</dimen>
<dimen name="suggestion_card_padding_bottom_one_card">16dp</dimen>
<dimen name="suggestion_card_corner_radius">2dp</dimen>
diff --git a/res/values/ids.xml b/res/values/ids.xml
index dcf279a..66af163 100644
--- a/res/values/ids.xml
+++ b/res/values/ids.xml
@@ -17,7 +17,7 @@
*/
-->
<resources>
- <item type="id" name="preference_highlight_key" />
+ <item type="id" name="preference_highlighted" />
<item type="id" name="lock_none" />
<item type="id" name="lock_pin" />
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 8295a4a..86e538f 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1133,8 +1133,12 @@
<!-- Title for suggested actions for settings up a fingerprint lock [CHAR LIMIT=34] -->
<string name="suggested_fingerprint_lock_settings_title">Unlock with fingerprint</string>
- <!-- Summary for suggested actions for settings up a fingerprint lock -->
- <string name="suggested_fingerprint_lock_settings_summary">Unlock with your fingerprint</string>
+ <!-- Summary for suggested actions for settings up a fingerprint lock (tablet) -->
+ <string name="suggested_fingerprint_lock_settings_summary" product="tablet">Unlock with your fingerprint</string>
+ <!-- Summary for suggested actions for settings up a fingerprint lock (device) -->
+ <string name="suggested_fingerprint_lock_settings_summary" product="device">Unlock with your fingerprint</string>
+ <!-- Summary for suggested actions for settings up a fingerprint lock (phone) -->
+ <string name="suggested_fingerprint_lock_settings_summary" product="default">Unlock with your fingerprint</string>
<!-- Title for security picker to choose the unlock method: None/Pattern/PIN/Password [CHAR LIMIT=22] -->
<string name="lock_settings_picker_title">Choose screen lock</string>
@@ -1841,12 +1845,8 @@
<string name="wifi_configure_settings_preference_summary_wakeup_off">Wi\u2011Fi doesn\u0027t turn back on automatically</string>
<!-- Header for the list of wifi networks-->
<string name="wifi_access_points">Wi\u2011Fi networks</string>
- <!-- Menu option to do WPS Push Button [CHAR LIMIT=25]-->
- <string name="wifi_menu_wps_pbc">WPS Push Button</string>
<!-- Content description for menu button in Wifi setup. Not shown on the screen. [CHAR LIMIT=NONE] -->
<string name="wifi_menu_more_options">More options</string>
- <!-- Menu option to do WPS Pin Entry [CHAR LIMIT=25]-->
- <string name="wifi_menu_wps_pin">WPS Pin Entry</string>
<!-- Menu option to launch Wi-Fi Direct settings [CHAR LIMIT=20]-->
<string name="wifi_menu_p2p">Wi\u2011Fi Direct</string>
<!-- Menu option to scan Wi-Fi networks -->
@@ -1883,32 +1883,6 @@
<string name="wifi_advanced_toggle_description_expanded">Drop down list Advanced Options. Double-tap to collapse.</string>
<!-- Message for talkback to say when Advanced Options is collapsed [CHAR LIMIT=NONE] -->
<string name="wifi_advanced_toggle_description_collapsed">Drop down list Advanced Options. Double-tap to expand.</string>
- <!-- Title for the WPS setup dialog [CHAR LIMIT=50] -->
- <string name="wifi_wps_setup_title">Wi\u2011Fi Protected Setup</string>
- <!-- Message in WPS dialog at start up [CHAR LIMIT=150] -->
- <string name="wifi_wps_setup_msg">Starting WPS\u2026</string>
- <!-- Message in WPS dialog for PBC after start up [CHAR LIMIT=150] -->
- <string name="wifi_wps_onstart_pbc">Press the Wi\u2011Fi Protected Setup button on your router. It may be called \u201cWPS\u201d or marked with this symbol:</string>
- <!-- Message in WPS dialog for PIN after start up [CHAR LIMIT=150] -->
- <string name="wifi_wps_onstart_pin">Enter pin <xliff:g id="number">%1$s</xliff:g> on your Wi\u2011Fi router. The setup can take up to two minutes to complete.</string>
- <!-- Text displayed when WPS succeeds [CHAR LIMIT=150] -->
- <string name="wifi_wps_complete">WPS succeeded. Connecting to the network\u2026</string>
- <!-- Text displayed when Wi-Fi is connected through WPS [CHAR LIMIT=150] -->
- <string name="wifi_wps_connected">Connected to Wi\u2011Fi network <xliff:g id="network_name">%s</xliff:g></string>
- <!-- Text displayed when WPS setup is in progress [CHAR LIMIT=150] -->
- <string name="wifi_wps_in_progress">WPS is already in progress and can take up to two minutes to complete</string>
- <!-- Text displayed when WPS fails to start [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_generic">WPS failed. Please try again in a few minutes.</string>
- <!-- Text displayed when WPS fails due to WEP [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_wep">The wireless router security setting (WEP) is not supported</string>
- <!-- Text displayed when WPS fails to TKIP [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_tkip">The wireless router security setting (TKIP) is not supported</string>
- <!-- Text displayed when WPS fails due to authentication issues [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_auth">Authentication failure. Please try again.</string>
- <!-- Text displayed when WPS fails due to another session [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_overlap">Another WPS session was detected. Please try again in a few minutes.</string>
- <!-- Text displayed when WPS fails due to wifi disconnected [CHAR LIMIT=150] -->
- <string name="wifi_wps_failed_wifi_disconnected">Wi\u2011Fi disconnected. WPS setup canceled.</string>
<!-- Label for the SSID of the network -->
<string name="wifi_ssid">Network name</string>
<!-- Hint for a text field to enter the SSID of a hidden wifi network. [CHAR LIMIT=35] -->
@@ -2255,9 +2229,9 @@
<!-- Wireless networks, item title to go into the WFC settings [CHAR LIMIT=30] -->
<string name="wifi_calling_settings_title">Wi-Fi calling</string>
<!-- Title of suggestion to turn on wifi calling [CHAR LIMIT=30] -->
- <string name="wifi_calling_suggestion_title">Turn on Wi-Fi Calling</string>
+ <string name="wifi_calling_suggestion_title">Extend call coverage with Wi\u2011Fi</string>
<!-- Summary of suggestion to turn on wifi calling [CHAR LIMIT=60] -->
- <string name="wifi_calling_suggestion_summary">Extend coverage by calling over Wi-Fi</string>
+ <string name="wifi_calling_suggestion_summary">Turn on Wi\u2011Fi calling</string>
<!-- Title of WFC preference item [CHAR LIMIT=30] -->
<string name="wifi_calling_mode_title">Calling preference</string>
<!-- Title of WFC preference selection dialog [CHAR LIMIT=30] -->
@@ -2419,13 +2393,6 @@
<!-- Main Settings screen, setting option name to go into search settings -->
<string name="search_settings">Search</string>
- <!-- Main Settings screen, setting option summary to go into search settings -->
- <string name="search_settings_summary">Manage search settings and history</string>
- <!-- There are no search results for the user's search [CHAR LIMIT=NONE]-->
- <string name="search_settings_no_results">No results</string>
-
- <!-- Button to clear all search history in Settings [CHAR LIMIT=40]-->
- <string name="search_clear_history">Clear history</string>
<!-- Display settings --><skip/>
<!-- Sound & display settings screen, section header for settings related to display -->
@@ -2579,6 +2546,7 @@
<!-- [CHAR LIMIT=30] Title of the preference that opens the Ambient display settings screen. -->
<string name="ambient_display_screen_title">Ambient display</string>
+
<!-- [CHAR LIMIT=50] Summary of the preference that opens the Ambient display settings screen, when Ambient display is set to be always on -->
<string name="ambient_display_screen_summary_always_on">Always on / Increased battery usage</string>
<!-- [CHAR LIMIT=30] Summary of the preference that opens the Ambient display settings screen, when Ambient display is set to show when new notifications come in. -->
@@ -4426,6 +4394,12 @@
<string name="accessibility_autoclick_preference_title">Click after pointer stops moving</string>
<!-- Title for accessibility preference for configuring amount of time that has to pass after pointer stops moving before click action can be performed (if automatic click after pointer stops moving feature is enabled). [CHAR LIMIT=NONE] -->
<string name="accessibility_autoclick_delay_preference_title">Delay before click</string>
+ <!-- Title for accessibility preference screen for configuring vibrations. -->
+ <string name="accessibility_vibration_settings_title">Vibration</string>
+ <!-- Title for accessibility preference for configuring notification vibrations. -->
+ <string name="accessibility_notification_vibration_title">Ring & notification vibration</string>
+ <!-- Title for accessibility preference for configuring touch feedback vibrations. -->
+ <string name="accessibility_touch_vibration_title">Touch vibration</string>
<!-- Used in the acessibilty service settings to control turning on/off the service entirely -->
<string name="accessibility_service_master_switch_title">Use service</string>
<!-- Used in the Color correction settings screen to control turning on/off the feature entirely -->
@@ -4469,6 +4443,30 @@
<item quantity="other">Very long delay (<xliff:g id="click_delay_label" example="200">%1$d</xliff:g> ms)</item>
</plurals>
+ <!-- Summary for vibration settings preference when ring & notification are set to off-->
+ <string name="accessibility_vibration_summary_off">Ring & notification set to off</string>
+
+ <!-- Summary for vibration settings preference when ring & notification are set to low-->
+ <string name="accessibility_vibration_summary_low">Ring & notification set to low</string>
+
+ <!-- Summary for vibration settings preference when ring & notification are set to medium-->
+ <string name="accessibility_vibration_summary_medium">Ring & notification set to medium</string>
+
+ <!-- Summary for vibration settings preference when ring & notification are set to high-->
+ <string name="accessibility_vibration_summary_high">Ring & notification set to high</string>
+
+ <!-- Label describing an option turning vibrations off. [CHAR LIMIT=15] -->
+ <string name="accessibility_vibration_intensity_off">Off</string>
+
+ <!-- Label describing a low intensity vibration option. [CHAR LIMIT=15] -->
+ <string name="accessibility_vibration_intensity_low">Low</string>
+
+ <!-- Label describing a medium intensity vibration option. [CHAR LIMIT=15] -->
+ <string name="accessibility_vibration_intensity_medium">Medium</string>
+
+ <!-- Label describing a high intensity vibration option. [CHAR LIMIT=15] -->
+ <string name="accessibility_vibration_intensity_high">High</string>
+
<!-- Title for accessibility menu item to lauch a settings activity. [CHAR LIMIT=15] -->
<string name="accessibility_menu_item_settings">Settings</string>
@@ -4837,6 +4835,41 @@
<string name="battery_tip_dialog_message" product="tablet">Your tablet was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your tablet was used for about <xliff:g id="hour">%1$s</xliff:g> since last full charge.\n\n Total usage:</string>
<!-- Message for battery tip dialog to show the status about the battery [CHAR LIMIT=NONE] -->
<string name="battery_tip_dialog_message" product="device">Your device was used heavily and this consumed a lot of battery. Your battery is behaving normally.\n\n Your device was used for about <xliff:g id="hour">%1$s</xliff:g> since last full charge.\n\n Total usage:</string>
+ <!-- Title for restricted app preference, showing how many app need to be restricted [CHAR LIMIT=NONE] -->
+ <plurals name="battery_tip_restrict_title">
+ <item quantity="one">Restrict %1$d app</item>
+ <item quantity="other">Restrict %1$d apps</item>
+ </plurals>
+ <!-- Title for restricted app preference, showing how many app been restricted [CHAR LIMIT=NONE] -->
+ <plurals name="battery_tip_restrict_handled_title">
+ <item quantity="one">%1$d recently restricted</item>
+ <item quantity="other">%1$d apps recently restricted</item>
+ </plurals>
+ <!-- Summary for restricted app preference, showing the impact of the apps [CHAR LIMIT=NONE] -->
+ <plurals name="battery_tip_restrict_summary">
+ <item quantity="one">%1$s has high battery usage</item>
+ <item quantity="other">%2$d apps have high battery usage</item>
+ </plurals>
+ <!-- Summary for restricted app preference, showing the impact of the apps [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_restrict_handled_summary">App changes are in progress</string>
+
+ <!-- Title for dialog to restrict the app [CHAR LIMIT=NONE] -->
+ <plurals name="battery_tip_restrict_app_dialog_title">
+ <item quantity="one">Restrict app?</item>
+ <item quantity="other">Restrict %1$d apps?</item>
+ </plurals>
+ <!-- Message for battery tip dialog to show the restrict app list [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_restrict_app_dialog_message">To save battery, you can stop this app from running in the background when it’s not being used.</string>
+ <!-- OK button for battery tip dialog to show the restrict app list [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_restrict_app_dialog_ok">Restrict</string>
+ <!-- Title for dialog to remove restriction for the app [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_unrestrict_app_dialog_title">Remove restriction for <xliff:g id="app">%1$s</xliff:g>?</string>
+ <!-- Message for dialog to show the impact if remove restriction for app [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_unrestrict_app_dialog_message">This app will be able to use battery in the background. This may cause your battery to be used up faster.</string>
+ <!-- OK button for dialog to remove restriction for app [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_unrestrict_app_dialog_ok">Remove</string>
+ <!-- CANCEL button for dialog to remove restriction for app [CHAR LIMIT=NONE] -->
+ <string name="battery_tip_unrestrict_app_dialog_cancel">Not now</string>
<!-- Title for the smart battery manager preference [CHAR LIMIT=NONE] -->
<string name="smart_battery_manager_title">Smart battery manager</string>
@@ -5070,6 +5103,9 @@
<!-- Title for the battery management group [CHAR LIMIT=40] -->
<string name ="battery_detail_manage_title">Manage battery usage</string>
+ <!-- Graph subtext displayed to user when enhanced battery estimate is being used [CHAR LIMIT=120] -->
+ <string name="advanced_battery_graph_subtext">Battery left estimate is based on your device usage</string>
+
<!-- Description for battery time left, i.e. 50min Estimated time left. [CHAR LIMIT=80]-->
<string name="estimated_time_left">Estimated time left</string>
@@ -5096,8 +5132,17 @@
<!-- Label for dex2oat process in battery usage used for the optimization of one or more apps -->
<string name="process_dex2oat_label">App optimization</string>
- <!-- [CHAR_LIMIT=40] Battery saver: Label for feature, title + menu item -->
- <string name="battery_saver">Battery Saver</string>
+ <!-- Battery saver: Label for feature, title + menu item [CHAR_LIMIT=40] -->
+ <string name="battery_saver">Reduced power mode</string>
+
+ <!-- Battery saver: Label for preference to turn on battery saver automatically when battery is low [CHAR_LIMIT=40] -->
+ <string name="battery_saver_auto_title">Schedule</string>
+
+ <!-- Battery saver: Summary for preference to turn on battery saver automatically when battery is low [CHAR_LIMIT=40] -->
+ <string name="battery_saver_auto_summary">Turn on Reduced power mode automatically when battery is low</string>
+
+ <!-- Battery saver: Label for seekbar to change battery saver threshold [CHAR_LIMIT=40] -->
+ <string name="battery_saver_seekbar_title">Turn on automatically at <xliff:g id="percent">%1$s</xliff:g></string>
<!-- Used in the Battery Saver settings screen to control turning on/off the feature entirely -->
<string name="battery_saver_master_switch_title">Use Battery Saver</string>
@@ -5700,9 +5745,6 @@
<!-- action to select all [CHAR LIMIT=30] -->
<string name="select_all">Select all</string>
- <!-- A button that gets displayed in data plan usage preference in settings page to manage data plans [CHAR LIMIT=25] -->
- <string name="data_plan_usage_manage_plans_button_text">Manage plans</string>
-
<!-- Activity title for network data usage summary. [CHAR LIMIT=25] -->
<string name="data_usage_summary_title">Data usage</string>
<!-- Activity title for Appk data usage summary. [CHAR LIMIT=25] -->
@@ -5802,6 +5844,8 @@
<string name="data_usage_enable_3g">2G-3G data</string>
<!-- Toggle switch title for enabling 4G data network connection. [CHAR LIMIT=32] -->
<string name="data_usage_enable_4g">4G data</string>
+ <!-- Toggle switch title for enabling roaming on the primary data SIM card. [CHAR LIMIT=32] -->
+ <string name="data_roaming_enable_mobile">Roaming</string>
<!-- Data Usage Foreground label. [CHAR LIMIT=40] -->
<string name="data_usage_forground_label">Foreground:</string>
@@ -6140,7 +6184,7 @@
<!-- User settings -->
<skip/>
- <!-- User settings screen title [CHAR LIMIT=25] -->
+ <!-- User settings screen title [CHAR LIMIT=40] -->
<string name="user_settings_title">Multiple users</string>
<!-- User settings header for list of users and profiles [CHAR LIMIT=40] -->
<string name="user_list_title">Users & profiles</string>
@@ -6434,6 +6478,7 @@
<string name="help_uri_process_stats_apps" translatable="false"></string>
<string name="help_uri_private_dns" translatable="false"></string>
<string name="help_uri_about_phone_v2" translatable="false"></string>
+ <string name="help_uri_wifi_calling" translatable="false"></string>
<!-- User account title [CHAR LIMIT=30] -->
<string name="user_account_title">Account for content</string>
@@ -6645,8 +6690,10 @@
<string name="app_and_notification_dashboard_title">Apps & notifications</string>
<!-- Summary for Apps & Notification settings, explaining a few important settings under it [CHAR LIMIT=NONE]-->
<string name="app_and_notification_dashboard_summary">Permissions, default apps</string>
- <!-- Title for setting tile leading to User and accounts settings [CHAR LIMIT=40]-->
- <string name="account_dashboard_title">Users & accounts</string>
+ <!-- Title for setting tile leading to account settings [CHAR LIMIT=40]-->
+ <string name="account_dashboard_title">Accounts</string>
+ <!-- Summary for account settings tiles when there is no accounts on device [CHAR LIMIT=NONE]-->
+ <string name="account_dashboard_default_summary">No accounts added</string>
<!-- Title for setting tile leading to setting UI which allows user set default app to
handle actions such as open web page, making phone calls, default SMS apps [CHAR LIMIT=40]-->
<string name="app_default_dashboard_title">Default apps</string>
@@ -6714,6 +6761,8 @@
<string name="keywords_sim_status">network, mobile network state, service state, signal strength, mobile network type, roaming, iccid</string>
<string name="keywords_model_and_hardware">serial number, hardware version</string>
<string name="keywords_android_version">android security patch level, baseband version, kernel version</string>
+ <!-- Search keyword for Ambient display settings screen. -->
+ <string name="keywords_ambient_display_screen">Ambient display, Lock screen display</string>
<!-- NFC Wi-Fi pairing/setup strings-->
@@ -6928,6 +6977,21 @@
<!-- [CHAR LIMIT=20] Accessibility string for current zen mode and selected exit condition. A template that simply concatenates existing mode string and the current condition description. -->
<string name="zen_mode_and_condition"><xliff:g id="zen_mode" example="Priority interruptions only">%1$s</xliff:g>. <xliff:g id="exit_condition" example="For one hour">%2$s</xliff:g></string>
+ <!-- Sound settings screen, summary format of do not disturb when on. [CHAR LIMIT=NONE] -->
+ <string name="zen_mode_sound_summary_on">On / <xliff:g name="dnd_summary" example="No sound except alarms and media">%1$s</xliff:g></string>
+
+ <!-- Sound settings screen, summary format of do not disturb when off with extra information. [CHAR LIMIT=NONE] -->
+ <string name="zen_mode_sound_summary_off_with_info">Off / <xliff:g name="dnd_summary" example="1 rule can turn on automatically">%1$s</xliff:g></string>
+
+ <!-- Sound settings screen, summary format of do not disturb when off with no extra information. [CHAR LIMIT=NONE] -->
+ <string name="zen_mode_sound_summary_off">Off</string>
+
+ <!-- Summary for the Sound Do not Disturb option when at least one automatic rules is enabled. [CHAR LIMIT=NONE]-->
+ <plurals name="zen_mode_sound_summary_summary_off_info">
+ <item quantity="one">1 rule can turn on automatically</item>
+ <item quantity="other"><xliff:g id="on_count" example="3">%d</xliff:g> rules can turn on automatically</item>
+ </plurals>
+
<!-- Work Sounds: Work sound settings section header. [CHAR LIMIT=50] -->
<string name="sound_work_settings">Work profile sounds</string>
@@ -6976,6 +7040,9 @@
<!-- notification header - apps that have recently sent notifications -->
<string name="recent_notifications">Recently sent</string>
+ <!-- Preference title for showing all apps on device [CHAR_LIMIT=50]-->
+ <string name="recent_notifications_see_all_title">See all apps</string>
+
<!-- Configure Notifications: Advanced section header [CHAR LIMIT=30] -->
<string name="advanced_section_header">Advanced</string>
@@ -6989,7 +7056,7 @@
<string name="notification_pulse_title">Blink light</string>
<!-- Configure Notifications: Title for the option controlling notifications on the lockscreen. [CHAR LIMIT=30] -->
- <string name="lock_screen_notifications_title">On the lock screen</string>
+ <string name="lock_screen_notifications_title">On lock screen</string>
<!-- Configure Notifications: Value for lockscreen notifications: all information will be
shown in notifications shown on a secure lock screen
@@ -6999,7 +7066,7 @@
<!-- Configure Notifications: Value for lockscreen notifications: sensitive information will be
hidden or redacted from notifications shown on a secure lock screen
[CHAR LIMIT=50] -->
- <string name="lock_screen_notifications_summary_hide">Hide sensitive notification content</string>
+ <string name="lock_screen_notifications_summary_hide">Hide sensitive content</string>
<!-- Configure Notifications: Value for lockscreen notifications: notifications will not appear on a secure lock screen
[CHAR LIMIT=50] -->
@@ -7019,7 +7086,7 @@
<!-- Configure Notifications: Value for lockscreen notifications: sensitive information will be
hidden or redacted from work notifications shown on a secure lock screen
[CHAR LIMIT=50] -->
- <string name="lock_screen_notifications_summary_hide_profile">Hide sensitive work notification content</string>
+ <string name="lock_screen_notifications_summary_hide_profile">Hide sensitive work content</string>
<!-- Configure Notifications: Value for lockscreen notifications: work notifications will not appear on a secure lock screen
[CHAR LIMIT=50] -->
@@ -7059,10 +7126,10 @@
summary on the channel page-->
<!-- [CHAR LIMIT=100] Notification Importance: min importance level description -->
- <string name="notification_importance_min">No sound or visual interruption</string>
+ <string name="notification_importance_min">Show silently and minimize</string>
<!-- [CHAR LIMIT=100] Notification Importance: low importance level description -->
- <string name="notification_importance_low">No sound</string>
+ <string name="notification_importance_low">Show silently</string>
<!-- [CHAR LIMIT=100] Notification Importance: normal importance level description -->
<string name="notification_importance_default">Make sound</string>
@@ -7279,7 +7346,7 @@
<string name="app_notification_override_dnd_summary">Let these notifications continue to interrupt when Do Not Disturb is set to Priority Only</string>
<!-- [CHAR LIMIT=NONE] App notification settings: Visibility override option title -->
- <string name="app_notification_visibility_override_title">On the lock screen</string>
+ <string name="app_notification_visibility_override_title">On lock screen</string>
<!-- [CHAR LIMIT=20] Notification settings: App notifications row summary when allowed -->
<string name="app_notification_row_banned">Blocked</string>
@@ -7993,15 +8060,15 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for powering the other device only. -->
- <string name="usb_use_power_only">Supply power</string>
+ <string name="usb_use_power_only">Charging connected device</string>
<!-- Decription of one of the choices in a dialog (with title defined in usb_use) that lets the
user select what the USB connection for this device should be used for. This choice
is for powering the other device. -->
- <string name="usb_use_power_only_desc">Charge the connected device. Works only with devices that support USB charging.</string>
+ <string name="usb_use_power_only_desc">Other settings unavailable when turned on</string>
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring files via MTP. -->
- <string name="usb_use_file_transfers">Transfer files</string>
+ <string name="usb_use_file_transfers">File Transfer</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring files via MTP. -->
@@ -8009,23 +8076,31 @@
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring photos via PTP. -->
- <string name="usb_use_photo_transfers">Transfer photos (PTP)</string>
+ <string name="usb_use_photo_transfers">PTP</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for transferring photos via PTP. -->
<string name="usb_use_photo_transfers_desc">Transfer photos or files if MTP is not supported (PTP)</string>
<!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
+ is for USB tethering. -->
+ <string name="usb_use_tethering">USB tethering</string>
+ <!-- Title of one of the choices in a dialog (with title defined in usb_use) that lets the user
+ select what the USB connection for this device should be used for. This choice
is for entering MIDI mode. -->
- <string name="usb_use_MIDI">Use device as MIDI</string>
+ <string name="usb_use_MIDI">MIDI</string>
<!-- Description of one of the choices in a dialog (with title defined in usb_use) that lets the user
select what the USB connection for this device should be used for. This choice
is for entering MIDI mode. -->
<string name="usb_use_MIDI_desc">Use this device as MIDI</string>
<!-- The title used in a dialog which lets the user select what the USB connection
- for this device should be used for. Choices are usb_use_charging_only,
- usb_use_file_transfer, use_use_photo_transfer, and usb_use_MIDI -->
- <string name="usb_use">Use USB to</string>
+ for this device should be used for. These options are more commonly used.
+ Choices are usb_use_file_transfer.-->
+ <string name="usb_use">Use USB for</string>
+ <!-- The title used in a dialog which lets the user select what the USB connection
+ for this device should be used for. These options are less commonly used.
+ Choices are usb_use_tethering, usb_use_photo_transfers, usb_use_MIDI, and usb_use_power_only.-->
+ <string name="usb_use_also">Also use USB for</string>
<!-- Settings item title for USB preference [CHAR LIMIT=35] -->
<string name="usb_pref">USB</string>
@@ -8033,13 +8108,27 @@
<!-- Settings item summary for USB preference when set to charging only [CHAR LIMIT=NONE] -->
<string name="usb_summary_charging_only">Charging this device</string>
<!-- Settings item summary for USB preference when set to powering the other device only [CHAR LIMIT=NONE] -->
- <string name="usb_summary_power_only">Supplying power</string>
+ <string name="usb_summary_power_only">Charging connected device</string>
<!-- Settings item summary for USB preference when set to transferring files via MTP [CHAR LIMIT=NONE] -->
- <string name="usb_summary_file_transfers">Transferring files</string>
+ <string name="usb_summary_file_transfers">File transfer</string>
+ <!-- Settings item summary for USB preference when set to USB tethering [CHAR LIMIT=NONE] -->
+ <string name="usb_summary_tether">USB tethering</string>
<!-- Settings item summary for USB preference when set to transferring photos via PTP [CHAR LIMIT=NONE] -->
- <string name="usb_summary_photo_transfers">Transferring photos (PTP)</string>
+ <string name="usb_summary_photo_transfers">PTP</string>
<!-- Settings item summary for USB preference when set to entering MIDI mode [CHAR LIMIT=NONE] -->
- <string name="usb_summary_MIDI">Using device as MIDI</string>
+ <string name="usb_summary_MIDI">MIDI</string>
+ <!-- Settings item summary for USB preference when set to transferring files via MTP
+ and powering other device [CHAR LIMIT=NONE] -->
+ <string name="usb_summary_file_transfers_power">File transfer and supplying power</string>
+ <!-- Settings item summary for USB preference when set to USB tethering
+ and powering other device [CHAR LIMIT=NONE] -->
+ <string name="usb_summary_tether_power">USB tethering and supplying power</string>
+ <!-- Settings item summary for USB preference when set to transferring photos via PTP
+ and powering other device [CHAR LIMIT=NONE] -->
+ <string name="usb_summary_photo_transfers_power">PTP and supplying power</string>
+ <!-- Settings item summary for USB preference when set to entering MIDI mode
+ and powering other device [CHAR LIMIT=NONE] -->
+ <string name="usb_summary_MIDI_power">MIDI and supplying power</string>
<!-- Settings item title for SMS Mirroring preference [CHAR LIMIT=35] -->
<string name="sms_mirroring_pref">SMS Mirroring</string>
@@ -8318,9 +8407,6 @@
<!-- Summary of memory screen [CHAR LIMIT=NONE] -->
<string name="memory_summary">Avg <xliff:g id="used_memory" example="1.7GB">%1$s</xliff:g> of <xliff:g id="total_memory" example="2GB">%2$s</xliff:g> memory used</string>
- <!-- Summary of Users & accounts setting screen [CHAR LIMIT=NONE] -->
- <string name="users_and_accounts_summary">Current user: <xliff:g id="user_name" example="Jason">%1$s</xliff:g></string>
-
<!-- Summary of User settings [CHAR LIMIT=NONE] -->
<string name="users_summary">Signed in as <xliff:g id="user_name" example="Jason">%1$s</xliff:g></string>
@@ -8336,8 +8422,10 @@
<!-- Backup disabled summary [CHAR LIMIT=NONE] -->
<string name="backup_disabled">Back up disabled</string>
- <!-- Summary of device info page [CHAR LIMIT=NONE] -->
- <string name="about_summary">Updated to Android <xliff:g id="version" example="6.0">%1$s</xliff:g></string>
+ <!-- Summary of Android version info [CHAR LIMIT=NONE] -->
+ <string name="android_version_summary">Updated to Android <xliff:g id="version" example="6.0">%1$s</xliff:g></string>
+ <!-- Summary of Android version info (when there is a pending upgrade available) [CHAR LIMIT=NONE] -->
+ <string name="android_version_pending_update_summary">Update available</string>
<!-- Title for dialog displayed when user clicks on a setting locked by an admin [CHAR LIMIT=30] -->
<string name="disabled_by_policy_title">Action not allowed</string>
@@ -8395,8 +8483,8 @@
<!-- Summary of condition that airplane mode is on [CHAR LIMIT=NONE] -->
<string name="condition_airplane_summary">Wi-Fi, Bluetooth, and mobile network are turned off. You can\'t make phone calls or connect to the internet.</string>
- <!-- Title of condition that do not disturb is on [CHAR LIMIT=30] -->
- <string name="condition_zen_title">Do not disturb is on (<xliff:g name="zen_mode_type" example="Alarms only">%1$s</xliff:g>)</string>
+ <!-- Title of condition that do not disturb is on [CHAR LIMIT=36] -->
+ <string name="condition_zen_title">Do Not Disturb is on</string>
<!-- Title of condition that battery saver is on [CHAR LIMIT=30] -->
<string name="condition_battery_title">Battery Saver is on</string>
@@ -8570,6 +8658,27 @@
<item quantity="other"><xliff:g id="count" example="10">%1$d</xliff:g> apps allowed to use unrestricted data when Data Saver is on</item>
</plurals>
+ <!-- Data usage title text [CHAR LIMIT=30] -->
+ <string name="data_usage_title">Primary data</string>
+
+ <!-- Data usage string [CHAR LIMIT=30] -->
+ <string name="data_used"><xliff:g name="bytes" example="2 GB">^1</xliff:g> used</string>
+
+ <!-- Optional part of data usage showing the remaining amount [CHAR LIMIT=30] -->
+ <string name="data_remaining"><xliff:g name="bytes" example="2 GB">, ^1</xliff:g> left</string>
+
+ <!-- Informational text about time left in billing cycle [CHAR LIMIT=30] -->
+ <string name="cycle_left_time_text"><xliff:g name="time" example="2d">%1$s</xliff:g> left in this cycle</string>
+
+ <!-- Informational text about carrier and update time [CHAR LIMIT=30] -->
+ <string name="carrier_and_update_text">Updated by <xliff:g name="carrier" example="T-mobile">%1$s</xliff:g> <xliff:g name="time" example="3m">%2$s</xliff:g></string>
+
+ <!-- Informational text about update time only, without carrier [CHAR LIMIT=30] -->
+ <string name="no_carrier_update_text">Updated <xliff:g name="time" example="3m">%1$s</xliff:g></string>
+
+ <!-- Button to launch external data plan app [CHAR LIMIT=30] -->
+ <string name="launch_mdp_app_text">VIEW PLAN</string>
+
<!-- Name of Data Saver screens [CHAR LIMIT=30] -->
<string name="data_saver_title">Data saver</string>
@@ -8627,6 +8736,12 @@
<!-- [CHAR_LIMIT=NONE] Battery saver: Description for automatic entry option: pct% battery -->
<string name="battery_saver_desc_turn_on_auto_pct">Turn on automatically at %1$s battery</string>
+ <!-- Battery saver: Label for button that will turn on battery saver. [CHAR LIMIT=30] -->
+ <string name="battery_saver_button_turn_on">Turn on now</string>
+
+ <!-- Battery saver: Label for button that will turn off battery saver. [CHAR LIMIT=30] -->
+ <string name="battery_saver_button_turn_off">Turn off now</string>
+
<!-- [CHAR_LIMIT=NONE] Label for when app is ignoring battery optimizations -->
<string name="not_battery_optimizing">Not using battery optimization</string>
@@ -8780,6 +8895,9 @@
<!-- [CHAR LIMIT=25] Title of developer tile to toggle layer trace -->
<string name="layer_trace_quick_settings_title">Surface Trace</string>
+ <!-- Template for formatting country and language. eg Canada - French [CHAR LIMIT=NONE]-->
+ <string name="support_country_format"><xliff:g id="country" example="Canada">%1$s</xliff:g> - <xliff:g id="language" example="French">%2$s</xliff:g></string>
+
<!-- [CHAR LIMIT=60] Title of work profile setting page -->
<string name="managed_profile_settings_title">Work profile settings</string>
<!-- [CHAR LIMIT=60] The preference title for enabling cross-profile remote contact search -->
@@ -9178,6 +9296,9 @@
<!-- Help URI, USB Audio [DO NOT TRANSLATE] -->
<string name="help_url_audio_accessory_not_supported" translatable="false"></string>
+ <!-- Help URI, battery saver page [DO NOT TRANSLATE] -->
+ <string name="help_url_battery_saver_settings" translatable="false"></string>
+
<!-- Title label for new device suggestion, which is displayed in Settings homepage [CHAR LIMIT=100] -->
<string name="new_device_suggestion_title">What\'s new and exciting?</string>
@@ -9242,4 +9363,6 @@
<!-- Settings item summary for automatic Bluetooth on while driving preference [CHAR LIMIT=100] -->
<string name="bluetooth_on_while_driving_summary">Turn on Bluetooth automatically when driving</string>
+ <!-- Title for item to go to old battery settings page when clicking [CHAR LIMIT=100] -->
+ <string name="dev_android_o_battery_settings_title">See Android 8.0 battery settings</string>
</resources>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index b672247..b436355 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -318,7 +318,6 @@
<style name="TextAppearance.SuggestionHeader"
parent="@android:style/TextAppearance.Material.Subhead">
- <item name="android:fontFamily">@config/config_headlineFontFamilyMedium</item>
<item name="android:textSize">14sp</item>
<item name="android:textColor">?android:attr/colorAccent</item>
</style>
@@ -334,12 +333,7 @@
<style name="TextAppearance.SuggestionTitle"
parent="@android:style/TextAppearance.Material.Subhead">
- <item name="android:fontFamily">sans-serif-medium</item>
- </style>
-
- <style name="TextAppearance.SuggestionTitleV2"
- parent="@android:style/TextAppearance.Material.Subhead">
- <item name="android:fontFamily">@config/config_headlineFontFamily</item>
+ <item name="android:textSize">16sp</item>
</style>
<style name="TextAppearance.SuggestionSummary" parent="TextAppearance.Small">
@@ -474,7 +468,6 @@
<style name="TextAppearance.SearchBar" parent="@android:style/TextAppearance.Material.Widget.Toolbar.Subtitle">
<item name="android:textSize">@dimen/search_bar_text_size</item>
- <item name="android:fontFamily">@config/config_headlineFontFamily</item>
</style>
<style name="device_info_dialog_label">
diff --git a/res/values/styles_preference.xml b/res/values/styles_preference.xml
index 056d55a..5fe1ef4 100644
--- a/res/values/styles_preference.xml
+++ b/res/values/styles_preference.xml
@@ -36,4 +36,8 @@
<item name="android:widgetLayout">@layout/preference_widget_sync_toggle</item>
</style>
+ <style name="TwoStateButtonPreference" parent="Preference.SettingsBase">
+ <item name="android:layout">@layout/two_state_button</item>
+ </style>
+
</resources>
\ No newline at end of file
diff --git a/res/values/themes.xml b/res/values/themes.xml
index d4ccdde..a8ceca3 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -17,8 +17,6 @@
<resources>
<attr name="fingerprint_layout_theme" format="reference" />
<attr name="ic_menu_moreoverflow" format="reference" />
- <attr name="ic_wps" format="reference" />
- <attr name="setup_divider_color" format="reference" />
<attr name="side_margin" format="reference|dimension" />
<attr name="wifi_signal_color" format="reference" />
@@ -29,8 +27,6 @@
<item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
<item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
<item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
- <item name="ic_wps">@drawable/ic_wps_dark</item>
- <item name="setup_divider_color">@color/setup_divider_color_dark</item>
<item name="side_margin">0dip</item>
<item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>
<item name="wifi_signal">@drawable/wifi_signal</item>
@@ -49,8 +45,6 @@
<item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
<item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
<item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
- <item name="ic_wps">@drawable/ic_wps_light</item>
- <item name="setup_divider_color">@color/setup_divider_color_light</item>
<item name="side_margin">0dip</item>
<item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>
<item name="wifi_signal">@drawable/wifi_signal</item>
@@ -68,8 +62,6 @@
<item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
<item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
<item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
- <item name="ic_wps">@drawable/ic_wps_dark</item>
- <item name="setup_divider_color">@color/setup_divider_color_dark</item>
<item name="side_margin">0dip</item>
<item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>
<item name="wifi_signal">@drawable/wifi_signal</item>
@@ -88,8 +80,41 @@
<item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
<item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
<item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
- <item name="ic_wps">@drawable/ic_wps_light</item>
- <item name="setup_divider_color">@color/setup_divider_color_light</item>
+ <item name="side_margin">0dip</item>
+ <item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>
+ <item name="wifi_signal">@drawable/wifi_signal</item>
+ <item name="wifi_friction">@drawable/wifi_friction</item>
+ <item name="preferenceBackgroundColor">?android:attr/colorBackground</item>
+ <item name="preferenceTheme">@style/PreferenceTheme.SetupWizard</item>
+
+ <item name="*android:lockPatternStyle">@style/LockPatternStyle.Setup</item>
+ </style>
+
+ <style name="GlifV3Theme" parent="SuwThemeGlifV3">
+ <!-- For all Alert Dialogs -->
+ <item name="android:alertDialogTheme">@style/GlifV2ThemeAlertDialog</item>
+ <item name="android:windowBackground">?android:attr/colorBackground</item>
+ <item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
+ <item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
+ <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
+ <item name="side_margin">0dip</item>
+ <item name="wifi_signal_color">@color/setup_wizard_wifi_color_dark</item>
+ <item name="wifi_signal">@drawable/wifi_signal</item>
+ <item name="wifi_friction">@drawable/wifi_friction</item>
+ <item name="preferenceBackgroundColor">?android:attr/colorBackground</item>
+ <item name="preferenceTheme">@style/PreferenceTheme.SetupWizard</item>
+
+ <!-- LockPatternView colors -->
+ <item name="*android:lockPatternStyle">@style/LockPatternStyle.Setup</item>
+ </style>
+
+ <style name="GlifV3Theme.Light" parent="SuwThemeGlifV3.Light">
+ <!-- For all Alert Dialogs -->
+ <item name="android:alertDialogTheme">@style/GlifV2ThemeAlertDialog.Light</item>
+ <item name="android:windowBackground">?android:attr/colorBackground</item>
+ <item name="*android:preferencePanelStyle">@*android:style/PreferencePanel.Dialog</item>
+ <item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
+ <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_material</item>
<item name="side_margin">0dip</item>
<item name="wifi_signal_color">@color/setup_wizard_wifi_color_light</item>
<item name="wifi_signal">@drawable/wifi_signal</item>
@@ -128,6 +153,20 @@
<item name="android:windowAnimationStyle">@null</item>
</style>
+ <style name="GlifV3Theme.Transparent">
+ <item name="android:windowBackground">@android:color/transparent</item>
+ <item name="android:windowNoTitle">true</item>
+ <item name="android:windowIsFloating">true</item>
+ <item name="android:windowAnimationStyle">@null</item>
+ </style>
+
+ <style name="GlifV3Theme.Light.Transparent">
+ <item name="android:windowBackground">@android:color/transparent</item>
+ <item name="android:windowNoTitle">true</item>
+ <item name="android:windowIsFloating">true</item>
+ <item name="android:windowAnimationStyle">@null</item>
+ </style>
+
<style name="SuwSuggestionThemeGlif.Light" parent="SuwThemeGlif.Light">
<item name="android:windowAnimationStyle">@android:style/Animation.Activity</item>
@@ -137,6 +176,7 @@
<item name="preferenceFragmentStyle">@style/SettingsPreferenceFragmentStyle</item>
<item name="apnPreferenceStyle">@style/ApnPreference</item>
<item name="seekBarPreferenceStyle">@style/SettingsSeekBarPreference</item>
+ <item name="twoStateButtonPreferenceStyle">@style/TwoStateButtonPreference</item>
</style>
<style name="PreferenceTheme.SetupWizard" parent="PreferenceTheme">
@@ -175,7 +215,6 @@
<item name="fingerprint_layout_theme">@style/FingerprintLayoutTheme</item>
<item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_holo_dark</item>
- <item name="ic_wps">@drawable/ic_wps_light</item>
<item name="wifi_signal">@drawable/wifi_signal</item>
<item name="wifi_signal_color">?android:attr/colorAccent</item>
<item name="wifi_friction">@drawable/wifi_friction</item>
@@ -290,13 +329,6 @@
<item name="android:colorAccent">@*android:color/white</item>
</style>
- <style name="Theme.FingerprintEnroll" parent="SuwThemeGlif.Light">
- <item name="android:textAppearanceListItemSmall">@android:style/TextAppearance.Material.Body1</item>
-
- <item name="suwDividerCondition">both</item>
- <item name="suwListItemIconColor">?android:attr/colorAccent</item>
- </style>
-
<style name="FallbackHome" parent="@android:style/Theme.DeviceDefault.NoActionBar">
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
diff --git a/res/layout/search_breadcrumb_view.xml b/res/xml/accessibility_notification_vibration_settings.xml
similarity index 63%
rename from res/layout/search_breadcrumb_view.xml
rename to res/xml/accessibility_notification_vibration_settings.xml
index 08a2651..b37d363 100644
--- a/res/layout/search_breadcrumb_view.xml
+++ b/res/xml/accessibility_notification_vibration_settings.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
- Copyright (C) 2017 The Android Open Source Project
+ Copyright (C) 2018 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.
@@ -15,12 +15,6 @@
limitations under the License.
-->
-<TextView
+<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/breadcrumb"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingTop="5dp"
- android:textAppearance="?android:attr/textAppearanceListItemSecondary"
- android:textColor="?android:attr/textColorSecondary"
- android:ellipsize="marquee"/>
+ android:title="@string/accessibility_notification_vibration_title" />
diff --git a/res/xml/accessibility_settings.xml b/res/xml/accessibility_settings.xml
index b5da848..060868e 100644
--- a/res/xml/accessibility_settings.xml
+++ b/res/xml/accessibility_settings.xml
@@ -93,6 +93,12 @@
android:entries="@array/long_press_timeout_selector_titles"
android:entryValues="@array/long_press_timeout_selector_values"
android:persistent="false"/>
+
+ <Preference
+ android:fragment="com.android.settings.accessibility.VibrationSettings"
+ android:key="vibration_preference_screen"
+ android:title="@string/accessibility_vibration_settings_title" />
+
</PreferenceCategory>
<PreferenceCategory
diff --git a/res/layout/search_breadcrumb_view.xml b/res/xml/accessibility_touch_vibration_settings.xml
similarity index 63%
copy from res/layout/search_breadcrumb_view.xml
copy to res/xml/accessibility_touch_vibration_settings.xml
index 08a2651..ed8f550 100644
--- a/res/layout/search_breadcrumb_view.xml
+++ b/res/xml/accessibility_touch_vibration_settings.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
- Copyright (C) 2017 The Android Open Source Project
+ Copyright (C) 2018 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.
@@ -15,12 +15,6 @@
limitations under the License.
-->
-<TextView
+<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/breadcrumb"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:paddingTop="5dp"
- android:textAppearance="?android:attr/textAppearanceListItemSecondary"
- android:textColor="?android:attr/textColorSecondary"
- android:ellipsize="marquee"/>
+ android:title="@string/accessibility_touch_vibration_title" />
diff --git a/res/xml/accessibility_vibration_settings.xml b/res/xml/accessibility_vibration_settings.xml
new file mode 100644
index 0000000..d61454d
--- /dev/null
+++ b/res/xml/accessibility_vibration_settings.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2018 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.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+ android:key="accessibility_settings_screen"
+ android:title="@string/accessibility_vibration_settings_title"
+ android:persistent="true">
+
+ <Preference
+ android:fragment="com.android.settings.accessibility.NotificationVibrationPreferenceFragment"
+ android:key="notification_vibration_preference_screen"
+ android:title="@string/accessibility_notification_vibration_title" />
+
+ <Preference
+ android:fragment="com.android.settings.accessibility.TouchVibrationPreferenceFragment"
+ android:key="touch_vibration_preference_screen"
+ android:title="@string/accessibility_touch_vibration_title" />
+</PreferenceScreen>
diff --git a/res/xml/security_settings.xml b/res/xml/accounts_dashboard_settings.xml
similarity index 71%
rename from res/xml/security_settings.xml
rename to res/xml/accounts_dashboard_settings.xml
index 31f2334..1e29d0a 100644
--- a/res/xml/security_settings.xml
+++ b/res/xml/accounts_dashboard_settings.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 The Android Open Source Project
+<!-- Copyright (C) 2016 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.
@@ -17,8 +17,12 @@
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_dashboard_page"
- android:title="@string/security_settings_title"
- settings:initialExpandedChildrenCount="9">
+ android:key="user_and_account_settings_screen"
+ android:title="@string/account_dashboard_title"
+ settings:keywords="@string/keywords_accounts">
+
+ <PreferenceCategory
+ android:key="dashboard_tile_placeholder"
+ android:order="200"/>
</PreferenceScreen>
diff --git a/res/xml/ambient_display_settings.xml b/res/xml/ambient_display_settings.xml
index a8ded0d..8bd9bd6 100644
--- a/res/xml/ambient_display_settings.xml
+++ b/res/xml/ambient_display_settings.xml
@@ -17,7 +17,9 @@
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="ambient_display_preference_screen"
+ settings:keywords="@string/keywords_ambient_display_screen"
android:title="@string/ambient_display_screen_title">
<PreferenceCategory
diff --git a/res/xml/app_data_usage.xml b/res/xml/app_data_usage.xml
index 3e94135..a4b2159 100644
--- a/res/xml/app_data_usage.xml
+++ b/res/xml/app_data_usage.xml
@@ -16,6 +16,8 @@
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:key="app_data_usage_screen"
android:title="@string/data_usage_app_summary_title">
<com.android.settings.datausage.SpinnerPreference
@@ -50,15 +52,19 @@
android:key="app_settings"
android:title="@string/data_usage_app_settings" />
- <SwitchPreference
+ <com.android.settingslib.RestrictedSwitchPreference
android:key="restrict_background"
android:title="@string/data_usage_app_restrict_background"
- android:summary="@string/data_usage_app_restrict_background_summary" />
+ android:summary="@string/data_usage_app_restrict_background_summary"
+ settings:useAdditionalSummary="true"
+ settings:restrictedSwitchSummary="@string/disabled_by_admin" />
- <SwitchPreference
+ <com.android.settingslib.RestrictedSwitchPreference
android:key="unrestricted_data_saver"
android:title="@string/unrestricted_app_title"
- android:summary="@string/unrestricted_app_summary" />
+ android:summary="@string/unrestricted_app_summary"
+ settings:useAdditionalSummary="true"
+ settings:restrictedSwitchSummary="@string/disabled_by_admin" />
</PreferenceCategory>
diff --git a/res/xml/app_notification_settings.xml b/res/xml/app_notification_settings.xml
index b21d168..2d5dc57 100644
--- a/res/xml/app_notification_settings.xml
+++ b/res/xml/app_notification_settings.xml
@@ -15,7 +15,8 @@
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto">
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ settings:initialExpandedChildrenCount="500">
<com.android.settings.applications.LayoutPreference
android:key="pref_app_header"
@@ -25,24 +26,24 @@
android:key="block"
android:layout="@layout/styled_switch_bar" />
+ <com.android.settings.notification.NotificationFooterPreference
+ android:key="block_desc" />
+
+ <!-- Channels/Channel groups added here -->
+
<!-- Show badge -->
<com.android.settingslib.RestrictedSwitchPreference
android:key="badge"
android:title="@string/notification_badge_title"
+ android:order="501"
settings:useAdditionalSummary="true"
+ settings:allowDividerAbove="true"
settings:restrictedSwitchSummary="@string/enabled_by_admin" />
- <!-- Channels/Channel groups added here -->
-
<Preference
android:key="app_link"
android:title="@string/app_settings_link"
- android:order="500"
- settings:allowDividerAbove="true"/>
-
- <com.android.settings.notification.NotificationFooterPreference
- android:key="block_desc"
- android:order="1000" />
+ android:order="502" />
<com.android.settings.notification.NotificationFooterPreference
android:key="desc"
diff --git a/res/xml/battery_saver_settings.xml b/res/xml/battery_saver_settings.xml
index 1720c73..4397199 100644
--- a/res/xml/battery_saver_settings.xml
+++ b/res/xml/battery_saver_settings.xml
@@ -14,14 +14,37 @@
limitations under the License.
-->
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- android:title="@string/battery_saver"
- android:key="battery_saver">
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:title="@string/battery_saver"
+ android:key="battery_saver">
<!-- Turn on automatically -->
- <DropDownPreference
- android:key="turn_on_automatically"
- android:title="@string/battery_saver_turn_on_automatically_title"
- android:summary="%s" />
+ <SwitchPreference
+ android:key="auto_battery_saver"
+ android:title="@string/battery_saver_auto_title"
+ android:summary="@string/battery_saver_auto_summary"
+ settings:controller="com.android.settings.fuelgauge.batterysaver.AutoBatterySaverPreferenceController"/>
+
+ <com.android.settings.widget.SeekBarPreference
+ android:key="battery_saver_seek_bar"
+ android:title="@string/battery_saver_seekbar_title"
+ android:max="75"
+ android:min="5"/>
+
+ <com.android.settings.widget.TwoStateButtonPreference
+ android:key="battery_saver_button_container"
+ android:selectable="false"
+ settings:textOn="@string/battery_saver_button_turn_on"
+ settings:textOff="@string/battery_saver_button_turn_off"/>
+
+ <PreferenceCategory
+ android:key="battery_saver_footer">
+ <com.android.settingslib.widget.FooterPreference
+ android:key="battery_saver_footer_preference"
+ android:title="@*android:string/battery_saver_description"
+ android:selectable="false"/>
+ </PreferenceCategory>
</PreferenceScreen>
diff --git a/res/xml/channel_notification_settings.xml b/res/xml/channel_notification_settings.xml
index 6d20571..9d0398d 100644
--- a/res/xml/channel_notification_settings.xml
+++ b/res/xml/channel_notification_settings.xml
@@ -27,7 +27,7 @@
android:layout="@layout/styled_switch_bar" />
<!-- Importance -->
- <Preference
+ <com.android.settings.RestrictedListPreference
android:key="importance"
android:title="@string/notification_importance_title" />
diff --git a/res/xml/configure_notification_settings.xml b/res/xml/configure_notification_settings.xml
index e080be4..9d72441 100644
--- a/res/xml/configure_notification_settings.xml
+++ b/res/xml/configure_notification_settings.xml
@@ -79,7 +79,7 @@
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.Settings$NotificationAppListActivity">
+ android:targetClass="com.android.settings.Settings$ManageApplicationsActivity">
</intent>
</Preference>
</PreferenceCategory>
diff --git a/res/xml/connected_devices_advanced.xml b/res/xml/connected_devices_advanced.xml
index 8ca6b81..83a63e4 100644
--- a/res/xml/connected_devices_advanced.xml
+++ b/res/xml/connected_devices_advanced.xml
@@ -25,8 +25,8 @@
android:title="@string/bluetooth_settings_title"
android:icon="@drawable/ic_settings_bluetooth"
android:summary="@string/bluetooth_pref_summary"
- settings:controller="com.android.settings.bluetooth.BluetoothSwitchPreferenceController"
- android:order="-7"/>
+ android:order="-7"
+ settings:controller="com.android.settings.bluetooth.BluetoothSwitchPreferenceController"/>
<SwitchPreference
android:key="toggle_nfc"
@@ -54,19 +54,10 @@
android:title="@string/bluetooth_on_while_driving_pref"
android:icon="@drawable/ic_settings_bluetooth"
android:summary="@string/bluetooth_on_while_driving_summary"
+ settings:controller="com.android.settings.connecteddevice.BluetoothOnWhileDrivingPreferenceController"
android:order="-2"/>
<Preference
- android:key="usb_mode"
- android:title="@string/usb_pref"
- android:icon="@drawable/ic_usb"
- android:order="-1">
- <intent android:action="android.intent.action.MAIN"
- android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.deviceinfo.UsbModeChooserActivity"/>
- </Preference>
-
- <Preference
android:key="bt_received_files"
android:icon="@drawable/ic_folder_vd_theme_24"
android:title="@string/bluetooth_show_received_files" />
diff --git a/res/xml/connected_devices_old.xml b/res/xml/connected_devices_old.xml
index 3eb62ea..cc7b5b4 100644
--- a/res/xml/connected_devices_old.xml
+++ b/res/xml/connected_devices_old.xml
@@ -53,7 +53,7 @@
android:order="-2">
<intent android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.deviceinfo.UsbModeChooserActivity"/>
+ android:targetClass="com.android.settings.connecteddevice.usb.UsbModeChooserActivity"/>
</Preference>
<PreferenceCategory
diff --git a/res/xml/data_plan_usage.xml b/res/xml/data_plan_usage.xml
deleted file mode 100644
index 4691198..0000000
--- a/res/xml/data_plan_usage.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- android:title="@string/data_usage_summary_title">
-
- <PreferenceCategory
- android:key="data_plan_usage"
- android:title="@string/usage">
-
- </PreferenceCategory>
-</PreferenceScreen>
diff --git a/res/xml/data_plan_usage_cell_data_preference_screen.xml b/res/xml/data_plan_usage_cell_data_preference_screen.xml
deleted file mode 100644
index 08f21c5..0000000
--- a/res/xml/data_plan_usage_cell_data_preference_screen.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 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.
--->
-
-<PreferenceScreen
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:title="@string/data_usage_summary_title">
-
- <com.android.settings.datausage.TemplatePreferenceCategory
- android:key="data_usage_mobile_category"
- android:title="@string/data_usage_tab_mobile">
-
- <com.android.settings.datausage.CellDataPreference
- android:key="data_usage_enable"
- android:title="@string/data_usage_enable_mobile" />
- </com.android.settings.datausage.TemplatePreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/data_usage.xml b/res/xml/data_usage.xml
index 958459c..88d7f32 100644
--- a/res/xml/data_usage.xml
+++ b/res/xml/data_usage.xml
@@ -20,24 +20,8 @@
android:key="data_usage_screen"
android:title="@string/data_usage_summary_title">
- <PreferenceCategory
- android:key="data_usage_category"
- android:title="@string/usage">
-
- <com.android.settings.SummaryPreference
+ <com.android.settings.datausage.DataUsageSummaryPreference
android:key="status_header"
android:selectable="false" />
- <Preference
- android:key="limit_summary"
- android:selectable="false"
- settings:allowDividerBelow="true" />
-
- <com.android.settings.datausage.DataSaverPreference
- android:key="restrict_background"
- android:title="@string/data_saver_title"
- android:fragment="com.android.settings.datausage.DataSaverSummary" />
-
- </PreferenceCategory>
-
</PreferenceScreen>
diff --git a/res/xml/data_usage_legacy.xml b/res/xml/data_usage_legacy.xml
new file mode 100644
index 0000000..958459c
--- /dev/null
+++ b/res/xml/data_usage_legacy.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2016 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.
+-->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:key="data_usage_screen"
+ android:title="@string/data_usage_summary_title">
+
+ <PreferenceCategory
+ android:key="data_usage_category"
+ android:title="@string/usage">
+
+ <com.android.settings.SummaryPreference
+ android:key="status_header"
+ android:selectable="false" />
+
+ <Preference
+ android:key="limit_summary"
+ android:selectable="false"
+ settings:allowDividerBelow="true" />
+
+ <com.android.settings.datausage.DataSaverPreference
+ android:key="restrict_background"
+ android:title="@string/data_saver_title"
+ android:fragment="com.android.settings.datausage.DataSaverSummary" />
+
+ </PreferenceCategory>
+
+</PreferenceScreen>
diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml
index 42e5c54..a88a97b 100644
--- a/res/xml/development_settings.xml
+++ b/res/xml/development_settings.xml
@@ -77,6 +77,11 @@
android:fragment="com.android.settings.applications.RunningServices" />
<Preference
+ android:key="android_o_battery_settings"
+ android:fragment="com.android.settings.fuelgauge.PowerUsageSummaryLegacy"
+ android:title="@string/dev_android_o_battery_settings_title" />
+
+ <Preference
android:key="convert_to_file_encryption"
android:title="@string/convert_to_file_encryption"
android:summary="@string/convert_to_file_encryption_enabled"
@@ -423,12 +428,6 @@
android:summary="%s"
android:title="@string/simulate_color_space" />
- <ListPreference
- android:key="debug_hw_renderer"
- android:title="@string/debug_hw_renderer"
- android:entries="@array/debug_hw_renderer_entries"
- android:entryValues="@array/debug_hw_renderer_values" />
-
</PreferenceCategory>
<PreferenceCategory
@@ -477,7 +476,6 @@
android:entries="@array/app_process_limit_entries"
android:entryValues="@array/app_process_limit_values" />
-
<Preference
android:key="background_check"
android:fragment="com.android.settings.applications.appops.BackgroundCheckSummary"
diff --git a/res/xml/display_settings.xml b/res/xml/display_settings.xml
index 4d0c992..3cafc3f 100644
--- a/res/xml/display_settings.xml
+++ b/res/xml/display_settings.xml
@@ -43,8 +43,9 @@
<com.android.settingslib.RestrictedSwitchPreference
android:key="auto_brightness"
android:title="@string/auto_brightness_title"
- settings:keywords="@string/keywords_display_auto_brightness"
android:summary="@string/auto_brightness_summary"
+ settings:keywords="@string/keywords_display_auto_brightness"
+ settings:controller="com.android.settings.display.AutoBrightnessPreferenceController"
settings:useAdminDisabledSummary="true"
settings:userRestriction="no_config_brightness" />
diff --git a/res/xml/location_settings.xml b/res/xml/location_settings.xml
index 267fce9..c86df68 100644
--- a/res/xml/location_settings.xml
+++ b/res/xml/location_settings.xml
@@ -49,5 +49,9 @@
<PreferenceCategory
android:key="location_services"
- android:title="@string/location_category_location_services" />
+ android:title="@string/location_category_location_services"/>
+
+ <PreferenceCategory
+ android:key="location_footer"
+ settings:allowDividerAbove="false"/>
</PreferenceScreen>
diff --git a/res/xml/my_device_info.xml b/res/xml/my_device_info.xml
index 4988b16..dabed8a 100644
--- a/res/xml/my_device_info.xml
+++ b/res/xml/my_device_info.xml
@@ -20,7 +20,7 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="my_device_info_pref_screen"
android:title="@string/my_device_info_title"
- settings:initialExpandedChildrenCount="4">
+ settings:initialExpandedChildrenCount="7">
<com.android.settings.applications.LayoutPreference
android:key="my_device_info_header"
@@ -49,10 +49,31 @@
android:title="@string/my_device_info_device_name_preference_title"
android:summary="@string/summary_placeholder"/>
+ <Preference
+ android:key="emergency_info"
+ android:order="4"
+ android:title="@string/emergency_info_title"
+ android:summary="@string/summary_placeholder"/>
+
+ <!-- Legal information -->
+ <Preference
+ android:key="legal_container"
+ android:order="5"
+ android:title="@string/legal_information"
+ android:fragment="com.android.settings.LegalSettings" />
+
+ <!-- Regulatory labels -->
+ <Preference
+ android:key="regulatory_info"
+ android:order="6"
+ android:title="@string/regulatory_labels">
+ <intent android:action="android.settings.SHOW_REGULATORY_INFO"/>
+ </Preference>
+
<!-- SIM status -->
<Preference
android:key="sim_status"
- android:order="4"
+ android:order="7"
android:title="@string/sim_status_title"
settings:keywords="@string/keywords_sim_status"
android:summary="@string/summary_placeholder"/>
@@ -110,23 +131,6 @@
android:title="@string/status_bt_address"
android:summary="@string/summary_placeholder"/>
-
- <!-- Legal information -->
- <Preference
- android:key="legal_container"
- android:order="37"
- android:title="@string/legal_information"
- android:fragment="com.android.settings.LegalSettings"
- settings:allowDividerAbove="true"/>
-
- <!-- Regulatory labels -->
- <Preference
- android:key="regulatory_info"
- android:order="38"
- android:title="@string/regulatory_labels">
- <intent android:action="android.settings.SHOW_REGULATORY_INFO"/>
- </Preference>
-
<!-- Safety & regulatory manual -->
<Preference
android:key="safety_info"
diff --git a/res/xml/power_usage_summary.xml b/res/xml/power_usage_summary.xml
index d7c3c39..fbe4e0d 100644
--- a/res/xml/power_usage_summary.xml
+++ b/res/xml/power_usage_summary.xml
@@ -23,7 +23,7 @@
<com.android.settings.applications.LayoutPreference
android:key="battery_header"
- android:selectable="true"
+ android:selectable="false"
android:layout="@layout/battery_header"/>
<PreferenceCategory
@@ -34,7 +34,7 @@
android:key="power_management">
<com.android.settings.widget.MasterSwitchPreference
- android:fragment="com.android.settings.fuelgauge.BatterySaverSettings"
+ android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
android:key="battery_saver_summary"
android:title="@string/battery_saver"/>
diff --git a/res/xml/power_usage_summary_legacy.xml b/res/xml/power_usage_summary_legacy.xml
index 0038cc0..059c737 100644
--- a/res/xml/power_usage_summary_legacy.xml
+++ b/res/xml/power_usage_summary_legacy.xml
@@ -51,7 +51,7 @@
android:title="@string/battery_power_management">
<com.android.settings.widget.MasterSwitchPreference
- android:fragment="com.android.settings.fuelgauge.BatterySaverSettings"
+ android:fragment="com.android.settings.fuelgauge.batterysaver.BatterySaverSettings"
android:key="battery_saver_summary"
android:title="@string/battery_saver"/>
diff --git a/res/xml/security_settings_v2.xml b/res/xml/security_dashboard_settings.xml
similarity index 94%
rename from res/xml/security_settings_v2.xml
rename to res/xml/security_dashboard_settings.xml
index dafd36c..00eaa7e 100644
--- a/res/xml/security_settings_v2.xml
+++ b/res/xml/security_dashboard_settings.xml
@@ -79,7 +79,8 @@
<SwitchPreference
android:key="visiblepattern_profile"
android:summary="@string/summary_placeholder"
- android:title="@string/lockpattern_settings_enable_visible_pattern_title_profile" />
+ android:title="@string/lockpattern_settings_enable_visible_pattern_title_profile"
+ settings:controller="com.android.settings.security.VisiblePatternProfilePreferenceController"/>
<Preference
android:key="fingerprint_settings_profile"
@@ -103,7 +104,8 @@
<SwitchPreference
android:key="show_password"
android:title="@string/show_password"
- android:summary="@string/show_password_summary" />
+ android:summary="@string/show_password_summary"
+ settings:controller="com.android.settings.security.ShowPasswordPreferenceController"/>
</PreferenceCategory>
diff --git a/res/xml/security_lockscreen_settings.xml b/res/xml/security_lockscreen_settings.xml
index 1da1de5..3d3bfd0 100644
--- a/res/xml/security_lockscreen_settings.xml
+++ b/res/xml/security_lockscreen_settings.xml
@@ -16,6 +16,7 @@
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="security_lockscreen_settings_screen"
android:title="@string/lockscreen_settings_title">
@@ -36,7 +37,8 @@
<SwitchPreference
android:key="security_setting_lockdown_enabled"
android:title="@string/lockdown_settings_title"
- android:summary="@string/lockdown_settings_summary" />
+ android:summary="@string/lockdown_settings_summary"
+ settings:controller="com.android.settings.security.LockdownButtonPreferenceController"/>
<PreferenceCategory
android:key="security_setting_lock_screen_notif_work_header"
diff --git a/res/xml/security_settings_chooser.xml b/res/xml/security_settings_chooser.xml
deleted file mode 100644
index 360e620..0000000
--- a/res/xml/security_settings_chooser.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_chooser_screen"
- android:title="@string/security_settings_title">
-
- <PreferenceCategory
- android:key="security_category"
- android:title="@string/lock_settings_title">
-
- <com.android.settings.widget.GearPreference
- android:key="unlock_set_or_change"
- android:title="@string/unlock_set_unlock_launch_picker_title"
- android:summary="@string/unlock_set_unlock_mode_none"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
- <Preference android:key="lockscreen_preferences"
- android:title="@string/lockscreen_settings_title"
- android:fragment="com.android.settings.security.LockscreenDashboardFragment"/>
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_lockscreen.xml b/res/xml/security_settings_lockscreen.xml
deleted file mode 100644
index 56410fb..0000000
--- a/res/xml/security_settings_lockscreen.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_lockscreen_screen"
- android:title="@string/security_settings_title">
-
- <PreferenceCategory
- android:key="security_category"
- android:title="@string/lock_settings_title">
-
- <com.android.settingslib.RestrictedPreference
- android:key="unlock_set_or_change"
- android:title="@string/unlock_set_unlock_launch_picker_title"
- android:summary="@string/unlock_set_unlock_mode_off"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_lockscreen_profile.xml b/res/xml/security_settings_lockscreen_profile.xml
deleted file mode 100644
index a0c3f02..0000000
--- a/res/xml/security_settings_lockscreen_profile.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_lockscreen_profile_screen"
- android:title="@string/security_settings_title">
-
- <com.android.settingslib.RestrictedPreference
- android:key="unlock_set_or_change_profile"
- android:title="@string/unlock_set_unlock_launch_picker_title_profile"
- android:summary="@string/unlock_set_unlock_mode_off"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_misc.xml b/res/xml/security_settings_misc.xml
deleted file mode 100644
index 730686c..0000000
--- a/res/xml/security_settings_misc.xml
+++ /dev/null
@@ -1,88 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- android:key="security_settings_misc_screen"
- android:title="@string/security_settings_title">
-
- <PreferenceCategory
- android:key="security_settings_misc_category"
- android:title="@string/security_passwords_title">
-
- <Preference
- android:key="location"
- android:title="@string/location_settings_title"
- android:fragment="com.android.settings.location.LocationSettings">
- </Preference>
-
- <SwitchPreference
- android:key="show_password"
- android:title="@string/show_password"
- android:summary="@string/show_password_summary"/>
-
- </PreferenceCategory>
-
- <PreferenceCategory
- android:key="security_settings_device_admin_category">
-
- <Preference android:key="manage_device_admin"
- android:title="@string/manage_device_admin"
- android:persistent="false"
- android:fragment="com.android.settings.DeviceAdminSettings"/>
-
- <Preference android:key="enterprise_privacy"
- android:title="@string/enterprise_privacy_settings"
- android:persistent="false"
- android:fragment="com.android.settings.enterprise.EnterprisePrivacySettings"/>
-
- </PreferenceCategory>
-
- <Preference android:key="sim_lock_settings"
- android:title="@string/sim_lock_settings_category"
- android:persistent="false">
-
- <intent android:action="android.intent.action.MAIN"
- android:targetPackage="com.android.settings"
- android:targetClass="com.android.settings.Settings$IccLockSettingsActivity"/>
-
- </Preference>
-
- <Preference
- android:key="encryption_and_credential"
- android:title="@string/encryption_and_credential_settings_title"
- android:summary="@string/encryption_and_credential_settings_summary"
- android:fragment="com.android.settings.security.EncryptionAndCredential"/>
-
- <Preference android:key="manage_trust_agents"
- android:title="@string/manage_trust_agents"
- android:persistent="false"
- android:fragment="com.android.settings.security.trustagent.TrustAgentSettings"/>
-
- <Preference
- android:key="screen_pinning_settings"
- android:title="@string/screen_pinning_title"
- android:summary="@string/switch_off_text"
- android:fragment="com.android.settings.security.ScreenPinningSettings"/>
-
- <Preference android:key="security_misc_usage_access"
- android:title="@string/usage_access_title"
- android:fragment="com.android.settings.applications.manageapplications.ManageApplications">
- <extra
- android:name="classname"
- android:value="com.android.settings.Settings$UsageAccessSettingsActivity" />
- </Preference>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_password.xml b/res/xml/security_settings_password.xml
deleted file mode 100644
index 26077c7..0000000
--- a/res/xml/security_settings_password.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_password_screen"
- android:title="@string/lock_settings_picker_title">
-
- <PreferenceCategory
- android:key="security_category"
- android:title="@string/lock_settings_title">
-
- <com.android.settings.widget.GearPreference
- android:key="unlock_set_or_change"
- android:title="@string/unlock_set_unlock_launch_picker_title"
- android:summary="@string/unlock_set_unlock_mode_password"
- settings:keywords="@string/keywords_lockscreen" />
-
- <Preference android:key="lockscreen_preferences"
- android:title="@string/lockscreen_settings_title"
- android:fragment="com.android.settings.security.LockscreenDashboardFragment"/>
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_password_profile.xml b/res/xml/security_settings_password_profile.xml
deleted file mode 100644
index 257b234..0000000
--- a/res/xml/security_settings_password_profile.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_password_profile_screen"
- android:title="@string/security_settings_title">
-
- <com.android.settingslib.RestrictedPreference
- android:key="unlock_set_or_change_profile"
- android:title="@string/unlock_set_unlock_launch_picker_title_profile"
- android:summary="@string/unlock_set_unlock_mode_password"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_pattern.xml b/res/xml/security_settings_pattern.xml
deleted file mode 100644
index 9b7482f..0000000
--- a/res/xml/security_settings_pattern.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_pattern_screen"
- android:title="@string/lock_settings_picker_title">
-
- <PreferenceCategory
- android:key="security_category"
- android:title="@string/lock_settings_title">
-
- <com.android.settings.widget.GearPreference
- android:key="unlock_set_or_change"
- android:title="@string/unlock_set_unlock_launch_picker_title"
- android:summary="@string/unlock_set_unlock_mode_pattern"
- settings:keywords="@string/keywords_lockscreen" />
-
- <Preference android:key="lockscreen_preferences"
- android:title="@string/lockscreen_settings_title"
- android:fragment="com.android.settings.security.LockscreenDashboardFragment"/>
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_pattern_profile.xml b/res/xml/security_settings_pattern_profile.xml
deleted file mode 100644
index e095486..0000000
--- a/res/xml/security_settings_pattern_profile.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_pattern_profile_screen"
- android:title="@string/security_settings_title">
-
- <com.android.settingslib.RestrictedPreference
- android:key="unlock_set_or_change_profile"
- android:title="@string/unlock_set_unlock_launch_picker_title_profile"
- android:summary="@string/unlock_set_unlock_mode_pattern"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
- <SwitchPreference
- android:key="visiblepattern_profile"
- android:title="@string/lockpattern_settings_enable_visible_pattern_title_profile"/>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_pin.xml b/res/xml/security_settings_pin.xml
deleted file mode 100644
index 780ca19..0000000
--- a/res/xml/security_settings_pin.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:title="@string/lock_settings_picker_title">
-
- <PreferenceCategory
- android:key="security_category"
- android:title="@string/lock_settings_title">
-
- <com.android.settings.widget.GearPreference
- android:key="unlock_set_or_change"
- android:title="@string/unlock_set_unlock_launch_picker_title"
- android:summary="@string/unlock_set_unlock_mode_pin"
- settings:keywords="@string/keywords_lockscreen" />
-
- <Preference android:key="lockscreen_preferences"
- android:title="@string/lockscreen_settings_title"
- android:fragment="com.android.settings.security.LockscreenDashboardFragment"/>
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_pin_profile.xml b/res/xml/security_settings_pin_profile.xml
deleted file mode 100644
index 071b2f5..0000000
--- a/res/xml/security_settings_pin_profile.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_settings_pin_profile_screen"
- android:title="@string/security_settings_title">
-
- <com.android.settingslib.RestrictedPreference
- android:key="unlock_set_or_change_profile"
- android:title="@string/unlock_set_unlock_launch_picker_title_profile"
- android:summary="@string/unlock_set_unlock_mode_pin"
- settings:keywords="@string/keywords_lockscreen"
- android:persistent="false"/>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_profile.xml b/res/xml/security_settings_profile.xml
deleted file mode 100644
index 9870e30..0000000
--- a/res/xml/security_settings_profile.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:title="@string/lock_settings_picker_title">
-
- <PreferenceCategory
- android:key="security_category_profile"
- android:title="@string/lock_settings_profile_title">
-
- </PreferenceCategory>
-
-</PreferenceScreen>
diff --git a/res/xml/security_settings_unification.xml b/res/xml/security_settings_unification.xml
deleted file mode 100644
index b9c59e5..0000000
--- a/res/xml/security_settings_unification.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:title="@string/security_settings_title">
-
- <com.android.settingslib.RestrictedSwitchPreference
- android:key="unification"
- android:title="@string/lock_settings_profile_unification_title"
- android:summary="@string/lock_settings_profile_unification_summary"
- settings:keywords="@string/keywords_unification"/>
-
-</PreferenceScreen>
diff --git a/res/xml/system_dashboard_fragment.xml b/res/xml/system_dashboard_fragment.xml
index 73aab4b..d8459dd 100644
--- a/res/xml/system_dashboard_fragment.xml
+++ b/res/xml/system_dashboard_fragment.xml
@@ -55,7 +55,7 @@
android:summary="@string/summary_placeholder"
android:icon="@drawable/ic_system_update"
android:order="-30"
- settings:controller="com.android.settings.deviceinfo.SystemUpdatePreferenceController">
+ settings:controller="com.android.settings.system.SystemUpdatePreferenceController">
<intent android:action="android.settings.SYSTEM_UPDATE_SETTINGS" />
</Preference>
@@ -63,7 +63,7 @@
android:key="additional_system_update_settings"
android:title="@string/additional_system_update_settings_list_item_title"
android:order="-31"
- settings:controller="com.android.settings.deviceinfo.AdditionalSystemUpdatePreferenceController">
+ settings:controller="com.android.settings.system.AdditionalSystemUpdatePreferenceController">
<intent android:action="android.intent.action.MAIN"
android:targetPackage="@string/additional_system_update"
android:targetClass="@string/additional_system_update_menu" />
diff --git a/res/xml/usb_details_fragment.xml b/res/xml/usb_details_fragment.xml
new file mode 100644
index 0000000..30ca993
--- /dev/null
+++ b/res/xml/usb_details_fragment.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2017 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.
+ -->
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:title="@string/device_details_title">
+
+ <com.android.settings.applications.LayoutPreference
+ android:key="usb_device_header"
+ android:layout="@layout/settings_entity_header"
+ android:selectable="false"/>
+
+ <PreferenceCategory
+ android:key="usb_main_options"
+ android:title="@string/usb_use"/>
+
+ <PreferenceCategory
+ android:key="usb_secondary_options"
+ android:title="@string/usb_use_also"/>
+
+</PreferenceScreen>
diff --git a/res/xml/user_and_accounts_settings.xml b/res/xml/user_and_accounts_settings.xml
deleted file mode 100644
index 7f82f43..0000000
--- a/res/xml/user_and_accounts_settings.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2016 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.
--->
-
-<PreferenceScreen
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="user_and_account_settings_screen"
- android:title="@string/account_dashboard_title"
- settings:keywords="@string/keywords_accounts">
-
- <Preference
- android:key="emergency_info"
- android:title="@string/emergency_info_title"
- android:order="100"
- settings:allowDividerAbove="true"/>
-
- <SwitchPreference
- android:key="auto_sync_account_data"
- android:title="@string/auto_sync_account_title"
- android:summary="@string/auto_sync_account_summary"
- android:order="102"
- settings:allowDividerAbove="true"/>
-
- <SwitchPreference
- android:key="auto_sync_work_account_data"
- android:title="@string/account_settings_menu_auto_sync_work"
- android:summary="@string/auto_sync_account_summary"
- android:order="103"/>
-
- <SwitchPreference
- android:key="auto_sync_personal_account_data"
- android:title="@string/account_settings_menu_auto_sync_personal"
- android:summary="@string/auto_sync_account_summary"
- android:order="104"/>
-
- <com.android.settingslib.RestrictedSwitchPreference
- android:key="user_settings_add_users_when_locked"
- android:title="@string/user_add_on_lockscreen_menu"
- android:singleLineTitle="false"
- android:order="105"/>
-
- <PreferenceCategory
- android:key="dashboard_tile_placeholder"
- android:order="200"/>
-
-</PreferenceScreen>
diff --git a/res/xml/user_settings.xml b/res/xml/user_settings.xml
index cf68344..32b46d9 100644
--- a/res/xml/user_settings.xml
+++ b/res/xml/user_settings.xml
@@ -14,18 +14,47 @@
limitations under the License.
-->
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:title="@string/user_settings_title">
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res-auto"
+ android:key="user_settings_screen"
+ android:title="@string/user_settings_title">
<PreferenceCategory
- android:key="user_list"
- android:title="@string/user_list_title">
+ android:key="user_list"
+ android:title="@string/user_list_title"
+ android:order="10">
</PreferenceCategory>
<com.android.settingslib.RestrictedPreference
- android:key="user_add"
- android:title="@string/user_add_user_or_profile_menu"
- android:icon="@drawable/ic_menu_add" />
+ android:key="user_add"
+ android:title="@string/user_add_user_or_profile_menu"
+ android:icon="@drawable/ic_menu_add"
+ android:order="20"/>
+
+ <SwitchPreference
+ android:key="auto_sync_account_data"
+ android:title="@string/auto_sync_account_title"
+ android:summary="@string/auto_sync_account_summary"
+ android:order="102"
+ settings:allowDividerAbove="true"/>
+
+ <SwitchPreference
+ android:key="auto_sync_work_account_data"
+ android:title="@string/account_settings_menu_auto_sync_work"
+ android:summary="@string/auto_sync_account_summary"
+ android:order="103"/>
+
+ <SwitchPreference
+ android:key="auto_sync_personal_account_data"
+ android:title="@string/account_settings_menu_auto_sync_personal"
+ android:summary="@string/auto_sync_account_summary"
+ android:order="104"/>
+
+ <com.android.settingslib.RestrictedSwitchPreference
+ android:key="user_settings_add_users_when_locked"
+ android:title="@string/user_add_on_lockscreen_menu"
+ android:singleLineTitle="false"
+ android:order="105"/>
</PreferenceScreen>
diff --git a/res/xml/wifi_configure_settings.xml b/res/xml/wifi_configure_settings.xml
index 6993f26..eae6faa 100644
--- a/res/xml/wifi_configure_settings.xml
+++ b/res/xml/wifi_configure_settings.xml
@@ -64,14 +64,6 @@
android:fragment="com.android.settings.wifi.p2p.WifiP2pSettings"/>
<Preference
- android:key="wps_push_button"
- android:title="@string/wifi_menu_wps_pbc" />
-
- <Preference
- android:key="wps_pin_entry"
- android:title="@string/wifi_menu_wps_pin" />
-
- <Preference
android:key="mac_address"
android:title="@string/wifi_advanced_mac_address_title"/>
diff --git a/src/com/android/settings/CryptKeeperConfirm.java b/src/com/android/settings/CryptKeeperConfirm.java
index d61fd98..2271200 100644
--- a/src/com/android/settings/CryptKeeperConfirm.java
+++ b/src/com/android/settings/CryptKeeperConfirm.java
@@ -16,6 +16,7 @@
package com.android.settings;
+import android.annotation.Nullable;
import android.app.Activity;
import android.app.StatusBarManager;
import android.content.Context;
@@ -35,11 +36,11 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import java.util.Locale;
-public class CryptKeeperConfirm extends InstrumentedPreferenceFragment {
+public class CryptKeeperConfirm extends InstrumentedFragment {
private static final String TAG = "CryptKeeperConfirm";
@@ -154,6 +155,12 @@
}
@Override
+ public void onCreate(@Nullable Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ getActivity().setTitle(R.string.crypt_keeper_confirm_title);
+ }
+
+ @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
mContentView = inflater.inflate(R.layout.crypt_keeper_confirm, null);
diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java
index 687e645..4f5c6b9 100644
--- a/src/com/android/settings/MasterClear.java
+++ b/src/com/android/settings/MasterClear.java
@@ -55,7 +55,7 @@
import android.widget.TextView;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.password.ConfirmLockPattern;
import com.android.settingslib.RestrictedLockUtils;
@@ -72,7 +72,7 @@
*
* This is the initial screen.
*/
-public class MasterClear extends InstrumentedPreferenceFragment {
+public class MasterClear extends InstrumentedFragment {
private static final String TAG = "MasterClear";
@VisibleForTesting static final int KEYGUARD_REQUEST = 55;
@@ -123,24 +123,34 @@
return !((requestCode != KEYGUARD_REQUEST) && (requestCode != CREDENTIAL_CONFIRM_REQUEST));
}
- @VisibleForTesting
- boolean isShowFinalConfirmation(int requestCode, int resultCode) {
- return (resultCode == Activity.RESULT_OK) || (requestCode == CREDENTIAL_CONFIRM_REQUEST);
- }
-
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
+ onActivityResultInternal(requestCode, resultCode, data);
+ }
+
+ /*
+ * Internal method that allows easy testing without dealing with super references.
+ */
+ @VisibleForTesting
+ void onActivityResultInternal(int requestCode, int resultCode, Intent data) {
if (!isValidRequestCode(requestCode)) {
return;
}
- // If the user entered a valid keyguard trace, present the final
- // confirmation prompt; otherwise, go back to the initial state.
- if (isShowFinalConfirmation(requestCode, resultCode)) {
- showFinalConfirmation();
- } else {
+ if (resultCode != Activity.RESULT_OK) {
establishInitialState();
+ return;
+ }
+
+ Intent intent = null;
+ // If returning from a Keyguard request, try to show an account confirmation request if
+ // applciable.
+ if (CREDENTIAL_CONFIRM_REQUEST != requestCode
+ && (intent = getAccountConfirmationIntent()) != null) {
+ showAccountCredentialConfirmation(intent);
+ } else {
+ showFinalConfirmation();
}
}
@@ -155,7 +165,12 @@
}
@VisibleForTesting
- boolean tryShowAccountConfirmation() {
+ void showAccountCredentialConfirmation(Intent intent) {
+ startActivityForResult(intent, CREDENTIAL_CONFIRM_REQUEST);
+ }
+
+ @VisibleForTesting
+ Intent getAccountConfirmationIntent() {
final Context context = getActivity();
final String accountType = context.getString(R.string.account_type);
final String packageName = context.getString(R.string.account_confirmation_package);
@@ -163,7 +178,8 @@
if (TextUtils.isEmpty(accountType)
|| TextUtils.isEmpty(packageName)
|| TextUtils.isEmpty(className)) {
- return false;
+ Log.i(TAG, "Resources not set for account confirmation.");
+ return null;
}
final AccountManager am = AccountManager.get(context);
Account[] accounts = am.getAccountsByType(accountType);
@@ -179,12 +195,14 @@
&& packageName.equals(resolution.activityInfo.packageName)) {
// Note that we need to check the packagename to make sure that an Activity resolver
// wasn't returned.
- startActivityForResult(
- requestAccountConfirmation, CREDENTIAL_CONFIRM_REQUEST);
- return true;
+ return requestAccountConfirmation;
+ } else {
+ Log.i(TAG, "Unable to resolve Activity: " + packageName + "/" + className);
}
+ } else {
+ Log.d(TAG, "No " + accountType + " accounts installed!");
}
- return false;
+ return null;
}
/**
@@ -210,7 +228,14 @@
return;
}
- if (!tryShowAccountConfirmation() && !runKeyguardConfirmation(KEYGUARD_REQUEST)) {
+ if (runKeyguardConfirmation(KEYGUARD_REQUEST)) {
+ return;
+ }
+
+ Intent intent = getAccountConfirmationIntent();
+ if (intent != null) {
+ showAccountCredentialConfirmation(intent);
+ } else {
showFinalConfirmation();
}
}
@@ -228,7 +253,8 @@
* time, then simply reuse the inflated views directly whenever we need
* to change contents.
*/
- private void establishInitialState() {
+ @VisibleForTesting
+ void establishInitialState() {
mInitiateButton = (Button) mContentView.findViewById(R.id.initiate_master_clear);
mInitiateButton.setOnClickListener(mInitiateListener);
mExternalStorageContainer = mContentView.findViewById(R.id.erase_external_container);
diff --git a/src/com/android/settings/MasterClearConfirm.java b/src/com/android/settings/MasterClearConfirm.java
index 9b324c3..59736fd 100644
--- a/src/com/android/settings/MasterClearConfirm.java
+++ b/src/com/android/settings/MasterClearConfirm.java
@@ -33,7 +33,7 @@
import android.widget.TextView;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settingslib.RestrictedLockUtils;
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
@@ -48,7 +48,7 @@
*
* This is the confirmation screen.
*/
-public class MasterClearConfirm extends InstrumentedPreferenceFragment {
+public class MasterClearConfirm extends InstrumentedFragment {
private View mContentView;
private boolean mEraseSdCard;
diff --git a/src/com/android/settings/ProxySelector.java b/src/com/android/settings/ProxySelector.java
index a72525c..79767fb 100644
--- a/src/com/android/settings/ProxySelector.java
+++ b/src/com/android/settings/ProxySelector.java
@@ -41,9 +41,9 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.SettingsPreferenceFragment.SettingsDialogFragment;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
-public class ProxySelector extends InstrumentedPreferenceFragment implements DialogCreatable {
+public class ProxySelector extends InstrumentedFragment implements DialogCreatable {
private static final String TAG = "ProxySelector";
EditText mHostnameField;
@@ -59,11 +59,6 @@
private View mView;
@Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- }
-
- @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
mView = inflater.inflate(R.layout.proxy, container, false);
@@ -179,6 +174,8 @@
String title = intent.getStringExtra("title");
if (!TextUtils.isEmpty(title)) {
activity.setTitle(title);
+ } else {
+ activity.setTitle(R.string.proxy_settings_title);
}
}
diff --git a/src/com/android/settings/ResetNetwork.java b/src/com/android/settings/ResetNetwork.java
index f64f6dc..5cbee63 100644
--- a/src/com/android/settings/ResetNetwork.java
+++ b/src/com/android/settings/ResetNetwork.java
@@ -43,7 +43,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.telephony.PhoneConstants;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.password.ConfirmLockPattern;
import com.android.settingslib.RestrictedLockUtils;
@@ -61,7 +61,7 @@
*
* This is the initial screen.
*/
-public class ResetNetwork extends InstrumentedPreferenceFragment {
+public class ResetNetwork extends InstrumentedFragment {
private static final String TAG = "ResetNetwork";
// Arbitrary to avoid conficts
diff --git a/src/com/android/settings/ResetNetworkConfirm.java b/src/com/android/settings/ResetNetworkConfirm.java
index bc0fa77..8d6700c 100644
--- a/src/com/android/settings/ResetNetworkConfirm.java
+++ b/src/com/android/settings/ResetNetworkConfirm.java
@@ -42,8 +42,8 @@
import com.android.ims.ImsManager;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.telephony.PhoneConstants;
-import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.wrapper.RecoverySystemWrapper;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settingslib.RestrictedLockUtils;
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
@@ -58,7 +58,7 @@
*
* This is the confirmation screen.
*/
-public class ResetNetworkConfirm extends InstrumentedPreferenceFragment {
+public class ResetNetworkConfirm extends InstrumentedFragment {
private View mContentView;
private int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
@@ -225,6 +225,7 @@
mEraseEsimTask.cancel(true /* mayInterruptIfRunning */);
mEraseEsimTask = null;
}
+ super.onDestroy();
}
@Override
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index dcf7ed5..599d6fb 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -54,7 +54,7 @@
public static class NightDisplaySettingsActivity extends SettingsActivity { /* empty */ }
public static class NightDisplaySuggestionActivity extends NightDisplaySettingsActivity { /* empty */ }
public static class DeviceInfoSettingsActivity extends SettingsActivity { /* empty */ }
- public static class MeCardActivity extends SettingsActivity { /* empty */ }
+ public static class MyDeviceInfoActivity extends SettingsActivity { /* empty */ }
public static class ApplicationSettingsActivity extends SettingsActivity { /* empty */ }
public static class ManageApplicationsActivity extends SettingsActivity { /* empty */ }
public static class ManageAssistActivity extends SettingsActivity { /* empty */ }
@@ -67,8 +67,7 @@
public static class AccessibilityInversionSettingsActivity extends SettingsActivity { /* empty */ }
public static class AccessibilityContrastSettingsActivity extends SettingsActivity { /* empty */ }
public static class AccessibilityDaltonizerSettingsActivity extends SettingsActivity { /* empty */ }
- public static class SecuritySettingsActivity extends SettingsActivity { /* empty */ }
- public static class SecuritySettingsActivityV2 extends SettingsActivity { /* empty */ }
+ public static class SecurityDashboardActivity extends SettingsActivity { /* empty */ }
public static class UsageAccessSettingsActivity extends SettingsActivity { /* empty */ }
public static class LocationSettingsActivity extends SettingsActivity { /* empty */ }
public static class PrivacySettingsActivity extends SettingsActivity { /* empty */ }
@@ -79,8 +78,8 @@
public static class AccountSyncSettingsInAddAccountActivity extends SettingsActivity { /* empty */ }
public static class CryptKeeperSettingsActivity extends SettingsActivity { /* empty */ }
public static class DeviceAdminSettingsActivity extends SettingsActivity { /* empty */ }
- public static class DataPlanUsageSummaryActivity extends SettingsActivity { /* empty */ }
public static class DataUsageSummaryActivity extends SettingsActivity { /* empty */ }
+ public static class DataUsageSummaryLegacyActivity extends SettingsActivity { /* empty */ }
public static class MobileDataUsageListActivity extends SettingsActivity { /* empty */ }
public static class ConfigureWifiSettingsActivity extends SettingsActivity { /* empty */ }
public static class SavedAccessPointsSettingsActivity extends SettingsActivity { /* empty */ }
@@ -97,6 +96,7 @@
public static class ZenAccessSettingsActivity extends SettingsActivity { /* empty */ }
public static class ConditionProviderSettingsActivity extends SettingsActivity { /* empty */ }
public static class UsbSettingsActivity extends SettingsActivity { /* empty */ }
+ public static class UsbDetailsActivity extends SettingsActivity { /* empty */ }
public static class TrustedCredentialsSettingsActivity extends SettingsActivity { /* empty */ }
public static class PaymentSettingsActivity extends SettingsActivity { /* empty */ }
public static class PrintSettingsActivity extends SettingsActivity { /* empty */ }
@@ -109,7 +109,6 @@
public static class ZenModeExternalRuleSettingsActivity extends SettingsActivity { /* empty */ }
public static class SoundSettingsActivity extends SettingsActivity { /* empty */ }
public static class ConfigureNotificationSettingsActivity extends SettingsActivity { /* empty */ }
- public static class NotificationAppListActivity extends SettingsActivity { /* empty */ }
public static class AppNotificationSettingsActivity extends SettingsActivity { /* empty */ }
public static class ChannelNotificationSettingsActivity extends SettingsActivity { /* empty */ }
public static class ChannelGroupNotificationSettingsActivity extends SettingsActivity { /* empty */ }
@@ -168,7 +167,7 @@
public static class PowerUsageSummaryLegacyActivity extends SettingsActivity { /* empty */ }
public static class AppAndNotificationDashboardActivity extends SettingsActivity {}
public static class StorageDashboardActivity extends SettingsActivity {}
- public static class UserAndAccountDashboardActivity extends SettingsActivity {}
+ public static class AccountDashboardActivity extends SettingsActivity {}
public static class SystemDashboardActivity extends SettingsActivity {}
public static class AdvancedConnectedDeviceActivity extends SettingsActivity {
public static final boolean isEnabled() {
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index cc90619..f9aaf84 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -16,6 +16,8 @@
package com.android.settings;
+import static android.view.View.IMPORTANT_FOR_ACCESSIBILITY_NO;
+
import android.app.ActionBar;
import android.app.ActivityManager;
import android.app.Fragment;
@@ -44,6 +46,7 @@
import android.support.v7.preference.PreferenceManager;
import android.text.TextUtils;
import android.transition.TransitionManager;
+import android.util.FeatureFlagUtils;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
@@ -55,6 +58,7 @@
import com.android.settings.Settings.WifiSettingsActivity;
import com.android.settings.applications.manageapplications.ManageApplications;
import com.android.settings.backup.BackupSettingsActivity;
+import com.android.settings.core.FeatureFlags;
import com.android.settings.core.gateway.SettingsGateway;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.dashboard.DashboardSummary;
@@ -80,8 +84,6 @@
// Constants for state save/restore
private static final String SAVE_KEY_CATEGORIES = ":settings:categories";
- @VisibleForTesting
- static final String SAVE_KEY_SHOW_HOME_AS_UP = ":settings:show_home_as_up";
/**
* When starting this activity, the invoking Intent can contain this extra
@@ -144,12 +146,10 @@
public static final String EXTRA_HIDE_DRAWER = ":settings:hide_drawer";
public static final String META_DATA_KEY_FRAGMENT_CLASS =
- "com.android.settings.FRAGMENT_CLASS";
+ "com.android.settings.FRAGMENT_CLASS";
private static final String EXTRA_UI_OPTIONS = "settings:ui_options";
- private static final int REQUEST_SUGGESTION = 42;
-
private String mFragmentClass;
private CharSequence mInitialTitle;
@@ -181,9 +181,6 @@
private Button mNextButton;
- @VisibleForTesting
- boolean mDisplayHomeAsUpEnabled;
-
private boolean mIsShowingDashboard;
private boolean mIsShortcut;
@@ -195,7 +192,6 @@
private ArrayList<DashboardCategory> mCategories = new ArrayList<>();
private DashboardFeatureProvider mDashboardFeatureProvider;
- private ComponentName mCurrentSuggestion;
public SwitchBar getSwitchBar() {
return mSwitchBar;
@@ -308,9 +304,6 @@
mCategories.addAll(categories);
setTitleFromBackStack();
}
-
- mDisplayHomeAsUpEnabled = savedState.getBoolean(SAVE_KEY_SHOW_HOME_AS_UP);
-
} else {
launchSettingFragment(initialFragmentName, isSubSettings, intent);
}
@@ -329,13 +322,14 @@
// and goes to the search UI. Also set the background to null so there's no ripple.
View navView = toolbar.getNavigationView();
navView.setClickable(false);
+ navView.setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_NO);
navView.setBackground(null);
}
ActionBar actionBar = getActionBar();
if (actionBar != null) {
- actionBar.setDisplayHomeAsUpEnabled(mDisplayHomeAsUpEnabled);
- actionBar.setHomeButtonEnabled(mDisplayHomeAsUpEnabled);
+ actionBar.setDisplayHomeAsUpEnabled(true);
+ actionBar.setHomeButtonEnabled(true);
actionBar.setDisplayShowTitleEnabled(!mIsShowingDashboard);
}
mSwitchBar = findViewById(R.id.switch_bar);
@@ -350,21 +344,21 @@
if (buttonBar != null) {
buttonBar.setVisibility(View.VISIBLE);
- Button backButton = (Button)findViewById(R.id.back_button);
+ Button backButton = (Button) findViewById(R.id.back_button);
backButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
setResult(RESULT_CANCELED, null);
finish();
}
});
- Button skipButton = (Button)findViewById(R.id.skip_button);
+ Button skipButton = (Button) findViewById(R.id.skip_button);
skipButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
setResult(RESULT_OK, null);
finish();
}
});
- mNextButton = (Button)findViewById(R.id.next_button);
+ mNextButton = (Button) findViewById(R.id.next_button);
mNextButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
setResult(RESULT_OK, null);
@@ -377,8 +371,7 @@
String buttonText = intent.getStringExtra(EXTRA_PREFS_SET_NEXT_TEXT);
if (TextUtils.isEmpty(buttonText)) {
mNextButton.setVisibility(View.GONE);
- }
- else {
+ } else {
mNextButton.setText(buttonText);
}
}
@@ -386,8 +379,7 @@
String buttonText = intent.getStringExtra(EXTRA_PREFS_SET_BACK_TEXT);
if (TextUtils.isEmpty(buttonText)) {
backButton.setVisibility(View.GONE);
- }
- else {
+ } else {
backButton.setText(buttonText);
}
}
@@ -405,26 +397,17 @@
@VisibleForTesting
void launchSettingFragment(String initialFragmentName, boolean isSubSettings, Intent intent) {
if (!mIsShowingDashboard && initialFragmentName != null) {
- // UP will be shown only if it is a sub settings
- if (mIsShortcut) {
- mDisplayHomeAsUpEnabled = isSubSettings;
- } else if (isSubSettings) {
- mDisplayHomeAsUpEnabled = true;
- } else {
- mDisplayHomeAsUpEnabled = false;
- }
setTitleFromIntent(intent);
Bundle initialArguments = intent.getBundleExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS);
switchToFragment(initialFragmentName, initialArguments, true, false,
- mInitialTitleResId, mInitialTitle, false);
+ mInitialTitleResId, mInitialTitle, false);
} else {
// Show search icon as up affordance if we are displaying the main Dashboard
- mDisplayHomeAsUpEnabled = true;
mInitialTitleResId = R.string.dashboard_title;
switchToFragment(DashboardSummary.class.getName(), null /* args */, false, false,
- mInitialTitleResId, mInitialTitle, false);
+ mInitialTitleResId, mInitialTitle, false);
}
}
@@ -506,15 +489,6 @@
if (mCategories.size() > 0) {
outState.putParcelableArrayList(SAVE_KEY_CATEGORIES, mCategories);
}
-
- outState.putBoolean(SAVE_KEY_SHOW_HOME_AS_UP, mDisplayHomeAsUpEnabled);
- }
-
- @Override
- protected void onRestoreInstanceState(Bundle savedInstanceState) {
- super.onRestoreInstanceState(savedInstanceState);
-
- mDisplayHomeAsUpEnabled = savedInstanceState.getBoolean(SAVE_KEY_SHOW_HOME_AS_UP);
}
@Override
@@ -607,17 +581,17 @@
* single-pane mode, a new activity will be launched in which to show the
* fragment.
*
- * @param fragmentClass Full name of the class implementing the fragment.
- * @param args Any desired arguments to supply to the fragment.
- * @param titleRes Optional resource identifier of the title of this
- * fragment.
- * @param titleText Optional text of the title of this fragment.
- * @param resultTo Optional fragment that result data should be sent to.
- * If non-null, resultTo.onActivityResult() will be called when this
- * preference panel is done. The launched panel must use
- * {@link #finishPreferencePanel(Fragment, int, Intent)} when done.
+ * @param fragmentClass Full name of the class implementing the fragment.
+ * @param args Any desired arguments to supply to the fragment.
+ * @param titleRes Optional resource identifier of the title of this
+ * fragment.
+ * @param titleText Optional text of the title of this fragment.
+ * @param resultTo Optional fragment that result data should be sent to.
+ * If non-null, resultTo.onActivityResult() will be called when this
+ * preference panel is done. The launched panel must use
+ * {@link #finishPreferencePanel(Fragment, int, Intent)} when done.
* @param resultRequestCode If resultTo is non-null, this is the caller's
- * request code to be received with the result.
+ * request code to be received with the result.
*/
public void startPreferencePanel(Fragment caller, String fragmentClass, Bundle args,
int titleRes, CharSequence titleText, Fragment resultTo, int resultRequestCode) {
@@ -636,10 +610,10 @@
* activity will be launched in which to show the fragment.
*
* @param fragmentClass Full name of the class implementing the fragment.
- * @param args Any desired arguments to supply to the fragment.
- * @param titleRes Optional resource identifier of the title of this fragment.
- * @param titleText Optional text of the title of this fragment.
- * @param userHandle The user for which the panel has to be started.
+ * @param args Any desired arguments to supply to the fragment.
+ * @param titleRes Optional resource identifier of the title of this fragment.
+ * @param titleText Optional text of the title of this fragment.
+ * @param userHandle The user for which the panel has to be started.
*/
public void startPreferencePanelAsUser(Fragment caller, String fragmentClass,
Bundle args, int titleRes, CharSequence titleText, UserHandle userHandle) {
@@ -673,11 +647,11 @@
/**
* Called by a preference panel fragment to finish itself.
*
- * @param caller The fragment that is asking to be finished.
+ * @param caller The fragment that is asking to be finished.
* @param resultCode Optional result code to send back to the original
- * launching fragment.
+ * launching fragment.
* @param resultData Optional result data to send back to the original
- * launching fragment.
+ * launching fragment.
*/
public void finishPreferencePanel(Fragment caller, int resultCode, Intent resultData) {
setResult(resultCode, resultData);
@@ -688,8 +662,8 @@
* Start a new fragment.
*
* @param fragment The fragment to start
- * @param push If true, the current fragment will be pushed onto the back stack. If false,
- * the current fragment will be replaced.
+ * @param push If true, the current fragment will be pushed onto the back stack. If false,
+ * the current fragment will be replaced.
*/
public void startPreferenceFragment(Fragment fragment, boolean push) {
FragmentTransaction transaction = getFragmentManager().beginTransaction();
@@ -759,31 +733,11 @@
pm.hasSystemFeature(PackageManager.FEATURE_BLUETOOTH), isAdmin)
|| somethingChanged;
- boolean isDataPlanFeatureEnabled = FeatureFactory.getFactory(this)
- .getDataPlanFeatureProvider()
- .isEnabled();
-
- // When the data plan feature flag is turned on we disable DataUsageSummaryActivity
- // and enable DataPlanUsageSummaryActivity. When the feature flag is turned off we do the
- // reverse.
-
- // Disable DataUsageSummaryActivity if the data plan feature flag is turned on otherwise
- // disable DataPlanUsageSummaryActivity.
- somethingChanged = setTileEnabled(
- new ComponentName(packageName,
- isDataPlanFeatureEnabled
- ? Settings.DataUsageSummaryActivity.class.getName()
- : Settings.DataPlanUsageSummaryActivity.class.getName()),
- false /* enabled */,
- isAdmin) || somethingChanged;
// Enable DataUsageSummaryActivity if the data plan feature flag is turned on otherwise
// enable DataPlanUsageSummaryActivity.
somethingChanged = setTileEnabled(
- new ComponentName(packageName,
- isDataPlanFeatureEnabled
- ? Settings.DataPlanUsageSummaryActivity.class.getName()
- : Settings.DataUsageSummaryActivity.class.getName()),
+ new ComponentName(packageName, Settings.DataUsageSummaryActivity.class.getName()),
Utils.isBandwidthControlEnabled() /* enabled */,
isAdmin) || somethingChanged;
@@ -802,20 +756,6 @@
!isConnectedDeviceV2Enabled && !UserManager.isDeviceInDemoMode(this) /* enabled */,
isAdmin) || somethingChanged;
- final boolean isSecurityV2Enabled = featureFactory.getSecurityFeatureProvider()
- .isSecuritySettingsV2Enabled(this);
-
- // Enable new security page if v2 enabled
- somethingChanged = setTileEnabled(
- new ComponentName(packageName,Settings.SecuritySettingsActivityV2.class.getName()),
- isSecurityV2Enabled,
- isAdmin) || somethingChanged;
- // Enable old security page if v2 disabled
- somethingChanged = setTileEnabled(
- new ComponentName(packageName,Settings.SecuritySettingsActivity.class.getName()),
- !isSecurityV2Enabled,
- isAdmin) || somethingChanged;
-
somethingChanged = setTileEnabled(new ComponentName(packageName,
Settings.SimSettingsActivity.class.getName()),
Utils.showSimCardTile(this), isAdmin)
@@ -833,6 +773,19 @@
Settings.PowerUsageSummaryLegacyActivity.class.getName()),
mBatteryPresent && !isBatterySettingsV2Enabled, isAdmin) || somethingChanged;
+ final boolean isDataUsageSettingsV2Enabled =
+ FeatureFlagUtils.isEnabled(this, FeatureFlags.DATA_USAGE_SETTINGS_V2);
+ // Enable new data usage page if v2 enabled
+ somethingChanged = setTileEnabled(new ComponentName(packageName,
+ Settings.DataUsageSummaryActivity.class.getName()),
+ Utils.isBandwidthControlEnabled() && isDataUsageSettingsV2Enabled, isAdmin)
+ || somethingChanged;
+ // Enable legacy data usage page if v2 disabled
+ somethingChanged = setTileEnabled(new ComponentName(packageName,
+ Settings.DataUsageSummaryLegacyActivity.class.getName()),
+ Utils.isBandwidthControlEnabled() && !isDataUsageSettingsV2Enabled, isAdmin)
+ || somethingChanged;
+
somethingChanged = setTileEnabled(new ComponentName(packageName,
Settings.UserSettingsActivity.class.getName()),
UserHandle.MU_ENABLED && UserManager.supportsMultipleUsers()
@@ -855,7 +808,6 @@
|| somethingChanged;
final boolean showDev = DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(this)
- && !um.hasUserRestriction(UserManager.DISALLOW_DEBUGGING_FEATURES)
&& !Utils.isMonkeyRunning();
somethingChanged = setTileEnabled(new ComponentName(packageName,
@@ -878,7 +830,7 @@
.getAccountFeatureProvider()
.isMeCardEnabled(this);
somethingChanged = setTileEnabled(new ComponentName(packageName,
- Settings.MeCardActivity.class.getName()),
+ Settings.MyDeviceInfoActivity.class.getName()),
isMeCardEnabled, isAdmin)
|| somethingChanged;
somethingChanged = setTileEnabled(new ComponentName(packageName,
@@ -951,29 +903,6 @@
return mNextButton;
}
- @Override
- public boolean shouldUpRecreateTask(Intent targetIntent) {
- return super.shouldUpRecreateTask(new Intent(this, SettingsActivity.class));
- }
-
- public void startSuggestion(Intent intent) {
- if (intent == null || ActivityManager.isUserAMonkey()) {
- return;
- }
- mCurrentSuggestion = intent.getComponent();
- startActivityForResult(intent, REQUEST_SUGGESTION);
- }
-
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- if (requestCode == REQUEST_SUGGESTION && mCurrentSuggestion != null
- && resultCode != RESULT_CANCELED) {
- getPackageManager().setComponentEnabledSetting(mCurrentSuggestion,
- PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
- }
- super.onActivityResult(requestCode, resultCode, data);
- }
-
@VisibleForTesting
Bitmap getBitmapFromXmlResource(int drawableRes) {
Drawable drawable = getResources().getDrawable(drawableRes, getTheme());
diff --git a/src/com/android/settings/SettingsInitialize.java b/src/com/android/settings/SettingsInitialize.java
index 6b15770..9f2bdcc 100644
--- a/src/com/android/settings/SettingsInitialize.java
+++ b/src/com/android/settings/SettingsInitialize.java
@@ -34,6 +34,8 @@
import static android.content.pm.PackageManager.GET_RESOLVED_FILTER;
import static android.content.pm.PackageManager.MATCH_DISABLED_COMPONENTS;
+import com.android.settings.shortcut.CreateShortcut;
+
/**
* Listens to {@link Intent.ACTION_PRE_BOOT_COMPLETED} and {@link Intent.ACTION_USER_INITIALIZED}
* performs setup steps for a managed profile (disables the launcher icon of the Settings app,
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index c5d477a..2fceb63 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -30,9 +30,7 @@
import android.support.annotation.XmlRes;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceGroup;
-import android.support.v7.preference.PreferenceGroupAdapter;
import android.support.v7.preference.PreferenceScreen;
-import android.support.v7.preference.PreferenceViewHolder;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
@@ -49,6 +47,7 @@
import com.android.settings.search.actionbar.SearchMenuController;
import com.android.settings.support.actionbar.HelpMenuController;
import com.android.settings.support.actionbar.HelpResourceProvider;
+import com.android.settings.widget.HighlightablePreferenceGroupAdapter;
import com.android.settings.widget.LoadingViewController;
import com.android.settingslib.CustomDialogPreference;
import com.android.settingslib.CustomEditTextPreference;
@@ -65,9 +64,6 @@
private static final String TAG = "SettingsPreference";
- @VisibleForTesting
- static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600;
-
private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted";
protected final FooterPreferenceMixin mFooterPreferenceMixin =
@@ -75,14 +71,11 @@
private static final int ORDER_FIRST = -1;
- private static final int ORDER_LAST = Integer.MAX_VALUE -1;
private SettingsDialogFragment mDialogFragment;
// Cache the content resolver for async callbacks
private ContentResolver mContentResolver;
- private String mPreferenceKey;
-
private RecyclerView.Adapter mCurrentRootAdapter;
private boolean mIsDataSetObserverRegistered = false;
private RecyclerView.AdapterDataObserver mDataSetObserver =
@@ -146,8 +139,9 @@
// Check if we should keep the preferences expanded.
if (arguments != null) {
- mPreferenceKey = arguments.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
- if (!TextUtils.isEmpty(mPreferenceKey)) {
+ final String highlightKey =
+ arguments.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
+ if (!TextUtils.isEmpty(highlightKey)) {
final PreferenceScreen screen = getPreferenceScreen();
if (screen != null) {
screen.setInitialExpandedChildrenCount(Integer.MAX_VALUE);
@@ -205,7 +199,9 @@
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
- outState.putBoolean(SAVE_HIGHLIGHTED_KEY, mPreferenceHighlighted);
+ if (mAdapter != null) {
+ outState.putBoolean(SAVE_HIGHLIGHTED_KEY, mAdapter.isHighlightRequested());
+ }
}
@Override
@@ -217,10 +213,7 @@
@Override
public void onResume() {
super.onResume();
-
- if (mPreferenceKey != null) {
- highlightPreferenceIfNeeded();
- }
+ highlightPreferenceIfNeeded();
}
@Override
@@ -263,13 +256,11 @@
}
public void highlightPreferenceIfNeeded() {
- if (isAdded() && !mPreferenceHighlighted &&!TextUtils.isEmpty(mPreferenceKey)) {
- getView().postDelayed(new Runnable() {
- @Override
- public void run() {
- highlightPreference(mPreferenceKey);
- }
- }, DELAY_HIGHLIGHT_DURATION_MILLIS);
+ if (!isAdded()) {
+ return;
+ }
+ if (mAdapter != null) {
+ mAdapter.requestHighlight(getView(), getListView());
}
}
@@ -340,24 +331,6 @@
return mEmptyView;
}
- /**
- * Return a valid ListView position or -1 if none is found
- */
- private int canUseListViewForHighLighting(String key) {
- if (getListView() == null) {
- return -1;
- }
-
- RecyclerView listView = getListView();
- RecyclerView.Adapter adapter = listView.getAdapter();
-
- if (adapter != null && adapter instanceof PreferenceGroupAdapter) {
- return findListPositionFromKey((PreferenceGroupAdapter) adapter, key);
- }
-
- return -1;
- }
-
@Override
public RecyclerView.LayoutManager onCreateLayoutManager() {
mLayoutManager = new LinearLayoutManager(getContext());
@@ -366,7 +339,11 @@
@Override
protected RecyclerView.Adapter onCreateAdapter(PreferenceScreen preferenceScreen) {
- mAdapter = new HighlightablePreferenceGroupAdapter(preferenceScreen);
+ final Bundle arguments = getArguments();
+ mAdapter = new HighlightablePreferenceGroupAdapter(preferenceScreen,
+ arguments == null
+ ? null : arguments.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY),
+ mPreferenceHighlighted);
return mAdapter;
}
@@ -375,7 +352,7 @@
}
protected void cacheRemoveAllPrefs(PreferenceGroup group) {
- mPreferenceCache = new ArrayMap<String, Preference>();
+ mPreferenceCache = new ArrayMap<>();
final int N = group.getPreferenceCount();
for (int i = 0; i < N; i++) {
Preference p = group.getPreference(i);
@@ -401,29 +378,6 @@
return mPreferenceCache != null ? mPreferenceCache.size() : 0;
}
- private void highlightPreference(String key) {
- final int position = canUseListViewForHighLighting(key);
- if (position < 0) {
- return;
- }
-
- mPreferenceHighlighted = true;
- mLayoutManager.scrollToPosition(position);
- mAdapter.highlight(position);
- }
-
- private int findListPositionFromKey(PreferenceGroupAdapter adapter, String key) {
- final int count = adapter.getItemCount();
- for (int n = 0; n < count; n++) {
- final Preference preference = adapter.getItem(n);
- final String preferenceKey = preference.getKey();
- if (preferenceKey != null && preferenceKey.equals(key)) {
- return n;
- }
- }
- return -1;
- }
-
protected boolean removePreference(String key) {
return removePreference(getPreferenceScreen(), key);
}
@@ -692,11 +646,11 @@
}
protected boolean hasNextButton() {
- return ((ButtonBarHandler)getActivity()).hasNextButton();
+ return ((ButtonBarHandler) getActivity()).hasNextButton();
}
protected Button getNextButton() {
- return ((ButtonBarHandler)getActivity()).getNextButton();
+ return ((ButtonBarHandler) getActivity()).getNextButton();
}
public void finish() {
@@ -741,45 +695,10 @@
} else {
Log.w(TAG,
"Parent isn't SettingsActivity nor PreferenceActivity, thus there's no way to "
- + "launch the given Fragment (name: " + fragmentClass
- + ", requestCode: " + requestCode + ")");
+ + "launch the given Fragment (name: " + fragmentClass
+ + ", requestCode: " + requestCode + ")");
return false;
}
}
- public static class HighlightablePreferenceGroupAdapter extends PreferenceGroupAdapter {
-
- @VisibleForTesting(otherwise=VisibleForTesting.NONE)
- int initialHighlightedPosition = -1;
-
- private int mHighlightPosition = -1;
-
- public HighlightablePreferenceGroupAdapter(PreferenceGroup preferenceGroup) {
- super(preferenceGroup);
- }
-
- public void highlight(int position) {
- mHighlightPosition = position;
- initialHighlightedPosition = position;
- notifyDataSetChanged();
- }
-
- @Override
- public void onBindViewHolder(PreferenceViewHolder holder, int position) {
- super.onBindViewHolder(holder, position);
- if (position == mHighlightPosition) {
- View v = holder.itemView;
- v.post(() -> {
- if (v.getBackground() != null) {
- final int centerX = v.getWidth() / 2;
- final int centerY = v.getHeight() / 2;
- v.getBackground().setHotspot(centerX, centerY);
- }
- v.setPressed(true);
- v.setPressed(false);
- mHighlightPosition = -1;
- });
- }
- }
- }
}
diff --git a/src/com/android/settings/SetupWizardUtils.java b/src/com/android/settings/SetupWizardUtils.java
index e3e49eb..85acc8a 100644
--- a/src/com/android/settings/SetupWizardUtils.java
+++ b/src/com/android/settings/SetupWizardUtils.java
@@ -34,6 +34,10 @@
}
if (theme != null) {
switch (theme) {
+ case WizardManagerHelper.THEME_GLIF_V3_LIGHT:
+ return R.style.GlifV3Theme_Light;
+ case WizardManagerHelper.THEME_GLIF_V3:
+ return R.style.GlifV3Theme;
case WizardManagerHelper.THEME_GLIF_V2_LIGHT:
return R.style.GlifV2Theme_Light;
case WizardManagerHelper.THEME_GLIF_V2:
@@ -50,7 +54,11 @@
public static int getTransparentTheme(Intent intent) {
final int suwTheme = getTheme(intent);
int wifiDialogTheme = R.style.GlifV2Theme_Light_Transparent;
- if (suwTheme == R.style.GlifV2Theme) {
+ if (suwTheme == R.style.GlifV3Theme) {
+ wifiDialogTheme = R.style.GlifV3Theme_Transparent;
+ } else if (suwTheme == R.style.GlifV3Theme_Light) {
+ wifiDialogTheme = R.style.GlifV3Theme_Light_Transparent;
+ } else if (suwTheme == R.style.GlifV2Theme) {
wifiDialogTheme = R.style.GlifV2Theme_Transparent;
} else if (suwTheme == R.style.GlifTheme_Light) {
wifiDialogTheme = R.style.SetupWizardTheme_Light_Transparent;
diff --git a/src/com/android/settings/TrustedCredentialsSettings.java b/src/com/android/settings/TrustedCredentialsSettings.java
index 491419a..86340be 100644
--- a/src/com/android/settings/TrustedCredentialsSettings.java
+++ b/src/com/android/settings/TrustedCredentialsSettings.java
@@ -65,7 +65,7 @@
import com.android.internal.app.UnlaunchableAppActivity;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import java.security.cert.CertificateEncodingException;
import java.security.cert.X509Certificate;
@@ -75,7 +75,7 @@
import java.util.Set;
import java.util.function.IntConsumer;
-public class TrustedCredentialsSettings extends InstrumentedPreferenceFragment
+public class TrustedCredentialsSettings extends InstrumentedFragment
implements TrustedCredentialsDialogBuilder.DelegateInterface {
public static final String ARG_SHOW_NEW_FOR_USER = "ARG_SHOW_NEW_FOR_USER";
@@ -117,7 +117,8 @@
private final int mContentView;
private final boolean mSwitch;
- private Tab(String tag, int label, int view, int progress, int contentView, boolean withSwitch) {
+ private Tab(String tag, int label, int view, int progress, int contentView,
+ boolean withSwitch) {
mTag = tag;
mLabel = label;
mView = view;
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index f45ac5e..1a32127 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -52,11 +52,8 @@
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.hardware.fingerprint.FingerprintManager;
-import android.icu.text.MeasureFormat;
import android.icu.text.RelativeDateTimeFormatter;
import android.icu.text.RelativeDateTimeFormatter.RelativeUnit;
-import android.icu.util.Measure;
-import android.icu.util.MeasureUnit;
import android.icu.util.ULocale;
import android.net.ConnectivityManager;
import android.net.LinkProperties;
@@ -88,8 +85,6 @@
import android.telephony.TelephonyManager;
import android.text.Spannable;
import android.text.SpannableString;
-import android.text.SpannableStringBuilder;
-import android.text.Spanned;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.style.TtsSpan;
@@ -112,6 +107,7 @@
import com.android.settings.wrapper.FingerprintManagerWrapper;
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;
+import com.android.settingslib.utils.StringUtil;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.Iterator;
@@ -138,10 +134,6 @@
private static final String SETTINGS_PACKAGE_NAME = "com.android.settings";
- private static final int SECONDS_PER_MINUTE = 60;
- private static final int SECONDS_PER_HOUR = 60 * 60;
- private static final int SECONDS_PER_DAY = 24 * 60 * 60;
-
public static final String OS_PKG = "os";
/**
@@ -772,113 +764,6 @@
}
/**
- * Returns elapsed time for the given millis, in the following format:
- * 2d 5h 40m 29s
- * @param context the application context
- * @param millis the elapsed time in milli seconds
- * @param withSeconds include seconds?
- * @return the formatted elapsed time
- */
- public static CharSequence formatElapsedTime(Context context, double millis,
- boolean withSeconds) {
- SpannableStringBuilder sb = new SpannableStringBuilder();
- int seconds = (int) Math.floor(millis / 1000);
- if (!withSeconds) {
- // Round up.
- seconds += 30;
- }
-
- int days = 0, hours = 0, minutes = 0;
- if (seconds >= SECONDS_PER_DAY) {
- days = seconds / SECONDS_PER_DAY;
- seconds -= days * SECONDS_PER_DAY;
- }
- if (seconds >= SECONDS_PER_HOUR) {
- hours = seconds / SECONDS_PER_HOUR;
- seconds -= hours * SECONDS_PER_HOUR;
- }
- if (seconds >= SECONDS_PER_MINUTE) {
- minutes = seconds / SECONDS_PER_MINUTE;
- seconds -= minutes * SECONDS_PER_MINUTE;
- }
-
- final ArrayList<Measure> measureList = new ArrayList(4);
- if (days > 0) {
- measureList.add(new Measure(days, MeasureUnit.DAY));
- }
- if (hours > 0) {
- measureList.add(new Measure(hours, MeasureUnit.HOUR));
- }
- if (minutes > 0) {
- measureList.add(new Measure(minutes, MeasureUnit.MINUTE));
- }
- if (withSeconds && seconds > 0) {
- measureList.add(new Measure(seconds, MeasureUnit.SECOND));
- }
- if (measureList.size() == 0) {
- // Everything addable was zero, so nothing was added. We add a zero.
- measureList.add(new Measure(0, withSeconds ? MeasureUnit.SECOND : MeasureUnit.MINUTE));
- }
- final Measure[] measureArray = measureList.toArray(new Measure[measureList.size()]);
-
- final Locale locale = context.getResources().getConfiguration().locale;
- final MeasureFormat measureFormat = MeasureFormat.getInstance(
- locale, MeasureFormat.FormatWidth.NARROW);
- sb.append(measureFormat.formatMeasures(measureArray));
-
- if (measureArray.length == 1 && MeasureUnit.MINUTE.equals(measureArray[0].getUnit())) {
- // Add ttsSpan if it only have minute value, because it will be read as "meters"
- final TtsSpan ttsSpan = new TtsSpan.MeasureBuilder().setNumber(minutes)
- .setUnit("minute").build();
- sb.setSpan(ttsSpan, 0, sb.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
- }
-
- return sb;
- }
-
- /**
- * Returns relative time for the given millis in the past, in a short format such as "2 days
- * ago", "5 hr. ago", "40 min. ago", or "29 sec. ago".
- *
- * <p>The unit is chosen to have good information value while only using one unit. So 27 hours
- * and 50 minutes would be formatted as "28 hr. ago", while 50 hours would be formatted as
- * "2 days ago".
- *
- * @param context the application context
- * @param millis the elapsed time in milli seconds
- * @param withSeconds include seconds?
- * @return the formatted elapsed time
- */
- public static CharSequence formatRelativeTime(Context context, double millis,
- boolean withSeconds) {
- final int seconds = (int) Math.floor(millis / 1000);
- final RelativeUnit unit;
- final int value;
- if (withSeconds && seconds < 2 * SECONDS_PER_MINUTE) {
- unit = RelativeUnit.SECONDS;
- value = seconds;
- } else if (seconds < 2 * SECONDS_PER_HOUR) {
- unit = RelativeUnit.MINUTES;
- value = (seconds + SECONDS_PER_MINUTE / 2) / SECONDS_PER_MINUTE;
- } else if (seconds < 2 * SECONDS_PER_DAY) {
- unit = RelativeUnit.HOURS;
- value = (seconds + SECONDS_PER_HOUR / 2) / SECONDS_PER_HOUR;
- } else {
- unit = RelativeUnit.DAYS;
- value = (seconds + SECONDS_PER_DAY / 2) / SECONDS_PER_DAY;
- }
-
- final Locale locale = context.getResources().getConfiguration().locale;
- final RelativeDateTimeFormatter formatter = RelativeDateTimeFormatter.getInstance(
- ULocale.forLocale(locale),
- null /* default NumberFormat */,
- RelativeDateTimeFormatter.Style.SHORT,
- android.icu.text.DisplayContext.CAPITALIZATION_FOR_MIDDLE_OF_SENTENCE);
-
- return formatter.format(value, RelativeDateTimeFormatter.Direction.LAST, unit);
- }
-
- /**
* Queries for the UserInfo of a user. Returns null if the user doesn't exist (was removed).
* @param userManager Instance of UserManager
* @param checkUser The user to check the existence of.
diff --git a/src/com/android/settings/accessibility/AccessibilitySettings.java b/src/com/android/settings/accessibility/AccessibilitySettings.java
index df8d4c8..7335bae 100644
--- a/src/com/android/settings/accessibility/AccessibilitySettings.java
+++ b/src/com/android/settings/accessibility/AccessibilitySettings.java
@@ -16,6 +16,8 @@
package com.android.settings.accessibility;
+import static android.os.Vibrator.VibrationIntensity;
+
import android.accessibilityservice.AccessibilityServiceInfo;
import android.app.admin.DevicePolicyManager;
import android.content.ComponentName;
@@ -28,6 +30,7 @@
import android.os.Bundle;
import android.os.Handler;
import android.os.UserHandle;
+import android.os.Vibrator;
import android.provider.SearchIndexableResource;
import android.provider.Settings;
import android.support.annotation.VisibleForTesting;
@@ -111,6 +114,8 @@
"tts_settings_preference";
private static final String AUTOCLICK_PREFERENCE_SCREEN =
"autoclick_preference_screen";
+ private static final String VIBRATION_PREFERENCE_SCREEN =
+ "vibration_preference_screen";
@VisibleForTesting static final String TOGGLE_INVERSION_PREFERENCE =
"toggle_inversion_preference";
@@ -215,6 +220,7 @@
private Preference mAutoclickPreferenceScreen;
private Preference mAccessibilityShortcutPreferenceScreen;
private Preference mDisplayDaltonizerPreferenceScreen;
+ private Preference mVibrationPreferenceScreen;
private SwitchPreference mToggleInversionPreference;
private int mLongPressTimeoutDefault;
@@ -452,9 +458,11 @@
// Display color adjustments.
mDisplayDaltonizerPreferenceScreen = findPreference(DISPLAY_DALTONIZER_PREFERENCE_SCREEN);
- // Accessibility shortcut
+ // Accessibility shortcut.
mAccessibilityShortcutPreferenceScreen = findPreference(ACCESSIBILITY_SHORTCUT_PREFERENCE);
+ // Vibrations.
+ mVibrationPreferenceScreen = findPreference(VIBRATION_PREFERENCE_SCREEN);
}
private void updateAllPreferences() {
@@ -661,6 +669,8 @@
mSelectLongPressTimeoutPreference.setValue(value);
mSelectLongPressTimeoutPreference.setSummary(mLongPressTimeoutValueToTitleMap.get(value));
+ updateVibrationSummary(mVibrationPreferenceScreen);
+
updateFeatureSummary(Settings.Secure.ACCESSIBILITY_CAPTIONING_ENABLED,
mCaptioningPreferenceScreen);
updateFeatureSummary(Settings.Secure.ACCESSIBILITY_DISPLAY_DALTONIZER_ENABLED,
@@ -726,6 +736,29 @@
pref.setSummary(entries[index]);
}
+ private void updateVibrationSummary(Preference pref) {
+ Vibrator vibrator = getContext().getSystemService(Vibrator.class);
+ final int intensity = Settings.System.getInt(getContext().getContentResolver(),
+ Settings.System.NOTIFICATION_VIBRATION_INTENSITY,
+ vibrator.getDefaultNotificationVibrationIntensity());
+ mVibrationPreferenceScreen.setSummary(getVibrationSummary(getContext(), intensity));
+ }
+
+ private String getVibrationSummary(Context context, @VibrationIntensity int intensity) {
+ switch (intensity) {
+ case Vibrator.VIBRATION_INTENSITY_OFF:
+ return context.getString(R.string.accessibility_vibration_summary_off);
+ case Vibrator.VIBRATION_INTENSITY_LOW:
+ return context.getString(R.string.accessibility_vibration_summary_low);
+ case Vibrator.VIBRATION_INTENSITY_MEDIUM:
+ return context.getString(R.string.accessibility_vibration_summary_medium);
+ case Vibrator.VIBRATION_INTENSITY_HIGH:
+ return context.getString(R.string.accessibility_vibration_summary_high);
+ default:
+ return "";
+ }
+ }
+
private void updateLockScreenRotationCheckbox() {
Context context = getActivity();
if (context != null) {
diff --git a/src/com/android/settings/accessibility/NotificationVibrationPreferenceFragment.java b/src/com/android/settings/accessibility/NotificationVibrationPreferenceFragment.java
new file mode 100644
index 0000000..6340bb1
--- /dev/null
+++ b/src/com/android/settings/accessibility/NotificationVibrationPreferenceFragment.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2018 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.settings.accessibility;
+
+import android.os.Vibrator;
+import android.provider.Settings;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+
+/**
+ * Fragment for picking accessibility shortcut service
+ */
+public class NotificationVibrationPreferenceFragment extends VibrationPreferenceFragment {
+ @Override
+ public int getMetricsCategory() {
+ return MetricsEvent.ACCESSIBILITY_VIBRATION_NOTIFICATION;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.accessibility_notification_vibration_settings;
+ }
+
+ /**
+ * Get the setting string of the vibration intensity setting this preference is dealing with.
+ */
+ @Override
+ protected String getVibrationIntensitySetting() {
+ return Settings.System.NOTIFICATION_VIBRATION_INTENSITY;
+ }
+
+ @Override
+ protected int getDefaultVibrationIntensity() {
+ Vibrator vibrator = getContext().getSystemService(Vibrator.class);
+ return vibrator.getDefaultNotificationVibrationIntensity();
+ }
+}
diff --git a/src/com/android/settings/accessibility/TouchVibrationPreferenceFragment.java b/src/com/android/settings/accessibility/TouchVibrationPreferenceFragment.java
new file mode 100644
index 0000000..ea36833
--- /dev/null
+++ b/src/com/android/settings/accessibility/TouchVibrationPreferenceFragment.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2018 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.settings.accessibility;
+
+import android.graphics.drawable.Drawable;
+import android.os.Vibrator;
+import android.provider.Settings;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+
+/**
+ * Fragment for picking accessibility shortcut service
+ */
+public class TouchVibrationPreferenceFragment extends VibrationPreferenceFragment {
+ @Override
+ public int getMetricsCategory() {
+ return MetricsEvent.ACCESSIBILITY_VIBRATION_TOUCH;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.accessibility_touch_vibration_settings;
+ }
+
+ /**
+ * Get the setting string of the vibration intensity setting this preference is dealing with.
+ */
+ @Override
+ protected String getVibrationIntensitySetting() {
+ return Settings.System.HAPTIC_FEEDBACK_INTENSITY;
+ }
+
+ @Override
+ protected int getDefaultVibrationIntensity() {
+ Vibrator vibrator = getContext().getSystemService(Vibrator.class);
+ return vibrator.getDefaultHapticFeedbackIntensity();
+ }
+
+ @Override
+ public void onVibrationIntensitySelected(int intensity) {
+ // We want to keep HAPTIC_FEEDBACK_ENABLED consistent with this setting since some
+ // applications check it directly before triggering their own haptic feedback.
+ final boolean hapticFeedbackEnabled = !(intensity == Vibrator.VIBRATION_INTENSITY_OFF);
+ Settings.System.putInt(getContext().getContentResolver(),
+ Settings.System.HAPTIC_FEEDBACK_ENABLED, hapticFeedbackEnabled ? 1 : 0);
+ }
+}
diff --git a/src/com/android/settings/accessibility/VibrationPreferenceFragment.java b/src/com/android/settings/accessibility/VibrationPreferenceFragment.java
new file mode 100644
index 0000000..f81208f
--- /dev/null
+++ b/src/com/android/settings/accessibility/VibrationPreferenceFragment.java
@@ -0,0 +1,193 @@
+/*
+ * Copyright (C) 2018 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.settings.accessibility;
+
+import static android.os.Vibrator.VibrationIntensity;
+
+import android.support.annotation.VisibleForTesting;
+import android.content.Context;
+import android.database.ContentObserver;
+import android.graphics.drawable.Drawable;
+import android.net.Uri;
+import android.os.Handler;
+import android.os.Vibrator;
+import android.provider.Settings;
+import android.util.ArrayMap;
+import android.util.Log;
+
+import com.android.internal.accessibility.AccessibilityShortcutController;
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+import com.android.settings.widget.RadioButtonPickerFragment;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Fragment for changing vibration settings.
+ */
+public abstract class VibrationPreferenceFragment extends RadioButtonPickerFragment {
+ private static final String TAG = "VibrationPreferenceFragment";
+
+ @VisibleForTesting
+ final static String KEY_INTENSITY_OFF = "intensity_off";
+ @VisibleForTesting
+ final static String KEY_INTENSITY_LOW = "intensity_low";
+ @VisibleForTesting
+ final static String KEY_INTENSITY_MEDIUM = "intensity_medium";
+ @VisibleForTesting
+ final static String KEY_INTENSITY_HIGH = "intensity_high";
+
+ private final Map<String, VibrationIntensityCandidateInfo> mCandidates;
+ private final SettingsObserver mSettingsObserver;
+
+ public VibrationPreferenceFragment() {
+ mCandidates = new ArrayMap<>();
+ mCandidates.put(KEY_INTENSITY_OFF,
+ new VibrationIntensityCandidateInfo(KEY_INTENSITY_OFF,
+ R.string.accessibility_vibration_intensity_off,
+ Vibrator.VIBRATION_INTENSITY_OFF));
+ mCandidates.put(KEY_INTENSITY_LOW,
+ new VibrationIntensityCandidateInfo(KEY_INTENSITY_LOW,
+ R.string.accessibility_vibration_intensity_low,
+ Vibrator.VIBRATION_INTENSITY_LOW));
+ mCandidates.put(KEY_INTENSITY_MEDIUM,
+ new VibrationIntensityCandidateInfo(KEY_INTENSITY_MEDIUM,
+ R.string.accessibility_vibration_intensity_medium,
+ Vibrator.VIBRATION_INTENSITY_MEDIUM));
+ mCandidates.put(KEY_INTENSITY_HIGH,
+ new VibrationIntensityCandidateInfo(KEY_INTENSITY_HIGH,
+ R.string.accessibility_vibration_intensity_high,
+ Vibrator.VIBRATION_INTENSITY_HIGH));
+ mSettingsObserver = new SettingsObserver();
+ }
+
+ @Override
+ public void onAttach(Context context) {
+ super.onAttach(context);
+ mSettingsObserver.register();
+ }
+
+ @Override
+ public void onDetach() {
+ super.onDetach();
+ mSettingsObserver.unregister();
+ }
+
+ /**
+ * Get the setting string of the vibration intensity setting this preference is dealing with.
+ */
+ protected abstract String getVibrationIntensitySetting();
+
+ /**
+ * Get the default intensity for the desired setting.
+ */
+ protected abstract int getDefaultVibrationIntensity();
+
+ /**
+ * When a new vibration intensity is selected by the user.
+ */
+ protected void onVibrationIntensitySelected(int intensity) { }
+
+ @Override
+ protected List<? extends CandidateInfo> getCandidates() {
+ List<VibrationIntensityCandidateInfo> candidates = new ArrayList<>(mCandidates.values());
+ candidates.sort(
+ Comparator.comparing(VibrationIntensityCandidateInfo::getIntensity).reversed());
+ return candidates;
+ }
+
+ @Override
+ protected String getDefaultKey() {
+ final int vibrationIntensity = Settings.System.getInt(getContext().getContentResolver(),
+ getVibrationIntensitySetting(), getDefaultVibrationIntensity());
+ for (VibrationIntensityCandidateInfo candidate : mCandidates.values()) {
+ if (candidate.getIntensity() == vibrationIntensity) {
+ return candidate.getKey();
+ }
+ }
+ return null;
+ }
+
+ @Override
+ protected boolean setDefaultKey(String key) {
+ VibrationIntensityCandidateInfo candidate = mCandidates.get(key);
+ if (candidate == null) {
+ Log.e(TAG, "Tried to set unknown intensity (key=" + key + ")!");
+ return false;
+ }
+ Settings.System.putInt(getContext().getContentResolver(),
+ getVibrationIntensitySetting(), candidate.getIntensity());
+ onVibrationIntensitySelected(candidate.getIntensity());
+ return true;
+ }
+
+ @VisibleForTesting
+ class VibrationIntensityCandidateInfo extends CandidateInfo {
+ private String mKey;
+ private int mLabelId;
+ @VibrationIntensity
+ private int mIntensity;
+
+ public VibrationIntensityCandidateInfo(String key, int labelId, int intensity) {
+ super(true /* enabled */);
+ mKey = key;
+ mLabelId = labelId;
+ mIntensity = intensity;
+ }
+
+ @Override
+ public CharSequence loadLabel() {
+ return getContext().getString(mLabelId);
+ }
+
+ @Override
+ public Drawable loadIcon() {
+ return null;
+ }
+
+ @Override
+ public String getKey() {
+ return mKey;
+ }
+
+ public int getIntensity() {
+ return mIntensity;
+ }
+ }
+
+ private class SettingsObserver extends ContentObserver {
+ public SettingsObserver() {
+ super(new Handler());
+ }
+
+ public void register() {
+ getContext().getContentResolver().registerContentObserver(
+ Settings.System.getUriFor(getVibrationIntensitySetting()), false, this);
+ }
+
+ public void unregister() {
+ getContext().getContentResolver().unregisterContentObserver(this);
+ }
+
+ @Override
+ public void onChange(boolean selfChange, Uri uri) {
+ updateCandidates();
+ }
+ }
+}
diff --git a/src/com/android/settings/accessibility/VibrationSettings.java b/src/com/android/settings/accessibility/VibrationSettings.java
new file mode 100644
index 0000000..8aa4513
--- /dev/null
+++ b/src/com/android/settings/accessibility/VibrationSettings.java
@@ -0,0 +1,153 @@
+/*
+ * Copyright (C) 2018 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.settings.accessibility;
+
+import android.content.Context;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Vibrator;
+import android.provider.SearchIndexableResource;
+import android.provider.Settings;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settings.search.Indexable;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Activity with the accessibility settings.
+ */
+public class VibrationSettings extends SettingsPreferenceFragment implements Indexable {
+
+ // Preferences
+ @VisibleForTesting
+ static final String NOTIFICATION_VIBRATION_PREFERENCE_SCREEN =
+ "notification_vibration_preference_screen";
+ @VisibleForTesting
+ static final String TOUCH_VIBRATION_PREFERENCE_SCREEN =
+ "touch_vibration_preference_screen";
+
+ private final Handler mHandler = new Handler();
+ private final SettingsContentObserver mSettingsContentObserver;
+
+ private Preference mNotificationVibrationPreferenceScreen;
+ private Preference mTouchVibrationPreferenceScreen;
+
+ public VibrationSettings() {
+ List<String> vibrationSettings = new ArrayList<>();
+ vibrationSettings.add(Settings.System.HAPTIC_FEEDBACK_INTENSITY);
+ vibrationSettings.add(Settings.System.NOTIFICATION_VIBRATION_INTENSITY);
+ mSettingsContentObserver = new SettingsContentObserver(mHandler, vibrationSettings) {
+ @Override
+ public void onChange(boolean selfChange, Uri uri) {
+ updatePreferences();
+ }
+ };
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsEvent.ACCESSIBILITY_VIBRATION;
+ }
+
+ @Override
+ public void onCreate(Bundle icicle) {
+ super.onCreate(icicle);
+ addPreferencesFromResource(R.xml.accessibility_vibration_settings);
+ initializePreferences();
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ updatePreferences();
+ mSettingsContentObserver.register(getContentResolver());
+ }
+
+ @Override
+ public void onPause() {
+ mSettingsContentObserver.unregister(getContentResolver());
+ super.onPause();
+ }
+
+ private void initializePreferences() {
+ // Notification and notification vibration strength adjustments.
+ mNotificationVibrationPreferenceScreen =
+ findPreference(NOTIFICATION_VIBRATION_PREFERENCE_SCREEN);
+
+ // Touch feedback strength adjustments.
+ mTouchVibrationPreferenceScreen = findPreference(TOUCH_VIBRATION_PREFERENCE_SCREEN);
+ }
+
+ private void updatePreferences() {
+ updateNotificationVibrationSummary(mNotificationVibrationPreferenceScreen);
+ updateTouchVibrationSummary(mTouchVibrationPreferenceScreen);
+ }
+
+ private void updateNotificationVibrationSummary(Preference pref) {
+ Vibrator vibrator = getContext().getSystemService(Vibrator.class);
+ final int intensity = Settings.System.getInt(getContext().getContentResolver(),
+ Settings.System.NOTIFICATION_VIBRATION_INTENSITY,
+ vibrator.getDefaultNotificationVibrationIntensity());
+ CharSequence summary = getVibrationIntensitySummary(getContext(), intensity);
+ mNotificationVibrationPreferenceScreen.setSummary(summary);
+ }
+
+ private void updateTouchVibrationSummary(Preference pref) {
+ Vibrator vibrator = getContext().getSystemService(Vibrator.class);
+ final int intensity = Settings.System.getInt(getContext().getContentResolver(),
+ Settings.System.HAPTIC_FEEDBACK_INTENSITY,
+ vibrator.getDefaultHapticFeedbackIntensity());
+ CharSequence summary = getVibrationIntensitySummary(getContext(), intensity);
+ mTouchVibrationPreferenceScreen.setSummary(summary);
+ }
+
+ public static String getVibrationIntensitySummary(Context context, int intensity) {
+ switch (intensity) {
+ case Vibrator.VIBRATION_INTENSITY_OFF:
+ return context.getString(R.string.accessibility_vibration_intensity_off);
+ case Vibrator.VIBRATION_INTENSITY_LOW:
+ return context.getString(R.string.accessibility_vibration_intensity_low);
+ case Vibrator.VIBRATION_INTENSITY_MEDIUM:
+ return context.getString(R.string.accessibility_vibration_intensity_medium);
+ case Vibrator.VIBRATION_INTENSITY_HIGH:
+ return context.getString(R.string.accessibility_vibration_intensity_high);
+ default:
+ return "";
+ }
+ }
+
+ public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new BaseSearchIndexProvider() {
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
+ boolean enabled) {
+ List<SearchIndexableResource> indexables = new ArrayList<>();
+ SearchIndexableResource indexable = new SearchIndexableResource(context);
+ indexable.xmlResId = R.xml.accessibility_vibration_settings;
+ indexables.add(indexable);
+ return indexables;
+ }
+ };
+}
diff --git a/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java b/src/com/android/settings/accounts/AccountDashboardFragment.java
similarity index 66%
rename from src/com/android/settings/accounts/UserAndAccountDashboardFragment.java
rename to src/com/android/settings/accounts/AccountDashboardFragment.java
index 37584fc..0a4c343 100644
--- a/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java
+++ b/src/com/android/settings/accounts/AccountDashboardFragment.java
@@ -19,26 +19,26 @@
import android.app.Activity;
import android.content.Context;
-import android.content.pm.UserInfo;
import android.os.UserHandle;
-import android.os.UserManager;
import android.provider.SearchIndexableResource;
+import android.text.BidiFormatter;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settingslib.accounts.AuthenticatorHelper;
import com.android.settingslib.core.AbstractPreferenceController;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-public class UserAndAccountDashboardFragment extends DashboardFragment {
+public class AccountDashboardFragment extends DashboardFragment {
- private static final String TAG = "UserAndAccountDashboard";
- private static final String KEY_ADD_USER_WHEN_LOCKED = "user_settings_add_users_when_locked";
+ private static final String TAG = "AccountDashboardFrag";
+
@Override
public int getMetricsCategory() {
@@ -52,7 +52,7 @@
@Override
protected int getPreferenceScreenResId() {
- return R.xml.user_and_accounts_settings;
+ return R.xml.accounts_dashboard_settings;
}
@Override
@@ -63,16 +63,7 @@
@Override
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
- controllers.add(new EmergencyInfoPreferenceController(context));
- AddUserWhenLockedPreferenceController addUserWhenLockedPrefController =
- new AddUserWhenLockedPreferenceController(
- context, KEY_ADD_USER_WHEN_LOCKED);
- controllers.add(addUserWhenLockedPrefController);
- getLifecycle().addObserver(addUserWhenLockedPrefController);
- controllers.add(new AutoSyncDataPreferenceController(context, this));
- controllers.add(new AutoSyncPersonalDataPreferenceController(context, this));
- controllers.add(new AutoSyncWorkDataPreferenceController(context, this));
- String[] authorities = getIntent().getStringArrayExtra(EXTRA_AUTHORITIES);
+ final String[] authorities = getIntent().getStringArrayExtra(EXTRA_AUTHORITIES);
final AccountPreferenceController accountPrefController =
new AccountPreferenceController(context, this, authorities);
getLifecycle().addObserver(accountPrefController);
@@ -93,10 +84,30 @@
@Override
public void setListening(boolean listening) {
if (listening) {
- UserInfo info = mContext.getSystemService(UserManager.class).getUserInfo(
- UserHandle.myUserId());
- mSummaryLoader.setSummary(this,
- mContext.getString(R.string.users_and_accounts_summary, info.name));
+ final AuthenticatorHelper authHelper = new AuthenticatorHelper(mContext,
+ UserHandle.of(UserHandle.myUserId()), null /* OnAccountsUpdateListener */);
+ final String[] types = authHelper.getEnabledAccountTypes();
+
+ final BidiFormatter bidiFormatter = BidiFormatter.getInstance();
+
+ CharSequence summary = null;
+ if (types == null || types.length == 0) {
+ summary = mContext.getString(R.string.account_dashboard_default_summary);
+ } else {
+ // Show up to 3 account types
+ final int size = Math.min(3, types.length);
+
+ for (int i = 0; i < size; i++) {
+ final CharSequence label = authHelper.getLabelForType(mContext, types[i]);
+ if (summary == null) {
+ summary = bidiFormatter.unicodeWrap(label);
+ } else {
+ summary = mContext.getString(R.string.join_many_items_middle, summary,
+ bidiFormatter.unicodeWrap(label));
+ }
+ }
+ }
+ mSummaryLoader.setSummary(this, summary);
}
}
}
@@ -116,7 +127,7 @@
public List<SearchIndexableResource> getXmlResourcesToIndex(
Context context, boolean enabled) {
final SearchIndexableResource sir = new SearchIndexableResource(context);
- sir.xmlResId = R.xml.user_and_accounts_settings;
+ sir.xmlResId = R.xml.accounts_dashboard_settings;
return Arrays.asList(sir);
}
};
diff --git a/src/com/android/settings/applications/AppStateAppOpsBridge.java b/src/com/android/settings/applications/AppStateAppOpsBridge.java
index 6ec32a3..e0c19ff 100755
--- a/src/com/android/settings/applications/AppStateAppOpsBridge.java
+++ b/src/com/android/settings/applications/AppStateAppOpsBridge.java
@@ -61,7 +61,7 @@
new IPackageManagerWrapper(AppGlobals.getPackageManager()));
}
- @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+ @VisibleForTesting
AppStateAppOpsBridge(Context context, ApplicationsState appState, Callback callback,
int appOpsOpCode, String[] permissions, IPackageManagerWrapper packageManager) {
super(appState, callback);
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
deleted file mode 100755
index f78459f..0000000
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ /dev/null
@@ -1,1478 +0,0 @@
-/*
- * Copyright (C) 2007 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.settings.applications;
-
-import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
-
-import android.Manifest.permission;
-import android.app.Activity;
-import android.app.ActivityManager;
-import android.app.AlertDialog;
-import android.app.LoaderManager;
-import android.app.LoaderManager.LoaderCallbacks;
-import android.content.ActivityNotFoundException;
-import android.content.BroadcastReceiver;
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.content.Intent;
-import android.content.Loader;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageInfo;
-import android.content.pm.PackageManager;
-import android.content.pm.PackageManager.NameNotFoundException;
-import android.content.pm.ResolveInfo;
-import android.content.pm.UserInfo;
-import android.content.res.Resources;
-import android.icu.text.ListFormatter;
-import android.net.INetworkStatsService;
-import android.net.INetworkStatsSession;
-import android.net.NetworkTemplate;
-import android.net.TrafficStats;
-import android.net.Uri;
-import android.os.AsyncTask;
-import android.os.BatteryStats;
-import android.os.Bundle;
-import android.os.RemoteException;
-import android.os.ServiceManager;
-import android.os.UserHandle;
-import android.os.UserManager;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.Preference.OnPreferenceClickListener;
-import android.support.v7.preference.PreferenceCategory;
-import android.support.v7.preference.PreferenceScreen;
-import android.text.BidiFormatter;
-import android.text.TextUtils;
-import android.text.format.DateUtils;
-import android.text.format.Formatter;
-import android.util.Log;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.webkit.IWebViewUpdateService;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.os.BatterySipper;
-import com.android.internal.os.BatteryStatsHelper;
-import com.android.settings.DeviceAdminAdd;
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.SettingsPreferenceFragment;
-import com.android.settings.Utils;
-import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.applications.appinfo.DrawOverlayDetails;
-import com.android.settings.applications.appinfo.ExternalSourcesDetails;
-import com.android.settings.applications.appinfo.PictureInPictureDetails;
-import com.android.settings.applications.appinfo.PictureInPictureSettings;
-import com.android.settings.applications.appinfo.WriteSettingsDetails;
-import com.android.settings.applications.defaultapps.DefaultBrowserPreferenceController;
-import com.android.settings.applications.defaultapps.DefaultEmergencyPreferenceController;
-import com.android.settings.applications.defaultapps.DefaultHomePreferenceController;
-import com.android.settings.applications.defaultapps.DefaultPhonePreferenceController;
-import com.android.settings.applications.defaultapps.DefaultSmsPreferenceController;
-import com.android.settings.applications.instantapps.InstantAppButtonsController;
-import com.android.settings.datausage.AppDataUsage;
-import com.android.settings.datausage.DataUsageList;
-import com.android.settings.datausage.DataUsageUtils;
-import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
-import com.android.settings.fuelgauge.BatteryEntry;
-import com.android.settings.fuelgauge.BatteryStatsHelperLoader;
-import com.android.settings.fuelgauge.BatteryUtils;
-import com.android.settings.notification.AppNotificationSettings;
-import com.android.settings.notification.NotificationBackend;
-import com.android.settings.notification.NotificationBackend.AppRow;
-import com.android.settings.widget.ActionButtonPreference;
-import com.android.settings.widget.EntityHeaderController;
-import com.android.settingslib.AppItem;
-import com.android.settingslib.RestrictedLockUtils;
-import com.android.settingslib.applications.AppUtils;
-import com.android.settingslib.applications.ApplicationsState;
-import com.android.settingslib.applications.ApplicationsState.AppEntry;
-import com.android.settingslib.applications.PermissionsSummaryHelper;
-import com.android.settingslib.applications.PermissionsSummaryHelper.PermissionsResultCallback;
-import com.android.settingslib.applications.StorageStatsSource;
-import com.android.settingslib.applications.StorageStatsSource.AppStorageStats;
-import com.android.settingslib.development.DevelopmentSettingsEnabler;
-import com.android.settingslib.net.ChartData;
-import com.android.settingslib.net.ChartDataLoader;
-import com.android.settingslib.wrapper.PackageManagerWrapper;
-
-import java.lang.ref.WeakReference;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-/**
- * Activity to display application information from Settings. This activity presents
- * extended information associated with a package like code, data, total size, permissions
- * used by the application and also the set of default launchable activities.
- * For system applications, an option to clear user data is displayed only if data size is > 0.
- * System applications that do not want clear user data do not have this option.
- * For non-system applications, there is no option to clear data. Instead there is an option to
- * uninstall the application.
- *
- * deprecated in favor of {@link AppInfoDashboardFragment}
- */
-@Deprecated
-public class InstalledAppDetails extends AppInfoBase
- implements OnPreferenceClickListener, LoaderManager.LoaderCallbacks<AppStorageStats> {
-
- private static final String LOG_TAG = "InstalledAppDetails";
-
- // Menu identifiers
- public static final int UNINSTALL_ALL_USERS_MENU = 1;
- public static final int UNINSTALL_UPDATES = 2;
-
- // Result code identifiers
- public static final int REQUEST_UNINSTALL = 0;
- private static final int REQUEST_REMOVE_DEVICE_ADMIN = 1;
-
- private static final int SUB_INFO_FRAGMENT = 1;
-
- private static final int LOADER_CHART_DATA = 2;
- private static final int LOADER_STORAGE = 3;
- @VisibleForTesting
- static final int LOADER_BATTERY = 4;
-
- private static final int DLG_FORCE_STOP = DLG_BASE + 1;
- private static final int DLG_DISABLE = DLG_BASE + 2;
- private static final int DLG_SPECIAL_DISABLE = DLG_BASE + 3;
- private static final String EXTRA_HIDE_INFO_BUTTON = "hideInfoButton";
- private static final String KEY_HEADER = "header_view";
- private static final String KEY_INSTANT_APP_BUTTONS = "instant_app_buttons";
- private static final String KEY_ACTION_BUTTONS = "action_buttons";
- private static final String KEY_NOTIFICATION = "notification_settings";
- private static final String KEY_STORAGE = "storage_settings";
- private static final String KEY_PERMISSION = "permission_settings";
- private static final String KEY_DATA = "data_settings";
- private static final String KEY_LAUNCH = "preferred_settings";
- private static final String KEY_BATTERY = "battery";
- private static final String KEY_MEMORY = "memory";
- private static final String KEY_VERSION = "app_version";
- private static final String KEY_INSTANT_APP_SUPPORTED_LINKS =
- "instant_app_launch_supported_domain_urls";
-
- private final HashSet<String> mHomePackages = new HashSet<>();
-
- private boolean mInitialized;
- private boolean mShowUninstalled;
- private LayoutPreference mHeader;
- private boolean mUpdatedSysApp = false;
- private Preference mNotificationPreference;
- private Preference mStoragePreference;
- private Preference mPermissionsPreference;
- private Preference mLaunchPreference;
- private Preference mDataPreference;
- private Preference mMemoryPreference;
- private Preference mVersionPreference;
- private AppDomainsPreference mInstantAppDomainsPreference;
- private boolean mDisableAfterUninstall;
-
- // Used for updating notification preference.
- private final NotificationBackend mBackend = new NotificationBackend();
-
- private ChartData mChartData;
- private INetworkStatsSession mStatsSession;
-
- @VisibleForTesting
- ActionButtonPreference mActionButtons;
- @VisibleForTesting
- Preference mBatteryPreference;
- @VisibleForTesting
- BatterySipper mSipper;
- @VisibleForTesting
- BatteryStatsHelper mBatteryHelper;
- @VisibleForTesting
- BatteryUtils mBatteryUtils;
-
- protected ProcStatsData mStatsManager;
- protected ProcStatsPackageEntry mStats;
-
- private InstantAppButtonsController mInstantAppButtonsController;
-
- private AppStorageStats mLastResult;
- private String mBatteryPercent;
-
- @VisibleForTesting
- final LoaderCallbacks<BatteryStatsHelper> mBatteryCallbacks =
- new LoaderCallbacks<BatteryStatsHelper>() {
-
- @Override
- public Loader<BatteryStatsHelper> onCreateLoader(int id, Bundle args) {
- return new BatteryStatsHelperLoader(getContext());
- }
-
- @Override
- public void onLoadFinished(Loader<BatteryStatsHelper> loader,
- BatteryStatsHelper batteryHelper) {
- mBatteryHelper = batteryHelper;
- if (mPackageInfo != null) {
- mSipper = findTargetSipper(batteryHelper, mPackageInfo.applicationInfo.uid);
- if (getActivity() != null) {
- updateBattery();
- }
- }
- }
-
- @Override
- public void onLoaderReset(Loader<BatteryStatsHelper> loader) {
- }
- };
-
- @VisibleForTesting
- boolean handleDisableable() {
- boolean disableable = false;
- // Try to prevent the user from bricking their phone
- // by not allowing disabling of apps signed with the
- // system cert and any launcher app in the system.
- if (mHomePackages.contains(mAppEntry.info.packageName)
- || Utils.isSystemPackage(getContext().getResources(), mPm, mPackageInfo)) {
- // Disable button for core system applications.
- mActionButtons
- .setButton1Text(R.string.disable_text)
- .setButton1Positive(false);
- } else if (mAppEntry.info.enabled && !isDisabledUntilUsed()) {
- mActionButtons
- .setButton1Text(R.string.disable_text)
- .setButton1Positive(false);
- disableable = !mApplicationFeatureProvider.getKeepEnabledPackages()
- .contains(mAppEntry.info.packageName);
- } else {
- mActionButtons
- .setButton1Text(R.string.enable_text)
- .setButton1Positive(true);
- disableable = true;
- }
-
- return disableable;
- }
-
- private boolean isDisabledUntilUsed() {
- return mAppEntry.info.enabledSetting
- == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED;
- }
-
- private void initUninstallButtons() {
- final boolean isBundled = (mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0;
- boolean enabled;
- if (isBundled) {
- enabled = handleDisableable();
- } else {
- enabled = initUninstallButtonForUserApp();
- }
- // If this is a device admin, it can't be uninstalled or disabled.
- // We do this here so the text of the button is still set correctly.
- if (isBundled && mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
- enabled = false;
- }
-
- // We don't allow uninstalling DO/PO on *any* users, because if it's a system app,
- // "uninstall" is actually "downgrade to the system version + disable", and "downgrade"
- // will clear data on all users.
- if (Utils.isProfileOrDeviceOwner(mUserManager, mDpm, mPackageInfo.packageName)) {
- enabled = false;
- }
-
- // Don't allow uninstalling the device provisioning package.
- if (Utils.isDeviceProvisioningPackage(getResources(), mAppEntry.info.packageName)) {
- enabled = false;
- }
-
- // If the uninstall intent is already queued, disable the uninstall button
- if (mDpm.isUninstallInQueue(mPackageName)) {
- enabled = false;
- }
-
- // Home apps need special handling. Bundled ones we don't risk downgrading
- // because that can interfere with home-key resolution. Furthermore, we
- // can't allow uninstallation of the only home app, and we don't want to
- // allow uninstallation of an explicitly preferred one -- the user can go
- // to Home settings and pick a different one, after which we'll permit
- // uninstallation of the now-not-default one.
- if (enabled && mHomePackages.contains(mPackageInfo.packageName)) {
- if (isBundled) {
- enabled = false;
- } else {
- ArrayList<ResolveInfo> homeActivities = new ArrayList<ResolveInfo>();
- ComponentName currentDefaultHome = mPm.getHomeActivities(homeActivities);
- if (currentDefaultHome == null) {
- // No preferred default, so permit uninstall only when
- // there is more than one candidate
- enabled = (mHomePackages.size() > 1);
- } else {
- // There is an explicit default home app -- forbid uninstall of
- // that one, but permit it for installed-but-inactive ones.
- enabled = !mPackageInfo.packageName.equals(currentDefaultHome.getPackageName());
- }
- }
- }
-
- if (mAppsControlDisallowedBySystem) {
- enabled = false;
- }
-
- try {
- IWebViewUpdateService webviewUpdateService =
- IWebViewUpdateService.Stub.asInterface(ServiceManager.getService("webviewupdate"));
- if (webviewUpdateService.isFallbackPackage(mAppEntry.info.packageName)) {
- enabled = false;
- }
- } catch (RemoteException e) {
- throw new RuntimeException(e);
- }
-
- mActionButtons.setButton1Enabled(enabled);
- if (enabled) {
- // Register listener
- mActionButtons.setButton1OnClickListener(v -> handleUninstallButtonClick());
- }
- }
-
- @VisibleForTesting
- boolean initUninstallButtonForUserApp() {
- boolean enabled = true;
- if ((mPackageInfo.applicationInfo.flags & ApplicationInfo.FLAG_INSTALLED) == 0
- && mUserManager.getUsers().size() >= 2) {
- // When we have multiple users, there is a separate menu
- // to uninstall for all users.
- enabled = false;
- } else if (AppUtils.isInstant(mPackageInfo.applicationInfo)) {
- enabled = false;
- mActionButtons.setButton1Visible(false);
- }
- mActionButtons.setButton1Text(R.string.uninstall_text).setButton1Positive(false);
- return enabled;
- }
-
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle icicle) {
- super.onCreate(icicle);
- final Activity activity = getActivity();
-
- if (!ensurePackageInfoAvailable(activity)) {
- return;
- }
-
- setHasOptionsMenu(true);
- addPreferencesFromResource(R.xml.installed_app_details);
-
- addDynamicPrefs();
- if (Utils.isBandwidthControlEnabled()) {
- INetworkStatsService statsService = INetworkStatsService.Stub.asInterface(
- ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
- try {
- mStatsSession = statsService.openSession();
- } catch (RemoteException e) {
- throw new RuntimeException(e);
- }
- } else {
- removePreference(KEY_DATA);
- }
- mBatteryUtils = BatteryUtils.getInstance(getContext());
- }
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.APPLICATIONS_INSTALLED_APP_DETAILS;
- }
-
- @Override
- public void onResume() {
- super.onResume();
- if (mFinishing) {
- return;
- }
- AppItem app = new AppItem(mAppEntry.info.uid);
- app.addUid(mAppEntry.info.uid);
- if (mStatsSession != null) {
- LoaderManager loaderManager = getLoaderManager();
- loaderManager.restartLoader(LOADER_CHART_DATA,
- ChartDataLoader.buildArgs(getTemplate(getContext()), app),
- mDataCallbacks);
- loaderManager.restartLoader(LOADER_STORAGE, Bundle.EMPTY, this);
- }
- restartBatteryStatsLoader();
- if (DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(getContext())) {
- new MemoryUpdater().execute();
- }
- updateDynamicPrefs();
- }
-
- @VisibleForTesting
- public void restartBatteryStatsLoader() {
- getLoaderManager().restartLoader(LOADER_BATTERY, Bundle.EMPTY, mBatteryCallbacks);
- }
-
- @Override
- public void onPause() {
- getLoaderManager().destroyLoader(LOADER_CHART_DATA);
- super.onPause();
- }
-
- @Override
- public void onDestroy() {
- TrafficStats.closeQuietly(mStatsSession);
- super.onDestroy();
- }
-
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- if (mFinishing) {
- return;
- }
- final Activity activity = getActivity();
- mHeader = (LayoutPreference) findPreference(KEY_HEADER);
- mActionButtons = ((ActionButtonPreference) findPreference(KEY_ACTION_BUTTONS))
- .setButton2Text(R.string.force_stop)
- .setButton2Positive(false)
- .setButton2Enabled(false);
- EntityHeaderController.newInstance(activity, this, mHeader.findViewById(R.id.entity_header))
- .setRecyclerView(getListView(), getLifecycle())
- .setPackageName(mPackageName)
- .setHasAppInfoLink(false)
- .setButtonActions(EntityHeaderController.ActionType.ACTION_APP_PREFERENCE,
- EntityHeaderController.ActionType.ACTION_NONE)
- .styleActionBar(activity)
- .bindHeaderButtons();
-
- mNotificationPreference = findPreference(KEY_NOTIFICATION);
- mNotificationPreference.setOnPreferenceClickListener(this);
- mStoragePreference = findPreference(KEY_STORAGE);
- mStoragePreference.setOnPreferenceClickListener(this);
- mPermissionsPreference = findPreference(KEY_PERMISSION);
- mPermissionsPreference.setOnPreferenceClickListener(this);
- mDataPreference = findPreference(KEY_DATA);
- if (mDataPreference != null) {
- mDataPreference.setOnPreferenceClickListener(this);
- }
- mBatteryPreference = findPreference(KEY_BATTERY);
- mBatteryPreference.setEnabled(false);
- mBatteryPreference.setOnPreferenceClickListener(this);
- mMemoryPreference = findPreference(KEY_MEMORY);
- mMemoryPreference.setOnPreferenceClickListener(this);
- mMemoryPreference.setVisible(
- DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(getContext()));
- mVersionPreference = findPreference(KEY_VERSION);
- mInstantAppDomainsPreference =
- (AppDomainsPreference) findPreference(KEY_INSTANT_APP_SUPPORTED_LINKS);
- mLaunchPreference = findPreference(KEY_LAUNCH);
- if (mAppEntry != null && mAppEntry.info != null) {
- if ((mAppEntry.info.flags&ApplicationInfo.FLAG_INSTALLED) == 0 ||
- !mAppEntry.info.enabled) {
- mLaunchPreference.setEnabled(false);
- } else {
- mLaunchPreference.setOnPreferenceClickListener(this);
- }
- } else {
- mLaunchPreference.setEnabled(false);
- }
- }
-
- @Override
- public void onPackageSizeChanged(String packageName) {
- if (!TextUtils.equals(packageName, mPackageName)) {
- Log.d(LOG_TAG, "Package change irrelevant, skipping");
- return;
- }
- refreshUi();
- }
-
- /**
- * Ensures the {@link PackageInfo} is available to proceed. If it's not available, the fragment
- * will finish.
- *
- * @return true if packageInfo is available.
- */
- @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
- boolean ensurePackageInfoAvailable(Activity activity) {
- if (mPackageInfo == null) {
- mFinishing = true;
- Log.w(LOG_TAG, "Package info not available. Is this package already uninstalled?");
- activity.finishAndRemoveTask();
- return false;
- }
- return true;
- }
-
- @Override
- public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
- super.onCreateOptionsMenu(menu, inflater);
- menu.add(0, UNINSTALL_UPDATES, 0, R.string.app_factory_reset)
- .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
- menu.add(0, UNINSTALL_ALL_USERS_MENU, 1, R.string.uninstall_all_users_text)
- .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
- }
-
- @Override
- public void onPrepareOptionsMenu(Menu menu) {
- if (mFinishing) {
- return;
- }
- menu.findItem(UNINSTALL_ALL_USERS_MENU).setVisible(shouldShowUninstallForAll(mAppEntry));
- mUpdatedSysApp = (mAppEntry.info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0;
- MenuItem uninstallUpdatesItem = menu.findItem(UNINSTALL_UPDATES);
- uninstallUpdatesItem.setVisible(mUpdatedSysApp && !mAppsControlDisallowedBySystem);
- if (uninstallUpdatesItem.isVisible()) {
- RestrictedLockUtils.setMenuItemAsDisabledByAdmin(getActivity(),
- uninstallUpdatesItem, mAppsControlDisallowedAdmin);
- }
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case UNINSTALL_ALL_USERS_MENU:
- uninstallPkg(mAppEntry.info.packageName, true, false);
- return true;
- case UNINSTALL_UPDATES:
- uninstallPkg(mAppEntry.info.packageName, false, false);
- return true;
- }
- return false;
- }
-
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- switch (requestCode) {
- case REQUEST_UNINSTALL:
- // Refresh option menu
- getActivity().invalidateOptionsMenu();
-
- if (mDisableAfterUninstall) {
- mDisableAfterUninstall = false;
- new DisableChanger(this, mAppEntry.info,
- PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER)
- .execute((Object)null);
- }
- // continue with following operations
- case REQUEST_REMOVE_DEVICE_ADMIN:
- if (!refreshUi()) {
- setIntentAndFinish(true, true);
- } else {
- startListeningToPackageRemove();
- }
- break;
- }
- }
-
- @Override
- public Loader<AppStorageStats> onCreateLoader(int id, Bundle args) {
- Context context = getContext();
- return new FetchPackageStorageAsyncLoader(
- context, new StorageStatsSource(context), mAppEntry.info, UserHandle.of(mUserId));
- }
-
- @Override
- public void onLoadFinished(Loader<AppStorageStats> loader, AppStorageStats result) {
- mLastResult = result;
- refreshUi();
- }
-
- @Override
- public void onLoaderReset(Loader<AppStorageStats> loader) {
- }
-
- /**
- * Utility method to hide and show specific preferences based on whether the app being displayed
- * is an Instant App or an installed app.
- */
- @VisibleForTesting
- void prepareInstantAppPrefs() {
- final boolean isInstant = AppUtils.isInstant(mPackageInfo.applicationInfo);
- if (isInstant) {
- Set<String> handledDomainSet = Utils.getHandledDomains(mPm, mPackageInfo.packageName);
- String[] handledDomains = handledDomainSet.toArray(new String[handledDomainSet.size()]);
- mInstantAppDomainsPreference.setTitles(handledDomains);
- // Dummy values, unused in the implementation
- mInstantAppDomainsPreference.setValues(new int[handledDomains.length]);
- getPreferenceScreen().removePreference(mLaunchPreference);
- } else {
- getPreferenceScreen().removePreference(mInstantAppDomainsPreference);
- }
- }
-
- // Utility method to set application label and icon.
- private void setAppLabelAndIcon(PackageInfo pkgInfo) {
- final View appSnippet = mHeader.findViewById(R.id.entity_header);
- mState.ensureIcon(mAppEntry);
- final Activity activity = getActivity();
- final boolean isInstantApp = AppUtils.isInstant(mPackageInfo.applicationInfo);
- final CharSequence summary =
- isInstantApp ? null : getString(Utils.getInstallationStatus(mAppEntry.info));
- EntityHeaderController.newInstance(activity, this, appSnippet)
- .setLabel(mAppEntry)
- .setIcon(mAppEntry)
- .setSummary(summary)
- .setIsInstantApp(isInstantApp)
- .done(activity, false /* rebindActions */);
- mVersionPreference.setSummary(getString(R.string.version_text,
- BidiFormatter.getInstance().unicodeWrap(pkgInfo.versionName)));
- }
-
- @VisibleForTesting
- boolean shouldShowUninstallForAll(ApplicationsState.AppEntry appEntry) {
- boolean showIt = true;
- if (mUpdatedSysApp) {
- showIt = false;
- } else if (appEntry == null) {
- showIt = false;
- } else if ((appEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
- showIt = false;
- } else if (mPackageInfo == null || mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
- showIt = false;
- } else if (UserHandle.myUserId() != 0) {
- showIt = false;
- } else if (mUserManager.getUsers().size() < 2) {
- showIt = false;
- } else if (PackageUtil.countPackageInUsers(mPm, mUserManager, mPackageName) < 2
- && (appEntry.info.flags & ApplicationInfo.FLAG_INSTALLED) != 0) {
- showIt = false;
- } else if (AppUtils.isInstant(appEntry.info)) {
- showIt = false;
- }
- return showIt;
- }
-
- @VisibleForTesting
- BatterySipper findTargetSipper(BatteryStatsHelper batteryHelper, int uid) {
- List<BatterySipper> usageList = batteryHelper.getUsageList();
- for (int i = 0, size = usageList.size(); i < size; i++) {
- BatterySipper sipper = usageList.get(i);
- if (sipper.getUid() == uid) {
- return sipper;
- }
- }
-
- return null;
- }
-
- private boolean signaturesMatch(String pkg1, String pkg2) {
- if (pkg1 != null && pkg2 != null) {
- try {
- final int match = mPm.checkSignatures(pkg1, pkg2);
- if (match >= PackageManager.SIGNATURE_MATCH) {
- return true;
- }
- } catch (Exception e) {
- // e.g. named alternate package not found during lookup;
- // this is an expected case sometimes
- }
- }
- return false;
- }
-
- @Override
- protected boolean refreshUi() {
- retrieveAppEntry();
- if (mAppEntry == null) {
- return false; // onCreate must have failed, make sure to exit
- }
-
- if (mPackageInfo == null) {
- return false; // onCreate must have failed, make sure to exit
- }
-
- // Get list of "home" apps and trace through any meta-data references
- List<ResolveInfo> homeActivities = new ArrayList<ResolveInfo>();
- mPm.getHomeActivities(homeActivities);
- mHomePackages.clear();
- for (int i = 0; i< homeActivities.size(); i++) {
- ResolveInfo ri = homeActivities.get(i);
- final String activityPkg = ri.activityInfo.packageName;
- mHomePackages.add(activityPkg);
-
- // Also make sure to include anything proxying for the home app
- final Bundle metadata = ri.activityInfo.metaData;
- if (metadata != null) {
- final String metaPkg = metadata.getString(ActivityManager.META_HOME_ALTERNATE);
- if (signaturesMatch(metaPkg, activityPkg)) {
- mHomePackages.add(metaPkg);
- }
- }
- }
-
- checkForceStop();
- setAppLabelAndIcon(mPackageInfo);
- initUninstallButtons();
- prepareInstantAppPrefs();
-
- // Update the preference summaries.
- Activity context = getActivity();
- boolean isExternal = ((mAppEntry.info.flags & ApplicationInfo.FLAG_EXTERNAL_STORAGE) != 0);
- mStoragePreference.setSummary(getStorageSummary(context, mLastResult, isExternal));
-
- PermissionsSummaryHelper.getPermissionSummary(getContext(),
- mPackageName, mPermissionCallback);
- mLaunchPreference.setSummary(AppUtils.getLaunchByDefaultSummary(mAppEntry, mUsbManager,
- mPm, context));
- mNotificationPreference.setSummary(getNotificationSummary(mAppEntry, context,
- mBackend));
- if (mDataPreference != null) {
- mDataPreference.setSummary(getDataSummary());
- }
-
- if (!mInitialized) {
- // First time init: are we displaying an uninstalled app?
- mInitialized = true;
- mShowUninstalled = (mAppEntry.info.flags&ApplicationInfo.FLAG_INSTALLED) == 0;
- } else {
- // All other times: if the app no longer exists then we want
- // to go away.
- try {
- ApplicationInfo ainfo = context.getPackageManager().getApplicationInfo(
- mAppEntry.info.packageName,
- PackageManager.MATCH_DISABLED_COMPONENTS
- | PackageManager.MATCH_ANY_USER);
- if (!mShowUninstalled) {
- // If we did not start out with the app uninstalled, then
- // it transitioning to the uninstalled state for the current
- // user means we should go away as well.
- return (ainfo.flags&ApplicationInfo.FLAG_INSTALLED) != 0;
- }
- } catch (NameNotFoundException e) {
- return false;
- }
- }
-
- return true;
- }
-
- @VisibleForTesting
- void updateBattery() {
- mBatteryPreference.setEnabled(true);
- if (isBatteryStatsAvailable()) {
- final int dischargeAmount = mBatteryHelper.getStats().getDischargeAmount(
- BatteryStats.STATS_SINCE_CHARGED);
-
- final List<BatterySipper> usageList = new ArrayList<>(mBatteryHelper.getUsageList());
- final double hiddenAmount = mBatteryUtils.removeHiddenBatterySippers(usageList);
- final int percentOfMax = (int) mBatteryUtils.calculateBatteryPercent(
- mSipper.totalPowerMah, mBatteryHelper.getTotalPower(), hiddenAmount,
- dischargeAmount);
- mBatteryPercent = Utils.formatPercentage(percentOfMax);
- mBatteryPreference.setSummary(getString(R.string.battery_summary, mBatteryPercent));
- } else {
- mBatteryPreference.setSummary(getString(R.string.no_battery_summary));
- }
- }
-
- private CharSequence getDataSummary() {
- if (mChartData != null) {
- long totalBytes = mChartData.detail.getTotalBytes();
- if (totalBytes == 0) {
- return getString(R.string.no_data_usage);
- }
- Context context = getActivity();
- return getString(R.string.data_summary_format,
- Formatter.formatFileSize(context, totalBytes),
- DateUtils.formatDateTime(context, mChartData.detail.getStart(),
- DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_ABBREV_MONTH));
- }
- return getString(R.string.computing_size);
- }
-
- @VisibleForTesting
- static CharSequence getStorageSummary(
- Context context, AppStorageStats stats, boolean isExternal) {
- if (stats == null) {
- return context.getText(R.string.computing_size);
- } else {
- CharSequence storageType = context.getString(isExternal
- ? R.string.storage_type_external
- : R.string.storage_type_internal);
- return context.getString(R.string.storage_summary_format,
- getSize(context, stats), storageType.toString().toLowerCase());
- }
- }
-
- @VisibleForTesting
- boolean isBatteryStatsAvailable() {
- return mBatteryHelper != null && mSipper != null;
- }
-
- private static CharSequence getSize(Context context, AppStorageStats stats) {
- return Formatter.formatFileSize(context, stats.getTotalBytes());
- }
-
-
- @Override
- protected AlertDialog createDialog(int id, int errorCode) {
- switch (id) {
- case DLG_DISABLE:
- return new AlertDialog.Builder(getActivity())
- .setMessage(getActivity().getText(R.string.app_disable_dlg_text))
- .setPositiveButton(R.string.app_disable_dlg_positive,
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // Disable the app
- mMetricsFeatureProvider.action(getContext(),
- MetricsEvent.ACTION_SETTINGS_DISABLE_APP);
- new DisableChanger(InstalledAppDetails.this, mAppEntry.info,
- PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER)
- .execute((Object)null);
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
- case DLG_SPECIAL_DISABLE:
- return new AlertDialog.Builder(getActivity())
- .setMessage(getActivity().getText(R.string.app_disable_dlg_text))
- .setPositiveButton(R.string.app_disable_dlg_positive,
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // Disable the app and ask for uninstall
- mMetricsFeatureProvider.action(getContext(),
- MetricsEvent.ACTION_SETTINGS_DISABLE_APP);
- uninstallPkg(mAppEntry.info.packageName,
- false, true);
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
- case DLG_FORCE_STOP:
- return new AlertDialog.Builder(getActivity())
- .setTitle(getActivity().getText(R.string.force_stop_dlg_title))
- .setMessage(getActivity().getText(R.string.force_stop_dlg_text))
- .setPositiveButton(R.string.dlg_ok, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // Force stop
- forceStopPackage(mAppEntry.info.packageName);
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
- }
- if (mInstantAppButtonsController != null) {
- return mInstantAppButtonsController.createDialog(id);
- }
- return null;
- }
-
- private void uninstallPkg(String packageName, boolean allUsers, boolean andDisable) {
- stopListeningToPackageRemove();
- // Create new intent to launch Uninstaller activity
- Uri packageURI = Uri.parse("package:"+packageName);
- Intent uninstallIntent = new Intent(Intent.ACTION_UNINSTALL_PACKAGE, packageURI);
- uninstallIntent.putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, allUsers);
- mMetricsFeatureProvider.action(
- getContext(), MetricsEvent.ACTION_SETTINGS_UNINSTALL_APP);
- startActivityForResult(uninstallIntent, REQUEST_UNINSTALL);
- mDisableAfterUninstall = andDisable;
- }
-
- private void forceStopPackage(String pkgName) {
- mMetricsFeatureProvider.action(getContext(), MetricsEvent.ACTION_APP_FORCE_STOP, pkgName);
- ActivityManager am = (ActivityManager) getActivity().getSystemService(
- Context.ACTIVITY_SERVICE);
- Log.d(LOG_TAG, "Stopping package " + pkgName);
- am.forceStopPackage(pkgName);
- int userId = UserHandle.getUserId(mAppEntry.info.uid);
- mState.invalidatePackage(pkgName, userId);
- ApplicationsState.AppEntry newEnt = mState.getEntry(pkgName, userId);
- if (newEnt != null) {
- mAppEntry = newEnt;
- }
- checkForceStop();
- }
-
- private void updateForceStopButton(boolean enabled) {
- mActionButtons
- .setButton2Enabled(mAppsControlDisallowedBySystem ? false : enabled)
- .setButton2OnClickListener(mAppsControlDisallowedBySystem
- ? null : v -> handleForceStopButtonClick());
- }
-
- @VisibleForTesting
- void checkForceStop() {
- if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
- // User can't force stop device admin.
- Log.w(LOG_TAG, "User can't force stop device admin");
- updateForceStopButton(false);
- } else if (AppUtils.isInstant(mPackageInfo.applicationInfo)) {
- updateForceStopButton(false);
- mActionButtons.setButton2Visible(false);
- } else if ((mAppEntry.info.flags & ApplicationInfo.FLAG_STOPPED) == 0) {
- // If the app isn't explicitly stopped, then always show the
- // force stop button.
- Log.w(LOG_TAG, "App is not explicitly stopped");
- updateForceStopButton(true);
- } else {
- Intent intent = new Intent(Intent.ACTION_QUERY_PACKAGE_RESTART,
- Uri.fromParts("package", mAppEntry.info.packageName, null));
- intent.putExtra(Intent.EXTRA_PACKAGES, new String[] { mAppEntry.info.packageName });
- intent.putExtra(Intent.EXTRA_UID, mAppEntry.info.uid);
- intent.putExtra(Intent.EXTRA_USER_HANDLE, UserHandle.getUserId(mAppEntry.info.uid));
- Log.d(LOG_TAG, "Sending broadcast to query restart status for "
- + mAppEntry.info.packageName);
- getActivity().sendOrderedBroadcastAsUser(intent, UserHandle.CURRENT, null,
- mCheckKillProcessesReceiver, null, Activity.RESULT_CANCELED, null, null);
- }
- }
-
- private void startManagePermissionsActivity() {
- // start new activity to manage app permissions
- Intent intent = new Intent(Intent.ACTION_MANAGE_APP_PERMISSIONS);
- intent.putExtra(Intent.EXTRA_PACKAGE_NAME, mAppEntry.info.packageName);
- intent.putExtra(EXTRA_HIDE_INFO_BUTTON, true);
- try {
- getActivity().startActivityForResult(intent, SUB_INFO_FRAGMENT);
- } catch (ActivityNotFoundException e) {
- Log.w(LOG_TAG, "No app can handle android.intent.action.MANAGE_APP_PERMISSIONS");
- }
- }
-
- private void startAppInfoFragment(Class<?> fragment, int title) {
- startAppInfoFragment(fragment, title, this, mAppEntry);
- }
-
- public static void startAppInfoFragment(Class<?> fragment, int title,
- SettingsPreferenceFragment caller, AppEntry appEntry) {
- // start new fragment to display extended information
- Bundle args = new Bundle();
- args.putString(ARG_PACKAGE_NAME, appEntry.info.packageName);
- args.putInt(ARG_PACKAGE_UID, appEntry.info.uid);
-
- SettingsActivity sa = (SettingsActivity) caller.getActivity();
- sa.startPreferencePanel(caller, fragment.getName(), args, title, null, caller,
- SUB_INFO_FRAGMENT);
- }
-
- private void handleUninstallButtonClick() {
- if (mAppEntry == null) {
- setIntentAndFinish(true, true);
- return;
- }
- final String packageName = mAppEntry.info.packageName;
- if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
- stopListeningToPackageRemove();
- Activity activity = getActivity();
- Intent uninstallDAIntent = new Intent(activity, DeviceAdminAdd.class);
- uninstallDAIntent.putExtra(DeviceAdminAdd.EXTRA_DEVICE_ADMIN_PACKAGE_NAME,
- mPackageName);
- mMetricsFeatureProvider.action(
- activity, MetricsEvent.ACTION_SETTINGS_UNINSTALL_DEVICE_ADMIN);
- activity.startActivityForResult(uninstallDAIntent, REQUEST_REMOVE_DEVICE_ADMIN);
- return;
- }
- EnforcedAdmin admin = RestrictedLockUtils.checkIfUninstallBlocked(getActivity(),
- packageName, mUserId);
- boolean uninstallBlockedBySystem = mAppsControlDisallowedBySystem ||
- RestrictedLockUtils.hasBaseUserRestriction(getActivity(), packageName, mUserId);
- if (admin != null && !uninstallBlockedBySystem) {
- RestrictedLockUtils.sendShowAdminSupportDetailsIntent(getActivity(), admin);
- } else if ((mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
- if (mAppEntry.info.enabled && !isDisabledUntilUsed()) {
- // If the system app has an update and this is the only user on the device,
- // then offer to downgrade the app, otherwise only offer to disable the
- // app for this user.
- if (mUpdatedSysApp && isSingleUser()) {
- showDialogInner(DLG_SPECIAL_DISABLE, 0);
- } else {
- showDialogInner(DLG_DISABLE, 0);
- }
- } else {
- mMetricsFeatureProvider.action(
- getActivity(),
- MetricsEvent.ACTION_SETTINGS_ENABLE_APP);
- new DisableChanger(this, mAppEntry.info,
- PackageManager.COMPONENT_ENABLED_STATE_ENABLED)
- .execute((Object) null);
- }
- } else if ((mAppEntry.info.flags & ApplicationInfo.FLAG_INSTALLED) == 0) {
- uninstallPkg(packageName, true, false);
- } else {
- uninstallPkg(packageName, false, false);
- }
- }
-
- private void handleForceStopButtonClick() {
- if (mAppEntry == null) {
- setIntentAndFinish(true, true);
- return;
- }
- if (mAppsControlDisallowedAdmin != null && !mAppsControlDisallowedBySystem) {
- RestrictedLockUtils.sendShowAdminSupportDetailsIntent(
- getActivity(), mAppsControlDisallowedAdmin);
- } else {
- showDialogInner(DLG_FORCE_STOP, 0);
- //forceStopPackage(mAppInfo.packageName);
- }
- }
-
- /** Returns whether there is only one user on this device, not including the system-only user */
- private boolean isSingleUser() {
- final int userCount = mUserManager.getUserCount();
- return userCount == 1
- || (mUserManager.isSplitSystemUser() && userCount == 2);
- }
-
- @Override
- public boolean onPreferenceClick(Preference preference) {
- if (preference == mStoragePreference) {
- startAppInfoFragment(AppStorageSettings.class, R.string.storage_settings);
- } else if (preference == mNotificationPreference) {
- startAppInfoFragment(AppNotificationSettings.class, R.string.app_notifications_title);
- } else if (preference == mPermissionsPreference) {
- startManagePermissionsActivity();
- } else if (preference == mLaunchPreference) {
- startAppInfoFragment(AppLaunchSettings.class, R.string.launch_by_default);
- } else if (preference == mMemoryPreference) {
- ProcessStatsBase.launchMemoryDetail((SettingsActivity) getActivity(),
- mStatsManager.getMemInfo(), mStats, false);
- } else if (preference == mDataPreference) {
- startAppInfoFragment(AppDataUsage.class, R.string.app_data_usage);
- } else if (preference == mBatteryPreference) {
- if (isBatteryStatsAvailable()) {
- BatteryEntry entry = new BatteryEntry(getContext(), null, mUserManager, mSipper);
- entry.defaultPackageName = mPackageName;
- AdvancedPowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(),
- this, mBatteryHelper, BatteryStats.STATS_SINCE_CHARGED, entry,
- mBatteryPercent, null /* mAnomalies */);
- } else {
- AdvancedPowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(),
- this, mPackageName);
- }
- } else {
- return false;
- }
- return true;
- }
-
- private void addDynamicPrefs() {
- if (UserManager.get(getContext()).isManagedProfile()) {
- return;
- }
- final PreferenceScreen screen = getPreferenceScreen();
- final Context context = getContext();
- if (DefaultHomePreferenceController.hasHomePreference(mPackageName, context)) {
- screen.addPreference(new ShortcutPreference(getPrefContext(),
- DefaultAppSettings.class, "default_home", R.string.home_app,
- R.string.configure_apps));
- }
- if (DefaultBrowserPreferenceController.hasBrowserPreference(mPackageName, context)) {
- screen.addPreference(new ShortcutPreference(getPrefContext(),
- DefaultAppSettings.class, "default_browser", R.string.default_browser_title,
- R.string.configure_apps));
- }
- if (DefaultPhonePreferenceController.hasPhonePreference(mPackageName, context)) {
- screen.addPreference(new ShortcutPreference(getPrefContext(),
- DefaultAppSettings.class, "default_phone_app", R.string.default_phone_title,
- R.string.configure_apps));
- }
- if (DefaultEmergencyPreferenceController.hasEmergencyPreference(mPackageName, context)) {
- screen.addPreference(new ShortcutPreference(getPrefContext(),
- DefaultAppSettings.class, "default_emergency_app",
- R.string.default_emergency_app, R.string.configure_apps));
- }
- if (DefaultSmsPreferenceController.hasSmsPreference(mPackageName, context)) {
- screen.addPreference(new ShortcutPreference(getPrefContext(),
- DefaultAppSettings.class, "default_sms_app", R.string.sms_application_title,
- R.string.configure_apps));
- }
-
- // Get the package info with the activities
- PackageInfo packageInfoWithActivities = null;
- try {
- packageInfoWithActivities = mPm.getPackageInfoAsUser(mPackageName,
- PackageManager.GET_ACTIVITIES, UserHandle.myUserId());
- } catch (NameNotFoundException e) {
- Log.e(TAG, "Exception while retrieving the package info of " + mPackageName, e);
- }
-
- boolean hasDrawOverOtherApps = hasPermission(permission.SYSTEM_ALERT_WINDOW);
- boolean hasWriteSettings = hasPermission(permission.WRITE_SETTINGS);
- boolean hasPictureInPictureActivities = (packageInfoWithActivities != null) &&
- PictureInPictureSettings.checkPackageHasPictureInPictureActivities(
- packageInfoWithActivities.packageName,
- packageInfoWithActivities.activities);
- boolean isPotentialAppSource = isPotentialAppSource();
- if (hasDrawOverOtherApps || hasWriteSettings || hasPictureInPictureActivities ||
- isPotentialAppSource) {
- PreferenceCategory category = new PreferenceCategory(getPrefContext());
- category.setTitle(R.string.advanced_apps);
- screen.addPreference(category);
-
- if (hasDrawOverOtherApps) {
- Preference pref = new Preference(getPrefContext());
- pref.setTitle(R.string.draw_overlay);
- pref.setKey("system_alert_window");
- pref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- startAppInfoFragment(DrawOverlayDetails.class, R.string.draw_overlay);
- return true;
- }
- });
- category.addPreference(pref);
- }
- if (hasWriteSettings) {
- Preference pref = new Preference(getPrefContext());
- pref.setTitle(R.string.write_settings);
- pref.setKey("write_settings_apps");
- pref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- startAppInfoFragment(WriteSettingsDetails.class, R.string.write_settings);
- return true;
- }
- });
- category.addPreference(pref);
- }
- if (hasPictureInPictureActivities) {
- Preference pref = new Preference(getPrefContext());
- pref.setTitle(R.string.picture_in_picture_app_detail_title);
- pref.setKey("picture_in_picture");
- pref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- AppInfoBase.startAppInfoFragment(PictureInPictureDetails.class,
- R.string.picture_in_picture_app_detail_title, mPackageName,
- mPackageInfo.applicationInfo.uid, InstalledAppDetails.this,
- -1, getMetricsCategory());
- return true;
- }
- });
- category.addPreference(pref);
- }
- if (isPotentialAppSource) {
- Preference pref = new Preference(getPrefContext());
- pref.setTitle(R.string.install_other_apps);
- pref.setKey("install_other_apps");
- pref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- startAppInfoFragment(ExternalSourcesDetails.class,
- R.string.install_other_apps);
- return true;
- }
- });
- category.addPreference(pref);
- }
- }
-
- addAppInstallerInfoPref(screen);
- maybeAddInstantAppButtons();
- }
-
- private boolean isPotentialAppSource() {
- AppStateInstallAppsBridge.InstallAppsState appState =
- new AppStateInstallAppsBridge(getContext(), null, null)
- .createInstallAppsStateFor(mPackageName, mPackageInfo.applicationInfo.uid);
- return appState.isPotentialAppSource();
- }
-
- private void addAppInstallerInfoPref(PreferenceScreen screen) {
- String installerPackageName =
- AppStoreUtil.getInstallerPackageName(getContext(), mPackageName);
-
- final CharSequence installerLabel = Utils.getApplicationLabel(getContext(),
- installerPackageName);
- if (installerLabel == null) {
- return;
- }
- final int detailsStringId = AppUtils.isInstant(mPackageInfo.applicationInfo)
- ? R.string.instant_app_details_summary
- : R.string.app_install_details_summary;
- PreferenceCategory category = new PreferenceCategory(getPrefContext());
- category.setTitle(R.string.app_install_details_group_title);
- screen.addPreference(category);
- Preference pref = new Preference(getPrefContext());
- pref.setTitle(R.string.app_install_details_title);
- pref.setKey("app_info_store");
- pref.setSummary(getString(detailsStringId, installerLabel));
-
- Intent intent =
- AppStoreUtil.getAppStoreLink(getContext(), installerPackageName, mPackageName);
- if (intent != null) {
- pref.setIntent(intent);
- } else {
- pref.setEnabled(false);
- }
- category.addPreference(pref);
- }
-
- @VisibleForTesting
- void maybeAddInstantAppButtons() {
- if (AppUtils.isInstant(mPackageInfo.applicationInfo)) {
- LayoutPreference buttons = (LayoutPreference) findPreference(KEY_INSTANT_APP_BUTTONS);
- mInstantAppButtonsController = mApplicationFeatureProvider
- .newInstantAppButtonsController(this,
- buttons.findViewById(R.id.instant_app_button_container),
- id -> showDialogInner(id, 0))
- .setPackageName(mPackageName)
- .show();
- }
- }
-
- private boolean hasPermission(String permission) {
- if (mPackageInfo == null || mPackageInfo.requestedPermissions == null) {
- return false;
- }
- for (int i = 0; i < mPackageInfo.requestedPermissions.length; i++) {
- if (mPackageInfo.requestedPermissions[i].equals(permission)) {
- return true;
- }
- }
- return false;
- }
-
- private void updateDynamicPrefs() {
- final Context context = getContext();
- Preference pref = findPreference("default_home");
-
- if (pref != null) {
- pref.setSummary(DefaultHomePreferenceController.isHomeDefault(mPackageName,
- new PackageManagerWrapper(context.getPackageManager()))
- ? R.string.yes : R.string.no);
- }
- pref = findPreference("default_browser");
- if (pref != null) {
- pref.setSummary(new DefaultBrowserPreferenceController(context)
- .isBrowserDefault(mPackageName, mUserId)
- ? R.string.yes : R.string.no);
- }
- pref = findPreference("default_phone_app");
- if (pref != null) {
- pref.setSummary(
- DefaultPhonePreferenceController.isPhoneDefault(mPackageName, context)
- ? R.string.yes : R.string.no);
- }
- pref = findPreference("default_emergency_app");
- if (pref != null) {
- pref.setSummary(DefaultEmergencyPreferenceController.isEmergencyDefault(mPackageName,
- getContext()) ? R.string.yes : R.string.no);
- }
- pref = findPreference("default_sms_app");
- if (pref != null) {
- pref.setSummary(DefaultSmsPreferenceController.isSmsDefault(mPackageName, context)
- ? R.string.yes : R.string.no);
- }
- pref = findPreference("system_alert_window");
- if (pref != null) {
- pref.setSummary(DrawOverlayDetails.getSummary(getContext(), mAppEntry));
- }
- pref = findPreference("picture_in_picture");
- if (pref != null) {
- pref.setSummary(PictureInPictureDetails.getPreferenceSummary(getContext(),
- mPackageInfo.applicationInfo.uid, mPackageName));
- }
- pref = findPreference("write_settings_apps");
- if (pref != null) {
- pref.setSummary(WriteSettingsDetails.getSummary(getContext(), mAppEntry));
- }
- pref = findPreference("install_other_apps");
- if (pref != null) {
- pref.setSummary(ExternalSourcesDetails.getPreferenceSummary(getContext(), mAppEntry));
- }
- }
-
- public static NetworkTemplate getTemplate(Context context) {
- if (DataUsageList.hasReadyMobileRadio(context)) {
- return NetworkTemplate.buildTemplateMobileWildcard();
- }
- if (DataUsageUtils.hasWifiRadio(context)) {
- return NetworkTemplate.buildTemplateWifiWildcard();
- }
- return NetworkTemplate.buildTemplateEthernet();
- }
-
- public static CharSequence getNotificationSummary(AppEntry appEntry, Context context,
- NotificationBackend backend) {
- AppRow appRow = backend.loadAppRow(context, context.getPackageManager(), appEntry.info);
- return getNotificationSummary(appRow, context);
- }
-
- public static CharSequence getNotificationSummary(AppRow appRow, Context context) {
- // TODO: implement summary when it is known what it should say
- return "";
- }
-
- @Override
- protected void onPackageRemoved() {
- getActivity().finishActivity(SUB_INFO_FRAGMENT);
- super.onPackageRemoved();
- }
-
- private class MemoryUpdater extends AsyncTask<Void, Void, ProcStatsPackageEntry> {
-
- @Override
- protected ProcStatsPackageEntry doInBackground(Void... params) {
- if (getActivity() == null) {
- return null;
- }
- if (mPackageInfo == null) {
- return null;
- }
- if (mStatsManager == null) {
- mStatsManager = new ProcStatsData(getActivity(), false);
- mStatsManager.setDuration(ProcessStatsBase.sDurations[0]);
- }
- mStatsManager.refreshStats(true);
- for (ProcStatsPackageEntry pkgEntry : mStatsManager.getEntries()) {
- for (ProcStatsEntry entry : pkgEntry.mEntries) {
- if (entry.mUid == mPackageInfo.applicationInfo.uid) {
- pkgEntry.updateMetrics();
- return pkgEntry;
- }
- }
- }
- return null;
- }
-
- @Override
- protected void onPostExecute(ProcStatsPackageEntry entry) {
- if (getActivity() == null) {
- return;
- }
- if (entry != null) {
- mStats = entry;
- mMemoryPreference.setEnabled(true);
- double amount = Math.max(entry.mRunWeight, entry.mBgWeight)
- * mStatsManager.getMemInfo().weightToRam;
- mMemoryPreference.setSummary(getString(R.string.memory_use_summary,
- Formatter.formatShortFileSize(getContext(), (long) amount)));
- } else {
- mMemoryPreference.setEnabled(false);
- mMemoryPreference.setSummary(getString(R.string.no_memory_use_summary));
- }
- }
-
- }
-
- /**
- * Elicit this class for testing. Test cannot be done in robolectric because it
- * invokes the new API.
- */
- @VisibleForTesting
- public static class PackageUtil {
- /**
- * Count how many users in device have installed package {@paramref packageName}
- */
- public static int countPackageInUsers(PackageManager packageManager, UserManager
- userManager, String packageName) {
- final List<UserInfo> userInfos = userManager.getUsers(true);
- int count = 0;
-
- for (final UserInfo userInfo : userInfos) {
- try {
- // Use this API to check whether user has this package
- final ApplicationInfo info = packageManager.getApplicationInfoAsUser(
- packageName, PackageManager.GET_META_DATA, userInfo.id);
- if ((info.flags & ApplicationInfo.FLAG_INSTALLED) != 0) {
- count++;
- }
- } catch(NameNotFoundException e) {
- Log.e(TAG, "Package: " + packageName + " not found for user: " + userInfo.id);
- }
- }
-
- return count;
- }
- }
-
- private static class DisableChanger extends AsyncTask<Object, Object, Object> {
- final PackageManager mPm;
- final WeakReference<InstalledAppDetails> mActivity;
- final ApplicationInfo mInfo;
- final int mState;
-
- DisableChanger(InstalledAppDetails activity, ApplicationInfo info, int state) {
- mPm = activity.mPm;
- mActivity = new WeakReference<InstalledAppDetails>(activity);
- mInfo = info;
- mState = state;
- }
-
- @Override
- protected Object doInBackground(Object... params) {
- mPm.setApplicationEnabledSetting(mInfo.packageName, mState, 0);
- return null;
- }
- }
-
- private final LoaderCallbacks<ChartData> mDataCallbacks = new LoaderCallbacks<ChartData>() {
-
- @Override
- public Loader<ChartData> onCreateLoader(int id, Bundle args) {
- return new ChartDataLoader(getActivity(), mStatsSession, args);
- }
-
- @Override
- public void onLoadFinished(Loader<ChartData> loader, ChartData data) {
- mChartData = data;
- mDataPreference.setSummary(getDataSummary());
- }
-
- @Override
- public void onLoaderReset(Loader<ChartData> loader) {
- // Leave last result.
- }
- };
-
- private final BroadcastReceiver mCheckKillProcessesReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- final boolean enabled = getResultCode() != Activity.RESULT_CANCELED;
- Log.d(LOG_TAG, "Got broadcast response: Restart status for "
- + mAppEntry.info.packageName + " " + enabled);
- updateForceStopButton(enabled);
- }
- };
-
- private final PermissionsResultCallback mPermissionCallback
- = new PermissionsResultCallback() {
- @Override
- public void onPermissionSummaryResult(int standardGrantedPermissionCount,
- int requestedPermissionCount, int additionalGrantedPermissionCount,
- List<CharSequence> grantedGroupLabels) {
- if (getActivity() == null) {
- return;
- }
- final Resources res = getResources();
- CharSequence summary = null;
-
- if (requestedPermissionCount == 0) {
- summary = res.getString(
- R.string.runtime_permissions_summary_no_permissions_requested);
- mPermissionsPreference.setOnPreferenceClickListener(null);
- mPermissionsPreference.setEnabled(false);
- } else {
- final ArrayList<CharSequence> list = new ArrayList<>(grantedGroupLabels);
- if (additionalGrantedPermissionCount > 0) {
- // N additional permissions.
- list.add(res.getQuantityString(
- R.plurals.runtime_permissions_additional_count,
- additionalGrantedPermissionCount, additionalGrantedPermissionCount));
- }
- if (list.size() == 0) {
- summary = res.getString(
- R.string.runtime_permissions_summary_no_permissions_granted);
- } else {
- summary = ListFormatter.getInstance().format(list);
- }
- mPermissionsPreference.setOnPreferenceClickListener(InstalledAppDetails.this);
- mPermissionsPreference.setEnabled(true);
- }
- mPermissionsPreference.setSummary(summary);
- }
- };
-}
diff --git a/src/com/android/settings/applications/InstalledAppDetailsTop.java b/src/com/android/settings/applications/InstalledAppDetailsTop.java
index 8090de0..2d9756a 100644
--- a/src/com/android/settings/applications/InstalledAppDetailsTop.java
+++ b/src/com/android/settings/applications/InstalledAppDetailsTop.java
@@ -17,30 +17,21 @@
package com.android.settings.applications;
import android.content.Intent;
-import android.util.FeatureFlagUtils;
import com.android.settings.SettingsActivity;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
public class InstalledAppDetailsTop extends SettingsActivity {
@Override
public Intent getIntent() {
Intent modIntent = new Intent(super.getIntent());
- if (FeatureFlagUtils.isEnabled(this, FeatureFlags.APP_INFO_V2)) {
- modIntent.putExtra(EXTRA_SHOW_FRAGMENT, AppInfoDashboardFragment.class.getName());
- } else {
- modIntent.putExtra(EXTRA_SHOW_FRAGMENT, InstalledAppDetails.class.getName());
- }
+ modIntent.putExtra(EXTRA_SHOW_FRAGMENT, AppInfoDashboardFragment.class.getName());
return modIntent;
}
@Override
protected boolean isValidFragment(String fragmentName) {
- if (FeatureFlagUtils.isEnabled(this, FeatureFlags.APP_INFO_V2)) {
- return AppInfoDashboardFragment.class.getName().equals(fragmentName);
- }
- return InstalledAppDetails.class.getName().equals(fragmentName);
+ return AppInfoDashboardFragment.class.getName().equals(fragmentName);
}
}
diff --git a/src/com/android/settings/applications/LayoutPreference.java b/src/com/android/settings/applications/LayoutPreference.java
index f2bd183..6940a4b 100644
--- a/src/com/android/settings/applications/LayoutPreference.java
+++ b/src/com/android/settings/applications/LayoutPreference.java
@@ -42,6 +42,24 @@
public LayoutPreference(Context context, AttributeSet attrs) {
super(context, attrs);
+ init(context, attrs, 0 /* defStyleAttr */);
+ }
+
+ public LayoutPreference(Context context, AttributeSet attrs, int defStyleAttr) {
+ super(context, attrs, defStyleAttr);
+ init(context, attrs, defStyleAttr);
+ }
+
+ public LayoutPreference(Context context, int resource) {
+ this(context, LayoutInflater.from(context).inflate(resource, null, false));
+ }
+
+ public LayoutPreference(Context context, View view) {
+ super(context);
+ setView(view);
+ }
+
+ private void init(Context context, AttributeSet attrs, int defStyleAttr) {
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.Preference);
mAllowDividerAbove = TypedArrayUtils.getBoolean(a, R.styleable.Preference_allowDividerAbove,
R.styleable.Preference_allowDividerAbove, false);
@@ -50,7 +68,7 @@
a.recycle();
a = context.obtainStyledAttributes(
- attrs, com.android.internal.R.styleable.Preference, 0, 0);
+ attrs, com.android.internal.R.styleable.Preference, defStyleAttr, 0);
int layoutResource = a.getResourceId(com.android.internal.R.styleable.Preference_layout,
0);
if (layoutResource == 0) {
@@ -64,15 +82,6 @@
setView(view);
}
- public LayoutPreference(Context context, int resource) {
- this(context, LayoutInflater.from(context).inflate(resource, null, false));
- }
-
- public LayoutPreference(Context context, View view) {
- super(context);
- setView(view);
- }
-
private void setView(View view) {
setLayoutResource(R.layout.layout_preference_frame);
final ViewGroup allDetails = view.findViewById(R.id.all_details);
@@ -106,4 +115,4 @@
return mRootView.findViewById(id);
}
-}
+}
\ No newline at end of file
diff --git a/src/com/android/settings/applications/NotificationApps.java b/src/com/android/settings/applications/NotificationApps.java
deleted file mode 100644
index f921092..0000000
--- a/src/com/android/settings/applications/NotificationApps.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (C) 2016 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.settings.applications;
-
-import android.app.Activity;
-import android.content.Context;
-import android.content.pm.ApplicationInfo;
-
-import com.android.settings.R;
-import com.android.settings.applications.manageapplications.ManageApplications;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.notification.NotificationBackend;
-import com.android.settingslib.wrapper.PackageManagerWrapper;
-
-/**
- * Extension of ManageApplications with no changes other than having its own
- * SummaryProvider.
- */
-public class NotificationApps extends ManageApplications {
-
- public static class SummaryProvider implements SummaryLoader.SummaryProvider {
-
- private final Context mContext;
- private final SummaryLoader mLoader;
- private final NotificationBackend mNotificationBackend;
- private final PackageManagerWrapper mPackageManager;
-
- public SummaryProvider(Context context, SummaryLoader loader) {
- mContext = context;
- mLoader = loader;
- mNotificationBackend = new NotificationBackend();
- mPackageManager = new PackageManagerWrapper(mContext.getPackageManager());
- }
-
- @Override
- public void setListening(boolean listening) {
- if (listening) {
- new AppCounter(mContext, mPackageManager) {
- @Override
- protected void onCountComplete(int num) {
- updateSummary(num);
- }
-
- @Override
- protected boolean includeInCount(ApplicationInfo info) {
- return mNotificationBackend.getNotificationsBanned(info.packageName,
- info.uid);
- }
- }.execute();
- }
- }
-
- private void updateSummary(int count) {
- if (count == 0) {
- mLoader.setSummary(this, mContext.getString(R.string.notification_summary_none));
- } else {
- mLoader.setSummary(this, mContext.getResources().getQuantityString(
- R.plurals.notification_summary, count, count));
- }
- }
- }
-
- public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
- = new SummaryLoader.SummaryProviderFactory() {
- @Override
- public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
- SummaryLoader summaryLoader) {
- return new SummaryProvider(activity, summaryLoader);
- }
- };
-}
diff --git a/src/com/android/settings/applications/RecentAppsPreferenceController.java b/src/com/android/settings/applications/RecentAppsPreferenceController.java
index 3859081..b177225 100644
--- a/src/com/android/settings/applications/RecentAppsPreferenceController.java
+++ b/src/com/android/settings/applications/RecentAppsPreferenceController.java
@@ -34,19 +34,17 @@
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.ArraySet;
-import android.util.FeatureFlagUtils;
import android.util.IconDrawableFactory;
import android.util.Log;
import com.android.settings.R;
-import com.android.settings.Utils;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.AppPreference;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.StringUtil;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import java.util.ArrayList;
@@ -241,21 +239,14 @@
pref.setKey(pkgName);
pref.setTitle(appEntry.label);
pref.setIcon(mIconDrawableFactory.getBadgedIcon(appEntry.info));
- pref.setSummary(Utils.formatRelativeTime(mContext,
+ pref.setSummary(StringUtil.formatRelativeTime(mContext,
System.currentTimeMillis() - stat.getLastTimeUsed(), false));
pref.setOrder(i);
pref.setOnPreferenceClickListener(preference -> {
- if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.APP_INFO_V2)) {
- AppInfoBase.startAppInfoFragment(AppInfoDashboardFragment.class,
- R.string.application_info_label, pkgName, appEntry.info.uid, mHost,
- 1001 /*RequestCode*/, SETTINGS_APP_NOTIF_CATEGORY);
- return true;
- } else {
- AppInfoBase.startAppInfoFragment(InstalledAppDetails.class,
- R.string.application_info_label, pkgName, appEntry.info.uid, mHost,
- 1001 /*RequestCode*/, SETTINGS_APP_NOTIF_CATEGORY);
- return true;
- }
+ AppInfoBase.startAppInfoFragment(AppInfoDashboardFragment.class,
+ R.string.application_info_label, pkgName, appEntry.info.uid, mHost,
+ 1001 /*RequestCode*/, SETTINGS_APP_NOTIF_CATEGORY);
+ return true;
});
if (!rebindPref) {
mCategory.addPreference(pref);
diff --git a/src/com/android/settings/applications/RunningServiceDetails.java b/src/com/android/settings/applications/RunningServiceDetails.java
index 7e73a9b..770b1d6 100644
--- a/src/com/android/settings/applications/RunningServiceDetails.java
+++ b/src/com/android/settings/applications/RunningServiceDetails.java
@@ -34,7 +34,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.Utils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.utils.ThreadUtils;
@@ -45,7 +45,7 @@
import java.util.ArrayList;
import java.util.Collections;
-public class RunningServiceDetails extends InstrumentedPreferenceFragment
+public class RunningServiceDetails extends InstrumentedFragment
implements RunningState.OnRefreshUiListener {
static final String TAG = "RunningServicesDetails";
diff --git a/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceController.java b/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceController.java
index 130138c..1a5a285 100644
--- a/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceController.java
@@ -16,18 +16,14 @@
package com.android.settings.applications.appinfo;
-import android.app.Activity;
import android.app.ActivityManager;
import android.app.admin.DevicePolicyManager;
-import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
-import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
-import android.net.Uri;
import android.os.Bundle;
import android.os.RemoteException;
import android.os.ServiceManager;
@@ -35,7 +31,6 @@
import android.os.UserManager;
import android.support.annotation.VisibleForTesting;
import android.support.v7.preference.PreferenceScreen;
-import android.util.Log;
import android.webkit.IWebViewUpdateService;
import com.android.settings.R;
@@ -71,16 +66,6 @@
private UserManager mUserManager;
private PackageManager mPm;
- private final BroadcastReceiver mCheckKillProcessesReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- final boolean enabled = getResultCode() != Activity.RESULT_CANCELED;
- Log.d(TAG, "Got broadcast response: Restart status for "
- + mParent.getAppEntry().info.packageName + " " + enabled);
- updateForceStopButton(enabled);
- }
- };
-
public AppActionButtonPreferenceController(Context context, AppInfoDashboardFragment parent,
String packageName) {
super(context, KEY_ACTION_BUTTONS);
@@ -101,9 +86,7 @@
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mActionButtons = ((ActionButtonPreference) screen.findPreference(KEY_ACTION_BUTTONS))
- .setButton2Text(R.string.force_stop)
- .setButton2Positive(false)
- .setButton2Enabled(false);
+ .setButton2Visible(false);
}
@Override
@@ -140,7 +123,6 @@
}
}
- checkForceStop(appEntry, packageInfo);
initUninstallButtons(appEntry, packageInfo);
}
@@ -269,41 +251,6 @@
return disableable;
}
- private void updateForceStopButton(boolean enabled) {
- final boolean disallowedBySystem = RestrictedLockUtils.hasBaseUserRestriction(
- mContext, UserManager.DISALLOW_APPS_CONTROL, mUserId);
- mActionButtons
- .setButton2Enabled(disallowedBySystem ? false : enabled)
- .setButton2OnClickListener(
- disallowedBySystem ? null : v -> mParent.handleForceStopButtonClick());
- }
-
- void checkForceStop(AppEntry appEntry, PackageInfo packageInfo) {
- if (mDpm.packageHasActiveAdmins(packageInfo.packageName)) {
- // User can't force stop device admin.
- Log.w(TAG, "User can't force stop device admin");
- updateForceStopButton(false);
- } else if (AppUtils.isInstant(packageInfo.applicationInfo)) {
- updateForceStopButton(false);
- mActionButtons.setButton2Visible(false);
- } else if ((appEntry.info.flags & ApplicationInfo.FLAG_STOPPED) == 0) {
- // If the app isn't explicitly stopped, then always show the
- // force stop button.
- Log.w(TAG, "App is not explicitly stopped");
- updateForceStopButton(true);
- } else {
- final Intent intent = new Intent(Intent.ACTION_QUERY_PACKAGE_RESTART,
- Uri.fromParts("package", appEntry.info.packageName, null));
- intent.putExtra(Intent.EXTRA_PACKAGES, new String[] { appEntry.info.packageName });
- intent.putExtra(Intent.EXTRA_UID, appEntry.info.uid);
- intent.putExtra(Intent.EXTRA_USER_HANDLE, UserHandle.getUserId(appEntry.info.uid));
- Log.d(TAG, "Sending broadcast to query restart status for "
- + appEntry.info.packageName);
- mContext.sendOrderedBroadcastAsUser(intent, UserHandle.CURRENT, null,
- mCheckKillProcessesReceiver, null, Activity.RESULT_CANCELED, null, null);
- }
- }
-
private boolean signaturesMatch(String pkg1, String pkg2) {
if (pkg1 != null && pkg2 != null) {
try {
diff --git a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
index ffe2bf3..afcf760 100644
--- a/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppBatteryPreferenceController.java
@@ -76,7 +76,9 @@
@Override
public int getAvailabilityStatus() {
- return AVAILABLE;
+ return mContext.getResources().getBoolean(R.bool.config_show_app_info_settings_battery)
+ ? AVAILABLE
+ : DISABLED_UNSUPPORTED;
}
@Override
diff --git a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
index 41c1f7c..5790d34 100755
--- a/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
+++ b/src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java
@@ -19,7 +19,6 @@
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import android.app.Activity;
-import android.app.ActivityManager;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
@@ -45,19 +44,15 @@
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
-import android.view.View;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.DeviceAdminAdd;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.SettingsPreferenceFragment;
-import com.android.settings.Utils;
-import com.android.settings.applications.LayoutPreference;
import com.android.settings.applications.manageapplications.ManageApplications;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.widget.EntityHeaderController;
import com.android.settings.widget.PreferenceCategoryController;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
import com.android.settingslib.RestrictedLockUtils;
@@ -89,6 +84,7 @@
// Menu identifiers
private static final int UNINSTALL_ALL_USERS_MENU = 1;
private static final int UNINSTALL_UPDATES = 2;
+ static final int FORCE_STOP_MENU = 3;
// Result code identifiers
@VisibleForTesting
@@ -103,7 +99,7 @@
// Dialog identifiers used in showDialog
private static final int DLG_BASE = 0;
- private static final int DLG_FORCE_STOP = DLG_BASE + 1;
+ static final int DLG_FORCE_STOP = DLG_BASE + 1;
private static final int DLG_DISABLE = DLG_BASE + 2;
private static final int DLG_SPECIAL_DISABLE = DLG_BASE + 3;
@@ -141,6 +137,7 @@
private InstantAppButtonsPreferenceController mInstantAppButtonPreferenceController;
private AppActionButtonPreferenceController mAppActionButtonPreferenceController;
+ private ForceStopOptionsMenuController mForceStopOptionsMenuController;
/**
* Callback to invoke when app info has been changed.
@@ -165,17 +162,25 @@
mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE);
mPm = activity.getPackageManager();
- retrieveAppEntry();
- startListeningToPackageRemove();
-
if (!ensurePackageInfoAvailable(activity)) {
return;
}
+ startListeningToPackageRemove();
+
+ mForceStopOptionsMenuController =
+ new ForceStopOptionsMenuController(activity, this /* parent */, mDpm,
+ mMetricsFeatureProvider, getLifecycle());
setHasOptionsMenu(true);
}
@Override
+ public void onDestroy() {
+ stopListeningToPackageRemove();
+ super.onDestroy();
+ }
+
+ @Override
public int getMetricsCategory() {
return MetricsEvent.APPLICATIONS_INSTALLED_APP_DETAILS;
}
@@ -205,6 +210,10 @@
@Override
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ retrieveAppEntry();
+ if (mPackageInfo == null) {
+ return null;
+ }
final String packageName = getPackageName();
final List<AbstractPreferenceController> controllers = new ArrayList<>();
final Lifecycle lifecycle = getLifecycle();
@@ -262,19 +271,21 @@
}
ApplicationsState.AppEntry getAppEntry() {
- if (mAppEntry == null) {
- retrieveAppEntry();
- }
return mAppEntry;
}
+ void setAppEntry(ApplicationsState.AppEntry appEntry) {
+ mAppEntry = appEntry;
+ }
+
PackageInfo getPackageInfo() {
- if (mAppEntry == null) {
- retrieveAppEntry();
- }
return mPackageInfo;
}
+ ApplicationsState getAppState() {
+ return mState;
+ }
+
@Override
public void onPackageSizeChanged(String packageName) {
if (!TextUtils.equals(packageName, mPackageName)) {
@@ -315,6 +326,7 @@
if (mFinishing) {
return;
}
+ super.onPrepareOptionsMenu(menu);
menu.findItem(UNINSTALL_ALL_USERS_MENU).setVisible(shouldShowUninstallForAll(mAppEntry));
mUpdatedSysApp = (mAppEntry.info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0;
final MenuItem uninstallUpdatesItem = menu.findItem(UNINSTALL_UPDATES);
@@ -335,7 +347,7 @@
uninstallPkg(mAppEntry.info.packageName, false, false);
return true;
}
- return false;
+ return super.onOptionsItemSelected(item);
}
@Override
@@ -352,7 +364,12 @@
PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER)
.execute((Object) null);
}
- // continue with following operations
+ if (!refreshUi()) {
+ onPackageRemoved();
+ } else {
+ startListeningToPackageRemove();
+ }
+ break;
case REQUEST_REMOVE_DEVICE_ADMIN:
if (!refreshUi()) {
setIntentAndFinish(true, true);
@@ -465,18 +482,10 @@
})
.setNegativeButton(R.string.dlg_cancel, null)
.create();
- case DLG_FORCE_STOP:
- return new AlertDialog.Builder(getActivity())
- .setTitle(getActivity().getText(R.string.force_stop_dlg_title))
- .setMessage(getActivity().getText(R.string.force_stop_dlg_text))
- .setPositiveButton(R.string.dlg_ok, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // Force stop
- forceStopPackage(mAppEntry.info.packageName);
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
+ }
+ final AlertDialog dialog = mForceStopOptionsMenuController.createDialog(id);
+ if (dialog != null) {
+ return dialog;
}
return mInstantAppButtonPreferenceController.createDialog(id);
}
@@ -493,21 +502,6 @@
mDisableAfterUninstall = andDisable;
}
- private void forceStopPackage(String pkgName) {
- mMetricsFeatureProvider.action(getContext(), MetricsEvent.ACTION_APP_FORCE_STOP, pkgName);
- final ActivityManager am = (ActivityManager) getActivity().getSystemService(
- Context.ACTIVITY_SERVICE);
- Log.d(TAG, "Stopping package " + pkgName);
- am.forceStopPackage(pkgName);
- final int userId = UserHandle.getUserId(mAppEntry.info.uid);
- mState.invalidatePackage(pkgName, userId);
- final AppEntry newEnt = mState.getEntry(pkgName, userId);
- if (newEnt != null) {
- mAppEntry = newEnt;
- }
- mAppActionButtonPreferenceController.checkForceStop(mAppEntry, mPackageInfo);
- }
-
public static void startAppInfoFragment(Class<?> fragment, int title,
SettingsPreferenceFragment caller, AppEntry appEntry) {
// start new fragment to display extended information
@@ -568,20 +562,6 @@
}
}
- void handleForceStopButtonClick() {
- if (mAppEntry == null) {
- setIntentAndFinish(true, true);
- return;
- }
- if (mAppsControlDisallowedAdmin != null && !mAppsControlDisallowedBySystem) {
- RestrictedLockUtils.sendShowAdminSupportDetailsIntent(
- getActivity(), mAppsControlDisallowedAdmin);
- } else {
- showDialogInner(DLG_FORCE_STOP, 0);
- //forceStopPackage(mAppInfo.packageName);
- }
- }
-
/** Returns whether there is only one user on this device, not including the system-only user */
private boolean isSingleUser() {
final int userCount = mUserManager.getUserCount();
@@ -650,7 +630,8 @@
return mPackageName;
}
- private void retrieveAppEntry() {
+ @VisibleForTesting
+ void retrieveAppEntry() {
final Activity activity = getActivity();
if (activity == null) {
return;
@@ -679,7 +660,7 @@
}
}
- private void setIntentAndFinish(boolean finish, boolean appChanged) {
+ void setIntentAndFinish(boolean finish, boolean appChanged) {
if (localLOGV) Log.i(TAG, "appChanged="+appChanged);
final Intent intent = new Intent();
intent.putExtra(ManageApplications.APP_CHG, appChanged);
@@ -762,7 +743,8 @@
}
}
- private void startListeningToPackageRemove() {
+ @VisibleForTesting
+ void startListeningToPackageRemove() {
if (mListeningToPackageRemove) {
return;
}
@@ -780,7 +762,8 @@
getContext().unregisterReceiver(mPackageRemovedReceiver);
}
- private final BroadcastReceiver mPackageRemovedReceiver = new BroadcastReceiver() {
+ @VisibleForTesting
+ final BroadcastReceiver mPackageRemovedReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String packageName = intent.getData().getSchemeSpecificPart();
diff --git a/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java b/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
index 7b497a9..265754c 100644
--- a/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
+++ b/src/com/android/settings/applications/appinfo/AppMemoryPreferenceController.java
@@ -104,6 +104,10 @@
@Override
public int getAvailabilityStatus() {
+ if (!mContext.getResources().getBoolean(R.bool.config_show_app_info_settings_memory)) {
+ return DISABLED_UNSUPPORTED;
+ }
+
return DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)
? AVAILABLE : DISABLED_DEPENDENT_SETTING;
}
diff --git a/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuController.java b/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuController.java
new file mode 100644
index 0000000..cf87147
--- /dev/null
+++ b/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuController.java
@@ -0,0 +1,198 @@
+/*
+ * Copyright (C) 2018 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.settings.applications.appinfo;
+
+import static com.android.settings.applications.appinfo.AppInfoDashboardFragment.FORCE_STOP_MENU;
+import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+
+import android.app.Activity;
+import android.app.ActivityManager;
+import android.app.AlertDialog;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
+import android.net.Uri;
+import android.os.UserHandle;
+import android.os.UserManager;
+import android.support.annotation.VisibleForTesting;
+import android.util.Log;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+import com.android.settings.wrapper.DevicePolicyManagerWrapper;
+import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.applications.AppUtils;
+import com.android.settingslib.applications.ApplicationsState;
+import com.android.settingslib.applications.ApplicationsState.AppEntry;
+import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnCreateOptionsMenu;
+import com.android.settingslib.core.lifecycle.events.OnOptionsItemSelected;
+import com.android.settingslib.core.lifecycle.events.OnPrepareOptionsMenu;
+
+public class ForceStopOptionsMenuController implements LifecycleObserver, OnCreateOptionsMenu,
+ OnPrepareOptionsMenu, OnOptionsItemSelected {
+
+ private static final String TAG = "ForceStopMenuController";
+
+ private final Context mContext;
+ private final AppInfoDashboardFragment mParent;
+ private final DevicePolicyManagerWrapper mDpm;
+ private final MetricsFeatureProvider mMetricsFeatureProvider;
+
+ private int mUserId;
+ private MenuItem mForceStopMenu;
+
+ private final BroadcastReceiver mCheckKillProcessesReceiver = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ final boolean enabled = getResultCode() != Activity.RESULT_CANCELED;
+ Log.d(TAG, "Got broadcast response: Restart status for "
+ + mParent.getAppEntry().info.packageName + " " + enabled);
+ enableForceStopMenu(enabled);
+ }
+ };
+
+ public ForceStopOptionsMenuController(Context context, AppInfoDashboardFragment parent,
+ DevicePolicyManagerWrapper devicePolicyManager,
+ MetricsFeatureProvider metricsFeatureProvider, Lifecycle lifecycle) {
+ mContext = context;
+ mParent = parent;
+ mDpm = devicePolicyManager;
+ mMetricsFeatureProvider = metricsFeatureProvider;
+ mUserId = UserHandle.myUserId();
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ }
+
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ menu.add(0, FORCE_STOP_MENU, 2, R.string.force_stop)
+ .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem menuItem) {
+ if (menuItem.getItemId() == FORCE_STOP_MENU) {
+ handleForceStopMenuClick();
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ public void onPrepareOptionsMenu(Menu menu) {
+ mForceStopMenu = menu.findItem(FORCE_STOP_MENU);
+ updateForceStopMenu(mParent.getAppEntry(), mParent.getPackageInfo());
+ }
+
+ @VisibleForTesting
+ void updateForceStopMenu(AppEntry appEntry, PackageInfo packageInfo) {
+ boolean enabled = false;
+ if (mDpm.packageHasActiveAdmins(packageInfo.packageName)) {
+ // User can't force stop device admin.
+ Log.w(TAG, "User can't force stop device admin");
+ } else if (AppUtils.isInstant(packageInfo.applicationInfo)) {
+ // No force stop for instant app
+ if (mForceStopMenu != null) {
+ mForceStopMenu.setVisible(false);
+ }
+ } else if ((appEntry.info.flags & ApplicationInfo.FLAG_STOPPED) == 0) {
+ // If the app isn't explicitly stopped, then always show the
+ // force stop button.
+ Log.w(TAG, "App is not explicitly stopped");
+ enabled = true;
+ } else {
+ final Intent intent = new Intent(Intent.ACTION_QUERY_PACKAGE_RESTART,
+ Uri.fromParts("package", appEntry.info.packageName, null));
+ intent.putExtra(Intent.EXTRA_PACKAGES, new String[] { appEntry.info.packageName });
+ intent.putExtra(Intent.EXTRA_UID, appEntry.info.uid);
+ intent.putExtra(Intent.EXTRA_USER_HANDLE, UserHandle.getUserId(appEntry.info.uid));
+ Log.d(TAG, "Sending broadcast to query restart status for "
+ + appEntry.info.packageName);
+ mContext.sendOrderedBroadcastAsUser(intent, UserHandle.CURRENT, null,
+ mCheckKillProcessesReceiver, null, Activity.RESULT_CANCELED, null, null);
+ }
+ enableForceStopMenu(enabled);
+ }
+
+ private void enableForceStopMenu(boolean enabled) {
+ if (mForceStopMenu != null) {
+ final boolean disallowedBySystem = RestrictedLockUtils.hasBaseUserRestriction(
+ mContext, UserManager.DISALLOW_APPS_CONTROL, mUserId);
+ mForceStopMenu.setEnabled(disallowedBySystem ? false : enabled);
+ }
+ }
+
+ @VisibleForTesting
+ void handleForceStopMenuClick() {
+ if (mParent.getAppEntry() == null) {
+ mParent.setIntentAndFinish(true, true);
+ return;
+ }
+ final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(
+ mContext, UserManager.DISALLOW_APPS_CONTROL, mUserId);
+ final boolean disallowedBySystem = RestrictedLockUtils.hasBaseUserRestriction(
+ mContext, UserManager.DISALLOW_APPS_CONTROL, mUserId);
+ if (admin != null && !disallowedBySystem) {
+ RestrictedLockUtils.sendShowAdminSupportDetailsIntent(mContext, admin);
+ } else {
+ mParent.showDialogInner(mParent.DLG_FORCE_STOP, 0);
+ }
+ }
+
+ private void forceStopPackage(String pkgName) {
+ mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_APP_FORCE_STOP, pkgName);
+ final ActivityManager am = (ActivityManager) mContext.getSystemService(
+ Context.ACTIVITY_SERVICE);
+ Log.d(TAG, "Stopping package " + pkgName);
+ am.forceStopPackage(pkgName);
+ final int userId = UserHandle.getUserId(mParent.getAppEntry().info.uid);
+ final ApplicationsState appState = mParent.getAppState();
+ appState.invalidatePackage(pkgName, userId);
+ final AppEntry newEnt = appState.getEntry(pkgName, userId);
+ if (newEnt != null) {
+ mParent.setAppEntry(newEnt);
+ }
+ }
+
+ public AlertDialog createDialog(int id) {
+ if (id != mParent.DLG_FORCE_STOP) {
+ return null;
+ }
+ return new AlertDialog.Builder(mContext)
+ .setTitle(mContext.getText(R.string.force_stop_dlg_title))
+ .setMessage(mContext.getText(R.string.force_stop_dlg_text))
+ .setPositiveButton(R.string.dlg_ok, new DialogInterface.OnClickListener() {
+ public void onClick(DialogInterface dialog, int which) {
+ // Force stop
+ forceStopPackage(mParent.getAppEntry().info.packageName);
+ }
+ })
+ .setNegativeButton(R.string.dlg_cancel, null)
+ .create();
+ }
+
+}
diff --git a/src/com/android/settings/applications/defaultapps/DefaultAutofillPicker.java b/src/com/android/settings/applications/defaultapps/DefaultAutofillPicker.java
index 97f6d4b..d116f91 100644
--- a/src/com/android/settings/applications/defaultapps/DefaultAutofillPicker.java
+++ b/src/com/android/settings/applications/defaultapps/DefaultAutofillPicker.java
@@ -251,16 +251,16 @@
static final class AutofillSettingIntentProvider implements SettingIntentProvider {
private final String mSelectedKey;
- private final PackageManager mPackageManager;
+ private final Context mContext;
- public AutofillSettingIntentProvider(PackageManager packageManager, String key) {
+ public AutofillSettingIntentProvider(Context context, String key) {
mSelectedKey = key;
- mPackageManager = packageManager;
+ mContext = context;
}
@Override
public Intent getIntent() {
- final List<ResolveInfo> resolveInfos = mPackageManager.queryIntentServices(
+ final List<ResolveInfo> resolveInfos = mContext.getPackageManager().queryIntentServices(
AUTOFILL_PROBE, PackageManager.GET_META_DATA);
for (ResolveInfo resolveInfo : resolveInfos) {
@@ -270,7 +270,7 @@
if (TextUtils.equals(mSelectedKey, flattenKey)) {
final String settingsActivity;
try {
- settingsActivity = new AutofillServiceInfo(mPackageManager, serviceInfo)
+ settingsActivity = new AutofillServiceInfo(mContext, serviceInfo)
.getSettingsActivity();
} catch (SecurityException e) {
// Service does not declare the proper permission, ignore it.
diff --git a/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceController.java b/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceController.java
index 508cc63..b159d1d 100644
--- a/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceController.java
+++ b/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceController.java
@@ -53,7 +53,7 @@
}
final DefaultAutofillPicker.AutofillSettingIntentProvider intentProvider =
new DefaultAutofillPicker.AutofillSettingIntentProvider(
- mPackageManager.getPackageManager(), info.getKey());
+ mContext, info.getKey());
return intentProvider.getIntent();
}
diff --git a/src/com/android/settings/applications/manageapplications/ManageApplications.java b/src/com/android/settings/applications/manageapplications/ManageApplications.java
index 09896dc..b0949ea 100644
--- a/src/com/android/settings/applications/manageapplications/ManageApplications.java
+++ b/src/com/android/settings/applications/manageapplications/ManageApplications.java
@@ -50,7 +50,6 @@
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.util.ArraySet;
-import android.util.FeatureFlagUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -71,7 +70,6 @@
import com.android.settings.Settings.HighPowerApplicationsActivity;
import com.android.settings.Settings.ManageExternalSourcesActivity;
import com.android.settings.Settings.MoviesStorageActivity;
-import com.android.settings.Settings.NotificationAppListActivity;
import com.android.settings.Settings.OverlaySettingsActivity;
import com.android.settings.Settings.StorageUseActivity;
import com.android.settings.Settings.UsageAccessSettingsActivity;
@@ -91,15 +89,13 @@
import com.android.settings.applications.AppStorageSettings;
import com.android.settings.applications.DefaultAppSettings;
import com.android.settings.applications.InstalledAppCounter;
-import com.android.settings.applications.InstalledAppDetails;
-import com.android.settings.applications.NotificationApps;
import com.android.settings.applications.DirectoryAccessDetails;
import com.android.settings.applications.UsageAccessDetails;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
+import com.android.settings.applications.appinfo.AppNotificationPreferenceController;
import com.android.settings.applications.appinfo.DrawOverlayDetails;
import com.android.settings.applications.appinfo.ExternalSourcesDetails;
import com.android.settings.applications.appinfo.WriteSettingsDetails;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.core.InstrumentedPreferenceFragment;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.fuelgauge.HighPowerDetail;
@@ -151,7 +147,7 @@
private static final String EXTRA_HAS_ENTRIES = "hasEntries";
private static final String EXTRA_HAS_BRIDGE = "hasBridge";
- // attributes used as keys when passing values to InstalledAppDetails activity
+ // attributes used as keys when passing values to AppInfoDashboardFragment activity
public static final String APP_CHG = "chg";
// constant value that can be used to check return code from sub activity.
@@ -240,12 +236,7 @@
if (className == null) {
className = intent.getComponent().getClassName();
}
- if (className.equals(NotificationAppListActivity.class.getName())
- || this instanceof NotificationApps) {
- mListType = LIST_TYPE_NOTIFICATION;
- mNotifBackend = new NotificationBackend();
- screenTitle = R.string.app_notifications_title;
- } else if (className.equals(StorageUseActivity.class.getName())) {
+ if (className.equals(StorageUseActivity.class.getName())) {
if (args != null && args.containsKey(EXTRA_VOLUME_UUID)) {
mVolumeUuid = args.getString(EXTRA_VOLUME_UUID);
mStorageType = args.getInt(EXTRA_STORAGE_TYPE, STORAGE_TYPE_DEFAULT);
@@ -553,13 +544,8 @@
// process ahead of time, to avoid a long load of data when user clicks on a managed
// app. Maybe when they load the list of apps that contains managed profile apps.
default:
- if (FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.APP_INFO_V2)) {
- startAppInfoFragment(
- AppInfoDashboardFragment.class, R.string.application_info_label);
- } else {
- startAppInfoFragment(
- InstalledAppDetails.class, R.string.application_info_label);
- }
+ startAppInfoFragment(
+ AppInfoDashboardFragment.class, R.string.application_info_label);
break;
}
}
@@ -1227,7 +1213,8 @@
switch (mManageApplications.mListType) {
case LIST_TYPE_NOTIFICATION:
if (entry.extraInfo != null) {
- holder.setSummary(InstalledAppDetails.getNotificationSummary(
+ holder.setSummary(
+ AppNotificationPreferenceController.getNotificationSummary(
(AppRow) entry.extraInfo, mContext));
} else {
holder.setSummary(null);
diff --git a/src/com/android/settings/backup/BackupSettingsHelper.java b/src/com/android/settings/backup/BackupSettingsHelper.java
index b0d6cf8..d0a029c 100644
--- a/src/com/android/settings/backup/BackupSettingsHelper.java
+++ b/src/com/android/settings/backup/BackupSettingsHelper.java
@@ -24,13 +24,12 @@
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
-import android.util.Log;
-
import android.support.annotation.VisibleForTesting;
+import android.util.Log;
import com.android.settings.R;
import com.android.settings.Settings.PrivacySettingsActivity;
-import com.android.settingslib.drawer.SettingsDrawerActivity;
+
import java.net.URISyntaxException;
/**
@@ -153,8 +152,7 @@
private Intent getIntentForDefaultBackupSettings() {
// Extra needed by {@link SettingsDrawerActivity} to show the back button navigation.
- return new Intent(mContext, PrivacySettingsActivity.class)
- .putExtra(SettingsDrawerActivity.EXTRA_SHOW_MENU, true);
+ return new Intent(mContext, PrivacySettingsActivity.class);
}
/**
diff --git a/src/com/android/settings/bluetooth/OWNERS b/src/com/android/settings/bluetooth/OWNERS
index 2b82978..2c8d8b7 100644
--- a/src/com/android/settings/bluetooth/OWNERS
+++ b/src/com/android/settings/bluetooth/OWNERS
@@ -2,6 +2,7 @@
asargent@google.com
eisenbach@google.com
jackqdyulei@google.com
+pavlin@google.com
siyuanh@google.com
-# Emergency approvers in case the above are not available
\ No newline at end of file
+# Emergency approvers in case the above are not available
diff --git a/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java b/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
index 2a136bc..9ac6ebd 100644
--- a/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/AdvancedConnectedDeviceDashboardFragment.java
@@ -24,8 +24,9 @@
import com.android.settings.bluetooth.BluetoothFilesPreferenceController;
import com.android.settings.bluetooth.BluetoothMasterSwitchPreferenceController;
import com.android.settings.bluetooth.BluetoothSwitchPreferenceController;
+import com.android.settings.connecteddevice.usb.UsbBackend;
+import com.android.settings.connecteddevice.usb.UsbModePreferenceController;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.deviceinfo.UsbBackend;
import com.android.settings.nfc.NfcPreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.BaseSearchIndexProvider;
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentOld.java b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentOld.java
index 7097b36..bde5e81 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentOld.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentOld.java
@@ -26,9 +26,10 @@
import com.android.settings.SettingsActivity;
import com.android.settings.bluetooth.BluetoothMasterSwitchPreferenceController;
import com.android.settings.bluetooth.Utils;
+import com.android.settings.connecteddevice.usb.UsbBackend;
+import com.android.settings.connecteddevice.usb.UsbModePreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.deviceinfo.UsbBackend;
import com.android.settings.nfc.NfcPreferenceController;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.BaseSearchIndexProvider;
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
index 3cccc15..3d5d0e5 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceGroupController.java
@@ -20,6 +20,7 @@
import android.support.v7.preference.PreferenceGroup;
import android.support.v7.preference.PreferenceScreen;
+import com.android.settings.connecteddevice.usb.ConnectedUsbDeviceUpdater;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
import com.android.settings.bluetooth.ConnectedBluetoothDeviceUpdater;
@@ -48,7 +49,7 @@
public ConnectedDeviceGroupController(DashboardFragment fragment, Lifecycle lifecycle) {
super(fragment.getContext());
init(lifecycle, new ConnectedBluetoothDeviceUpdater(fragment, this),
- new ConnectedUsbDeviceUpdater(fragment.getContext(), this));
+ new ConnectedUsbDeviceUpdater(fragment, this));
}
@VisibleForTesting
diff --git a/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiver.java b/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiver.java
deleted file mode 100644
index 07a7691..0000000
--- a/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiver.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.connecteddevice;
-
-
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.hardware.usb.UsbManager;
-
-/**
- * Receiver to receive usb update and use {@link UsbConnectionListener} to invoke callback
- */
-public class UsbConnectionBroadcastReceiver extends BroadcastReceiver {
- private Context mContext;
- private UsbConnectionListener mUsbConnectionListener;
- private boolean mListeningToUsbEvents;
- private boolean mConnected;
-
- public UsbConnectionBroadcastReceiver(Context context,
- UsbConnectionListener usbConnectionListener) {
- mContext = context;
- mUsbConnectionListener = usbConnectionListener;
- }
-
- @Override
- public void onReceive(Context context, Intent intent) {
- mConnected = intent != null
- && intent.getExtras().getBoolean(UsbManager.USB_CONNECTED);
- if (mUsbConnectionListener != null) {
- mUsbConnectionListener.onUsbConnectionChanged(mConnected);
- }
- }
-
- public void register() {
- if (!mListeningToUsbEvents) {
- final IntentFilter intentFilter = new IntentFilter(UsbManager.ACTION_USB_STATE);
- final Intent intent = mContext.registerReceiver(this, intentFilter);
- mConnected = intent != null
- && intent.getExtras().getBoolean(UsbManager.USB_CONNECTED);
- mListeningToUsbEvents = true;
- }
- }
-
- public void unregister() {
- if (mListeningToUsbEvents) {
- mContext.unregisterReceiver(this);
- mListeningToUsbEvents = false;
- }
- }
-
- public boolean isConnected() {
- return mConnected;
- }
-
- /**
- * Interface definition for a callback to be invoked when usb connection is changed.
- */
- interface UsbConnectionListener {
- void onUsbConnectionChanged(boolean connected);
- }
-}
diff --git a/src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdater.java b/src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdater.java
similarity index 65%
rename from src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdater.java
rename to src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdater.java
index 0468b0f..dd29902 100644
--- a/src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdater.java
+++ b/src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdater.java
@@ -13,22 +13,24 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.connecteddevice;
+package com.android.settings.connecteddevice.usb;
import android.content.Context;
-import android.content.Intent;
+import android.os.Bundle;
import android.support.annotation.VisibleForTesting;
+import android.support.v14.preference.PreferenceFragment;
import com.android.settings.R;
-import com.android.settings.deviceinfo.UsbBackend;
-import com.android.settings.deviceinfo.UsbModeChooserActivity;
+import com.android.settings.SettingsActivity;
+import com.android.settings.connecteddevice.DevicePreferenceCallback;
+import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.widget.GearPreference;
/**
* Controller to maintain connected usb device
*/
public class ConnectedUsbDeviceUpdater {
- private Context mContext;
+ private PreferenceFragment mFragment;
private UsbBackend mUsbBackend;
private DevicePreferenceCallback mDevicePreferenceCallback;
@VisibleForTesting
@@ -36,8 +38,9 @@
@VisibleForTesting
UsbConnectionBroadcastReceiver mUsbReceiver;
- private UsbConnectionBroadcastReceiver.UsbConnectionListener mUsbConnectionListener =
- (connected) -> {
+ @VisibleForTesting
+ UsbConnectionBroadcastReceiver.UsbConnectionListener mUsbConnectionListener =
+ (connected, newMode) -> {
if (connected) {
mUsbPreference.setSummary(
UsbModePreferenceController.getSummary(mUsbBackend.getCurrentMode()));
@@ -47,18 +50,19 @@
}
};
- public ConnectedUsbDeviceUpdater(Context context,
+ public ConnectedUsbDeviceUpdater(DashboardFragment fragment,
DevicePreferenceCallback devicePreferenceCallback) {
- this(context, devicePreferenceCallback, new UsbBackend(context));
+ this(fragment, devicePreferenceCallback, new UsbBackend(fragment.getContext()));
}
@VisibleForTesting
- ConnectedUsbDeviceUpdater(Context context, DevicePreferenceCallback devicePreferenceCallback,
- UsbBackend usbBackend) {
- mContext = context;
+ ConnectedUsbDeviceUpdater(DashboardFragment fragment,
+ DevicePreferenceCallback devicePreferenceCallback, UsbBackend usbBackend) {
+ mFragment = fragment;
mDevicePreferenceCallback = devicePreferenceCallback;
mUsbBackend = usbBackend;
- mUsbReceiver = new UsbConnectionBroadcastReceiver(context, mUsbConnectionListener);
+ mUsbReceiver = new UsbConnectionBroadcastReceiver(fragment.getContext(),
+ mUsbConnectionListener, mUsbBackend);
}
public void registerCallback() {
@@ -76,8 +80,12 @@
mUsbPreference.setIcon(R.drawable.ic_usb);
mUsbPreference.setSelectable(false);
mUsbPreference.setOnGearClickListener((GearPreference p) -> {
- final Intent intent = new Intent(mContext, UsbModeChooserActivity.class);
- mContext.startActivity(intent);
+ // New version - uses a separate screen.
+ final Bundle args = new Bundle();
+ final SettingsActivity activity = (SettingsActivity) mFragment.getContext();
+ activity.startPreferencePanel(mFragment,
+ UsbDetailsFragment.class.getName(), args,
+ R.string.device_details_title, null /* titleText */, null /* resultTo */, 0);
});
forceUpdate();
@@ -87,6 +95,5 @@
// Register so we can get the connection state from sticky intent.
//TODO(b/70336520): Use an API to get data instead of sticky intent
mUsbReceiver.register();
- mUsbConnectionListener.onUsbConnectionChanged(mUsbReceiver.isConnected());
}
}
diff --git a/src/com/android/settings/connecteddevice/usb/OWNERS b/src/com/android/settings/connecteddevice/usb/OWNERS
new file mode 100644
index 0000000..add985c
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/OWNERS
@@ -0,0 +1,3 @@
+# Default reviewers for this and subdirectories.
+zhangjerry@google.com
+badhri@google.com
diff --git a/src/com/android/settings/connecteddevice/usb/UsbBackend.java b/src/com/android/settings/connecteddevice/usb/UsbBackend.java
new file mode 100644
index 0000000..cdfb6b0
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbBackend.java
@@ -0,0 +1,247 @@
+/*
+ * Copyright (C) 2015 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.settings.connecteddevice.usb;
+
+import android.content.Context;
+import android.content.pm.PackageManager;
+import android.hardware.usb.UsbManager;
+import android.hardware.usb.UsbPort;
+import android.hardware.usb.UsbPortStatus;
+import android.net.ConnectivityManager;
+import android.os.UserHandle;
+import android.os.UserManager;
+import android.support.annotation.VisibleForTesting;
+
+public class UsbBackend {
+
+ public static final int MODE_POWER_MASK = 0x01;
+ public static final int MODE_POWER_SINK = 0x00;
+ public static final int MODE_POWER_SOURCE = 0x01;
+
+ public static final int MODE_DATA_MASK = 0x0f << 1;
+ public static final int MODE_DATA_NONE = 0;
+ public static final int MODE_DATA_MTP = 0x01 << 1;
+ public static final int MODE_DATA_PTP = 0x01 << 2;
+ public static final int MODE_DATA_MIDI = 0x01 << 3;
+ public static final int MODE_DATA_TETHER = 0x01 << 4;
+
+ private final boolean mFileTransferRestricted;
+ private final boolean mFileTransferRestrictedBySystem;
+ private final boolean mTetheringRestricted;
+ private final boolean mTetheringRestrictedBySystem;
+ private final boolean mMidiSupported;
+ private final boolean mTetheringSupported;
+
+ private UsbManager mUsbManager;
+ @VisibleForTesting
+ UsbManagerPassThrough mUsbManagerPassThrough;
+ private UsbPort mPort;
+ private UsbPortStatus mPortStatus;
+
+ private Context mContext;
+
+ public UsbBackend(Context context) {
+ this(context, new UserRestrictionUtil(context), null);
+ }
+
+ @VisibleForTesting
+ public UsbBackend(Context context, UserRestrictionUtil userRestrictionUtil,
+ UsbManagerPassThrough usbManagerPassThrough) {
+ mContext = context;
+ mUsbManager = context.getSystemService(UsbManager.class);
+
+ mUsbManagerPassThrough = usbManagerPassThrough;
+ if (mUsbManagerPassThrough == null) {
+ mUsbManagerPassThrough = new UsbManagerPassThrough(mUsbManager);
+ }
+
+ mFileTransferRestricted = userRestrictionUtil.isUsbFileTransferRestricted();
+ mFileTransferRestrictedBySystem = userRestrictionUtil.isUsbFileTransferRestrictedBySystem();
+ mTetheringRestricted = userRestrictionUtil.isUsbTetheringRestricted();
+ mTetheringRestrictedBySystem = userRestrictionUtil.isUsbTetheringRestrictedBySystem();
+
+ mMidiSupported = context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_MIDI);
+ ConnectivityManager cm =
+ (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
+ mTetheringSupported = cm.isTetheringSupported();
+
+ UsbPort[] ports = mUsbManager.getPorts();
+ if (ports == null) {
+ return;
+ }
+ // For now look for a connected port, in the future we should identify port in the
+ // notification and pick based on that.
+ final int N = ports.length;
+ for (int i = 0; i < N; i++) {
+ UsbPortStatus status = mUsbManager.getPortStatus(ports[i]);
+ if (status.isConnected()) {
+ mPort = ports[i];
+ mPortStatus = status;
+ break;
+ }
+ }
+ }
+
+ public int getCurrentMode() {
+ if (mPort != null) {
+ int power = mPortStatus.getCurrentPowerRole() == UsbPort.POWER_ROLE_SOURCE
+ && mPortStatus.isConnected()
+ ? MODE_POWER_SOURCE : MODE_POWER_SINK;
+ return power | getUsbDataMode();
+ }
+ return MODE_POWER_SINK | getUsbDataMode();
+ }
+
+ public int getUsbDataMode() {
+ long functions = mUsbManagerPassThrough.getCurrentFunctions();
+ if (functions == UsbManager.FUNCTION_MTP) {
+ return MODE_DATA_MTP;
+ } else if (functions == UsbManager.FUNCTION_PTP) {
+ return MODE_DATA_PTP;
+ } else if (functions == UsbManager.FUNCTION_MIDI) {
+ return MODE_DATA_MIDI;
+ } else if (functions == UsbManager.FUNCTION_RNDIS) {
+ return MODE_DATA_TETHER;
+ }
+ return MODE_DATA_NONE;
+ }
+
+ private void setUsbFunction(int mode) {
+ switch (mode) {
+ case MODE_DATA_MTP:
+ mUsbManager.setCurrentFunctions(UsbManager.FUNCTION_MTP);
+ break;
+ case MODE_DATA_PTP:
+ mUsbManager.setCurrentFunctions(UsbManager.FUNCTION_PTP);
+ break;
+ case MODE_DATA_MIDI:
+ mUsbManager.setCurrentFunctions(UsbManager.FUNCTION_MIDI);
+ break;
+ case MODE_DATA_TETHER:
+ mUsbManager.setCurrentFunctions(UsbManager.FUNCTION_RNDIS);
+ break;
+ default:
+ mUsbManager.setCurrentFunctions(UsbManager.FUNCTION_NONE);
+ break;
+ }
+ }
+
+ public void setMode(int mode) {
+ if (mPort != null) {
+ int powerRole = modeToPower(mode);
+ // If we aren't using any data modes and we support host mode, then go to host mode
+ // so maybe? the other device can provide data if it wants, otherwise go into device
+ // mode because we have no choice.
+ int dataRole = (mode & MODE_DATA_MASK) == MODE_DATA_NONE
+ && mPortStatus.isRoleCombinationSupported(powerRole, UsbPort.DATA_ROLE_HOST)
+ ? UsbPort.DATA_ROLE_HOST : UsbPort.DATA_ROLE_DEVICE;
+ mUsbManager.setPortRoles(mPort, powerRole, dataRole);
+ }
+ setUsbFunction(mode & MODE_DATA_MASK);
+ }
+
+ private int modeToPower(int mode) {
+ return (mode & MODE_POWER_MASK) == MODE_POWER_SOURCE
+ ? UsbPort.POWER_ROLE_SOURCE : UsbPort.POWER_ROLE_SINK;
+ }
+
+ public boolean isModeDisallowed(int mode) {
+ if (mFileTransferRestricted && ((mode & MODE_DATA_MASK) == MODE_DATA_MTP
+ || (mode & MODE_DATA_MASK) == MODE_DATA_PTP)) {
+ return true;
+ } else if (mTetheringRestricted && ((mode & MODE_DATA_MASK) == MODE_DATA_TETHER)) {
+ return true;
+ }
+ return false;
+ }
+
+ public boolean isModeDisallowedBySystem(int mode) {
+ if (mFileTransferRestrictedBySystem && ((mode & MODE_DATA_MASK) == MODE_DATA_MTP
+ || (mode & MODE_DATA_MASK) == MODE_DATA_PTP)) {
+ return true;
+ } else if (mTetheringRestrictedBySystem && ((mode & MODE_DATA_MASK) == MODE_DATA_TETHER)) {
+ return true;
+ }
+ return false;
+ }
+
+ public boolean isModeSupported(int mode) {
+ if (!mMidiSupported && (mode & MODE_DATA_MASK) == MODE_DATA_MIDI) {
+ return false;
+ }
+ if (!mTetheringSupported && (mode & MODE_DATA_MASK) == MODE_DATA_TETHER) {
+ return false;
+ }
+ if (mPort != null) {
+ int power = modeToPower(mode);
+ if ((mode & MODE_DATA_MASK) != 0) {
+ // We have a port and data, need to be in device mode.
+ return mPortStatus.isRoleCombinationSupported(power,
+ UsbPort.DATA_ROLE_DEVICE);
+ } else {
+ // No data needed, we can do this power mode in either device or host.
+ return mPortStatus.isRoleCombinationSupported(power, UsbPort.DATA_ROLE_DEVICE)
+ || mPortStatus.isRoleCombinationSupported(power, UsbPort.DATA_ROLE_HOST);
+ }
+ }
+ // No port, support sink modes only.
+ return (mode & MODE_POWER_MASK) != MODE_POWER_SOURCE;
+ }
+
+ // Wrapper class to enable testing with UserManager APIs
+ public static class UserRestrictionUtil {
+ private UserManager mUserManager;
+
+ public UserRestrictionUtil(Context context) {
+ mUserManager = UserManager.get(context);
+ }
+
+ public boolean isUsbFileTransferRestricted() {
+ return mUserManager.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER);
+ }
+
+ public boolean isUsbTetheringRestricted() {
+ return mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_TETHERING);
+ }
+
+ public boolean isUsbFileTransferRestrictedBySystem() {
+ return mUserManager.hasBaseUserRestriction(
+ UserManager.DISALLOW_USB_FILE_TRANSFER, UserHandle.of(UserHandle.myUserId()));
+ }
+
+ public boolean isUsbTetheringRestrictedBySystem() {
+ return mUserManager.hasBaseUserRestriction(
+ UserManager.DISALLOW_CONFIG_TETHERING, UserHandle.of(UserHandle.myUserId()));
+ }
+ }
+
+ // Temporary pass-through to allow roboelectric to use getCurrentFunctions()
+ public static class UsbManagerPassThrough {
+ private UsbManager mUsbManager;
+
+ public UsbManagerPassThrough(UsbManager manager) {
+ mUsbManager = manager;
+ }
+
+ public long getCurrentFunctions() {
+ return mUsbManager.getCurrentFunctions();
+ }
+
+ public long usbFunctionsFromString(String str) {
+ return UsbManager.usbFunctionsFromString(str);
+ }
+ }
+}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java b/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java
new file mode 100644
index 0000000..91d22dc
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiver.java
@@ -0,0 +1,129 @@
+/*
+ * Copyright (C) 2017 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.settings.connecteddevice.usb;
+
+
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.hardware.usb.UsbManager;
+import android.hardware.usb.UsbPort;
+import android.hardware.usb.UsbPortStatus;
+
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.core.lifecycle.events.OnPause;
+
+/**
+ * Receiver to receive usb update and use {@link UsbConnectionListener} to invoke callback
+ */
+public class UsbConnectionBroadcastReceiver extends BroadcastReceiver implements LifecycleObserver,
+ OnResume, OnPause {
+ private Context mContext;
+ private UsbConnectionListener mUsbConnectionListener;
+ private boolean mListeningToUsbEvents;
+ private int mMode;
+ private boolean mConnected;
+ private UsbBackend mUsbBackend;
+
+ public UsbConnectionBroadcastReceiver(Context context,
+ UsbConnectionListener usbConnectionListener, UsbBackend backend) {
+ mContext = context;
+ mUsbConnectionListener = usbConnectionListener;
+ mUsbBackend = backend;
+ }
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ if (UsbManager.ACTION_USB_STATE.equals(intent.getAction())) {
+ mConnected = intent.getExtras().getBoolean(UsbManager.USB_CONNECTED)
+ || intent.getExtras().getBoolean(UsbManager.USB_HOST_CONNECTED);
+ if (mConnected) {
+ mMode &= UsbBackend.MODE_POWER_MASK;
+ if (intent.getExtras().getBoolean(UsbManager.USB_FUNCTION_MTP)
+ && intent.getExtras().getBoolean(UsbManager.USB_DATA_UNLOCKED, false)) {
+ mMode |= UsbBackend.MODE_DATA_MTP;
+ }
+ if (intent.getExtras().getBoolean(UsbManager.USB_FUNCTION_PTP)
+ && intent.getExtras().getBoolean(UsbManager.USB_DATA_UNLOCKED, false)) {
+ mMode |= UsbBackend.MODE_DATA_PTP;
+ }
+ if (intent.getExtras().getBoolean(UsbManager.USB_FUNCTION_MIDI)) {
+ mMode |= UsbBackend.MODE_DATA_MIDI;
+ }
+ if (intent.getExtras().getBoolean(UsbManager.USB_FUNCTION_RNDIS)) {
+ mMode |= UsbBackend.MODE_DATA_TETHER;
+ }
+ }
+ } else if (UsbManager.ACTION_USB_PORT_CHANGED.equals(intent.getAction())) {
+ mMode &= UsbBackend.MODE_DATA_MASK;
+ UsbPortStatus portStatus = intent.getExtras()
+ .getParcelable(UsbManager.EXTRA_PORT_STATUS);
+ if (portStatus != null) {
+ mConnected = portStatus.isConnected();
+ if (mConnected) {
+ mMode |= portStatus.getCurrentPowerRole() == UsbPort.POWER_ROLE_SOURCE
+ ? UsbBackend.MODE_POWER_SOURCE : UsbBackend.MODE_POWER_SINK;
+ }
+ }
+ }
+ if (mUsbConnectionListener != null) {
+ mUsbConnectionListener.onUsbConnectionChanged(mConnected, mMode);
+ }
+ }
+
+ public void register() {
+ if (!mListeningToUsbEvents) {
+ mMode = mUsbBackend.getCurrentMode();
+ mConnected = false;
+ final IntentFilter intentFilter = new IntentFilter();
+ intentFilter.addAction(UsbManager.ACTION_USB_STATE);
+ intentFilter.addAction(UsbManager.ACTION_USB_PORT_CHANGED);
+ mContext.registerReceiver(this, intentFilter);
+ mListeningToUsbEvents = true;
+ }
+ }
+
+ public void unregister() {
+ if (mListeningToUsbEvents) {
+ mContext.unregisterReceiver(this);
+ mListeningToUsbEvents = false;
+ }
+ }
+
+ public boolean isConnected() {
+ return mConnected;
+ }
+
+ @Override
+ public void onResume() {
+ register();
+ }
+
+ @Override
+ public void onPause() {
+ unregister();
+ }
+
+ /**
+ * Interface definition for a callback to be invoked when usb connection is changed.
+ */
+ interface UsbConnectionListener {
+ void onUsbConnectionChanged(boolean connected, int newMode);
+ }
+}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsController.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsController.java
new file mode 100644
index 0000000..09c7554
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsController.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import android.content.Context;
+import android.support.annotation.UiThread;
+import android.support.v14.preference.PreferenceFragment;
+
+import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+/**
+ * This class provides common members and refresh functionality for usb controllers.
+ */
+public abstract class UsbDetailsController extends AbstractPreferenceController
+ implements PreferenceControllerMixin {
+
+ protected final Context mContext;
+ protected final PreferenceFragment mFragment;
+ protected final UsbBackend mUsbBackend;
+
+ public UsbDetailsController(Context context, PreferenceFragment fragment, UsbBackend backend) {
+ super(context);
+ mContext = context;
+ mFragment = fragment;
+ mUsbBackend = backend;
+ }
+
+ @Override
+ public boolean isAvailable() {
+ return true;
+ }
+
+ /**
+ * This method is called when the USB mode has changed and the controller needs to update.
+ * @param newMode the new mode, made up of OR'd values from UsbBackend
+ */
+ @UiThread
+ protected abstract void refresh(int newMode);
+}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java
new file mode 100644
index 0000000..c861188
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsFragment.java
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import android.content.Context;
+import android.hardware.usb.UsbManager;
+import android.os.Bundle;
+import android.provider.SearchIndexableResource;
+import android.support.annotation.VisibleForTesting;
+
+import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
+
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settings.search.Indexable;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import com.google.android.collect.Lists;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Controls the USB device details and provides updates to individual controllers.
+ */
+public class UsbDetailsFragment extends DashboardFragment {
+ private static final String TAG = UsbDetailsFragment.class.getSimpleName();
+
+ private List<UsbDetailsController> mControllers;
+ private UsbBackend mUsbBackend;
+
+ @VisibleForTesting
+ UsbConnectionBroadcastReceiver mUsbReceiver;
+
+ private UsbConnectionBroadcastReceiver.UsbConnectionListener mUsbConnectionListener =
+ (connected, newMode) -> {
+ if (!connected) {
+ this.finish();
+ } else {
+ for (UsbDetailsController controller : mControllers) {
+ controller.refresh(newMode);
+ }
+ }
+ };
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsProto.MetricsEvent.USB_DEVICE_DETAILS;
+ }
+
+ @Override
+ protected String getLogTag() {
+ return TAG;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.usb_details_fragment;
+ }
+
+ @Override
+ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
+ super.onCreatePreferences(savedInstanceState, rootKey);
+ }
+
+ @Override
+ protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ mUsbBackend = new UsbBackend(context);
+ mControllers = createControllerList(context, mUsbBackend, this);
+ mUsbReceiver = new UsbConnectionBroadcastReceiver(context, mUsbConnectionListener,
+ mUsbBackend);
+ this.getLifecycle().addObserver(mUsbReceiver);
+
+ List<AbstractPreferenceController> ret = new ArrayList<>();
+ ret.addAll(mControllers);
+ return ret;
+ }
+
+ private static List<UsbDetailsController> createControllerList(Context context,
+ UsbBackend usbBackend, DashboardFragment fragment) {
+ List<UsbDetailsController> ret = new ArrayList<>();
+ ret.add(new UsbDetailsHeaderController(context, fragment, usbBackend));
+ ret.add(new UsbDetailsProfilesController(context, fragment,
+ usbBackend, Lists.newArrayList(UsbManager.USB_FUNCTION_MTP), "usb_main_options"));
+ ret.add(new UsbDetailsProfilesController(context, fragment,
+ usbBackend, Lists.newArrayList(UsbDetailsProfilesController.KEY_POWER,
+ UsbManager.USB_FUNCTION_RNDIS, UsbManager.USB_FUNCTION_MIDI,
+ UsbManager.USB_FUNCTION_PTP), "usb_secondary_options"));
+ return ret;
+ }
+
+ /**
+ * For Search.
+ */
+ public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new BaseSearchIndexProvider() {
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(
+ Context context, boolean enabled) {
+ return new ArrayList<>();
+ }
+
+ @Override
+ public List<String> getNonIndexableKeys(Context context) {
+ return super.getNonIndexableKeys(context);
+ }
+
+ @Override
+ public List<AbstractPreferenceController> getPreferenceControllers(
+ Context context) {
+ List<AbstractPreferenceController> ret = new ArrayList<>();
+ ret.addAll(createControllerList(context, new UsbBackend(context), null));
+ return ret;
+ }
+ };
+}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java
new file mode 100644
index 0000000..7ac0235
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderController.java
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import android.content.Context;
+import android.support.v14.preference.PreferenceFragment;
+import android.support.v7.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.applications.LayoutPreference;
+import com.android.settings.widget.EntityHeaderController;
+
+/**
+ * This class adds a header with device name and current function.
+ */
+public class UsbDetailsHeaderController extends UsbDetailsController {
+ private static final String KEY_DEVICE_HEADER = "usb_device_header";
+
+ private EntityHeaderController mHeaderController;
+
+ public UsbDetailsHeaderController(Context context, PreferenceFragment fragment,
+ UsbBackend backend) {
+ super(context, fragment, backend);
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ final LayoutPreference headerPreference =
+ (LayoutPreference) screen.findPreference(KEY_DEVICE_HEADER);
+ mHeaderController = EntityHeaderController.newInstance(mFragment.getActivity(), mFragment,
+ headerPreference.findViewById(R.id.entity_header));
+ screen.addPreference(headerPreference);
+ }
+
+
+ @Override
+ protected void refresh(int newMode) {
+ mHeaderController.setLabel(mContext.getString(R.string.usb_pref));
+ mHeaderController.setIcon(mContext.getDrawable(R.drawable.ic_usb));
+ mHeaderController.setSummary(
+ mContext.getString(UsbModePreferenceController.getSummary(newMode)));
+ mHeaderController.done(mFragment.getActivity(), true /* rebindActions */);
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return KEY_DEVICE_HEADER;
+ }
+}
diff --git a/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesController.java b/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesController.java
new file mode 100644
index 0000000..1375b4c
--- /dev/null
+++ b/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesController.java
@@ -0,0 +1,147 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import com.android.settings.R;
+import android.content.Context;
+import android.hardware.usb.UsbManager;
+import android.support.v14.preference.PreferenceFragment;
+import android.support.v14.preference.SwitchPreference;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceCategory;
+import android.support.v7.preference.PreferenceScreen;
+
+import java.util.List;
+
+/**
+ * This class adds switches for toggling individual USB options, such as "transfer files",
+ * "supply power", "usb tethering", etc.
+ */
+public class UsbDetailsProfilesController extends UsbDetailsController
+ implements Preference.OnPreferenceClickListener {
+
+ static final String KEY_POWER = "power";
+
+ private PreferenceCategory mProfilesContainer;
+ private List<String> mOptions;
+ private String mKey;
+
+ public UsbDetailsProfilesController(Context context, PreferenceFragment fragment,
+ UsbBackend backend, List<String> options, String key) {
+ super(context, fragment, backend);
+ mOptions = options;
+ mKey = key;
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ mProfilesContainer = (PreferenceCategory) screen.findPreference(getPreferenceKey());
+ }
+
+ /**
+ * Gets a switch preference for the particular option, creating it if needed.
+ */
+ private SwitchPreference getProfilePreference(String key, int titleId) {
+ SwitchPreference pref = (SwitchPreference) mProfilesContainer.findPreference(key);
+ if (pref == null) {
+ pref = new SwitchPreference(mProfilesContainer.getContext());
+ pref.setKey(key);
+ pref.setTitle(titleId);
+ pref.setOnPreferenceClickListener(this);
+ mProfilesContainer.addPreference(pref);
+ }
+ return pref;
+ }
+
+ @Override
+ protected void refresh(int mode) {
+ SwitchPreference pref;
+ for (String option : mOptions) {
+ int newMode;
+ int summary = -1;
+ int title;
+ if (option.equals(UsbManager.USB_FUNCTION_MTP)) {
+ newMode = UsbBackend.MODE_DATA_MTP;
+ title = R.string.usb_use_file_transfers;
+ } else if (option.equals(KEY_POWER)) {
+ newMode = UsbBackend.MODE_POWER_SOURCE;
+ title = R.string.usb_use_power_only;
+ summary = R.string.usb_use_power_only_desc;
+ } else if (option.equals(UsbManager.USB_FUNCTION_PTP)) {
+ newMode = UsbBackend.MODE_DATA_PTP;
+ title = R.string.usb_use_photo_transfers;
+ } else if (option.equals(UsbManager.USB_FUNCTION_MIDI)) {
+ newMode = UsbBackend.MODE_DATA_MIDI;
+ title = R.string.usb_use_MIDI;
+ } else if (option.equals(UsbManager.USB_FUNCTION_RNDIS)) {
+ newMode = UsbBackend.MODE_DATA_TETHER;
+ title = R.string.usb_use_tethering;
+ } else {
+ continue;
+ }
+
+ pref = getProfilePreference(option, title);
+ // Only show supported and allowed options
+ if (mUsbBackend.isModeSupported(newMode)
+ && !mUsbBackend.isModeDisallowedBySystem(newMode)
+ && !mUsbBackend.isModeDisallowed(newMode)) {
+ if (summary != -1) {
+ pref.setSummary(summary);
+ }
+ pref.setChecked((mode & newMode) != 0);
+ } else {
+ mProfilesContainer.removePreference(pref);
+ }
+ }
+ }
+
+ @Override
+ public boolean onPreferenceClick(Preference preference) {
+ SwitchPreference profilePref = (SwitchPreference) preference;
+ String key = profilePref.getKey();
+ int mode = mUsbBackend.getCurrentMode();
+ int thisMode = 0;
+ if (key.equals(KEY_POWER)) {
+ thisMode = UsbBackend.MODE_POWER_SOURCE;
+ } else if (key.equals(UsbManager.USB_FUNCTION_MTP)) {
+ thisMode = UsbBackend.MODE_DATA_MTP;
+ } else if (key.equals(UsbManager.USB_FUNCTION_PTP)) {
+ thisMode = UsbBackend.MODE_DATA_PTP;
+ } else if (key.equals(UsbManager.USB_FUNCTION_RNDIS)) {
+ thisMode = UsbBackend.MODE_DATA_TETHER;
+ } else if (key.equals(UsbManager.USB_FUNCTION_MIDI)) {
+ thisMode = UsbBackend.MODE_DATA_MIDI;
+ }
+ if (profilePref.isChecked()) {
+ if (!key.equals(KEY_POWER)) {
+ // Only one non power mode can currently be set at once.
+ mode &= UsbBackend.MODE_POWER_MASK;
+ }
+ mode |= thisMode;
+ } else {
+ mode &= ~thisMode;
+ }
+ mUsbBackend.setMode(mode);
+ return false;
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return mKey;
+ }
+}
diff --git a/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java b/src/com/android/settings/connecteddevice/usb/UsbModeChooserActivity.java
similarity index 98%
rename from src/com/android/settings/deviceinfo/UsbModeChooserActivity.java
rename to src/com/android/settings/connecteddevice/usb/UsbModeChooserActivity.java
index 8ba3781..b3b0718 100644
--- a/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbModeChooserActivity.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.connecteddevice.usb;
import android.annotation.Nullable;
import android.app.Activity;
diff --git a/src/com/android/settings/connecteddevice/UsbModePreferenceController.java b/src/com/android/settings/connecteddevice/usb/UsbModePreferenceController.java
similarity index 72%
rename from src/com/android/settings/connecteddevice/UsbModePreferenceController.java
rename to src/com/android/settings/connecteddevice/usb/UsbModePreferenceController.java
index 8693520..e342460 100644
--- a/src/com/android/settings/connecteddevice/UsbModePreferenceController.java
+++ b/src/com/android/settings/connecteddevice/usb/UsbModePreferenceController.java
@@ -13,15 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.connecteddevice;
+package com.android.settings.connecteddevice.usb;
import android.content.Context;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
+import com.android.internal.annotations.VisibleForTesting;
import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.deviceinfo.UsbBackend;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
@@ -33,27 +33,27 @@
private static final String KEY_USB_MODE = "usb_mode";
private UsbBackend mUsbBackend;
- private UsbConnectionBroadcastReceiver mUsbReceiver;
+ @VisibleForTesting
+ UsbConnectionBroadcastReceiver mUsbReceiver;
private Preference mUsbPreference;
public UsbModePreferenceController(Context context, UsbBackend usbBackend) {
super(context);
mUsbBackend = usbBackend;
- mUsbReceiver = new UsbConnectionBroadcastReceiver(mContext, (connected) -> {
- updateSummary(mUsbPreference);
- });
+ mUsbReceiver = new UsbConnectionBroadcastReceiver(mContext, (connected, newMode) -> {
+ updateSummary(mUsbPreference, connected, newMode);
+ }, mUsbBackend);
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mUsbPreference = screen.findPreference(KEY_USB_MODE);
- updateSummary(mUsbPreference);
}
@Override
public void updateState(Preference preference) {
- updateSummary(preference);
+ updateSummary(preference, mUsbReceiver.isConnected(), mUsbBackend.getCurrentMode());
}
@Override
@@ -88,17 +88,24 @@
return R.string.usb_summary_photo_transfers;
case UsbBackend.MODE_POWER_SINK | UsbBackend.MODE_DATA_MIDI:
return R.string.usb_summary_MIDI;
+ case UsbBackend.MODE_POWER_SINK | UsbBackend.MODE_DATA_TETHER:
+ return R.string.usb_summary_tether;
+ case UsbBackend.MODE_POWER_SOURCE | UsbBackend.MODE_DATA_MTP:
+ return R.string.usb_summary_file_transfers_power;
+ case UsbBackend.MODE_POWER_SOURCE | UsbBackend.MODE_DATA_PTP:
+ return R.string.usb_summary_photo_transfers_power;
+ case UsbBackend.MODE_POWER_SOURCE | UsbBackend.MODE_DATA_MIDI:
+ return R.string.usb_summary_MIDI_power;
+ case UsbBackend.MODE_POWER_SOURCE | UsbBackend.MODE_DATA_TETHER:
+ return R.string.usb_summary_tether_power;
+ default:
+ return R.string.usb_summary_charging_only;
}
- return 0;
}
- private void updateSummary(Preference preference) {
- updateSummary(preference, mUsbBackend.getCurrentMode());
- }
-
- private void updateSummary(Preference preference, int mode) {
+ private void updateSummary(Preference preference, boolean connected, int mode) {
if (preference != null) {
- if (mUsbReceiver.isConnected()) {
+ if (connected) {
preference.setEnabled(true);
preference.setSummary(getSummary(mode));
} else {
@@ -107,5 +114,4 @@
}
}
}
-
}
diff --git a/src/com/android/settings/core/BasePreferenceController.java b/src/com/android/settings/core/BasePreferenceController.java
index 01d98b8..4bd7ba4 100644
--- a/src/com/android/settings/core/BasePreferenceController.java
+++ b/src/com/android/settings/core/BasePreferenceController.java
@@ -30,6 +30,8 @@
* Abstract class to consolidate utility between preference controllers and act as an interface
* for Slices. The abstract classes that inherit from this class will act as the direct interfaces
* for each type when plugging into Slices.
+ *
+ * TODO (b/73074893) Add Lifecycle Setting method.
*/
public abstract class BasePreferenceController extends AbstractPreferenceController {
diff --git a/src/com/android/settings/core/FeatureFlags.java b/src/com/android/settings/core/FeatureFlags.java
index e1636b4..fd756df 100644
--- a/src/com/android/settings/core/FeatureFlags.java
+++ b/src/com/android/settings/core/FeatureFlags.java
@@ -20,13 +20,11 @@
* This class keeps track of all feature flags in Settings.
*/
public class FeatureFlags {
- public static final String APP_INFO_V2 = "settings_app_info_v2";
public static final String CONNECTED_DEVICE_V2 = "settings_connected_device_v2";
public static final String BATTERY_SETTINGS_V2 = "settings_battery_v2";
public static final String BATTERY_DISPLAY_APP_LIST = "settings_battery_display_app_list";
- public static final String SECURITY_SETTINGS_V2 = "settings_security_settings_v2";
public static final String ZONE_PICKER_V2 = "settings_zone_picker_v2";
- public static final String SUGGESTION_UI_V2 = "settings_suggestion_ui_v2";
public static final String ABOUT_PHONE_V2 = "settings_about_phone_v2";
public static final String BLUETOOTH_WHILE_DRIVING = "settings_bluetooth_while_driving";
+ public static final String DATA_USAGE_SETTINGS_V2 = "settings_data_usage_v2";
}
diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java
index 2cb1cbf..c75b0c6 100644
--- a/src/com/android/settings/core/gateway/SettingsGateway.java
+++ b/src/com/android/settings/core/gateway/SettingsGateway.java
@@ -28,23 +28,21 @@
import com.android.settings.TestingSettings;
import com.android.settings.TetherSettings;
import com.android.settings.TrustedCredentialsSettings;
-import com.android.settings.WifiCallingSettings;
+import com.android.settings.wifi.calling.WifiCallingSettings;
import com.android.settings.accessibility.AccessibilitySettings;
import com.android.settings.accessibility.AccessibilitySettingsForSetupWizard;
import com.android.settings.accessibility.CaptionPropertiesFragment;
import com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment;
+import com.android.settings.accounts.AccountDashboardFragment;
import com.android.settings.accounts.AccountSyncSettings;
import com.android.settings.accounts.ChooseAccountActivity;
import com.android.settings.accounts.ManagedProfileSettings;
-import com.android.settings.accounts.UserAndAccountDashboardFragment;
import com.android.settings.applications.AppAndNotificationDashboardFragment;
import com.android.settings.applications.DefaultAppSettings;
-import com.android.settings.applications.InstalledAppDetails;
+import com.android.settings.applications.DirectoryAccessDetails;
import com.android.settings.applications.ManageDomainUrls;
-import com.android.settings.applications.NotificationApps;
import com.android.settings.applications.ProcessStatsSummary;
import com.android.settings.applications.ProcessStatsUi;
-import com.android.settings.applications.DirectoryAccessDetails;
import com.android.settings.applications.UsageAccessDetails;
import com.android.settings.applications.VrListenerSettings;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
@@ -60,9 +58,10 @@
import com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragmentOld;
-import com.android.settings.datausage.DataPlanUsageSummary;
+import com.android.settings.connecteddevice.usb.UsbDetailsFragment;
import com.android.settings.datausage.DataUsageList;
import com.android.settings.datausage.DataUsageSummary;
+import com.android.settings.datausage.DataUsageSummaryLegacy;
import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.deviceinfo.DeviceInfoSettings;
@@ -75,7 +74,7 @@
import com.android.settings.dream.DreamSettings;
import com.android.settings.enterprise.EnterprisePrivacySettings;
import com.android.settings.fuelgauge.AdvancedPowerUsageDetail;
-import com.android.settings.fuelgauge.BatterySaverSettings;
+import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings;
import com.android.settings.fuelgauge.PowerUsageSummary;
import com.android.settings.fuelgauge.PowerUsageSummaryLegacy;
import com.android.settings.gestures.AssistGestureSettings;
@@ -116,7 +115,6 @@
import com.android.settings.security.CryptKeeperSettings;
import com.android.settings.security.LockscreenDashboardFragment;
import com.android.settings.security.SecuritySettings;
-import com.android.settings.security.SecuritySettingsV2;
import com.android.settings.sim.SimSettings;
import com.android.settings.support.SupportDashboardActivity;
import com.android.settings.system.ResetDashboardFragment;
@@ -159,13 +157,11 @@
DisplaySettings.class.getName(),
DeviceInfoSettings.class.getName(),
ManageApplications.class.getName(),
- NotificationApps.class.getName(),
ManageAssist.class.getName(),
ProcessStatsUi.class.getName(),
NotificationStation.class.getName(),
LocationSettings.class.getName(),
SecuritySettings.class.getName(),
- SecuritySettingsV2.class.getName(),
UsageAccessDetails.class.getName(),
PrivacySettings.class.getName(),
DeviceAdminSettings.class.getName(),
@@ -191,8 +187,8 @@
PickupGestureSettings.class.getName(),
DoubleTwistGestureSettings.class.getName(),
CryptKeeperSettings.class.getName(),
- DataPlanUsageSummary.class.getName(),
DataUsageSummary.class.getName(),
+ DataUsageSummaryLegacy.class.getName(),
DreamSettings.class.getName(),
UserSettings.class.getName(),
NotificationAccessSettings.class.getName(),
@@ -209,7 +205,6 @@
ConfigureNotificationSettings.class.getName(),
ChooseLockPassword.ChooseLockPasswordFragment.class.getName(),
ChooseLockPattern.ChooseLockPatternFragment.class.getName(),
- InstalledAppDetails.class.getName(),
AppInfoDashboardFragment.class.getName(),
BatterySaverSettings.class.getName(),
AppNotificationSettings.class.getName(),
@@ -248,8 +243,9 @@
NetworkDashboardFragment.class.getName(),
ConnectedDeviceDashboardFragment.class.getName(),
ConnectedDeviceDashboardFragmentOld.class.getName(),
+ UsbDetailsFragment.class.getName(),
AppAndNotificationDashboardFragment.class.getName(),
- UserAndAccountDashboardFragment.class.getName(),
+ AccountDashboardFragment.class.getName(),
EnterprisePrivacySettings.class.getName(),
WebViewAppPicker.class.getName(),
LockscreenDashboardFragment.class.getName(),
@@ -270,15 +266,13 @@
Settings.StorageDashboardActivity.class.getName(),
Settings.PowerUsageSummaryActivity.class.getName(),
Settings.PowerUsageSummaryLegacyActivity.class.getName(),
- Settings.UserAndAccountDashboardActivity.class.getName(),
- Settings.SecuritySettingsActivity.class.getName(),
- Settings.SecuritySettingsActivityV2.class.getName(),
+ Settings.AccountDashboardActivity.class.getName(),
+ Settings.SecurityDashboardActivity.class.getName(),
Settings.AccessibilitySettingsActivity.class.getName(),
Settings.SystemDashboardActivity.class.getName(),
SupportDashboardActivity.class.getName(),
// Home page > Network & Internet
Settings.WifiSettingsActivity.class.getName(),
- Settings.DataPlanUsageSummaryActivity.class.getName(),
Settings.DataUsageSummaryActivity.class.getName(),
Settings.SimSettingsActivity.class.getName(),
// Home page > Connected devices
@@ -298,6 +292,6 @@
Settings.DateTimeSettingsActivity.class.getName(),
Settings.DeviceInfoSettingsActivity.class.getName(),
Settings.EnterprisePrivacySettingsActivity.class.getName(),
- Settings.MeCardActivity.class.getName(),
+ Settings.MyDeviceInfoActivity.class.getName(),
};
}
diff --git a/src/com/android/settings/dashboard/DashboardAdapter.java b/src/com/android/settings/dashboard/DashboardAdapter.java
index 2d35ea7..007b66b 100644
--- a/src/com/android/settings/dashboard/DashboardAdapter.java
+++ b/src/com/android/settings/dashboard/DashboardAdapter.java
@@ -17,9 +17,7 @@
import android.app.Activity;
import android.content.Context;
-import android.content.res.Resources;
-import android.content.res.TypedArray;
-import android.graphics.Color;
+import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.os.Bundle;
@@ -41,44 +39,37 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.R.id;
-import com.android.settings.dashboard.DashboardData.SuggestionConditionHeaderData;
+import com.android.settings.dashboard.DashboardData.ConditionHeaderData;
import com.android.settings.dashboard.conditional.Condition;
import com.android.settings.dashboard.conditional.ConditionAdapter;
import com.android.settings.dashboard.suggestions.SuggestionAdapter;
-import com.android.settings.dashboard.suggestions.SuggestionControllerMixin;
-import com.android.settings.dashboard.suggestions.SuggestionDismissController;
import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.Utils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
-import java.util.ArrayList;
import java.util.List;
public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.DashboardItemHolder>
- implements SummaryLoader.SummaryConsumer {
+ implements SummaryLoader.SummaryConsumer, SuggestionAdapter.Callback, LifecycleObserver,
+ OnSaveInstanceState {
public static final String TAG = "DashboardAdapter";
- private static final String STATE_SUGGESTION_LIST = "suggestion_list";
private static final String STATE_CATEGORY_LIST = "category_list";
- private static final String STATE_SUGGESTIONS_SHOWN_LOGGED = "suggestions_shown_logged";
@VisibleForTesting
- static final String STATE_SUGGESTION_CONDITION_MODE = "suggestion_condition_mode";
- @VisibleForTesting
- static final int SUGGESTION_CONDITION_HEADER_POSITION = 0;
+ static final String STATE_CONDITION_EXPANDED = "condition_expanded";
private final IconCache mCache;
private final Context mContext;
- private final SuggestionControllerMixin mSuggestionControllerMixin;
private final MetricsFeatureProvider mMetricsFeatureProvider;
private final DashboardFeatureProvider mDashboardFeatureProvider;
- private final ArrayList<String> mSuggestionsShownLogged;
private boolean mFirstFrameDrawn;
private RecyclerView mRecyclerView;
private SuggestionAdapter mSuggestionAdapter;
- private SuggestionDismissController mSuggestionDismissHandler;
- private SuggestionDismissController.Callback mCallback;
@VisibleForTesting
DashboardData mDashboardData;
@@ -92,57 +83,54 @@
};
public DashboardAdapter(Context context, Bundle savedInstanceState,
- List<Condition> conditions, SuggestionControllerMixin suggestionControllerMixin,
- SuggestionDismissController.Callback callback) {
+ List<Condition> conditions, SuggestionControllerMixin suggestionControllerMixin,
+ Lifecycle lifecycle) {
- List<Suggestion> suggestions = null;
DashboardCategory category = null;
- int suggestionConditionMode = DashboardData.HEADER_MODE_DEFAULT;
+ boolean conditionExpanded = false;
mContext = context;
final FeatureFactory factory = FeatureFactory.getFactory(context);
- mSuggestionControllerMixin = suggestionControllerMixin;
mMetricsFeatureProvider = factory.getMetricsFeatureProvider();
mDashboardFeatureProvider = factory.getDashboardFeatureProvider(context);
mCache = new IconCache(context);
- mCallback = callback;
+ mSuggestionAdapter = new SuggestionAdapter(mContext, suggestionControllerMixin,
+ savedInstanceState, this /* callback */, lifecycle);
setHasStableIds(true);
if (savedInstanceState != null) {
- suggestions = savedInstanceState.getParcelableArrayList(STATE_SUGGESTION_LIST);
category = savedInstanceState.getParcelable(STATE_CATEGORY_LIST);
- suggestionConditionMode = savedInstanceState.getInt(
- STATE_SUGGESTION_CONDITION_MODE, suggestionConditionMode);
- mSuggestionsShownLogged = savedInstanceState.getStringArrayList(
- STATE_SUGGESTIONS_SHOWN_LOGGED);
- } else {
- mSuggestionsShownLogged = new ArrayList<>();
+ conditionExpanded = savedInstanceState.getBoolean(
+ STATE_CONDITION_EXPANDED, conditionExpanded);
+ }
+
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
}
mDashboardData = new DashboardData.Builder()
- .setConditions(conditions)
- .setSuggestions(suggestions)
- .setCategory(category)
- .setSuggestionConditionMode(suggestionConditionMode)
- .build();
+ .setConditions(conditions)
+ .setSuggestions(mSuggestionAdapter.getSuggestions())
+ .setCategory(category)
+ .setConditionExpanded(conditionExpanded)
+ .build();
}
public void setSuggestions(List<Suggestion> data) {
final DashboardData prevData = mDashboardData;
mDashboardData = new DashboardData.Builder(prevData)
- .setSuggestions(data)
- .build();
+ .setSuggestions(data)
+ .build();
notifyDashboardDataChanged(prevData);
}
public void setCategory(DashboardCategory category) {
- tintIcons(category, null);
final DashboardData prevData = mDashboardData;
Log.d(TAG, "adapter setCategory called");
mDashboardData = new DashboardData.Builder(prevData)
- .setCategory(category)
- .build();
+ .setCategory(category)
+ .build();
notifyDashboardDataChanged(prevData);
}
@@ -150,12 +138,13 @@
final DashboardData prevData = mDashboardData;
Log.d(TAG, "adapter setConditions called");
mDashboardData = new DashboardData.Builder(prevData)
- .setConditions(conditions)
- .build();
+ .setConditions(conditions)
+ .build();
notifyDashboardDataChanged(prevData);
}
- public void onSuggestionDismissed(Suggestion suggestion) {
+ @Override
+ public void onSuggestionClosed(Suggestion suggestion) {
final List<Suggestion> list = mDashboardData.getSuggestions();
if (list == null || list.size() == 0) {
return;
@@ -163,13 +152,10 @@
if (list.size() == 1) {
// The only suggestion is dismissed, and the the empty suggestion container will
// remain as the dashboard item. Need to refresh the dashboard list.
- final DashboardData prevData = mDashboardData;
- mDashboardData = new DashboardData.Builder(prevData)
- .setSuggestions(null)
- .build();
- notifyDashboardDataChanged(prevData);
+ setSuggestions(null);
} else {
mSuggestionAdapter.removeSuggestion(suggestion);
+ notifyItemChanged(0, null);
}
}
@@ -186,11 +172,14 @@
@Override
public DashboardItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
final View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false);
- if (viewType == R.layout.suggestion_condition_header) {
- return new SuggestionAndConditionHeaderHolder(view);
+ if (viewType == R.layout.condition_header) {
+ return new ConditionHeaderHolder(view);
}
- if (viewType == R.layout.suggestion_condition_container) {
- return new SuggestionAndConditionContainerHolder(view);
+ if (viewType == R.layout.condition_container) {
+ return new ConditionContainerHolder(view);
+ }
+ if (viewType == R.layout.suggestion_container) {
+ return new SuggestionContainerHolder(view);
}
return new DashboardItemHolder(view);
}
@@ -205,24 +194,25 @@
holder.itemView.setTag(tile);
holder.itemView.setOnClickListener(mTileClickListener);
break;
- case R.layout.suggestion_condition_container:
- onBindConditionAndSuggestion(
- (SuggestionAndConditionContainerHolder) holder, position);
+ case R.layout.suggestion_container:
+ onBindSuggestion((SuggestionContainerHolder) holder, position);
break;
- case R.layout.suggestion_condition_header:
- onBindSuggestionConditionHeader((SuggestionAndConditionHeaderHolder) holder,
- (SuggestionConditionHeaderData)
- mDashboardData.getItemEntityByPosition(position));
+ case R.layout.condition_container:
+ onBindCondition((ConditionContainerHolder) holder, position);
break;
- case R.layout.suggestion_condition_footer:
+ case R.layout.condition_header:
+ onBindConditionHeader((ConditionHeaderHolder) holder,
+ (ConditionHeaderData) mDashboardData.getItemEntityByPosition(position));
+ break;
+ case R.layout.condition_footer:
holder.itemView.setOnClickListener(v -> {
mMetricsFeatureProvider.action(mContext,
- MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, false);
+ MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, false);
DashboardData prevData = mDashboardData;
- mDashboardData = new DashboardData.Builder(prevData).setSuggestionConditionMode(
- DashboardData.HEADER_MODE_COLLAPSED).build();
+ mDashboardData = new DashboardData.Builder(prevData).
+ setConditionExpanded(false).build();
notifyDashboardDataChanged(prevData);
- mRecyclerView.scrollToPosition(SUGGESTION_CONDITION_HEADER_POSITION);
+ scrollToTopOfConditions();
});
break;
}
@@ -263,7 +253,7 @@
void notifyDashboardDataChanged(DashboardData prevData) {
if (mFirstFrameDrawn && prevData != null) {
final DiffUtil.DiffResult diffResult = DiffUtil.calculateDiff(new DashboardData
- .ItemsDataDiffCallback(prevData.getItemList(), mDashboardData.getItemList()));
+ .ItemsDataDiffCallback(prevData.getItemList(), mDashboardData.getItemList()));
diffResult.dispatchUpdatesTo(this);
} else {
mFirstFrameDrawn = true;
@@ -272,120 +262,71 @@
}
@VisibleForTesting
- void onBindSuggestionConditionHeader(final SuggestionAndConditionHeaderHolder holder,
- SuggestionConditionHeaderData data) {
- final int curMode = mDashboardData.getSuggestionConditionMode();
- final int nextMode = data.hiddenSuggestionCount > 0
- && data.conditionCount > 0
- && curMode != DashboardData.HEADER_MODE_SUGGESTION_EXPANDED
- ? DashboardData.HEADER_MODE_SUGGESTION_EXPANDED
- : DashboardData.HEADER_MODE_FULLY_EXPANDED;
-
- final boolean hasConditions = data.conditionCount > 0;
- if (data.conditionCount > 0) {
- holder.icon.setImageIcon(data.conditionIcons.get(0));
- holder.icon.setVisibility(View.VISIBLE);
- if (data.conditionCount == 1) {
- holder.title.setText(data.title);
- holder.title.setTextColor(Utils.getColorAccent(mContext));
- holder.icons.setVisibility(View.INVISIBLE);
- } else {
- holder.title.setText(null);
- updateConditionIcons(data.conditionIcons, holder.icons);
- holder.icons.setVisibility(View.VISIBLE);
- }
- } else {
- holder.icon.setVisibility(View.INVISIBLE);
- holder.icons.setVisibility(View.INVISIBLE);
- }
-
- if (data.hiddenSuggestionCount > 0) {
- holder.summary.setTextColor(Color.BLACK);
- if (curMode == DashboardData.HEADER_MODE_COLLAPSED) {
- if (data.conditionCount > 0) {
- holder.summary.setText(mContext.getResources().getQuantityString(
- R.plurals.suggestions_collapsed_summary,
- data.hiddenSuggestionCount, data.hiddenSuggestionCount));
- } else {
- holder.title.setText(mContext.getResources().getQuantityString(
- R.plurals.suggestions_collapsed_title,
- data.hiddenSuggestionCount, data.hiddenSuggestionCount));
- holder.title.setTextColor(Color.BLACK);
- holder.summary.setText(null);
- }
- } else if (curMode == DashboardData.HEADER_MODE_DEFAULT) {
- if (data.conditionCount > 0) {
- holder.summary.setText(mContext.getString(
- R.string.suggestions_summary, data.hiddenSuggestionCount));
- } else {
- holder.title.setText(mContext.getString(
- R.string.suggestions_more_title, data.hiddenSuggestionCount));
- holder.title.setTextColor(Color.BLACK);
- holder.summary.setText(null);
- }
- }
- } else if (data.conditionCount > 1) {
- holder.summary.setTextColor(Utils.getColorAccent(mContext));
- holder.summary.setText(
- mContext.getString(R.string.condition_summary, data.conditionCount));
- } else {
+ void onBindConditionHeader(final ConditionHeaderHolder holder, ConditionHeaderData data) {
+ holder.icon.setImageIcon(data.conditionIcons.get(0));
+ if (data.conditionCount == 1) {
+ holder.title.setText(data.title);
holder.summary.setText(null);
+ holder.icons.setVisibility(View.INVISIBLE);
+ } else {
+ holder.title.setText(null);
+ holder.summary.setText(
+ mContext.getString(R.string.condition_summary, data.conditionCount));
+ updateConditionIcons(data.conditionIcons, holder.icons);
+ holder.icons.setVisibility(View.VISIBLE);
}
- final Resources res = mContext.getResources();
- final int padding = res.getDimensionPixelOffset(
- curMode == DashboardData.HEADER_MODE_COLLAPSED
- ? R.dimen.suggestion_condition_header_padding_collapsed
- : R.dimen.suggestion_condition_header_padding_expanded);
- holder.itemView.setPadding(0, padding, 0, padding);
-
holder.itemView.setOnClickListener(v -> {
- if (hasConditions) {
- mMetricsFeatureProvider.action(mContext,
- MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, true);
- }
- DashboardData prevData = mDashboardData;
- final boolean wasCollapsed = curMode == DashboardData.HEADER_MODE_COLLAPSED;
+ mMetricsFeatureProvider.action(mContext,
+ MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, true);
+ final DashboardData prevData = mDashboardData;
mDashboardData = new DashboardData.Builder(prevData)
- .setSuggestionConditionMode(nextMode).build();
+ .setConditionExpanded(true).build();
notifyDashboardDataChanged(prevData);
- if (wasCollapsed) {
- mRecyclerView.scrollToPosition(SUGGESTION_CONDITION_HEADER_POSITION);
- }
+ scrollToTopOfConditions();
});
}
@VisibleForTesting
- void onBindConditionAndSuggestion(final SuggestionAndConditionContainerHolder holder,
- int position) {
- // If there is suggestions to show, it will be at position 0 as we don't show the suggestion
- // header anymore.
- final List<Suggestion> suggestions = mDashboardData.getSuggestions();
-
- boolean conditionOnly = true;
- if (position == SUGGESTION_CONDITION_HEADER_POSITION) {
- if (suggestions != null && suggestions.size() > 0) {
- conditionOnly = false;
- mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- (List<Suggestion>) mDashboardData.getItemEntityByPosition(position),
- mSuggestionsShownLogged);
- mSuggestionDismissHandler = new SuggestionDismissController(mContext,
- holder.data, mSuggestionControllerMixin, mCallback);
- holder.data.setAdapter(mSuggestionAdapter);
- }
- }
- if (conditionOnly) {
- ConditionAdapter adapter = new ConditionAdapter(mContext,
- (List<Condition>) mDashboardData.getItemEntityByPosition(position),
- mDashboardData.getSuggestionConditionMode());
- adapter.addDismissHandling(holder.data);
- holder.data.setAdapter(adapter);
- }
+ void onBindCondition(final ConditionContainerHolder holder, int position) {
+ final ConditionAdapter adapter = new ConditionAdapter(mContext,
+ (List<Condition>) mDashboardData.getItemEntityByPosition(position),
+ mDashboardData.isConditionExpanded());
+ adapter.addDismissHandling(holder.data);
+ holder.data.setAdapter(adapter);
holder.data.setLayoutManager(new LinearLayoutManager(mContext));
}
- private void onBindTile(DashboardItemHolder holder, Tile tile) {
- holder.icon.setImageDrawable(mCache.getIcon(tile.icon));
+ @VisibleForTesting
+ void onBindSuggestion(final SuggestionContainerHolder holder, int position) {
+ // If there is suggestions to show, it will be at position 0 as we don't show the suggestion
+ // header anymore.
+ final List<Suggestion> suggestions =
+ (List<Suggestion>) mDashboardData.getItemEntityByPosition(position);
+ final int suggestionCount = suggestions.size();
+ final Typeface fontMedium = Typeface.create(
+ mContext.getString(com.android.internal.R.string.config_headlineFontFamilyMedium),
+ Typeface.NORMAL);
+ holder.title.setTypeface(fontMedium);
+ if (suggestions != null && suggestionCount > 0) {
+ holder.summary.setText("" + suggestionCount);
+ holder.summary.setTypeface(fontMedium);
+ mSuggestionAdapter.setSuggestions(suggestions);
+ holder.data.setAdapter(mSuggestionAdapter);
+ }
+ final LinearLayoutManager layoutManager = new LinearLayoutManager(mContext);
+ layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
+ holder.data.setLayoutManager(layoutManager);
+ }
+
+ @VisibleForTesting
+ void onBindTile(DashboardItemHolder holder, Tile tile) {
+ Drawable icon = mCache.getIcon(tile.icon);
+ if (!TextUtils.equals(tile.icon.getResPackage(), mContext.getPackageName())) {
+ icon = new RoundedHomepageIcon(mContext, icon);
+ mCache.updateIcon(tile.icon, icon);
+ }
+ holder.icon.setImageDrawable(icon);
holder.title.setText(tile.title);
if (!TextUtils.isEmpty(tile.summary)) {
holder.summary.setText(tile.summary);
@@ -395,45 +336,13 @@
}
}
- private void tintIcons(DashboardCategory category, List<Tile> suggestions) {
- if (!mDashboardFeatureProvider.shouldTintIcon()) {
- return;
- }
- // TODO: Better place for tinting?
- final TypedArray a = mContext.obtainStyledAttributes(new int[]{
- android.R.attr.colorControlNormal});
- final int tintColor = a.getColor(0, mContext.getColor(R.color.fallback_tintColor));
- a.recycle();
- if (category != null) {
- for (Tile tile : category.getTiles()) {
- if (tile.isIconTintable) {
- // If this drawable is tintable, tint it to match the color.
- tile.icon.setTint(tintColor);
- }
- }
- }
- if (suggestions != null) {
- for (Tile suggestion : suggestions) {
- if (suggestion.isIconTintable) {
- suggestion.icon.setTint(tintColor);
- }
- }
- }
- }
-
- void onSaveInstanceState(Bundle outState) {
+ @Override
+ public void onSaveInstanceState(Bundle outState) {
final DashboardCategory category = mDashboardData.getCategory();
- final List<Suggestion> suggestions = mDashboardData.getSuggestions();
- if (suggestions != null) {
- outState.putParcelableArrayList(STATE_SUGGESTION_LIST,
- new ArrayList<>(suggestions));
- }
if (category != null) {
outState.putParcelable(STATE_CATEGORY_LIST, category);
}
- outState.putStringArrayList(STATE_SUGGESTIONS_SHOWN_LOGGED, mSuggestionsShownLogged);
- outState.putInt(STATE_SUGGESTION_CONDITION_MODE,
- mDashboardData.getSuggestionConditionMode());
+ outState.putBoolean(STATE_CONDITION_EXPANDED, mDashboardData.isConditionExpanded());
}
private void updateConditionIcons(List<Icon> icons, ViewGroup parent) {
@@ -452,6 +361,10 @@
parent.setVisibility(View.VISIBLE);
}
+ private void scrollToTopOfConditions() {
+ mRecyclerView.scrollToPosition(mDashboardData.hasSuggestion() ? 1 : 0);
+ }
+
public static class IconCache {
private final Context mContext;
private final ArrayMap<Icon, Drawable> mMap = new ArrayMap<>();
@@ -467,10 +380,14 @@
Drawable drawable = mMap.get(icon);
if (drawable == null) {
drawable = icon.loadDrawable(mContext);
- mMap.put(icon, drawable);
+ updateIcon(icon, drawable);
}
return drawable;
}
+
+ public void updateIcon(Icon icon, Drawable drawable) {
+ mMap.put(icon, drawable);
+ }
}
public static class DashboardItemHolder extends RecyclerView.ViewHolder {
@@ -486,24 +403,33 @@
}
}
- public static class SuggestionAndConditionHeaderHolder extends DashboardItemHolder {
+ public static class ConditionHeaderHolder extends DashboardItemHolder {
public final LinearLayout icons;
public final ImageView expandIndicator;
- public SuggestionAndConditionHeaderHolder(View itemView) {
+ public ConditionHeaderHolder(View itemView) {
super(itemView);
icons = itemView.findViewById(id.additional_icons);
expandIndicator = itemView.findViewById(id.expand_indicator);
}
}
- public static class SuggestionAndConditionContainerHolder extends DashboardItemHolder {
+ public static class ConditionContainerHolder extends DashboardItemHolder {
public final RecyclerView data;
- public SuggestionAndConditionContainerHolder(View itemView) {
+ public ConditionContainerHolder(View itemView) {
super(itemView);
data = itemView.findViewById(id.data);
}
}
+ public static class SuggestionContainerHolder extends DashboardItemHolder {
+ public final RecyclerView data;
+
+ public SuggestionContainerHolder(View itemView) {
+ super(itemView);
+ data = itemView.findViewById(id.suggestion_list);
+ }
+ }
+
}
diff --git a/src/com/android/settings/dashboard/DashboardAdapterV2.java b/src/com/android/settings/dashboard/DashboardAdapterV2.java
deleted file mode 100644
index 2aacc59..0000000
--- a/src/com/android/settings/dashboard/DashboardAdapterV2.java
+++ /dev/null
@@ -1,432 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard;
-
-import android.app.Activity;
-import android.content.Context;
-import android.graphics.drawable.Drawable;
-import android.graphics.drawable.Icon;
-import android.os.Bundle;
-import android.service.settings.suggestions.Suggestion;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.util.DiffUtil;
-import android.support.v7.widget.LinearLayoutManager;
-import android.support.v7.widget.RecyclerView;
-import android.text.TextUtils;
-import android.util.ArrayMap;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.R;
-import com.android.settings.R.id;
-import com.android.settings.dashboard.DashboardDataV2.ConditionHeaderData;
-import com.android.settings.dashboard.conditional.Condition;
-import com.android.settings.dashboard.conditional.ConditionAdapterV2;
-import com.android.settings.dashboard.suggestions.SuggestionAdapterV2;
-import com.android.settings.dashboard.suggestions.SuggestionControllerMixin;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
-import com.android.settingslib.drawer.DashboardCategory;
-import com.android.settingslib.drawer.Tile;
-
-import java.util.List;
-
-public class DashboardAdapterV2 extends RecyclerView.Adapter<DashboardAdapterV2.DashboardItemHolder>
- implements SummaryLoader.SummaryConsumer, SuggestionAdapterV2.Callback, LifecycleObserver,
- OnSaveInstanceState {
- public static final String TAG = "DashboardAdapterV2";
- private static final String STATE_CATEGORY_LIST = "category_list";
-
- @VisibleForTesting
- static final String STATE_CONDITION_EXPANDED = "condition_expanded";
-
- private final IconCache mCache;
- private final Context mContext;
- private final MetricsFeatureProvider mMetricsFeatureProvider;
- private final DashboardFeatureProvider mDashboardFeatureProvider;
- private boolean mFirstFrameDrawn;
- private RecyclerView mRecyclerView;
- private SuggestionAdapterV2 mSuggestionAdapter;
-
- @VisibleForTesting
- DashboardDataV2 mDashboardData;
-
- private View.OnClickListener mTileClickListener = new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- //TODO: get rid of setTag/getTag
- mDashboardFeatureProvider.openTileIntent((Activity) mContext, (Tile) v.getTag());
- }
- };
-
- public DashboardAdapterV2(Context context, Bundle savedInstanceState,
- List<Condition> conditions, SuggestionControllerMixin suggestionControllerMixin,
- Lifecycle lifecycle) {
-
- DashboardCategory category = null;
- boolean conditionExpanded = false;
-
- mContext = context;
- final FeatureFactory factory = FeatureFactory.getFactory(context);
- mMetricsFeatureProvider = factory.getMetricsFeatureProvider();
- mDashboardFeatureProvider = factory.getDashboardFeatureProvider(context);
- mCache = new IconCache(context);
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, suggestionControllerMixin,
- savedInstanceState, this /* callback */, lifecycle);
-
- setHasStableIds(true);
-
- if (savedInstanceState != null) {
- category = savedInstanceState.getParcelable(STATE_CATEGORY_LIST);
- conditionExpanded = savedInstanceState.getBoolean(
- STATE_CONDITION_EXPANDED, conditionExpanded);
- }
-
- if (lifecycle != null) {
- lifecycle.addObserver(this);
- }
-
- mDashboardData = new DashboardDataV2.Builder()
- .setConditions(conditions)
- .setSuggestions(mSuggestionAdapter.getSuggestions())
- .setCategory(category)
- .setConditionExpanded(conditionExpanded)
- .build();
- }
-
- public void setSuggestions(List<Suggestion> data) {
- final DashboardDataV2 prevData = mDashboardData;
- mDashboardData = new DashboardDataV2.Builder(prevData)
- .setSuggestions(data)
- .build();
- notifyDashboardDataChanged(prevData);
- }
-
- public void setCategory(DashboardCategory category) {
- final DashboardDataV2 prevData = mDashboardData;
- Log.d(TAG, "adapter setCategory called");
- mDashboardData = new DashboardDataV2.Builder(prevData)
- .setCategory(category)
- .build();
- notifyDashboardDataChanged(prevData);
- }
-
- public void setConditions(List<Condition> conditions) {
- final DashboardDataV2 prevData = mDashboardData;
- Log.d(TAG, "adapter setConditions called");
- mDashboardData = new DashboardDataV2.Builder(prevData)
- .setConditions(conditions)
- .build();
- notifyDashboardDataChanged(prevData);
- }
-
- @Override
- public void onSuggestionClosed(Suggestion suggestion) {
- final List<Suggestion> list = mDashboardData.getSuggestions();
- if (list == null || list.size() == 0) {
- return;
- }
- if (list.size() == 1) {
- // The only suggestion is dismissed, and the the empty suggestion container will
- // remain as the dashboard item. Need to refresh the dashboard list.
- final DashboardDataV2 prevData = mDashboardData;
- mDashboardData = new DashboardDataV2.Builder(prevData)
- .setSuggestions(null)
- .build();
- notifyDashboardDataChanged(prevData);
- } else {
- mSuggestionAdapter.removeSuggestion(suggestion);
- }
- }
-
- @Override
- public void notifySummaryChanged(Tile tile) {
- final int position = mDashboardData.getPositionByTile(tile);
- if (position != DashboardDataV2.POSITION_NOT_FOUND) {
- // Since usually tile in parameter and tile in mCategories are same instance,
- // which is hard to be detected by DiffUtil, so we notifyItemChanged directly.
- notifyItemChanged(position, mDashboardData.getItemTypeByPosition(position));
- }
- }
-
- @Override
- public DashboardItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- final View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false);
- if (viewType == R.layout.suggestion_condition_header) {
- return new ConditionHeaderHolder(view);
- }
- if (viewType == R.layout.condition_container) {
- return new ConditionContainerHolder(view);
- }
- if (viewType == R.layout.suggestion_container) {
- return new SuggestionContainerHolder(view);
- }
- return new DashboardItemHolder(view);
- }
-
- @Override
- public void onBindViewHolder(DashboardItemHolder holder, int position) {
- final int type = mDashboardData.getItemTypeByPosition(position);
- switch (type) {
- case R.layout.dashboard_tile:
- final Tile tile = (Tile) mDashboardData.getItemEntityByPosition(position);
- onBindTile(holder, tile);
- holder.itemView.setTag(tile);
- holder.itemView.setOnClickListener(mTileClickListener);
- break;
- case R.layout.suggestion_container:
- onBindSuggestion((SuggestionContainerHolder) holder, position);
- break;
- case R.layout.condition_container:
- onBindCondition((ConditionContainerHolder) holder, position);
- break;
- case R.layout.suggestion_condition_header:
- onBindConditionHeader((ConditionHeaderHolder) holder,
- (ConditionHeaderData) mDashboardData.getItemEntityByPosition(position));
- break;
- case R.layout.suggestion_condition_footer:
- holder.itemView.setOnClickListener(v -> {
- mMetricsFeatureProvider.action(mContext,
- MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, false);
- DashboardDataV2 prevData = mDashboardData;
- mDashboardData = new DashboardDataV2.Builder(prevData).
- setConditionExpanded(false).build();
- notifyDashboardDataChanged(prevData);
- scrollToTopOfConditions();
- });
- break;
- }
- }
-
- @Override
- public long getItemId(int position) {
- return mDashboardData.getItemIdByPosition(position);
- }
-
- @Override
- public int getItemViewType(int position) {
- return mDashboardData.getItemTypeByPosition(position);
- }
-
- @Override
- public int getItemCount() {
- return mDashboardData.size();
- }
-
- @Override
- public void onAttachedToRecyclerView(RecyclerView recyclerView) {
- super.onAttachedToRecyclerView(recyclerView);
- // save the view so that we can scroll it when expanding/collapsing the suggestion and
- // conditions.
- mRecyclerView = recyclerView;
- }
-
- public Object getItem(long itemId) {
- return mDashboardData.getItemEntityById(itemId);
- }
-
- public Suggestion getSuggestion(int position) {
- return mSuggestionAdapter.getSuggestion(position);
- }
-
- @VisibleForTesting
- void notifyDashboardDataChanged(DashboardDataV2 prevData) {
- if (mFirstFrameDrawn && prevData != null) {
- final DiffUtil.DiffResult diffResult = DiffUtil.calculateDiff(new DashboardDataV2
- .ItemsDataDiffCallback(prevData.getItemList(), mDashboardData.getItemList()));
- diffResult.dispatchUpdatesTo(this);
- } else {
- mFirstFrameDrawn = true;
- notifyDataSetChanged();
- }
- }
-
- @VisibleForTesting
- void onBindConditionHeader(final ConditionHeaderHolder holder, ConditionHeaderData data) {
- holder.icon.setImageIcon(data.conditionIcons.get(0));
- if (data.conditionCount == 1) {
- holder.title.setText(data.title);
- holder.summary.setText(null);
- holder.icons.setVisibility(View.INVISIBLE);
- } else {
- holder.title.setText(null);
- holder.summary.setText(
- mContext.getString(R.string.condition_summary, data.conditionCount));
- updateConditionIcons(data.conditionIcons, holder.icons);
- holder.icons.setVisibility(View.VISIBLE);
- }
-
- holder.itemView.setOnClickListener(v -> {
- mMetricsFeatureProvider.action(mContext,
- MetricsEvent.ACTION_SETTINGS_CONDITION_EXPAND, true);
- final DashboardDataV2 prevData = mDashboardData;
- mDashboardData = new DashboardDataV2.Builder(prevData)
- .setConditionExpanded(true).build();
- notifyDashboardDataChanged(prevData);
- scrollToTopOfConditions();
- });
- }
-
- @VisibleForTesting
- void onBindCondition(final ConditionContainerHolder holder, int position) {
- final ConditionAdapterV2 adapter = new ConditionAdapterV2(mContext,
- (List<Condition>) mDashboardData.getItemEntityByPosition(position),
- mDashboardData.isConditionExpanded());
- adapter.addDismissHandling(holder.data);
- holder.data.setAdapter(adapter);
- holder.data.setLayoutManager(new LinearLayoutManager(mContext));
- }
-
- @VisibleForTesting
- void onBindSuggestion(final SuggestionContainerHolder holder, int position) {
- // If there is suggestions to show, it will be at position 0 as we don't show the suggestion
- // header anymore.
- final List<Suggestion> suggestions =
- (List<Suggestion>) mDashboardData.getItemEntityByPosition(position);
- final int suggestionCount = suggestions.size();
- if (suggestions != null && suggestionCount > 0) {
- holder.summary.setText("" + suggestionCount);
- mSuggestionAdapter.setSuggestions(suggestions);
- holder.data.setAdapter(mSuggestionAdapter);
- }
- final LinearLayoutManager layoutManager = new LinearLayoutManager(mContext);
- layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
- holder.data.setLayoutManager(layoutManager);
- }
-
- @VisibleForTesting
- void onBindTile(DashboardItemHolder holder, Tile tile) {
- Drawable icon = mCache.getIcon(tile.icon);
- if (!TextUtils.equals(tile.icon.getResPackage(), mContext.getPackageName())) {
- icon = new RoundedHomepageIcon(mContext, icon);
- mCache.updateIcon(tile.icon, icon);
- }
- holder.icon.setImageDrawable(icon);
- holder.title.setText(tile.title);
- if (!TextUtils.isEmpty(tile.summary)) {
- holder.summary.setText(tile.summary);
- holder.summary.setVisibility(View.VISIBLE);
- } else {
- holder.summary.setVisibility(View.GONE);
- }
- }
-
- @Override
- public void onSaveInstanceState(Bundle outState) {
- final DashboardCategory category = mDashboardData.getCategory();
- if (category != null) {
- outState.putParcelable(STATE_CATEGORY_LIST, category);
- }
- outState.putBoolean(STATE_CONDITION_EXPANDED, mDashboardData.isConditionExpanded());
- }
-
- private void updateConditionIcons(List<Icon> icons, ViewGroup parent) {
- if (icons == null || icons.size() < 2) {
- parent.setVisibility(View.INVISIBLE);
- return;
- }
- final LayoutInflater inflater = LayoutInflater.from(parent.getContext());
- parent.removeAllViews();
- for (int i = 1, size = icons.size(); i < size; i++) {
- ImageView icon = (ImageView) inflater.inflate(
- R.layout.condition_header_icon, parent, false);
- icon.setImageIcon(icons.get(i));
- parent.addView(icon);
- }
- parent.setVisibility(View.VISIBLE);
- }
-
- private void scrollToTopOfConditions() {
- mRecyclerView.scrollToPosition(mDashboardData.hasSuggestion() ? 1 : 0);
- }
-
- public static class IconCache {
- private final Context mContext;
- private final ArrayMap<Icon, Drawable> mMap = new ArrayMap<>();
-
- public IconCache(Context context) {
- mContext = context;
- }
-
- public Drawable getIcon(Icon icon) {
- if (icon == null) {
- return null;
- }
- Drawable drawable = mMap.get(icon);
- if (drawable == null) {
- drawable = icon.loadDrawable(mContext);
- updateIcon(icon, drawable);
- }
- return drawable;
- }
-
- public void updateIcon(Icon icon, Drawable drawable) {
- mMap.put(icon, drawable);
- }
- }
-
- public static class DashboardItemHolder extends RecyclerView.ViewHolder {
- public final ImageView icon;
- public final TextView title;
- public final TextView summary;
-
- public DashboardItemHolder(View itemView) {
- super(itemView);
- icon = itemView.findViewById(android.R.id.icon);
- title = itemView.findViewById(android.R.id.title);
- summary = itemView.findViewById(android.R.id.summary);
- }
- }
-
- public static class ConditionHeaderHolder extends DashboardItemHolder {
- public final LinearLayout icons;
- public final ImageView expandIndicator;
-
- public ConditionHeaderHolder(View itemView) {
- super(itemView);
- icons = itemView.findViewById(id.additional_icons);
- expandIndicator = itemView.findViewById(id.expand_indicator);
- }
- }
-
- public static class ConditionContainerHolder extends DashboardItemHolder {
- public final RecyclerView data;
-
- public ConditionContainerHolder(View itemView) {
- super(itemView);
- data = itemView.findViewById(id.data);
- }
- }
-
- public static class SuggestionContainerHolder extends DashboardItemHolder {
- public final RecyclerView data;
-
- public SuggestionContainerHolder(View itemView) {
- super(itemView);
- data = itemView.findViewById(id.suggestion_list);
- }
- }
-
-}
diff --git a/src/com/android/settings/dashboard/DashboardData.java b/src/com/android/settings/dashboard/DashboardData.java
index da2a526..49de94d 100644
--- a/src/com/android/settings/dashboard/DashboardData.java
+++ b/src/com/android/settings/dashboard/DashboardData.java
@@ -40,29 +40,17 @@
* ItemsData has inner class Item, which represents the Item in data list.
*/
public class DashboardData {
- public static final int HEADER_MODE_DEFAULT = 0;
- public static final int HEADER_MODE_SUGGESTION_EXPANDED = 1;
- public static final int HEADER_MODE_FULLY_EXPANDED = 2;
- public static final int HEADER_MODE_COLLAPSED = 3;
-
- @Retention(RetentionPolicy.SOURCE)
- @IntDef({HEADER_MODE_DEFAULT, HEADER_MODE_SUGGESTION_EXPANDED, HEADER_MODE_FULLY_EXPANDED,
- HEADER_MODE_COLLAPSED})
- public @interface HeaderMode {
- }
-
public static final int POSITION_NOT_FOUND = -1;
- public static final int DEFAULT_SUGGESTION_COUNT = 2;
+ public static final int MAX_SUGGESTION_COUNT = 4;
// stable id for different type of items.
@VisibleForTesting
- static final int STABLE_ID_SUGGESTION_CONDITION_TOP_HEADER = 0;
+ static final int STABLE_ID_SUGGESTION_CONTAINER = 0;
+ static final int STABLE_ID_SUGGESTION_CONDITION_DIVIDER = 1;
@VisibleForTesting
- static final int STABLE_ID_SUGGESTION_CONDITION_MIDDLE_HEADER = 1;
+ static final int STABLE_ID_CONDITION_HEADER = 2;
@VisibleForTesting
- static final int STABLE_ID_SUGGESTION_CONDITION_FOOTER = 2;
- @VisibleForTesting
- static final int STABLE_ID_SUGGESTION_CONTAINER = 3;
+ static final int STABLE_ID_CONDITION_FOOTER = 3;
@VisibleForTesting
static final int STABLE_ID_CONDITION_CONTAINER = 4;
@@ -70,15 +58,13 @@
private final DashboardCategory mCategory;
private final List<Condition> mConditions;
private final List<Suggestion> mSuggestions;
- @HeaderMode
- private final int mSuggestionConditionMode;
+ private final boolean mConditionExpanded;
private DashboardData(Builder builder) {
mCategory = builder.mCategory;
mConditions = builder.mConditions;
- mSuggestions = builder.mSuggestionsV2;
- mSuggestionConditionMode = builder.mSuggestionConditionMode;
-
+ mSuggestions = builder.mSuggestions;
+ mConditionExpanded = builder.mConditionExpanded;
mItems = new ArrayList<>();
buildItemsData();
@@ -125,8 +111,12 @@
return mSuggestions;
}
- public int getSuggestionConditionMode() {
- return mSuggestionConditionMode;
+ public boolean hasSuggestion() {
+ return sizeOf(mSuggestions) > 0;
+ }
+
+ public boolean isConditionExpanded() {
+ return mConditionExpanded;
}
/**
@@ -188,69 +178,42 @@
/**
* Build the mItems list using mConditions, mSuggestions, mCategories data
- * and mIsShowingAll, mSuggestionConditionMode flag.
+ * and mIsShowingAll, mConditionExpanded flag.
*/
private void buildItemsData() {
- final boolean hasSuggestions = sizeOf(mSuggestions) > 0;
final List<Condition> conditions = getConditionsToShow(mConditions);
final boolean hasConditions = sizeOf(conditions) > 0;
final List<Suggestion> suggestions = getSuggestionsToShow(mSuggestions);
+ final boolean hasSuggestions = sizeOf(suggestions) > 0;
- final int hiddenSuggestion = hasSuggestions
- ? sizeOf(mSuggestions) - sizeOf(suggestions)
- : 0;
+ /* Suggestion container. This is the card view that contains the list of suggestions.
+ * This will be added whenever the suggestion list is not empty */
+ addToItemList(suggestions, R.layout.suggestion_container,
+ STABLE_ID_SUGGESTION_CONTAINER, hasSuggestions);
- final boolean hasSuggestionAndCollapsed = hasSuggestions
- && mSuggestionConditionMode == HEADER_MODE_COLLAPSED;
- final boolean onlyHasConditionAndCollapsed = !hasSuggestions
- && hasConditions
- && mSuggestionConditionMode != HEADER_MODE_FULLY_EXPANDED;
+ /* Divider between suggestion and conditions if both are present. */
+ addToItemList(null /* item */, R.layout.horizontal_divider,
+ STABLE_ID_SUGGESTION_CONDITION_DIVIDER, hasSuggestions && hasConditions);
- /* Top suggestion/condition header. This will be present when there is any suggestion
- * and the mode is collapsed */
- addToItemList(new SuggestionConditionHeaderData(conditions, hiddenSuggestion),
- R.layout.suggestion_condition_header,
- STABLE_ID_SUGGESTION_CONDITION_TOP_HEADER, hasSuggestionAndCollapsed);
+ /* Condition header. This will be present when there is condition and it is collapsed */
+ addToItemList(new ConditionHeaderData(conditions),
+ R.layout.condition_header,
+ STABLE_ID_CONDITION_HEADER, hasConditions && !mConditionExpanded);
- /* Use mid header if there is only condition & it's in collapsed mode */
- addToItemList(new SuggestionConditionHeaderData(conditions, hiddenSuggestion),
- R.layout.suggestion_condition_header,
- STABLE_ID_SUGGESTION_CONDITION_MIDDLE_HEADER, onlyHasConditionAndCollapsed);
+ /* Condition container. This is the card view that contains the list of conditions.
+ * This will be added whenever the condition list is not empty and expanded */
+ addToItemList(conditions, R.layout.condition_container,
+ STABLE_ID_CONDITION_CONTAINER, hasConditions && mConditionExpanded);
- addToItemList(suggestions, R.layout.suggestion_condition_container,
- STABLE_ID_SUGGESTION_CONTAINER, sizeOf(suggestions) > 0);
-
- /* Second suggestion/condition header. This will be added when there is at least one
- * suggestion or condition that is not currently displayed, and the user can expand the
- * section to view more items. */
- addToItemList(new SuggestionConditionHeaderData(conditions, hiddenSuggestion),
- R.layout.suggestion_condition_header,
- STABLE_ID_SUGGESTION_CONDITION_MIDDLE_HEADER,
- mSuggestionConditionMode != HEADER_MODE_COLLAPSED
- && mSuggestionConditionMode != HEADER_MODE_FULLY_EXPANDED
- && (hiddenSuggestion > 0 || hasConditions && hasSuggestions));
-
- /* Condition container. This is the card view that contains the list of conditions.
- * This will be added whenever the condition list is not empty */
- addToItemList(conditions, R.layout.suggestion_condition_container,
- STABLE_ID_CONDITION_CONTAINER,
- hasConditions && mSuggestionConditionMode == HEADER_MODE_FULLY_EXPANDED);
-
- /* Suggestion/condition footer. This will be present when the section is fully expanded
- * or when there is no conditions and no hidden suggestions */
- addToItemList(null /* item */, R.layout.suggestion_condition_footer,
- STABLE_ID_SUGGESTION_CONDITION_FOOTER,
- (hasConditions || hasSuggestions)
- && mSuggestionConditionMode == HEADER_MODE_FULLY_EXPANDED
- || hasSuggestions
- && !hasConditions
- && hiddenSuggestion == 0);
+ /* Condition footer. This will be present when there is condition and it is expanded */
+ addToItemList(null /* item */, R.layout.condition_footer,
+ STABLE_ID_CONDITION_FOOTER, hasConditions && mConditionExpanded);
if (mCategory != null) {
final List<Tile> tiles = mCategory.getTiles();
- for (int j = 0; j < tiles.size(); j++) {
- final Tile tile = tiles.get(j);
+ for (int i = 0; i < tiles.size(); i++) {
+ final Tile tile = tiles.get(i);
addToItemList(tile, R.layout.dashboard_tile, Objects.hash(tile.title),
true /* add */);
}
@@ -277,28 +240,23 @@
}
private List<Suggestion> getSuggestionsToShow(List<Suggestion> suggestions) {
- if (suggestions == null || mSuggestionConditionMode == HEADER_MODE_COLLAPSED) {
+ if (suggestions == null) {
return null;
}
- if (mSuggestionConditionMode != HEADER_MODE_DEFAULT
- || suggestions.size() <= DEFAULT_SUGGESTION_COUNT) {
+ if (suggestions.size() <= MAX_SUGGESTION_COUNT) {
return suggestions;
}
- return suggestions.subList(0, DEFAULT_SUGGESTION_COUNT);
+ return suggestions.subList(0, MAX_SUGGESTION_COUNT);
}
/**
* Builder used to build the ItemsData
- * <p>
- * {@link #mSuggestionConditionMode} have default value while others are not.
*/
public static class Builder {
- @HeaderMode
- private int mSuggestionConditionMode = HEADER_MODE_DEFAULT;
-
private DashboardCategory mCategory;
private List<Condition> mConditions;
- private List<Suggestion> mSuggestionsV2;
+ private List<Suggestion> mSuggestions;
+ private boolean mConditionExpanded;
public Builder() {
}
@@ -306,8 +264,8 @@
public Builder(DashboardData dashboardData) {
mCategory = dashboardData.mCategory;
mConditions = dashboardData.mConditions;
- mSuggestionsV2 = dashboardData.mSuggestions;
- mSuggestionConditionMode = dashboardData.mSuggestionConditionMode;
+ mSuggestions = dashboardData.mSuggestions;
+ mConditionExpanded = dashboardData.mConditionExpanded;
}
public Builder setCategory(DashboardCategory category) {
@@ -321,12 +279,12 @@
}
public Builder setSuggestions(List<Suggestion> suggestions) {
- this.mSuggestionsV2 = suggestions;
+ this.mSuggestions = suggestions;
return this;
}
- public Builder setSuggestionConditionMode(@HeaderMode int mode) {
- this.mSuggestionConditionMode = mode;
+ public Builder setConditionExpanded(boolean expanded) {
+ this.mConditionExpanded = expanded;
return this;
}
@@ -376,17 +334,18 @@
static class Item {
// valid types in field type
private static final int TYPE_DASHBOARD_TILE = R.layout.dashboard_tile;
- private static final int TYPE_SUGGESTION_CONDITION_CONTAINER =
- R.layout.suggestion_condition_container;
- private static final int TYPE_SUGGESTION_CONDITION_HEADER =
- R.layout.suggestion_condition_header;
- private static final int TYPE_SUGGESTION_CONDITION_FOOTER =
- R.layout.suggestion_condition_footer;
- private static final int TYPE_DASHBOARD_SPACER = R.layout.dashboard_spacer;
+ private static final int TYPE_SUGGESTION_CONTAINER =
+ R.layout.suggestion_container;
+ private static final int TYPE_CONDITION_CONTAINER =
+ R.layout.condition_container;
+ private static final int TYPE_CONDITION_HEADER =
+ R.layout.condition_header;
+ private static final int TYPE_CONDITION_FOOTER =
+ R.layout.condition_footer;
+ private static final int TYPE_SUGGESTION_CONDITION_DIVIDER = R.layout.horizontal_divider;
- @IntDef({TYPE_DASHBOARD_TILE, TYPE_SUGGESTION_CONDITION_CONTAINER,
- TYPE_SUGGESTION_CONDITION_HEADER, TYPE_SUGGESTION_CONDITION_FOOTER,
- TYPE_DASHBOARD_SPACER})
+ @IntDef({TYPE_DASHBOARD_TILE, TYPE_SUGGESTION_CONTAINER, TYPE_CONDITION_CONTAINER,
+ TYPE_CONDITION_HEADER, TYPE_CONDITION_FOOTER, TYPE_SUGGESTION_CONDITION_DIVIDER})
@Retention(RetentionPolicy.SOURCE)
public @interface ItemTypes {
}
@@ -444,8 +403,9 @@
// Only check title and summary for dashboard tile
return TextUtils.equals(localTile.title, targetTile.title)
- && TextUtils.equals(localTile.summary, targetTile.summary);
- case TYPE_SUGGESTION_CONDITION_CONTAINER:
+ && TextUtils.equals(localTile.summary, targetTile.summary);
+ case TYPE_SUGGESTION_CONTAINER:
+ case TYPE_CONDITION_CONTAINER:
// If entity is suggestion and contains remote view, force refresh
final List entities = (List) entity;
if (!entities.isEmpty()) {
@@ -467,16 +427,13 @@
* This class contains the data needed to build the suggestion/condition header. The data can
* also be used to check the diff in DiffUtil.Callback
*/
- public static class SuggestionConditionHeaderData {
+ public static class ConditionHeaderData {
public final List<Icon> conditionIcons;
public final CharSequence title;
public final int conditionCount;
- public final int hiddenSuggestionCount;
- public SuggestionConditionHeaderData(List<Condition> conditions,
- int hiddenSuggestionCount) {
+ public ConditionHeaderData(List<Condition> conditions) {
conditionCount = sizeOf(conditions);
- this.hiddenSuggestionCount = hiddenSuggestionCount;
title = conditionCount > 0 ? conditions.get(0).getTitle() : null;
conditionIcons = new ArrayList<>();
for (int i = 0; conditions != null && i < conditions.size(); i++) {
diff --git a/src/com/android/settings/dashboard/DashboardDataV2.java b/src/com/android/settings/dashboard/DashboardDataV2.java
deleted file mode 100644
index e25ee05..0000000
--- a/src/com/android/settings/dashboard/DashboardDataV2.java
+++ /dev/null
@@ -1,446 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard;
-
-import android.annotation.IntDef;
-import android.graphics.drawable.Icon;
-import android.service.settings.suggestions.Suggestion;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.util.DiffUtil;
-import android.text.TextUtils;
-
-import com.android.settings.R;
-import com.android.settings.dashboard.conditional.Condition;
-import com.android.settingslib.drawer.DashboardCategory;
-import com.android.settingslib.drawer.Tile;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-
-/**
- * Description about data list used in the DashboardAdapter. In the data list each item can be
- * Condition, suggestion or category tile.
- * <p>
- * ItemsData has inner class Item, which represents the Item in data list.
- */
-public class DashboardDataV2 {
- public static final int POSITION_NOT_FOUND = -1;
- public static final int MAX_SUGGESTION_COUNT = 4;
-
- // stable id for different type of items.
- @VisibleForTesting
- static final int STABLE_ID_SUGGESTION_CONTAINER = 0;
- static final int STABLE_ID_SUGGESTION_CONDITION_DIVIDER = 1;
- @VisibleForTesting
- static final int STABLE_ID_CONDITION_HEADER = 2;
- @VisibleForTesting
- static final int STABLE_ID_CONDITION_FOOTER = 3;
- @VisibleForTesting
- static final int STABLE_ID_CONDITION_CONTAINER = 4;
-
- private final List<Item> mItems;
- private final DashboardCategory mCategory;
- private final List<Condition> mConditions;
- private final List<Suggestion> mSuggestions;
- private final boolean mConditionExpanded;
-
- private DashboardDataV2(Builder builder) {
- mCategory = builder.mCategory;
- mConditions = builder.mConditions;
- mSuggestions = builder.mSuggestions;
- mConditionExpanded = builder.mConditionExpanded;
- mItems = new ArrayList<>();
-
- buildItemsData();
- }
-
- public int getItemIdByPosition(int position) {
- return mItems.get(position).id;
- }
-
- public int getItemTypeByPosition(int position) {
- return mItems.get(position).type;
- }
-
- public Object getItemEntityByPosition(int position) {
- return mItems.get(position).entity;
- }
-
- public List<Item> getItemList() {
- return mItems;
- }
-
- public int size() {
- return mItems.size();
- }
-
- public Object getItemEntityById(long id) {
- for (final Item item : mItems) {
- if (item.id == id) {
- return item.entity;
- }
- }
- return null;
- }
-
- public DashboardCategory getCategory() {
- return mCategory;
- }
-
- public List<Condition> getConditions() {
- return mConditions;
- }
-
- public List<Suggestion> getSuggestions() {
- return mSuggestions;
- }
-
- public boolean hasSuggestion() {
- return sizeOf(mSuggestions) > 0;
- }
-
- public boolean isConditionExpanded() {
- return mConditionExpanded;
- }
-
- /**
- * Find the position of the object in mItems list, using the equals method to compare
- *
- * @param entity the object that need to be found in list
- * @return position of the object, return POSITION_NOT_FOUND if object isn't in the list
- */
- public int getPositionByEntity(Object entity) {
- if (entity == null) return POSITION_NOT_FOUND;
-
- final int size = mItems.size();
- for (int i = 0; i < size; i++) {
- final Object item = mItems.get(i).entity;
- if (entity.equals(item)) {
- return i;
- }
- }
-
- return POSITION_NOT_FOUND;
- }
-
- /**
- * Find the position of the Tile object.
- * <p>
- * First, try to find the exact identical instance of the tile object, if not found,
- * then try to find a tile has the same title.
- *
- * @param tile tile that need to be found
- * @return position of the object, return INDEX_NOT_FOUND if object isn't in the list
- */
- public int getPositionByTile(Tile tile) {
- final int size = mItems.size();
- for (int i = 0; i < size; i++) {
- final Object entity = mItems.get(i).entity;
- if (entity == tile) {
- return i;
- } else if (entity instanceof Tile && tile.title.equals(((Tile) entity).title)) {
- return i;
- }
- }
-
- return POSITION_NOT_FOUND;
- }
-
- /**
- * Add item into list when {@paramref add} is true.
- *
- * @param item maybe {@link Condition}, {@link Tile}, {@link DashboardCategory} or null
- * @param type type of the item, and value is the layout id
- * @param stableId The stable id for this item
- * @param add flag about whether to add item into list
- */
- private void addToItemList(Object item, int type, int stableId, boolean add) {
- if (add) {
- mItems.add(new Item(item, type, stableId));
- }
- }
-
- /**
- * Build the mItems list using mConditions, mSuggestions, mCategories data
- * and mIsShowingAll, mConditionExpanded flag.
- */
- private void buildItemsData() {
- final List<Condition> conditions = getConditionsToShow(mConditions);
- final boolean hasConditions = sizeOf(conditions) > 0;
-
- final List<Suggestion> suggestions = getSuggestionsToShow(mSuggestions);
- final boolean hasSuggestions = sizeOf(suggestions) > 0;
-
- /* Suggestion container. This is the card view that contains the list of suggestions.
- * This will be added whenever the suggestion list is not empty */
- addToItemList(suggestions, R.layout.suggestion_container,
- STABLE_ID_SUGGESTION_CONTAINER, hasSuggestions);
-
- /* Divider between suggestion and conditions if both are present. */
- addToItemList(suggestions, R.layout.horizontal_divider,
- STABLE_ID_SUGGESTION_CONDITION_DIVIDER, hasSuggestions && hasConditions);
-
- /* Condition header. This will be present when there is condition and it is collapsed */
- addToItemList(new ConditionHeaderData(conditions),
- R.layout.suggestion_condition_header,
- STABLE_ID_CONDITION_HEADER, hasConditions && !mConditionExpanded);
-
- /* Condition container. This is the card view that contains the list of conditions.
- * This will be added whenever the condition list is not empty and expanded */
- addToItemList(conditions, R.layout.condition_container,
- STABLE_ID_CONDITION_CONTAINER, hasConditions && mConditionExpanded);
-
- /* Condition footer. This will be present when there is condition and it is expanded */
- addToItemList(null /* item */, R.layout.suggestion_condition_footer,
- STABLE_ID_CONDITION_FOOTER, hasConditions && mConditionExpanded);
-
- if (mCategory != null) {
- final List<Tile> tiles = mCategory.getTiles();
- for (int i = 0; i < tiles.size(); i++) {
- final Tile tile = tiles.get(i);
- addToItemList(tile, R.layout.dashboard_tile, Objects.hash(tile.title),
- true /* add */);
- }
- }
- }
-
- private static int sizeOf(List<?> list) {
- return list == null ? 0 : list.size();
- }
-
- private List<Condition> getConditionsToShow(List<Condition> conditions) {
- if (conditions == null) {
- return null;
- }
- List<Condition> result = new ArrayList<>();
- final int size = conditions == null ? 0 : conditions.size();
- for (int i = 0; i < size; i++) {
- final Condition condition = conditions.get(i);
- if (condition.shouldShow()) {
- result.add(condition);
- }
- }
- return result;
- }
-
- private List<Suggestion> getSuggestionsToShow(List<Suggestion> suggestions) {
- if (suggestions == null) {
- return null;
- }
- if (suggestions.size() <= MAX_SUGGESTION_COUNT) {
- return suggestions;
- }
- return suggestions.subList(0, MAX_SUGGESTION_COUNT);
- }
-
- /**
- * Builder used to build the ItemsData
- */
- public static class Builder {
- private DashboardCategory mCategory;
- private List<Condition> mConditions;
- private List<Suggestion> mSuggestions;
- private boolean mConditionExpanded;
-
- public Builder() {
- }
-
- public Builder(DashboardDataV2 dashboardData) {
- mCategory = dashboardData.mCategory;
- mConditions = dashboardData.mConditions;
- mSuggestions = dashboardData.mSuggestions;
- mConditionExpanded = dashboardData.mConditionExpanded;
- }
-
- public Builder setCategory(DashboardCategory category) {
- this.mCategory = category;
- return this;
- }
-
- public Builder setConditions(List<Condition> conditions) {
- this.mConditions = conditions;
- return this;
- }
-
- public Builder setSuggestions(List<Suggestion> suggestions) {
- this.mSuggestions = suggestions;
- return this;
- }
-
- public Builder setConditionExpanded(boolean expanded) {
- this.mConditionExpanded = expanded;
- return this;
- }
-
- public DashboardDataV2 build() {
- return new DashboardDataV2(this);
- }
- }
-
- /**
- * A DiffCallback to calculate the difference between old and new Item
- * List in DashboardDataV2
- */
- public static class ItemsDataDiffCallback extends DiffUtil.Callback {
- final private List<Item> mOldItems;
- final private List<Item> mNewItems;
-
- public ItemsDataDiffCallback(List<Item> oldItems, List<Item> newItems) {
- mOldItems = oldItems;
- mNewItems = newItems;
- }
-
- @Override
- public int getOldListSize() {
- return mOldItems.size();
- }
-
- @Override
- public int getNewListSize() {
- return mNewItems.size();
- }
-
- @Override
- public boolean areItemsTheSame(int oldItemPosition, int newItemPosition) {
- return mOldItems.get(oldItemPosition).id == mNewItems.get(newItemPosition).id;
- }
-
- @Override
- public boolean areContentsTheSame(int oldItemPosition, int newItemPosition) {
- return mOldItems.get(oldItemPosition).equals(mNewItems.get(newItemPosition));
- }
-
- }
-
- /**
- * An item contains the data needed in the DashboardDataV2.
- */
- static class Item {
- // valid types in field type
- private static final int TYPE_DASHBOARD_TILE = R.layout.dashboard_tile;
- private static final int TYPE_SUGGESTION_CONTAINER =
- R.layout.suggestion_container;
- private static final int TYPE_CONDITION_CONTAINER =
- R.layout.condition_container;
- private static final int TYPE_CONDITION_HEADER =
- R.layout.suggestion_condition_header;
- private static final int TYPE_CONDITION_FOOTER =
- R.layout.suggestion_condition_footer;
- private static final int TYPE_SUGGESTION_CONDITION_DIVIDER = R.layout.horizontal_divider;
-
- @IntDef({TYPE_DASHBOARD_TILE, TYPE_SUGGESTION_CONTAINER, TYPE_CONDITION_CONTAINER,
- TYPE_CONDITION_HEADER, TYPE_CONDITION_FOOTER, TYPE_SUGGESTION_CONDITION_DIVIDER})
- @Retention(RetentionPolicy.SOURCE)
- public @interface ItemTypes {
- }
-
- /**
- * The main data object in item, usually is a {@link Tile}, {@link Condition}
- * object. This object can also be null when the
- * item is an divider line. Please refer to {@link #buildItemsData()} for
- * detail usage of the Item.
- */
- public final Object entity;
-
- /**
- * The type of item, value inside is the layout id(e.g. R.layout.dashboard_tile)
- */
- @ItemTypes
- public final int type;
-
- /**
- * Id of this item, used in the {@link ItemsDataDiffCallback} to identify the same item.
- */
- public final int id;
-
- public Item(Object entity, @ItemTypes int type, int id) {
- this.entity = entity;
- this.type = type;
- this.id = id;
- }
-
- /**
- * Override it to make comparision in the {@link ItemsDataDiffCallback}
- *
- * @param obj object to compared with
- * @return true if the same object or has equal value.
- */
- @Override
- public boolean equals(Object obj) {
- if (this == obj) {
- return true;
- }
-
- if (!(obj instanceof Item)) {
- return false;
- }
-
- final Item targetItem = (Item) obj;
- if (type != targetItem.type || id != targetItem.id) {
- return false;
- }
-
- switch (type) {
- case TYPE_DASHBOARD_TILE:
- final Tile localTile = (Tile) entity;
- final Tile targetTile = (Tile) targetItem.entity;
-
- // Only check title and summary for dashboard tile
- return TextUtils.equals(localTile.title, targetTile.title)
- && TextUtils.equals(localTile.summary, targetTile.summary);
- case TYPE_SUGGESTION_CONTAINER:
- case TYPE_CONDITION_CONTAINER:
- // If entity is suggestion and contains remote view, force refresh
- final List entities = (List) entity;
- if (!entities.isEmpty()) {
- Object firstEntity = entities.get(0);
- if (firstEntity instanceof Tile
- && ((Tile) firstEntity).remoteViews != null) {
- return false;
- }
- }
- // Otherwise Fall through to default
- default:
- return entity == null ? targetItem.entity == null
- : entity.equals(targetItem.entity);
- }
- }
- }
-
- /**
- * This class contains the data needed to build the suggestion/condition header. The data can
- * also be used to check the diff in DiffUtil.Callback
- */
- public static class ConditionHeaderData {
- public final List<Icon> conditionIcons;
- public final CharSequence title;
- public final int conditionCount;
-
- public ConditionHeaderData(List<Condition> conditions) {
- conditionCount = sizeOf(conditions);
- title = conditionCount > 0 ? conditions.get(0).getTitle() : null;
- conditionIcons = new ArrayList<>();
- for (int i = 0; conditions != null && i < conditions.size(); i++) {
- final Condition condition = conditions.get(i);
- conditionIcons.add(condition.getIcon());
- }
- }
- }
-
-}
\ No newline at end of file
diff --git a/src/com/android/settings/dashboard/DashboardFeatureProvider.java b/src/com/android/settings/dashboard/DashboardFeatureProvider.java
index e0873f5..6c3f9cd 100644
--- a/src/com/android/settings/dashboard/DashboardFeatureProvider.java
+++ b/src/com/android/settings/dashboard/DashboardFeatureProvider.java
@@ -90,9 +90,4 @@
*/
void openTileIntent(Activity activity, Tile tile);
- /**
- * Whether or not we should use the v2 of suggestions UI.
- */
- boolean useSuggestionUiV2();
-
}
diff --git a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
index a14d9e9..3ed76d8 100644
--- a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
@@ -33,21 +33,18 @@
import android.support.v7.preference.Preference;
import android.text.TextUtils;
import android.util.ArrayMap;
-import android.util.FeatureFlagUtils;
import android.util.Log;
import android.util.Pair;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.instrumentation.VisibilityLoggerMixin;
import com.android.settingslib.drawer.CategoryManager;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.ProfileSelectDialog;
-import com.android.settingslib.drawer.SettingsDrawerActivity;
import com.android.settingslib.drawer.Tile;
import com.android.settingslib.drawer.TileUtils;
import com.android.settingslib.utils.ThreadUtils;
@@ -212,16 +209,10 @@
final Intent intent = new Intent(tile.intent)
.putExtra(VisibilityLoggerMixin.EXTRA_SOURCE_METRICS_CATEGORY,
MetricsEvent.DASHBOARD_SUMMARY)
- .putExtra(SettingsDrawerActivity.EXTRA_SHOW_MENU, true)
.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
launchIntentOrSelectProfile(activity, tile, intent, MetricsEvent.DASHBOARD_SUMMARY);
}
- @Override
- public boolean useSuggestionUiV2() {
- return FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SUGGESTION_UI_V2);
- }
-
private void bindSummary(Preference preference, Tile tile) {
if (tile.summary != null) {
preference.setSummary(tile.summary);
diff --git a/src/com/android/settings/dashboard/DashboardFragmentRegistry.java b/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
index 0536403..275af3d 100644
--- a/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
+++ b/src/com/android/settings/dashboard/DashboardFragmentRegistry.java
@@ -20,7 +20,7 @@
import com.android.settings.DisplaySettings;
import com.android.settings.accounts.AccountDetailDashboardFragment;
-import com.android.settings.accounts.UserAndAccountDashboardFragment;
+import com.android.settings.accounts.AccountDashboardFragment;
import com.android.settings.applications.AppAndNotificationDashboardFragment;
import com.android.settings.applications.DefaultAppSettings;
import com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment;
@@ -33,7 +33,7 @@
import com.android.settings.notification.ConfigureNotificationSettings;
import com.android.settings.notification.SoundSettings;
import com.android.settings.security.LockscreenDashboardFragment;
-import com.android.settings.security.SecuritySettingsV2;
+import com.android.settings.security.SecuritySettings;
import com.android.settings.system.SystemDashboardFragment;
import com.android.settingslib.drawer.CategoryKey;
@@ -77,11 +77,11 @@
CategoryKey.CATEGORY_SOUND);
PARENT_TO_CATEGORY_KEY_MAP.put(StorageDashboardFragment.class.getName(),
CategoryKey.CATEGORY_STORAGE);
- PARENT_TO_CATEGORY_KEY_MAP.put(SecuritySettingsV2.class.getName(),
+ PARENT_TO_CATEGORY_KEY_MAP.put(SecuritySettings.class.getName(),
CategoryKey.CATEGORY_SECURITY);
PARENT_TO_CATEGORY_KEY_MAP.put(AccountDetailDashboardFragment.class.getName(),
CategoryKey.CATEGORY_ACCOUNT_DETAIL);
- PARENT_TO_CATEGORY_KEY_MAP.put(UserAndAccountDashboardFragment.class.getName(),
+ PARENT_TO_CATEGORY_KEY_MAP.put(AccountDashboardFragment.class.getName(),
CategoryKey.CATEGORY_ACCOUNT);
PARENT_TO_CATEGORY_KEY_MAP.put(
SystemDashboardFragment.class.getName(), CategoryKey.CATEGORY_SYSTEM);
diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java
index 15b407b..8ddef1c 100644
--- a/src/com/android/settings/dashboard/DashboardSummary.java
+++ b/src/com/android/settings/dashboard/DashboardSummary.java
@@ -38,25 +38,24 @@
import com.android.settings.dashboard.conditional.ConditionManager.ConditionListener;
import com.android.settings.dashboard.conditional.FocusRecyclerView;
import com.android.settings.dashboard.conditional.FocusRecyclerView.FocusListener;
-import com.android.settings.dashboard.suggestions.SuggestionControllerMixin;
-import com.android.settings.dashboard.suggestions.SuggestionDismissController;
+import com.android.settings.dashboard.suggestions.SuggestionFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.ActionBarShadowController;
import com.android.settingslib.drawer.CategoryKey;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.SettingsDrawerActivity;
import com.android.settingslib.drawer.SettingsDrawerActivity.CategoryListener;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import com.android.settingslib.utils.ThreadUtils;
import java.util.List;
public class DashboardSummary extends InstrumentedFragment
implements CategoryListener, ConditionListener,
- FocusListener, SuggestionDismissController.Callback,
- SuggestionControllerMixin.SuggestionControllerHost {
+ FocusListener, SuggestionControllerMixin.SuggestionControllerHost {
public static final boolean DEBUG = false;
private static final boolean DEBUG_TIMING = false;
- private static final int MAX_WAIT_MILLIS = 700;
+ private static final int MAX_WAIT_MILLIS = 3000;
private static final String TAG = "DashboardSummary";
private static final String EXTRA_SCROLL_POSITION = "scroll_position";
@@ -65,7 +64,6 @@
private FocusRecyclerView mDashboard;
private DashboardAdapter mAdapter;
- private DashboardAdapterV2 mAdapterV2;
private SummaryLoader mSummaryLoader;
private ConditionManager mConditionManager;
private LinearLayoutManager mLayoutManager;
@@ -86,8 +84,14 @@
public void onAttach(Context context) {
super.onAttach(context);
Log.d(TAG, "Creating SuggestionControllerMixin");
- mSuggestionControllerMixin = new SuggestionControllerMixin(context, this /* host */,
- getLifecycle());
+ final SuggestionFeatureProvider suggestionFeatureProvider = FeatureFactory
+ .getFactory(context)
+ .getSuggestionFeatureProvider(context);
+ if (suggestionFeatureProvider.isSuggestionEnabled(context)) {
+ mSuggestionControllerMixin = new SuggestionControllerMixin(context, this /* host */,
+ getLifecycle(), suggestionFeatureProvider
+ .getSuggestionServiceComponent());
+ }
}
@Override
@@ -174,13 +178,10 @@
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
- if (mLayoutManager == null) return;
- outState.putInt(EXTRA_SCROLL_POSITION, mLayoutManager.findFirstVisibleItemPosition());
- if (!mDashboardFeatureProvider.useSuggestionUiV2()) {
- if (mAdapter != null) {
- mAdapter.onSaveInstanceState(outState);
- }
+ if (mLayoutManager == null) {
+ return;
}
+ outState.putInt(EXTRA_SCROLL_POSITION, mLayoutManager.findFirstVisibleItemPosition());
}
@Override
@@ -198,17 +199,10 @@
mDashboard.setHasFixedSize(true);
mDashboard.setListener(this);
mDashboard.setItemAnimator(new DashboardItemAnimator());
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- mAdapterV2 = new DashboardAdapterV2(getContext(), bundle,
- mConditionManager.getConditions(), mSuggestionControllerMixin, getLifecycle());
- mDashboard.setAdapter(mAdapterV2);
- mSummaryLoader.setSummaryConsumer(mAdapterV2);
- } else {
- mAdapter = new DashboardAdapter(getContext(), bundle, mConditionManager.getConditions(),
- mSuggestionControllerMixin, this /* SuggestionDismissController.Callback */);
- mDashboard.setAdapter(mAdapter);
- mSummaryLoader.setSummaryConsumer(mAdapter);
- }
+ mAdapter = new DashboardAdapter(getContext(), bundle,
+ mConditionManager.getConditions(), mSuggestionControllerMixin, getLifecycle());
+ mDashboard.setAdapter(mAdapter);
+ mSummaryLoader.setSummaryConsumer(mAdapter);
ActionBarShadowController.attachToRecyclerView(
getActivity().findViewById(R.id.search_bar_container), getLifecycle(), mDashboard);
rebuildUI();
@@ -247,11 +241,7 @@
if (mOnConditionsChangedCalled) {
final boolean scrollToTop =
mLayoutManager.findFirstCompletelyVisibleItemPosition() <= 1;
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- mAdapterV2.setConditions(mConditionManager.getConditions());
- } else {
- mAdapter.setConditions(mConditionManager.getConditions());
- }
+ mAdapter.setConditions(mConditionManager.getConditions());
if (scrollToTop) {
mDashboard.scrollToPosition(0);
}
@@ -261,36 +251,13 @@
}
@Override
- public Suggestion getSuggestionAt(int position) {
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- return mAdapterV2.getSuggestion(position);
- } else {
- return mAdapter.getSuggestion(position);
- }
- }
-
- @Override
- public void onSuggestionDismissed(Suggestion suggestion) {
- mAdapter.onSuggestionDismissed(suggestion);
- }
-
- @Override
public void onSuggestionReady(List<Suggestion> suggestions) {
mStagingSuggestions = suggestions;
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- mAdapterV2.setSuggestions(suggestions);
- if (mStagingCategory != null) {
- Log.d(TAG, "Category has loaded, setting category from suggestionReady");
- mHandler.removeCallbacksAndMessages(null);
- mAdapterV2.setCategory(mStagingCategory);
- }
- } else {
- mAdapter.setSuggestions(suggestions);
- if (mStagingCategory != null) {
- Log.d(TAG, "Category has loaded, setting category from suggestionReady");
- mHandler.removeCallbacksAndMessages(null);
- mAdapter.setCategory(mStagingCategory);
- }
+ mAdapter.setSuggestions(suggestions);
+ if (mStagingCategory != null) {
+ Log.d(TAG, "Category has loaded, setting category from suggestionReady");
+ mHandler.removeCallbacksAndMessages(null);
+ mAdapter.setCategory(mStagingCategory);
}
}
@@ -300,29 +267,21 @@
CategoryKey.CATEGORY_HOMEPAGE);
mSummaryLoader.updateSummaryToCache(category);
mStagingCategory = category;
+ if (mSuggestionControllerMixin == null) {
+ mAdapter.setCategory(mStagingCategory);
+ return;
+ }
if (mSuggestionControllerMixin.isSuggestionLoaded()) {
Log.d(TAG, "Suggestion has loaded, setting suggestion/category");
ThreadUtils.postOnMainThread(() -> {
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- if (mStagingSuggestions != null) {
- mAdapterV2.setSuggestions(mStagingSuggestions);
- }
- mAdapterV2.setCategory(mStagingCategory);
- } else {
- if (mStagingSuggestions != null) {
- mAdapter.setSuggestions(mStagingSuggestions);
- }
- mAdapter.setCategory(mStagingCategory);
+ if (mStagingSuggestions != null) {
+ mAdapter.setSuggestions(mStagingSuggestions);
}
+ mAdapter.setCategory(mStagingCategory);
});
} else {
Log.d(TAG, "Suggestion NOT loaded, delaying setCategory by " + MAX_WAIT_MILLIS + "ms");
- if (mDashboardFeatureProvider.useSuggestionUiV2()) {
- mHandler.postDelayed(()
- -> mAdapterV2.setCategory(mStagingCategory), MAX_WAIT_MILLIS);
- } else {
- mHandler.postDelayed(() -> mAdapter.setCategory(mStagingCategory), MAX_WAIT_MILLIS);
- }
+ mHandler.postDelayed(() -> mAdapter.setCategory(mStagingCategory), MAX_WAIT_MILLIS);
}
}
}
diff --git a/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java b/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java
index 7feac23..7877f9d 100644
--- a/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java
+++ b/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java
@@ -20,7 +20,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.Utils;
-import com.android.settings.fuelgauge.BatterySaverSettings;
+import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings;
public class BatterySaverCondition extends Condition {
public BatterySaverCondition(ConditionManager manager) {
diff --git a/src/com/android/settings/dashboard/conditional/ConditionAdapter.java b/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
index d84aa7c..a540b3f 100644
--- a/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
+++ b/src/com/android/settings/dashboard/conditional/ConditionAdapter.java
@@ -27,10 +27,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
-import com.android.settings.dashboard.DashboardAdapter;
import com.android.settings.dashboard.DashboardAdapter.DashboardItemHolder;
-import com.android.settings.dashboard.DashboardData;
-import com.android.settings.dashboard.DashboardData.HeaderMode;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.WirelessUtils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
@@ -44,7 +41,7 @@
private final Context mContext;
private final MetricsFeatureProvider mMetricsFeatureProvider;
private List<Condition> mConditions;
- private @HeaderMode int mMode;
+ private boolean mExpanded;
private View.OnClickListener mConditionClickListener = new View.OnClickListener() {
@@ -84,10 +81,10 @@
}
};
- public ConditionAdapter(Context context, List<Condition> conditions, @HeaderMode int mode) {
+ public ConditionAdapter(Context context, List<Condition> conditions, boolean expanded) {
mContext = context;
mConditions = conditions;
- mMode = mode;
+ mExpanded = expanded;
mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
setHasStableIds(true);
@@ -126,7 +123,7 @@
@Override
public int getItemCount() {
- if (mMode == DashboardData.HEADER_MODE_FULLY_EXPANDED) {
+ if (mExpanded) {
return mConditions.size();
}
return 0;
@@ -138,7 +135,7 @@
}
private void bindViews(final Condition condition,
- DashboardAdapter.DashboardItemHolder view, boolean isLastItem,
+ DashboardItemHolder view, boolean isLastItem,
View.OnClickListener onClickListener) {
if (condition instanceof AirplaneModeCondition) {
Log.d(TAG, "Airplane mode condition has been bound with "
diff --git a/src/com/android/settings/dashboard/conditional/ConditionAdapterV2.java b/src/com/android/settings/dashboard/conditional/ConditionAdapterV2.java
deleted file mode 100644
index 8db57f7..0000000
--- a/src/com/android/settings/dashboard/conditional/ConditionAdapterV2.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard.conditional;
-
-import android.content.Context;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.helper.ItemTouchHelper;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.R;
-import com.android.settings.dashboard.DashboardAdapterV2.DashboardItemHolder;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.WirelessUtils;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
-
-import java.util.List;
-import java.util.Objects;
-
-public class ConditionAdapterV2 extends RecyclerView.Adapter<DashboardItemHolder> {
- public static final String TAG = "ConditionAdapter";
-
- private final Context mContext;
- private final MetricsFeatureProvider mMetricsFeatureProvider;
- private List<Condition> mConditions;
- private boolean mExpanded;
-
- private View.OnClickListener mConditionClickListener = new View.OnClickListener() {
-
- @Override
- public void onClick(View v) {
- //TODO: get rid of setTag/getTag
- Condition condition = (Condition) v.getTag();
- mMetricsFeatureProvider.action(mContext,
- MetricsEvent.ACTION_SETTINGS_CONDITION_CLICK,
- condition.getMetricsConstant());
- condition.onPrimaryClick();
- }
- };
-
- @VisibleForTesting
- ItemTouchHelper.SimpleCallback mSwipeCallback = new ItemTouchHelper.SimpleCallback(0,
- ItemTouchHelper.START | ItemTouchHelper.END) {
- @Override
- public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
- RecyclerView.ViewHolder target) {
- return true;
- }
-
- @Override
- public int getSwipeDirs(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
- return viewHolder.getItemViewType() == R.layout.condition_tile
- ? super.getSwipeDirs(recyclerView, viewHolder) : 0;
- }
-
- @Override
- public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
- Object item = getItem(viewHolder.getItemId());
- // item can become null when running monkey
- if (item != null) {
- ((Condition) item).silence();
- }
- }
- };
-
- public ConditionAdapterV2(Context context, List<Condition> conditions, boolean expanded) {
- mContext = context;
- mConditions = conditions;
- mExpanded = expanded;
- mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
-
- setHasStableIds(true);
- }
-
- public Object getItem(long itemId) {
- for (Condition condition : mConditions) {
- if (Objects.hash(condition.getTitle()) == itemId) {
- return condition;
- }
- }
- return null;
- }
-
- @Override
- public DashboardItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- return new DashboardItemHolder(LayoutInflater.from(parent.getContext()).inflate(
- viewType, parent, false));
- }
-
- @Override
- public void onBindViewHolder(DashboardItemHolder holder, int position) {
- bindViews(mConditions.get(position), holder,
- position == mConditions.size() - 1, mConditionClickListener);
- }
-
- @Override
- public long getItemId(int position) {
- return Objects.hash(mConditions.get(position).getTitle());
- }
-
- @Override
- public int getItemViewType(int position) {
- return R.layout.condition_tile;
- }
-
- @Override
- public int getItemCount() {
- if (mExpanded) {
- return mConditions.size();
- }
- return 0;
- }
-
- public void addDismissHandling(final RecyclerView recyclerView) {
- final ItemTouchHelper itemTouchHelper = new ItemTouchHelper(mSwipeCallback);
- itemTouchHelper.attachToRecyclerView(recyclerView);
- }
-
- private void bindViews(final Condition condition,
- DashboardItemHolder view, boolean isLastItem,
- View.OnClickListener onClickListener) {
- if (condition instanceof AirplaneModeCondition) {
- Log.d(TAG, "Airplane mode condition has been bound with "
- + "isActive=" + condition.isActive() + ". Airplane mode is currently " +
- WirelessUtils.isAirplaneModeOn(condition.mManager.getContext()));
- }
- View card = view.itemView.findViewById(R.id.content);
- card.setTag(condition);
- card.setOnClickListener(onClickListener);
- view.icon.setImageIcon(condition.getIcon());
- view.title.setText(condition.getTitle());
-
- CharSequence[] actions = condition.getActions();
- final boolean hasButtons = actions.length > 0;
- setViewVisibility(view.itemView, R.id.buttonBar, hasButtons);
-
- view.summary.setText(condition.getSummary());
- for (int i = 0; i < 2; i++) {
- Button button = (Button) view.itemView.findViewById(i == 0
- ? R.id.first_action : R.id.second_action);
- if (actions.length > i) {
- button.setVisibility(View.VISIBLE);
- button.setText(actions[i]);
- final int index = i;
- button.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Context context = v.getContext();
- FeatureFactory.getFactory(context).getMetricsFeatureProvider()
- .action(context, MetricsEvent.ACTION_SETTINGS_CONDITION_BUTTON,
- condition.getMetricsConstant());
- condition.onActionClick(index);
- }
- });
- } else {
- button.setVisibility(View.GONE);
- }
- }
- setViewVisibility(view.itemView, R.id.divider, !isLastItem);
- }
-
- private void setViewVisibility(View containerView, int viewId, boolean visible) {
- View view = containerView.findViewById(viewId);
- if (view != null) {
- view.setVisibility(visible ? View.VISIBLE : View.GONE);
- }
- }
-}
diff --git a/src/com/android/settings/dashboard/conditional/DndCondition.java b/src/com/android/settings/dashboard/conditional/DndCondition.java
index a60c362..6498db6 100644
--- a/src/com/android/settings/dashboard/conditional/DndCondition.java
+++ b/src/com/android/settings/dashboard/conditional/DndCondition.java
@@ -15,9 +15,7 @@
*/
package com.android.settings.dashboard.conditional;
-import android.app.ActivityManager;
import android.app.NotificationManager;
-import android.app.StatusBarManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -31,6 +29,8 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
+import com.android.settings.Utils;
+import com.android.settings.notification.ZenModeSettings;
public class DndCondition extends Condition {
@@ -80,19 +80,6 @@
mZen = bundle.getInt(KEY_STATE, Global.ZEN_MODE_OFF);
}
- private CharSequence getZenState() {
- switch (mZen) {
- case Settings.Global.ZEN_MODE_ALARMS:
- return mManager.getContext().getString(R.string.zen_mode_option_alarms);
- case Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS:
- return mManager.getContext().getString(
- R.string.zen_mode_option_important_interruptions);
- case Settings.Global.ZEN_MODE_NO_INTERRUPTIONS:
- return mManager.getContext().getString(R.string.zen_mode_option_no_interruptions);
- }
- return null;
- }
-
@Override
public Icon getIcon() {
return Icon.createWithResource(mManager.getContext(), R.drawable.ic_zen);
@@ -100,17 +87,13 @@
@Override
public CharSequence getTitle() {
- return mManager.getContext().getString(R.string.condition_zen_title, getZenState());
+ return mManager.getContext().getString(R.string.condition_zen_title);
}
@Override
public CharSequence getSummary() {
- final boolean isForever = mConfig != null && mConfig.manualRule != null
- && mConfig.manualRule.conditionId == null;
- return isForever ? mManager.getContext().getString(com.android.internal.R.string.zen_mode_forever_dnd)
- : ZenModeConfig.getConditionSummary(mManager.getContext(), mConfig,
- ActivityManager.getCurrentUser(),
- false);
+ return ZenModeConfig.getDescription(mManager.getContext(), mZen != Global.ZEN_MODE_OFF,
+ mConfig);
}
@Override
@@ -120,8 +103,9 @@
@Override
public void onPrimaryClick() {
- StatusBarManager statusBar = mManager.getContext().getSystemService(StatusBarManager.class);
- statusBar.expandSettingsPanel("dnd");
+ Utils.startWithFragment(mManager.getContext(), ZenModeSettings.class.getName(), null,
+ null, 0, R.string.zen_mode_settings_title, null,
+ MetricsEvent.NOTIFICATION_ZEN_MODE);
}
@Override
diff --git a/src/com/android/settings/dashboard/conditional/WorkModeCondition.java b/src/com/android/settings/dashboard/conditional/WorkModeCondition.java
index 5add32f..5c47be6 100644
--- a/src/com/android/settings/dashboard/conditional/WorkModeCondition.java
+++ b/src/com/android/settings/dashboard/conditional/WorkModeCondition.java
@@ -85,7 +85,7 @@
@Override
public void onPrimaryClick() {
mManager.getContext().startActivity(new Intent(mManager.getContext(),
- Settings.UserAndAccountDashboardActivity.class)
+ Settings.UserSettingsActivity.class)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
index 2b79a9b..b24a914 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java
@@ -17,43 +17,86 @@
import android.app.PendingIntent;
import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.Typeface;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.Icon;
+import android.os.Bundle;
import android.service.settings.suggestions.Suggestion;
+import android.support.annotation.VisibleForTesting;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
+import android.util.DisplayMetrics;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.view.WindowManager;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardAdapter.DashboardItemHolder;
import com.android.settings.dashboard.DashboardAdapter.IconCache;
import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.Utils;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
+import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
-public class SuggestionAdapter extends RecyclerView.Adapter<DashboardItemHolder> {
+public class SuggestionAdapter extends RecyclerView.Adapter<DashboardItemHolder> implements
+ LifecycleObserver, OnSaveInstanceState {
public static final String TAG = "SuggestionAdapter";
+ private static final String STATE_SUGGESTIONS_SHOWN_LOGGED = "suggestions_shown_logged";
+ private static final String STATE_SUGGESTION_LIST = "suggestion_list";
+
private final Context mContext;
private final MetricsFeatureProvider mMetricsFeatureProvider;
- private final List<Suggestion> mSuggestions;
private final IconCache mCache;
- private final List<String> mSuggestionsShownLogged;
+ private final ArrayList<String> mSuggestionsShownLogged;
+ private final SuggestionFeatureProvider mSuggestionFeatureProvider;
private final SuggestionControllerMixin mSuggestionControllerMixin;
+ private final Callback mCallback;
+ private final CardConfig mConfig;
+
+ private List<Suggestion> mSuggestions;
+
+ public interface Callback {
+ /**
+ * Called when the close button of the suggestion card is clicked.
+ */
+ void onSuggestionClosed(Suggestion suggestion);
+ }
public SuggestionAdapter(Context context, SuggestionControllerMixin suggestionControllerMixin,
- List<Suggestion> suggestions, List<String> suggestionsShownLogged) {
+ Bundle savedInstanceState, Callback callback, Lifecycle lifecycle) {
mContext = context;
mSuggestionControllerMixin = suggestionControllerMixin;
- mSuggestions = suggestions;
- mSuggestionsShownLogged = suggestionsShownLogged;
mCache = new IconCache(context);
final FeatureFactory factory = FeatureFactory.getFactory(context);
mMetricsFeatureProvider = factory.getMetricsFeatureProvider();
+ mSuggestionFeatureProvider = factory.getSuggestionFeatureProvider(context);
+ mCallback = callback;
+ if (savedInstanceState != null) {
+ mSuggestions = savedInstanceState.getParcelableArrayList(STATE_SUGGESTION_LIST);
+ mSuggestionsShownLogged = savedInstanceState.getStringArrayList(
+ STATE_SUGGESTIONS_SHOWN_LOGGED);
+ } else {
+ mSuggestionsShownLogged = new ArrayList<>();
+ }
+
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ mConfig = CardConfig.get(context);
setHasStableIds(true);
}
@@ -66,31 +109,52 @@
@Override
public void onBindViewHolder(DashboardItemHolder holder, int position) {
- bindSuggestion(holder, position);
- }
-
- private void bindSuggestion(DashboardItemHolder holder, int position) {
final Suggestion suggestion = mSuggestions.get(position);
final String id = suggestion.getId();
+ final int suggestionCount = mSuggestions.size();
if (!mSuggestionsShownLogged.contains(id)) {
mMetricsFeatureProvider.action(
mContext, MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION, id);
mSuggestionsShownLogged.add(id);
}
-
- holder.icon.setImageDrawable(mCache.getIcon(suggestion.getIcon()));
+ mConfig.setCardLayout(holder, suggestionCount, position);
+ final Icon icon = suggestion.getIcon();
+ final Drawable drawable = mCache.getIcon(icon);
+ if (drawable != null && (suggestion.getFlags() & Suggestion.FLAG_ICON_TINTABLE) != 0) {
+ drawable.setTint(Utils.getColorAccent(mContext));
+ }
+ holder.icon.setImageDrawable(drawable);
holder.title.setText(suggestion.getTitle());
- final CharSequence summary = suggestion.getSummary();
- if (!TextUtils.isEmpty(summary)) {
- holder.summary.setText(summary);
- holder.summary.setVisibility(View.VISIBLE);
+ holder.title.setSingleLine(suggestionCount == 1);
+ holder.title.setTypeface(Typeface.create(
+ mContext.getString(com.android.internal.R.string.config_headlineFontFamilyMedium),
+ Typeface.NORMAL));
+
+ if (suggestionCount == 1) {
+ final CharSequence summary = suggestion.getSummary();
+ if (!TextUtils.isEmpty(summary)) {
+ holder.summary.setText(summary);
+ holder.summary.setVisibility(View.VISIBLE);
+ } else {
+ holder.summary.setVisibility(View.GONE);
+ }
} else {
+ // Do not show summary if there are more than 1 suggestions
holder.summary.setVisibility(View.GONE);
+ holder.title.setMaxLines(3);
}
- final View divider = holder.itemView.findViewById(R.id.divider);
- if (divider != null) {
- divider.setVisibility(position < mSuggestions.size() - 1 ? View.VISIBLE : View.GONE);
+
+ final ImageView closeButton = holder.itemView.findViewById(R.id.close_button);
+ if (closeButton != null) {
+ closeButton.setOnClickListener(v -> {
+ mSuggestionFeatureProvider.dismissSuggestion(
+ mContext, mSuggestionControllerMixin, suggestion);
+ if (mCallback != null) {
+ mCallback.onSuggestionClosed(suggestion);
+ }
+ });
}
+
View clickHandler = holder.itemView;
// If a view with @android:id/primary is defined, use that as the click handler
// instead.
@@ -143,7 +207,92 @@
}
public void removeSuggestion(Suggestion suggestion) {
+ final int position = mSuggestions.indexOf(suggestion);
mSuggestions.remove(suggestion);
- notifyDataSetChanged();
+ notifyItemRemoved(position);
}
+
+ @Override
+ public void onSaveInstanceState(Bundle outState) {
+ if (mSuggestions != null) {
+ outState.putParcelableArrayList(STATE_SUGGESTION_LIST,
+ new ArrayList<>(mSuggestions));
+ }
+ outState.putStringArrayList(STATE_SUGGESTIONS_SHOWN_LOGGED, mSuggestionsShownLogged);
+ }
+
+ public void setSuggestions(List<Suggestion> suggestions) {
+ mSuggestions = suggestions;
+ }
+
+ public List<Suggestion> getSuggestions() {
+ return mSuggestions;
+ }
+
+ @VisibleForTesting
+ static class CardConfig {
+ // Card start/end margin
+ private final int mMarginInner;
+ private final int mMarginOuter;
+ // Card width if there are more than 2 cards
+ private final int mWidthMultipleCards;
+ // padding between icon and title
+ private final int mPaddingTitleTopSingleCard;
+ private final int mPaddingTitleTopMultipleCards;
+ private final WindowManager mWindowManager;
+
+ private static CardConfig sConfig;
+
+ private CardConfig(Context context) {
+ mWindowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
+ final Resources res = context.getResources();
+ mMarginInner =
+ res.getDimensionPixelOffset(R.dimen.suggestion_card_inner_margin);
+ mMarginOuter =
+ res.getDimensionPixelOffset(R.dimen.suggestion_card_outer_margin);
+ mWidthMultipleCards =
+ res.getDimensionPixelOffset(R.dimen.suggestion_card_width_multiple_cards);
+ mPaddingTitleTopSingleCard =
+ res.getDimensionPixelOffset(R.dimen.suggestion_card_title_padding_bottom_one_card);
+ mPaddingTitleTopMultipleCards = res.getDimensionPixelOffset(
+ R.dimen.suggestion_card_title_padding_bottom_multiple_cards);
+ }
+
+ public static CardConfig get(Context context) {
+ if (sConfig == null) {
+ sConfig = new CardConfig(context);
+ }
+ return sConfig;
+ }
+
+ @VisibleForTesting
+ void setCardLayout(DashboardItemHolder holder, int suggestionCount, int position) {
+ final LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
+ suggestionCount == 1
+ ? LinearLayout.LayoutParams.MATCH_PARENT : suggestionCount == 2
+ ? getWidthForTwoCrads() : mWidthMultipleCards,
+ LinearLayout.LayoutParams.WRAP_CONTENT);
+ if (suggestionCount == 1) {
+ params.setMarginStart(mMarginOuter);
+ params.setMarginEnd(mMarginOuter);
+ } else {
+ params.setMarginStart(
+ position == 0 ? mMarginOuter : mMarginInner);
+ params.setMarginEnd(position == suggestionCount - 1 ? mMarginOuter : 0);
+ }
+ holder.itemView.setLayoutParams(params);
+ }
+
+ private int getWidthForTwoCrads() {
+ return (getScreenWidth() - mMarginInner - mMarginOuter * 2) / 2;
+ }
+
+ @VisibleForTesting
+ int getScreenWidth() {
+ final DisplayMetrics metrics = new DisplayMetrics();
+ mWindowManager.getDefaultDisplay().getMetrics(metrics);
+ return metrics.widthPixels;
+ }
+ }
+
}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2.java b/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2.java
deleted file mode 100644
index e04ae93..0000000
--- a/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard.suggestions;
-
-import android.app.PendingIntent;
-import android.content.Context;
-import android.content.res.Resources;
-import android.os.Bundle;
-import android.service.settings.suggestions.Suggestion;
-import android.support.v7.widget.RecyclerView;
-import android.text.TextUtils;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.R;
-import com.android.settings.dashboard.DashboardAdapterV2.DashboardItemHolder;
-import com.android.settings.dashboard.DashboardAdapterV2.IconCache;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
-
-public class SuggestionAdapterV2 extends RecyclerView.Adapter<DashboardItemHolder> implements
- LifecycleObserver, OnSaveInstanceState {
- public static final String TAG = "SuggestionAdapterV2";
-
- private static final String STATE_SUGGESTIONS_SHOWN_LOGGED = "suggestions_shown_logged";
- private static final String STATE_SUGGESTION_LIST = "suggestion_list";
-
- private final Context mContext;
- private final MetricsFeatureProvider mMetricsFeatureProvider;
- private final IconCache mCache;
- private final ArrayList<String> mSuggestionsShownLogged;
- private final SuggestionControllerMixin mSuggestionControllerMixin;
- private final Callback mCallback;
- private final CardConfig mConfig;
-
- private List<Suggestion> mSuggestions;
-
- public interface Callback {
- /**
- * Called when the close button of the suggestion card is clicked.
- */
- void onSuggestionClosed(Suggestion suggestion);
- }
-
- public SuggestionAdapterV2(Context context, SuggestionControllerMixin suggestionControllerMixin,
- Bundle savedInstanceState, Callback callback, Lifecycle lifecycle) {
- mContext = context;
- mSuggestionControllerMixin = suggestionControllerMixin;
- mCache = new IconCache(context);
- final FeatureFactory factory = FeatureFactory.getFactory(context);
- mMetricsFeatureProvider = factory.getMetricsFeatureProvider();
- mCallback = callback;
- if (savedInstanceState != null) {
- mSuggestions = savedInstanceState.getParcelableArrayList(STATE_SUGGESTION_LIST);
- mSuggestionsShownLogged = savedInstanceState.getStringArrayList(
- STATE_SUGGESTIONS_SHOWN_LOGGED);
- } else {
- mSuggestionsShownLogged = new ArrayList<>();
- }
-
- if (lifecycle != null) {
- lifecycle.addObserver(this);
- }
- mConfig = CardConfig.get(context);
-
- setHasStableIds(true);
- }
-
- @Override
- public DashboardItemHolder onCreateViewHolder(ViewGroup parent, int viewType) {
- return new DashboardItemHolder(LayoutInflater.from(parent.getContext()).inflate(
- viewType, parent, false));
- }
-
- @Override
- public void onBindViewHolder(DashboardItemHolder holder, int position) {
- final Suggestion suggestion = mSuggestions.get(position);
- final String id = suggestion.getId();
- final int suggestionCount = mSuggestions.size();
- if (!mSuggestionsShownLogged.contains(id)) {
- mMetricsFeatureProvider.action(
- mContext, MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION, id);
- mSuggestionsShownLogged.add(id);
- }
- mConfig.setCardLayout(holder, suggestionCount, position);
- holder.icon.setImageDrawable(mCache.getIcon(suggestion.getIcon()));
- holder.title.setText(suggestion.getTitle());
- holder.title.setSingleLine(suggestionCount == 1);
-
- if (suggestionCount == 1) {
- final CharSequence summary = suggestion.getSummary();
- if (!TextUtils.isEmpty(summary)) {
- holder.summary.setText(summary);
- holder.summary.setVisibility(View.VISIBLE);
- } else {
- holder.summary.setVisibility(View.GONE);
- }
- } else {
- // Do not show summary if there are more than 1 suggestions
- holder.summary.setVisibility(View.GONE);
- holder.title.setMaxLines(3);
- }
-
- final ImageView closeButton = holder.itemView.findViewById(R.id.close_button);
- if (closeButton != null) {
- if (mCallback != null) {
- closeButton.setOnClickListener(v -> {
- mCallback.onSuggestionClosed(suggestion);
- });
- } else {
- closeButton.setOnClickListener(null);
- }
- }
-
- View clickHandler = holder.itemView;
- // If a view with @android:id/primary is defined, use that as the click handler
- // instead.
- final View primaryAction = holder.itemView.findViewById(android.R.id.primary);
- if (primaryAction != null) {
- clickHandler = primaryAction;
- }
- clickHandler.setOnClickListener(v -> {
- mMetricsFeatureProvider.action(mContext, MetricsEvent.ACTION_SETTINGS_SUGGESTION, id);
- try {
- suggestion.getPendingIntent().send();
- mSuggestionControllerMixin.launchSuggestion(suggestion);
- } catch (PendingIntent.CanceledException e) {
- Log.w(TAG, "Failed to start suggestion " + suggestion.getTitle());
- }
- });
- }
-
- @Override
- public long getItemId(int position) {
- return Objects.hash(mSuggestions.get(position).getId());
- }
-
- @Override
- public int getItemViewType(int position) {
- final Suggestion suggestion = getSuggestion(position);
- if ((suggestion.getFlags() & Suggestion.FLAG_HAS_BUTTON) != 0) {
- return R.layout.suggestion_tile_with_button_v2;
- } else {
- return R.layout.suggestion_tile_v2;
- }
- }
-
- @Override
- public int getItemCount() {
- return mSuggestions.size();
- }
-
- public Suggestion getSuggestion(int position) {
- final long itemId = getItemId(position);
- if (mSuggestions == null) {
- return null;
- }
- for (Suggestion suggestion : mSuggestions) {
- if (Objects.hash(suggestion.getId()) == itemId) {
- return suggestion;
- }
- }
- return null;
- }
-
- public void removeSuggestion(Suggestion suggestion) {
- final int position = mSuggestions.indexOf(suggestion);
- mSuggestions.remove(suggestion);
- notifyItemRemoved(position);
- }
-
- @Override
- public void onSaveInstanceState(Bundle outState) {
- if (mSuggestions != null) {
- outState.putParcelableArrayList(STATE_SUGGESTION_LIST,
- new ArrayList<>(mSuggestions));
- }
- outState.putStringArrayList(STATE_SUGGESTIONS_SHOWN_LOGGED, mSuggestionsShownLogged);
- }
-
- public void setSuggestions(List<Suggestion> suggestions) {
- mSuggestions = suggestions;
- }
-
- public List<Suggestion> getSuggestions() {
- return mSuggestions;
- }
-
- private static class CardConfig {
- // Card start/end margin
- private final int mMarginInner;
- private final int mMarginOuter;
- // Card width for different numbers of cards
- private final int mWidthSingleCard;
- private final int mWidthTwoCards;
- private final int mWidthMultipleCards;
- // padding between icon and title
- private final int mPaddingTitleTopSingleCard;
- private final int mPaddingTitleTopMultipleCards;
-
- private static CardConfig sConfig;
-
- private CardConfig(Context context) {
- final Resources res = context.getResources();
- mMarginInner =
- res.getDimensionPixelOffset(R.dimen.suggestion_card_inner_margin);
- mMarginOuter =
- res.getDimensionPixelOffset(R.dimen.suggestion_card_outer_margin);
- mWidthSingleCard = res.getDimensionPixelOffset(R.dimen.suggestion_card_width_one_card);
- mWidthTwoCards = res.getDimensionPixelOffset(R.dimen.suggestion_card_width_two_cards);
- mWidthMultipleCards =
- res.getDimensionPixelOffset(R.dimen.suggestion_card_width_multiple_cards);
- mPaddingTitleTopSingleCard =
- res.getDimensionPixelOffset(R.dimen.suggestion_card_title_padding_bottom_one_card);
- mPaddingTitleTopMultipleCards = res.getDimensionPixelOffset(
- R.dimen.suggestion_card_title_padding_bottom_multiple_cards);
- }
-
- public static CardConfig get(Context context) {
- if (sConfig == null) {
- sConfig = new CardConfig(context);
- }
- return sConfig;
- }
-
- private void setCardLayout(DashboardItemHolder holder, int suggestionCount,
- int position) {
- final LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
- suggestionCount == 1
- ? mWidthSingleCard : suggestionCount == 2
- ? mWidthTwoCards : mWidthMultipleCards,
- LinearLayout.LayoutParams.WRAP_CONTENT);
- if (suggestionCount == 1) {
- params.setMarginStart(mMarginOuter);
- params.setMarginEnd(mMarginOuter);
- } else {
- params.setMarginStart(
- position == 0 ? mMarginOuter : mMarginInner);
- params.setMarginEnd(position == suggestionCount - 1 ? mMarginOuter : 0);
- }
- holder.itemView.setLayoutParams(params);
- }
-
- }
-
-}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionController.java b/src/com/android/settings/dashboard/suggestions/SuggestionController.java
deleted file mode 100644
index 8fe1a47..0000000
--- a/src/com/android/settings/dashboard/suggestions/SuggestionController.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.Intent;
-import android.content.ServiceConnection;
-import android.os.IBinder;
-import android.os.RemoteException;
-import android.service.settings.suggestions.ISuggestionService;
-import android.service.settings.suggestions.Suggestion;
-import android.support.annotation.Nullable;
-import android.support.annotation.WorkerThread;
-import android.util.Log;
-
-import java.util.List;
-
-/**
- * A controller class to access suggestion data.
- */
-public class SuggestionController {
-
- /**
- * Callback interface when service is connected/disconnected.
- */
- public interface ServiceConnectionListener {
- /**
- * Called when service is connected.
- */
- void onServiceConnected();
-
- /**
- * Called when service is disconnected.
- */
- void onServiceDisconnected();
- }
-
- private static final String TAG = "SuggestionController";
- private static final boolean DEBUG = false;
-
- private final Context mContext;
- private final Intent mServiceIntent;
-
- private ServiceConnection mServiceConnection;
- private ISuggestionService mRemoteService;
- private ServiceConnectionListener mConnectionListener;
-
- /**
- * Create a new controller instance.
- *
- * @param context caller context
- * @param service The component name for service.
- * @param listener listener to receive service connected/disconnected event.
- */
- public SuggestionController(Context context, ComponentName service,
- ServiceConnectionListener listener) {
- mContext = context.getApplicationContext();
- mConnectionListener = listener;
- mServiceIntent = new Intent().setComponent(service);
- mServiceConnection = createServiceConnection();
- }
-
- /**
- * Start the controller.
- */
- public void start() {
- mContext.bindServiceAsUser(mServiceIntent, mServiceConnection, Context.BIND_AUTO_CREATE,
- android.os.Process.myUserHandle());
- }
-
- /**
- * Stop the controller.
- */
- public void stop() {
- if (mRemoteService != null) {
- mRemoteService = null;
- mContext.unbindService(mServiceConnection);
- }
- }
-
- /**
- * Get setting suggestions.
- */
- @Nullable
- @WorkerThread
- public List<Suggestion> getSuggestions() {
- if (!isReady()) {
- return null;
- }
- try {
- return mRemoteService.getSuggestions();
- } catch (NullPointerException e) {
- Log.w(TAG, "mRemote service detached before able to query", e);
- return null;
- } catch (RemoteException e) {
- Log.w(TAG, "Error when calling getSuggestion()", e);
- return null;
- }
- }
-
- public void dismissSuggestions(Suggestion suggestion) {
- if (!isReady()) {
- Log.w(TAG, "SuggestionController not ready, cannot dismiss " + suggestion.getId());
- return;
- }
- try {
- mRemoteService.dismissSuggestion(suggestion);
- } catch (RemoteException e) {
- Log.w(TAG, "Error when calling dismissSuggestion()", e);
- }
- }
-
- public void launchSuggestion(Suggestion suggestion) {
- if (!isReady()) {
- Log.w(TAG, "SuggestionController not ready, cannot launch " + suggestion.getId());
- return;
- }
-
- try {
- mRemoteService.launchSuggestion(suggestion);
- } catch (RemoteException e) {
- Log.w(TAG, "Error when calling launchSuggestion()", e);
- }
- }
-
- /**
- * Whether or not the manager is ready
- */
- private boolean isReady() {
- return mRemoteService != null;
- }
-
- /**
- * Create a new {@link ServiceConnection} object to handle service connect/disconnect event.
- */
- private ServiceConnection createServiceConnection() {
- return new ServiceConnection() {
-
- @Override
- public void onServiceConnected(ComponentName name, IBinder service) {
- if (DEBUG) {
- Log.d(TAG, "Service is connected");
- }
- mRemoteService = ISuggestionService.Stub.asInterface(service);
- if (mConnectionListener != null) {
- mConnectionListener.onServiceConnected();
- }
- }
-
- @Override
- public void onServiceDisconnected(ComponentName name) {
- if (mConnectionListener != null) {
- mRemoteService = null;
- mConnectionListener.onServiceDisconnected();
- }
- }
- };
- }
-}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixin.java b/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixin.java
deleted file mode 100644
index 81496ee..0000000
--- a/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixin.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import android.app.LoaderManager;
-import android.content.Context;
-import android.content.Loader;
-import android.os.Bundle;
-import android.service.settings.suggestions.Suggestion;
-import android.support.annotation.Nullable;
-import android.util.Log;
-
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnStart;
-import com.android.settingslib.core.lifecycle.events.OnStop;
-
-import java.util.List;
-
-/**
- * Manages IPC communication to SettingsIntelligence for suggestion related services.
- */
-public class SuggestionControllerMixin implements SuggestionController.ServiceConnectionListener,
- LifecycleObserver, OnStart, OnStop, LoaderManager.LoaderCallbacks<List<Suggestion>> {
-
- public interface SuggestionControllerHost {
- /**
- * Called when suggestion data fetching is ready.
- */
- void onSuggestionReady(List<Suggestion> data);
-
- /**
- * Returns {@link LoaderManager} associated with the host. If host is not attached to
- * activity then return null.
- */
- @Nullable
- LoaderManager getLoaderManager();
- }
-
- private static final String TAG = "SuggestionCtrlMixin";
- private static final boolean DEBUG = false;
-
- private final Context mContext;
- private final SuggestionController mSuggestionController;
- private final SuggestionControllerHost mHost;
-
- private boolean mSuggestionLoaded;
-
- public SuggestionControllerMixin(Context context, SuggestionControllerHost host,
- Lifecycle lifecycle) {
- mContext = context.getApplicationContext();
- mHost = host;
- mSuggestionController = new SuggestionController(mContext,
- FeatureFactory.getFactory(mContext)
- .getSuggestionFeatureProvider(mContext)
- .getSuggestionServiceComponent(),
- this /* serviceConnectionListener */);
- if (lifecycle != null) {
- lifecycle.addObserver(this);
- }
- }
-
- @Override
- public void onStart() {
- mSuggestionController.start();
- }
-
- @Override
- public void onStop() {
- mSuggestionController.stop();
- }
-
- @Override
- public void onServiceConnected() {
- final LoaderManager loaderManager = mHost.getLoaderManager();
- if (loaderManager != null) {
- loaderManager.restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS,
- null /* args */, this /* callback */);
- }
- }
-
- @Override
- public void onServiceDisconnected() {
- if (DEBUG) {
- Log.d(TAG, "SuggestionService disconnected");
- }
- final LoaderManager loaderManager = mHost.getLoaderManager();
- if (loaderManager != null) {
- loaderManager.destroyLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS);
- }
- }
-
- @Override
- public Loader<List<Suggestion>> onCreateLoader(int id, Bundle args) {
- if (id == SuggestionLoader.LOADER_ID_SUGGESTIONS) {
- mSuggestionLoaded = false;
- return new SuggestionLoader(mContext, mSuggestionController);
- }
- throw new IllegalArgumentException("This loader id is not supported " + id);
- }
-
- @Override
- public void onLoadFinished(Loader<List<Suggestion>> loader, List<Suggestion> data) {
- mSuggestionLoaded = true;
- mHost.onSuggestionReady(data);
- }
-
- @Override
- public void onLoaderReset(Loader<List<Suggestion>> loader) {
- mSuggestionLoaded = false;
- }
-
- public boolean isSuggestionLoaded() {
- return mSuggestionLoaded;
- }
-
- public void dismissSuggestion(Suggestion suggestion) {
- mSuggestionController.dismissSuggestions(suggestion);
- }
-
- public void launchSuggestion(Suggestion suggestion) {
- mSuggestionController.launchSuggestion(suggestion);
- }
-}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java b/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java
deleted file mode 100644
index db2d0bb..0000000
--- a/src/com/android/settings/dashboard/suggestions/SuggestionDismissController.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import android.content.Context;
-import android.service.settings.suggestions.Suggestion;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.helper.ItemTouchHelper;
-
-import com.android.settings.R;
-import com.android.settings.overlay.FeatureFactory;
-
-/**
- * Deprecated as a close button is provided to dismiss the suggestion.
- */
-@Deprecated
-public class SuggestionDismissController extends ItemTouchHelper.SimpleCallback {
-
- public interface Callback {
- /**
- * Returns suggestion tile data from the callback
- */
- Suggestion getSuggestionAt(int position);
-
- /**
- * Called when a suggestion is dismissed.
- */
- void onSuggestionDismissed(Suggestion suggestion);
- }
-
- private final Context mContext;
- private final SuggestionFeatureProvider mSuggestionFeatureProvider;
- private final SuggestionControllerMixin mSuggestionMixin;
- private final Callback mCallback;
-
- public SuggestionDismissController(Context context, RecyclerView recyclerView,
- SuggestionControllerMixin suggestionMixin, Callback callback) {
- super(0, ItemTouchHelper.START | ItemTouchHelper.END);
- mSuggestionMixin = suggestionMixin;
- mContext = context;
- mSuggestionFeatureProvider = FeatureFactory.getFactory(context)
- .getSuggestionFeatureProvider(context);
- mCallback = callback;
- final ItemTouchHelper itemTouchHelper = new ItemTouchHelper(this);
- itemTouchHelper.attachToRecyclerView(recyclerView);
- }
-
- @Override
- public boolean onMove(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
- RecyclerView.ViewHolder target) {
- return true;
- }
-
- @Override
- public int getSwipeDirs(RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder) {
- final int layoutId = viewHolder.getItemViewType();
- if (layoutId == R.layout.suggestion_tile
- || layoutId == R.layout.suggestion_tile_with_button) {
- // Only return swipe direction for suggestion tiles. All other types are not swipeable.
- return super.getSwipeDirs(recyclerView, viewHolder);
- }
- return 0;
- }
-
- @Override
- public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
- if (mCallback == null) {
- return;
- }
- final int position = viewHolder.getAdapterPosition();
- final Suggestion suggestionV2 = mCallback.getSuggestionAt(position);
- mSuggestionFeatureProvider.dismissSuggestion(mContext, mSuggestionMixin, suggestionV2);
- mCallback.onSuggestionDismissed(suggestionV2);
- }
-}
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
index bdc29e7..f913085 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProvider.java
@@ -24,6 +24,7 @@
import android.util.Pair;
import com.android.settingslib.drawer.Tile;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import java.util.List;
@@ -33,7 +34,7 @@
/**
* Whether or not the whole suggestion feature is enabled.
*/
- boolean isSuggestionV2Enabled(Context context);
+ boolean isSuggestionEnabled(Context context);
/**
* Returns the component name for SuggestionService.
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
index 60b20e0..07ffb8a 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
@@ -37,9 +37,10 @@
import com.android.settings.password.ScreenLockSuggestionActivity;
import com.android.settings.support.NewDeviceIntroSuggestionActivity;
import com.android.settings.wallpaper.WallpaperSuggestionActivity;
-import com.android.settings.wifi.WifiCallingSuggestionActivity;
+import com.android.settings.wifi.calling.WifiCallingSuggestionActivity;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.drawer.Tile;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import java.util.List;
@@ -53,7 +54,7 @@
private final MetricsFeatureProvider mMetricsFeatureProvider;
@Override
- public boolean isSuggestionV2Enabled(Context context) {
+ public boolean isSuggestionEnabled(Context context) {
final ActivityManager am =
(ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
return !am.isLowRamDevice();
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionLoader.java b/src/com/android/settings/dashboard/suggestions/SuggestionLoader.java
deleted file mode 100644
index 8c5b46d..0000000
--- a/src/com/android/settings/dashboard/suggestions/SuggestionLoader.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import android.content.Context;
-import android.service.settings.suggestions.Suggestion;
-import android.util.Log;
-
-import com.android.settingslib.utils.AsyncLoader;
-
-import java.util.List;
-
-public class SuggestionLoader extends AsyncLoader<List<Suggestion>> {
-
- public static final int LOADER_ID_SUGGESTIONS = 42;
- private static final String TAG = "SuggestionLoader";
-
- private final SuggestionController mSuggestionController;
-
- public SuggestionLoader(Context context, SuggestionController controller) {
- super(context);
- mSuggestionController = controller;
- }
-
- @Override
- protected void onDiscardResult(List<Suggestion> result) {
-
- }
-
- @Override
- public List<Suggestion> loadInBackground() {
- final List<Suggestion> data = mSuggestionController.getSuggestions();
- if (data == null) {
- Log.d(TAG, "data is null");
- } else {
- Log.d(TAG, "data size " + data.size());
- }
- return data;
- }
-}
diff --git a/src/com/android/settings/datausage/AppDataUsage.java b/src/com/android/settings/datausage/AppDataUsage.java
index 5470e63..a0d0ec0 100644
--- a/src/com/android/settings/datausage/AppDataUsage.java
+++ b/src/com/android/settings/datausage/AppDataUsage.java
@@ -33,7 +33,6 @@
import android.os.RemoteException;
import android.os.UserHandle;
import android.support.annotation.VisibleForTesting;
-import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.text.format.Formatter;
@@ -48,6 +47,9 @@
import com.android.settings.applications.AppInfoBase;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.AppItem;
+import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.net.ChartData;
import com.android.settingslib.net.ChartDataLoader;
import com.android.settingslib.net.UidDetail;
@@ -80,7 +82,7 @@
private Preference mForegroundUsage;
private Preference mBackgroundUsage;
private Preference mAppSettings;
- private SwitchPreference mRestrictBackground;
+ private RestrictedSwitchPreference mRestrictBackground;
private PreferenceCategory mAppList;
private Drawable mIcon;
@@ -97,7 +99,7 @@
private AppItem mAppItem;
private Intent mAppSettingsIntent;
private SpinnerPreference mCycle;
- private SwitchPreference mUnrestrictedData;
+ private RestrictedSwitchPreference mUnrestrictedData;
private DataSaverBackend mDataSaverBackend;
@Override
@@ -160,9 +162,11 @@
removePreference(KEY_UNRESTRICTED_DATA);
removePreference(KEY_RESTRICT_BACKGROUND);
} else {
- mRestrictBackground = (SwitchPreference) findPreference(KEY_RESTRICT_BACKGROUND);
+ mRestrictBackground = (RestrictedSwitchPreference) findPreference(
+ KEY_RESTRICT_BACKGROUND);
mRestrictBackground.setOnPreferenceChangeListener(this);
- mUnrestrictedData = (SwitchPreference) findPreference(KEY_UNRESTRICTED_DATA);
+ mUnrestrictedData = (RestrictedSwitchPreference) findPreference(
+ KEY_UNRESTRICTED_DATA);
mUnrestrictedData.setOnPreferenceChangeListener(this);
}
mDataSaverBackend = new DataSaverBackend(getContext());
@@ -261,8 +265,11 @@
}
private void updatePrefs(boolean restrictBackground, boolean unrestrictData) {
+ final EnforcedAdmin admin = RestrictedLockUtils.checkIfMeteredDataRestricted(
+ getContext(), mPackageName, UserHandle.getUserId(mAppItem.key));
if (mRestrictBackground != null) {
mRestrictBackground.setChecked(!restrictBackground);
+ mRestrictBackground.setDisabledByAdmin(admin);
}
if (mUnrestrictedData != null) {
if (restrictBackground) {
@@ -270,6 +277,7 @@
} else {
mUnrestrictedData.setVisible(true);
mUnrestrictedData.setChecked(unrestrictData);
+ mUnrestrictedData.setDisabledByAdmin(admin);
}
}
}
diff --git a/src/com/android/settings/datausage/DataPlanFeatureProvider.java b/src/com/android/settings/datausage/DataPlanFeatureProvider.java
deleted file mode 100644
index eb5b48f..0000000
--- a/src/com/android/settings/datausage/DataPlanFeatureProvider.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-/**
- * Feature provider for data plan feature.
- */
-public interface DataPlanFeatureProvider {
- /**
- * @return whether data plan feature is enabled.
- */
- boolean isEnabled();
-}
diff --git a/src/com/android/settings/datausage/DataPlanFeatureProviderImpl.java b/src/com/android/settings/datausage/DataPlanFeatureProviderImpl.java
deleted file mode 100644
index d5f435c..0000000
--- a/src/com/android/settings/datausage/DataPlanFeatureProviderImpl.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import android.os.SystemProperties;
-
-/**
- * Impl for data plan feature provider.
- */
-public final class DataPlanFeatureProviderImpl implements DataPlanFeatureProvider {
- private static final String ENABLE_SETTINGS_DATA_PLAN = "enable.settings.data.plan";
-
- @Override
- public boolean isEnabled() {
- return SystemProperties.getBoolean(ENABLE_SETTINGS_DATA_PLAN, false /* default */);
- }
-}
diff --git a/src/com/android/settings/datausage/DataPlanSummaryPreference.java b/src/com/android/settings/datausage/DataPlanSummaryPreference.java
deleted file mode 100644
index f48e04d..0000000
--- a/src/com/android/settings/datausage/DataPlanSummaryPreference.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import android.content.Context;
-import android.support.annotation.ColorRes;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceViewHolder;
-import android.util.AttributeSet;
-import android.widget.TextView;
-import com.android.settings.R;
-import com.android.settings.widget.DonutView;
-
-/**
- * Provides a summary of data plans as preferences on settings page.
- */
-public final class DataPlanSummaryPreference extends Preference {
- private String mName;
- private String mDescription;
- private double mPercentageUsage;
- private int mUsageTextColor;
- private int mMeterBackgroundColor;
- private int mMeterConsumedColor;
-
- public DataPlanSummaryPreference(Context context) {
- super(context);
- setLayoutResource(R.layout.settings_data_plan_summary_preference);
- }
-
- public DataPlanSummaryPreference(Context context, AttributeSet attrs) {
- super(context, attrs);
- setLayoutResource(R.layout.settings_data_plan_summary_preference);
- }
-
- public void setName(String planName) {
- mName = planName;
- notifyChanged();
- }
-
- public void setDescription(String planDescription) {
- mDescription = planDescription;
- notifyChanged();
- }
-
- public void setPercentageUsage(double percentageUsage) {
- mPercentageUsage = percentageUsage;
- notifyChanged();
- }
-
- public void setUsageTextColor(@ColorRes int planUsageTextColor) {
- mUsageTextColor = planUsageTextColor;
- notifyChanged();
- }
-
- public void setMeterBackgroundColor(@ColorRes int meterBackgroundColor) {
- mMeterBackgroundColor = meterBackgroundColor;
- notifyChanged();
- }
-
- public void setMeterConsumedColor(@ColorRes int meterConsumedColor) {
- mMeterConsumedColor = meterConsumedColor;
- notifyChanged();
- }
-
- @Override
- public void onBindViewHolder(PreferenceViewHolder holder) {
- super.onBindViewHolder(holder);
- holder.setDividerAllowedAbove(false);
- TextView titleView = (TextView) holder.findViewById(android.R.id.title);
- titleView.setTextColor(mUsageTextColor);
- ((TextView) holder.findViewById(android.R.id.text1)).setText(mName);
- ((TextView) holder.findViewById(android.R.id.text2)).setText(mDescription);
- DonutView donutView = (DonutView) holder.findViewById(R.id.donut);
- donutView.setPercentage(mPercentageUsage);
- donutView.setMeterBackgroundColor(mMeterBackgroundColor);
- donutView.setMeterConsumedColor(mMeterConsumedColor);
- }
-}
diff --git a/src/com/android/settings/datausage/DataPlanUsageSummary.java b/src/com/android/settings/datausage/DataPlanUsageSummary.java
deleted file mode 100644
index 9489322..0000000
--- a/src/com/android/settings/datausage/DataPlanUsageSummary.java
+++ /dev/null
@@ -1,359 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import static android.net.NetworkPolicy.LIMIT_DISABLED;
-
-import android.annotation.IdRes;
-import android.app.Activity;
-import android.content.Context;
-import android.content.Intent;
-import android.net.NetworkPolicy;
-import android.net.NetworkPolicyManager;
-import android.net.NetworkTemplate;
-import android.net.wifi.WifiConfiguration;
-import android.net.wifi.WifiManager;
-import android.os.Bundle;
-import android.os.UserManager;
-import android.provider.Settings;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceCategory;
-import android.support.v7.preference.PreferenceScreen;
-import android.telephony.SubscriptionInfo;
-import android.telephony.SubscriptionManager;
-import android.text.TextUtils;
-import android.text.format.Formatter;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.R;
-import com.android.settings.Utils;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settingslib.NetworkPolicyEditor;
-import com.android.settingslib.net.DataUsageController;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @deprecated This fragment was supposed to be new version of {@link DataUsageSummary} however
- * unfinished and used nowhere. Keep it in case we may bring it back someday.
- */
-@Deprecated
-public class DataPlanUsageSummary extends DataUsageBase {
-
- public static final String KEY_DATA_PLAN_USAGE = "data_plan_usage";
-
- public static final String KEY_STATUS_HEADER = "status_header";
- public static final String KEY_LIMIT_SUMMARY = "plan_summary";
-
- // Mobile data keys
- public static final String KEY_MOBILE_USAGE_TITLE = "data_usage_mobile_category";
- public static final String KEY_MOBILE_DATA_USAGE_TOGGLE = "data_usage_enable";
-
- // Wifi keys
- public static final String KEY_WIFI_USAGE_TITLE = "wifi_category";
- public static final String KEY_WIFI_DATA_USAGE = "wifi_data_usage";
- public static final String KEY_NETWORK_RESTRICTIONS = "network_restrictions";
-
- private DataUsageController mDataUsageController;
- private DataUsageInfoController mDataInfoController;
- private List<DataPlanSummaryPreference> mDataPlanSummaryPreferenceList;
- private Preference mLimitPreference;
- private NetworkTemplate mDefaultTemplate;
- private NetworkRestrictionsPreference mNetworkRestrictionPreference;
- private WifiManager mWifiManager;
- private NetworkPolicyEditor mPolicyEditor;
-
- @Override
- public int getHelpResource() {
- return R.string.help_url_data_usage;
- }
-
- @Override
- public void onCreate(Bundle bundle) {
- super.onCreate(bundle);
-
- final Context context = getContext();
- NetworkPolicyManager policyManager = NetworkPolicyManager.from(context);
- mWifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
- mPolicyEditor = new NetworkPolicyEditor(policyManager);
- mDataUsageController = new DataUsageController(context);
- mDataInfoController = new DataUsageInfoController();
-
- int defaultSubId = DataUsageUtils.getDefaultSubscriptionId(context);
- boolean hasMobileData = DataUsageUtils.hasMobileData(context);
- if (defaultSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
- hasMobileData = false;
- }
- mDefaultTemplate = DataUsageUtils.getDefaultTemplate(context, defaultSubId);
-
- if (hasMobileData) {
- addDataPlanSection(defaultSubId);
- }
-
- if (DataUsageUtils.hasWifiRadio(context)) {
- addWifiSection();
- }
-
- if (hasEthernet(context)) {
- addEthernetSection();
- }
- setHasOptionsMenu(true);
- }
-
- @Override
- public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
- if (UserManager.get(getContext()).isAdminUser()) {
- inflater.inflate(R.menu.data_usage, menu);
- }
- super.onCreateOptionsMenu(menu, inflater);
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- switch (item.getItemId()) {
- case R.id.data_usage_menu_cellular_networks: {
- final Intent intent = new Intent(Settings.ACTION_NETWORK_OPERATOR_SETTINGS);
- startActivity(intent);
- return true;
- }
- }
- return false;
- }
-
- private void addDataPlanSection(int defaultSubId) {
- Context context = getPrefContext();
- addPreferencesFromResource(R.xml.data_plan_usage);
- PreferenceScreen screen = getPreferenceScreen();
- screen.setTitle(context.getString(R.string.data_usage_summary_title));
-
- PreferenceCategory preferenceCategory =
- (PreferenceCategory) findPreference(KEY_DATA_PLAN_USAGE);
- screen.addPreference(preferenceCategory);
-
- Preference dataPlansSyncTimePreference = new Preference(context);
- dataPlansSyncTimePreference.setLayoutResource(R.layout.data_plans_sync_time_preference);
- dataPlansSyncTimePreference.setTitle(MockDataPlanUsage.SYNC_TIME);
- preferenceCategory.addPreference(dataPlansSyncTimePreference);
-
- mDataPlanSummaryPreferenceList = new ArrayList<>(MockDataPlanUsage.DATA_PLAN_USAGES.length);
- for (int i = 0; i < MockDataPlanUsage.DATA_PLAN_USAGES.length; i++) {
- DataPlanSummaryPreference dataPlanSummaryPreference =
- new DataPlanSummaryPreference(context);
- dataPlanSummaryPreference.setKey(KEY_STATUS_HEADER + (i + 1));
- mDataPlanSummaryPreferenceList.add(dataPlanSummaryPreference);
- preferenceCategory.addPreference(dataPlanSummaryPreference);
- }
-
- Preference preference = new Preference(context);
- preference.setLayoutResource(R.layout.manage_data_plans_preference);
- preferenceCategory.addPreference(preference);
- setPreferenceScreen(screen);
-
- mLimitPreference = findPreference(KEY_LIMIT_SUMMARY);
- List<SubscriptionInfo> subscriptions =
- services.mSubscriptionManager.getActiveSubscriptionInfoList();
-
- if (subscriptions == null || subscriptions.isEmpty()) {
- addMobileSection(defaultSubId);
- }
-
- for (int i = 0, subscriptionsSize = subscriptions != null ? subscriptions.size() : 0;
- i < subscriptionsSize; i++) {
- SubscriptionInfo subInfo = subscriptions.get(i);
- if (subscriptionsSize > 1) {
- addMobileSection(subInfo.getSubscriptionId(), subInfo);
- } else {
- addMobileSection(subInfo.getSubscriptionId());
- }
- }
- }
-
- private void addMobileSection(int subId) {
- addMobileSection(subId, null);
- }
-
- private void addMobileSection(int subId, SubscriptionInfo subInfo) {
- TemplatePreferenceCategory category = (TemplatePreferenceCategory)
- inflatePreferences(R.xml.data_plan_usage_cell_data_preference_screen);
- category.setTemplate(getNetworkTemplate(subId), subId, services);
- category.pushTemplates(services);
- if (subInfo != null && !TextUtils.isEmpty(subInfo.getDisplayName())) {
- Preference title = category.findPreference(KEY_MOBILE_USAGE_TITLE);
- title.setTitle(subInfo.getDisplayName());
- }
- }
-
- private void addWifiSection() {
- TemplatePreferenceCategory category = (TemplatePreferenceCategory)
- inflatePreferences(R.xml.data_usage_wifi);
- category.setTemplate(NetworkTemplate.buildTemplateWifiWildcard(), 0 /* subId */, services);
- mNetworkRestrictionPreference =
- (NetworkRestrictionsPreference) category.findPreference(KEY_NETWORK_RESTRICTIONS);
- }
-
- private void addEthernetSection() {
- TemplatePreferenceCategory category = (TemplatePreferenceCategory)
- inflatePreferences(R.xml.data_usage_ethernet);
- category.setTemplate(NetworkTemplate.buildTemplateEthernet(), 0 /* subId */, services);
- }
-
- private Preference inflatePreferences(@IdRes int resId) {
- PreferenceScreen rootPreferences = getPreferenceManager().inflateFromResource(
- getPrefContext(), resId, null);
- Preference pref = rootPreferences.getPreference(0);
- rootPreferences.removeAll();
-
- PreferenceScreen screen = getPreferenceScreen();
- pref.setOrder(screen.getPreferenceCount());
- screen.addPreference(pref);
-
- return pref;
- }
-
- private NetworkTemplate getNetworkTemplate(int subscriptionId) {
- NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(
- services.mTelephonyManager.getSubscriberId(subscriptionId));
- return NetworkTemplate.normalize(mobileAll,
- services.mTelephonyManager.getMergedSubscriberIds());
- }
-
- @Override
- public void onResume() {
- super.onResume();
- updateState();
- }
-
- private void updateState() {
- DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
- mDefaultTemplate);
-
- Context context = getContext();
- mDataInfoController.updateDataLimit(info,
- services.mPolicyEditor.getPolicy(mDefaultTemplate));
-
- // TODO(b/63391323): Get rid of MockDataPlanUsage once we integrate with data plan APIs
- if (mDataPlanSummaryPreferenceList != null && !mDataPlanSummaryPreferenceList.isEmpty()) {
- MockDataPlanUsage[] dataPlanUsages = MockDataPlanUsage.getDataPlanUsage();
- for (int i = 0; i < dataPlanUsages.length; i++) {
- DataPlanSummaryPreference dataPlanSummaryPreference =
- mDataPlanSummaryPreferenceList.get(i);
- MockDataPlanUsage dataPlanUsage = dataPlanUsages[i];
- dataPlanSummaryPreference.setTitle(dataPlanUsage.mUsage);
- dataPlanSummaryPreference.setUsageTextColor(dataPlanUsage.mUsageTextColor);
- dataPlanSummaryPreference.setName(dataPlanUsage.mName);
- dataPlanSummaryPreference.setPercentageUsage(dataPlanUsage.mPercentageUsage);
- dataPlanSummaryPreference
- .setMeterBackgroundColor(dataPlanUsage.mMeterBackgroundColor);
- dataPlanSummaryPreference.setMeterConsumedColor(dataPlanUsage.mMeterConsumedColor);
- dataPlanSummaryPreference.setDescription(dataPlanUsage.mDescription);
- }
- }
-
- if (mLimitPreference != null && (info.warningLevel > 0 || info.limitLevel > 0)) {
- String warning = Formatter.formatFileSize(context, info.warningLevel);
- String limit = Formatter.formatFileSize(context, info.limitLevel);
- mLimitPreference.setSummary(getString(info.limitLevel <= 0 ? R.string.cell_warning_only
- : R.string.cell_warning_and_limit, warning, limit));
- } else if (mLimitPreference != null) {
- mLimitPreference.setSummary(null);
- }
-
- updateNetworkRestrictionSummary(mNetworkRestrictionPreference);
-
- PreferenceScreen screen = getPreferenceScreen();
- for (int i = 1, preferenceCount = screen.getPreferenceCount(); i < preferenceCount; i++) {
- ((TemplatePreferenceCategory) screen.getPreference(i)).pushTemplates(services);
- }
- }
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.DATA_USAGE_SUMMARY;
- }
-
- @VisibleForTesting
- void updateNetworkRestrictionSummary(NetworkRestrictionsPreference preference) {
- if (preference == null) {
- return;
- }
- mPolicyEditor.read();
- int count = 0;
- List<WifiConfiguration> configuredNetworks = mWifiManager.getConfiguredNetworks();
- for (int i = 0, configuredNetworksSize = configuredNetworks.size();
- i < configuredNetworksSize; i++) {
- WifiConfiguration config = configuredNetworks.get(i);
- if (isMetered(config)) {
- count++;
- }
- }
- preference.setSummary(getResources().getQuantityString(
- R.plurals.network_restrictions_summary, count, count));
- }
-
- @VisibleForTesting
- boolean isMetered(WifiConfiguration config) {
- if (config.SSID == null) {
- return false;
- }
- final String networkId = config.isPasspoint() ? config.providerFriendlyName : config.SSID;
- final NetworkPolicy policy =
- mPolicyEditor.getPolicyMaybeUnquoted(NetworkTemplate.buildTemplateWifi(networkId));
- if (policy == null) {
- return false;
- }
- if (policy.limitBytes != LIMIT_DISABLED) {
- return true;
- }
- return policy.metered;
- }
-
- private static class SummaryProvider
- implements SummaryLoader.SummaryProvider {
-
- private final Activity mActivity;
- private final SummaryLoader mSummaryLoader;
- private final DataUsageController mDataController;
-
- public SummaryProvider(Activity activity, SummaryLoader summaryLoader) {
- mActivity = activity;
- mSummaryLoader = summaryLoader;
- mDataController = new DataUsageController(activity);
- }
-
- @Override
- public void setListening(boolean listening) {
- if (listening) {
- DataUsageController.DataUsageInfo info = mDataController.getDataUsageInfo();
- String used;
- if (info == null) {
- used = Formatter.formatFileSize(mActivity, 0);
- } else if (info.limitLevel <= 0) {
- used = Formatter.formatFileSize(mActivity, info.usageLevel);
- } else {
- used = Utils.formatPercentage(info.usageLevel, info.limitLevel);
- }
- mSummaryLoader.setSummary(this,
- mActivity.getString(R.string.data_usage_summary_format, used));
- }
- }
- }
-
- public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
- = SummaryProvider::new;
-}
-
diff --git a/src/com/android/settings/datausage/DataSaverPreference.java b/src/com/android/settings/datausage/DataSaverPreference.java
index 13ef9d7..f1f648a 100644
--- a/src/com/android/settings/datausage/DataSaverPreference.java
+++ b/src/com/android/settings/datausage/DataSaverPreference.java
@@ -37,7 +37,7 @@
@Override
public void onDetached() {
super.onDetached();
- mDataSaverBackend.addListener(this);
+ mDataSaverBackend.remListener(this);
}
@Override
diff --git a/src/com/android/settings/datausage/DataUsageSummary.java b/src/com/android/settings/datausage/DataUsageSummary.java
index b63cee3..339de7c 100644
--- a/src/com/android/settings/datausage/DataUsageSummary.java
+++ b/src/com/android/settings/datausage/DataUsageSummary.java
@@ -18,7 +18,6 @@
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
-import android.net.NetworkPolicyManager;
import android.net.NetworkTemplate;
import android.os.Bundle;
import android.os.UserManager;
@@ -28,6 +27,7 @@
import android.support.v7.preference.PreferenceScreen;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
+import android.telephony.SubscriptionPlan;
import android.text.BidiFormatter;
import android.text.Spannable;
import android.text.SpannableString;
@@ -40,7 +40,6 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
-import com.android.settings.SummaryPreference;
import com.android.settings.Utils;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.search.BaseSearchIndexProvider;
@@ -65,7 +64,6 @@
public static final String KEY_RESTRICT_BACKGROUND = "restrict_background";
private static final String KEY_STATUS_HEADER = "status_header";
- private static final String KEY_LIMIT_SUMMARY = "limit_summary";
// Mobile data keys
public static final String KEY_MOBILE_USAGE_TITLE = "mobile_category";
@@ -77,13 +75,9 @@
public static final String KEY_WIFI_USAGE_TITLE = "wifi_category";
public static final String KEY_WIFI_DATA_USAGE = "wifi_data_usage";
- private DataUsageController mDataUsageController;
- private DataUsageInfoController mDataInfoController;
- private SummaryPreference mSummaryPreference;
- private Preference mLimitPreference;
+ private DataUsageSummaryPreference mSummaryPreference;
+ private DataUsageSummaryPreferenceController mSummaryController;
private NetworkTemplate mDefaultTemplate;
- private int mDataUsageTemplate;
- private NetworkPolicyEditor mPolicyEditor;
@Override
public int getHelpResource() {
@@ -95,25 +89,20 @@
super.onCreate(icicle);
final Context context = getContext();
- NetworkPolicyManager policyManager = NetworkPolicyManager.from(context);
- mPolicyEditor = new NetworkPolicyEditor(policyManager);
boolean hasMobileData = DataUsageUtils.hasMobileData(context);
- mDataUsageController = new DataUsageController(context);
- mDataInfoController = new DataUsageInfoController();
int defaultSubId = DataUsageUtils.getDefaultSubscriptionId(context);
if (defaultSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
hasMobileData = false;
}
mDefaultTemplate = DataUsageUtils.getDefaultTemplate(context, defaultSubId);
- mSummaryPreference = (SummaryPreference) findPreference(KEY_STATUS_HEADER);
+ mSummaryPreference = (DataUsageSummaryPreference) findPreference(KEY_STATUS_HEADER);
if (!hasMobileData || !isAdmin()) {
removePreference(KEY_RESTRICT_BACKGROUND);
}
if (hasMobileData) {
- mLimitPreference = findPreference(KEY_LIMIT_SUMMARY);
List<SubscriptionInfo> subscriptions =
services.mSubscriptionManager.getActiveSubscriptionInfoList();
if (subscriptions == null || subscriptions.size() == 0) {
@@ -127,10 +116,6 @@
addMobileSection(subInfo.getSubscriptionId());
}
}
- mSummaryPreference.setSelectable(true);
- } else {
- removePreference(KEY_LIMIT_SUMMARY);
- mSummaryPreference.setSelectable(false);
}
boolean hasWifiRadio = DataUsageUtils.hasWifiRadio(context);
if (hasWifiRadio) {
@@ -139,10 +124,6 @@
if (hasEthernet(context)) {
addEthernetSection();
}
- mDataUsageTemplate = hasMobileData ? R.string.cell_data_template
- : hasWifiRadio ? R.string.wifi_data_template
- : R.string.ethernet_data_template;
-
setHasOptionsMenu(true);
}
@@ -189,7 +170,11 @@
@Override
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
- return null;
+ final ArrayList<AbstractPreferenceController> controllers = new ArrayList<>();
+ mSummaryController =
+ new DataUsageSummaryPreferenceController(context);
+ controllers.add(mSummaryController);
+ return controllers;
}
private void addMobileSection(int subId) {
@@ -269,36 +254,6 @@
}
private void updateState() {
- DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
- mDefaultTemplate);
- Context context = getContext();
- mDataInfoController.updateDataLimit(info,
- services.mPolicyEditor.getPolicy(mDefaultTemplate));
-
- if (mSummaryPreference != null) {
- mSummaryPreference.setTitle(
- formatUsage(context, getString(mDataUsageTemplate), info.usageLevel));
- final long limit = mDataInfoController.getSummaryLimit(info);
- mSummaryPreference.setSummary(info.period);
- if (limit <= 0) {
- mSummaryPreference.setChartEnabled(false);
- } else {
- mSummaryPreference.setChartEnabled(true);
- mSummaryPreference.setLabels(Formatter.formatFileSize(context, 0),
- Formatter.formatFileSize(context, limit));
- mSummaryPreference.setRatios(info.usageLevel / (float) limit, 0,
- (limit - info.usageLevel) / (float) limit);
- }
- }
- if (mLimitPreference != null && (info.warningLevel > 0 || info.limitLevel > 0)) {
- String warning = Formatter.formatFileSize(context, info.warningLevel);
- String limit = Formatter.formatFileSize(context, info.limitLevel);
- mLimitPreference.setSummary(getString(info.limitLevel <= 0 ? R.string.cell_warning_only
- : R.string.cell_warning_and_limit, warning, limit));
- } else if (mLimitPreference != null) {
- mLimitPreference.setSummary(null);
- }
-
PreferenceScreen screen = getPreferenceScreen();
for (int i = 1; i < screen.getPreferenceCount(); i++) {
((TemplatePreferenceCategory) screen.getPreference(i)).pushTemplates(services);
@@ -323,6 +278,7 @@
@Override
public void updateDataUsage() {
updateState();
+ mSummaryController.updateState(mSummaryPreference);
}
private static class SummaryProvider
@@ -341,17 +297,39 @@
@Override
public void setListening(boolean listening) {
if (listening) {
- DataUsageController.DataUsageInfo info = mDataController.getDataUsageInfo();
- String used;
- if (info == null) {
- used = Formatter.formatFileSize(mActivity, 0);
- } else if (info.limitLevel <= 0) {
- used = Formatter.formatFileSize(mActivity, info.usageLevel);
- } else {
- used = Utils.formatPercentage(info.usageLevel, info.limitLevel);
- }
mSummaryLoader.setSummary(this,
- mActivity.getString(R.string.data_usage_summary_format, used));
+ mActivity.getString(R.string.data_usage_summary_format, formatUsedData()));
+ }
+ }
+
+ private String formatUsedData() {
+ SubscriptionManager subscriptionManager = (SubscriptionManager) mActivity
+ .getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
+ int defaultSubId = subscriptionManager.getDefaultSubscriptionId();
+ if (defaultSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
+ return formatFallbackData();
+ }
+ SubscriptionPlan dfltPlan = DataUsageSummaryPreferenceController
+ .getPrimaryPlan(subscriptionManager, defaultSubId);
+ if (dfltPlan == null) {
+ return formatFallbackData();
+ }
+ if (DataUsageSummaryPreferenceController.unlimited(dfltPlan.getDataLimitBytes())) {
+ return Formatter.formatFileSize(mActivity, dfltPlan.getDataUsageBytes());
+ } else {
+ return Utils.formatPercentage(dfltPlan.getDataUsageBytes(),
+ dfltPlan.getDataLimitBytes());
+ }
+ }
+
+ private String formatFallbackData() {
+ DataUsageController.DataUsageInfo info = mDataController.getDataUsageInfo();
+ if (info == null) {
+ return Formatter.formatFileSize(mActivity, 0);
+ } else if (info.limitLevel <= 0) {
+ return Formatter.formatFileSize(mActivity, info.usageLevel);
+ } else {
+ return Utils.formatPercentage(info.usageLevel, info.limitLevel);
}
}
}
diff --git a/src/com/android/settings/datausage/DataUsageSummaryLegacy.java b/src/com/android/settings/datausage/DataUsageSummaryLegacy.java
new file mode 100644
index 0000000..6a241eb
--- /dev/null
+++ b/src/com/android/settings/datausage/DataUsageSummaryLegacy.java
@@ -0,0 +1,408 @@
+/*
+ * Copyright (C) 2016 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.settings.datausage;
+
+import android.app.Activity;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.net.NetworkPolicyManager;
+import android.net.NetworkTemplate;
+import android.os.Bundle;
+import android.os.UserManager;
+import android.provider.SearchIndexableResource;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceScreen;
+import android.telephony.SubscriptionInfo;
+import android.telephony.SubscriptionManager;
+import android.text.BidiFormatter;
+import android.text.Spannable;
+import android.text.SpannableString;
+import android.text.TextUtils;
+import android.text.format.Formatter;
+import android.text.style.RelativeSizeSpan;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+import com.android.settings.SummaryPreference;
+import com.android.settings.Utils;
+import com.android.settings.dashboard.SummaryLoader;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settings.search.Indexable;
+import com.android.settingslib.NetworkPolicyEditor;
+import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.net.DataUsageController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Legacy {@link DataUsageSummary} fragment.
+ */
+public class DataUsageSummaryLegacy extends DataUsageBaseFragment implements Indexable,
+ DataUsageEditController {
+
+ private static final String TAG = "DataUsageSummaryLegacy";
+
+ static final boolean LOGD = false;
+
+ public static final String KEY_RESTRICT_BACKGROUND = "restrict_background";
+
+ private static final String KEY_STATUS_HEADER = "status_header";
+ private static final String KEY_LIMIT_SUMMARY = "limit_summary";
+
+ // Mobile data keys
+ public static final String KEY_MOBILE_USAGE_TITLE = "mobile_category";
+ public static final String KEY_MOBILE_DATA_USAGE_TOGGLE = "data_usage_enable";
+ public static final String KEY_MOBILE_DATA_USAGE = "cellular_data_usage";
+ public static final String KEY_MOBILE_BILLING_CYCLE = "billing_preference";
+
+ // Wifi keys
+ public static final String KEY_WIFI_USAGE_TITLE = "wifi_category";
+ public static final String KEY_WIFI_DATA_USAGE = "wifi_data_usage";
+
+ private DataUsageController mDataUsageController;
+ private DataUsageInfoController mDataInfoController;
+ private SummaryPreference mSummaryPreference;
+ private Preference mLimitPreference;
+ private NetworkTemplate mDefaultTemplate;
+ private int mDataUsageTemplate;
+ private NetworkPolicyEditor mPolicyEditor;
+
+ @Override
+ public int getHelpResource() {
+ return R.string.help_url_data_usage;
+ }
+
+ @Override
+ public void onCreate(Bundle icicle) {
+ super.onCreate(icicle);
+
+ final Context context = getContext();
+ NetworkPolicyManager policyManager = NetworkPolicyManager.from(context);
+ mPolicyEditor = new NetworkPolicyEditor(policyManager);
+
+ boolean hasMobileData = DataUsageUtils.hasMobileData(context);
+ mDataUsageController = new DataUsageController(context);
+ mDataInfoController = new DataUsageInfoController();
+
+ int defaultSubId = DataUsageUtils.getDefaultSubscriptionId(context);
+ if (defaultSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
+ hasMobileData = false;
+ }
+ mDefaultTemplate = DataUsageUtils.getDefaultTemplate(context, defaultSubId);
+ mSummaryPreference = (SummaryPreference) findPreference(KEY_STATUS_HEADER);
+
+ if (!hasMobileData || !isAdmin()) {
+ removePreference(KEY_RESTRICT_BACKGROUND);
+ }
+ if (hasMobileData) {
+ mLimitPreference = findPreference(KEY_LIMIT_SUMMARY);
+ List<SubscriptionInfo> subscriptions =
+ services.mSubscriptionManager.getActiveSubscriptionInfoList();
+ if (subscriptions == null || subscriptions.size() == 0) {
+ addMobileSection(defaultSubId);
+ }
+ for (int i = 0; subscriptions != null && i < subscriptions.size(); i++) {
+ SubscriptionInfo subInfo = subscriptions.get(i);
+ if (subscriptions.size() > 1) {
+ addMobileSection(subInfo.getSubscriptionId(), subInfo);
+ } else {
+ addMobileSection(subInfo.getSubscriptionId());
+ }
+ }
+ mSummaryPreference.setSelectable(true);
+ } else {
+ removePreference(KEY_LIMIT_SUMMARY);
+ mSummaryPreference.setSelectable(false);
+ }
+ boolean hasWifiRadio = DataUsageUtils.hasWifiRadio(context);
+ if (hasWifiRadio) {
+ addWifiSection();
+ }
+ if (hasEthernet(context)) {
+ addEthernetSection();
+ }
+ mDataUsageTemplate = hasMobileData ? R.string.cell_data_template
+ : hasWifiRadio ? R.string.wifi_data_template
+ : R.string.ethernet_data_template;
+
+ setHasOptionsMenu(true);
+ }
+
+ @Override
+ public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+ if (UserManager.get(getContext()).isAdminUser()) {
+ inflater.inflate(R.menu.data_usage, menu);
+ }
+ super.onCreateOptionsMenu(menu, inflater);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ switch (item.getItemId()) {
+ case R.id.data_usage_menu_cellular_networks: {
+ final Intent intent = new Intent(Intent.ACTION_MAIN);
+ intent.setComponent(new ComponentName("com.android.phone",
+ "com.android.phone.MobileNetworkSettings"));
+ startActivity(intent);
+ return true;
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public boolean onPreferenceTreeClick(Preference preference) {
+ if (preference == findPreference(KEY_STATUS_HEADER)) {
+ BillingCycleSettings.BytesEditorFragment.show(this, false);
+ return false;
+ }
+ return super.onPreferenceTreeClick(preference);
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.data_usage_legacy;
+ }
+
+ @Override
+ protected String getLogTag() {
+ return TAG;
+ }
+
+ @Override
+ protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ return null;
+ }
+
+ private void addMobileSection(int subId) {
+ addMobileSection(subId, null);
+ }
+
+ private void addMobileSection(int subId, SubscriptionInfo subInfo) {
+ TemplatePreferenceCategory category = (TemplatePreferenceCategory)
+ inflatePreferences(R.xml.data_usage_cellular);
+ category.setTemplate(getNetworkTemplate(subId), subId, services);
+ category.pushTemplates(services);
+ if (subInfo != null && !TextUtils.isEmpty(subInfo.getDisplayName())) {
+ Preference title = category.findPreference(KEY_MOBILE_USAGE_TITLE);
+ title.setTitle(subInfo.getDisplayName());
+ }
+ }
+
+ private void addWifiSection() {
+ TemplatePreferenceCategory category = (TemplatePreferenceCategory)
+ inflatePreferences(R.xml.data_usage_wifi);
+ category.setTemplate(NetworkTemplate.buildTemplateWifiWildcard(), 0, services);
+ }
+
+ private void addEthernetSection() {
+ TemplatePreferenceCategory category = (TemplatePreferenceCategory)
+ inflatePreferences(R.xml.data_usage_ethernet);
+ category.setTemplate(NetworkTemplate.buildTemplateEthernet(), 0, services);
+ }
+
+ private Preference inflatePreferences(int resId) {
+ PreferenceScreen rootPreferences = getPreferenceManager().inflateFromResource(
+ getPrefContext(), resId, null);
+ Preference pref = rootPreferences.getPreference(0);
+ rootPreferences.removeAll();
+
+ PreferenceScreen screen = getPreferenceScreen();
+ pref.setOrder(screen.getPreferenceCount());
+ screen.addPreference(pref);
+
+ return pref;
+ }
+
+ private NetworkTemplate getNetworkTemplate(int subscriptionId) {
+ NetworkTemplate mobileAll = NetworkTemplate.buildTemplateMobileAll(
+ services.mTelephonyManager.getSubscriberId(subscriptionId));
+ return NetworkTemplate.normalize(mobileAll,
+ services.mTelephonyManager.getMergedSubscriberIds());
+ }
+
+ @Override
+ public void onResume() {
+ super.onResume();
+ updateState();
+ }
+
+ @VisibleForTesting
+ static CharSequence formatUsage(Context context, String template, long usageLevel) {
+ final float LARGER_SIZE = 1.25f * 1.25f; // (1/0.8)^2
+ final float SMALLER_SIZE = 1.0f / LARGER_SIZE; // 0.8^2
+ final int FLAGS = Spannable.SPAN_INCLUSIVE_INCLUSIVE;
+
+ final Formatter.BytesResult usedResult = Formatter.formatBytes(context.getResources(),
+ usageLevel, Formatter.FLAG_CALCULATE_ROUNDED);
+ final SpannableString enlargedValue = new SpannableString(usedResult.value);
+ enlargedValue.setSpan(new RelativeSizeSpan(LARGER_SIZE), 0, enlargedValue.length(), FLAGS);
+
+ final SpannableString amountTemplate = new SpannableString(
+ context.getString(com.android.internal.R.string.fileSizeSuffix)
+ .replace("%1$s", "^1").replace("%2$s", "^2"));
+ final CharSequence formattedUsage = TextUtils.expandTemplate(amountTemplate,
+ enlargedValue, usedResult.units);
+
+ final SpannableString fullTemplate = new SpannableString(template);
+ fullTemplate.setSpan(new RelativeSizeSpan(SMALLER_SIZE), 0, fullTemplate.length(), FLAGS);
+ return TextUtils.expandTemplate(fullTemplate,
+ BidiFormatter.getInstance().unicodeWrap(formattedUsage.toString()));
+ }
+
+ private void updateState() {
+ DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
+ mDefaultTemplate);
+ Context context = getContext();
+ mDataInfoController.updateDataLimit(info,
+ services.mPolicyEditor.getPolicy(mDefaultTemplate));
+
+ if (mSummaryPreference != null) {
+ mSummaryPreference.setTitle(
+ formatUsage(context, getString(mDataUsageTemplate), info.usageLevel));
+ final long limit = mDataInfoController.getSummaryLimit(info);
+ mSummaryPreference.setSummary(info.period);
+ if (limit <= 0) {
+ mSummaryPreference.setChartEnabled(false);
+ } else {
+ mSummaryPreference.setChartEnabled(true);
+ mSummaryPreference.setLabels(Formatter.formatFileSize(context, 0),
+ Formatter.formatFileSize(context, limit));
+ mSummaryPreference.setRatios(info.usageLevel / (float) limit, 0,
+ (limit - info.usageLevel) / (float) limit);
+ }
+ }
+ if (mLimitPreference != null && (info.warningLevel > 0 || info.limitLevel > 0)) {
+ String warning = Formatter.formatFileSize(context, info.warningLevel);
+ String limit = Formatter.formatFileSize(context, info.limitLevel);
+ mLimitPreference.setSummary(getString(info.limitLevel <= 0 ? R.string.cell_warning_only
+ : R.string.cell_warning_and_limit, warning, limit));
+ } else if (mLimitPreference != null) {
+ mLimitPreference.setSummary(null);
+ }
+
+ PreferenceScreen screen = getPreferenceScreen();
+ for (int i = 1; i < screen.getPreferenceCount(); i++) {
+ ((TemplatePreferenceCategory) screen.getPreference(i)).pushTemplates(services);
+ }
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsEvent.DATA_USAGE_SUMMARY;
+ }
+
+ @Override
+ public NetworkPolicyEditor getNetworkPolicyEditor() {
+ return services.mPolicyEditor;
+ }
+
+ @Override
+ public NetworkTemplate getNetworkTemplate() {
+ return mDefaultTemplate;
+ }
+
+ @Override
+ public void updateDataUsage() {
+ updateState();
+ }
+
+ private static class SummaryProvider
+ implements SummaryLoader.SummaryProvider {
+
+ private final Activity mActivity;
+ private final SummaryLoader mSummaryLoader;
+ private final DataUsageController mDataController;
+
+ public SummaryProvider(Activity activity, SummaryLoader summaryLoader) {
+ mActivity = activity;
+ mSummaryLoader = summaryLoader;
+ mDataController = new DataUsageController(activity);
+ }
+
+ @Override
+ public void setListening(boolean listening) {
+ if (listening) {
+ DataUsageController.DataUsageInfo info = mDataController.getDataUsageInfo();
+ String used;
+ if (info == null) {
+ used = Formatter.formatFileSize(mActivity, 0);
+ } else if (info.limitLevel <= 0) {
+ used = Formatter.formatFileSize(mActivity, info.usageLevel);
+ } else {
+ used = Utils.formatPercentage(info.usageLevel, info.limitLevel);
+ }
+ mSummaryLoader.setSummary(this,
+ mActivity.getString(R.string.data_usage_summary_format, used));
+ }
+ }
+ }
+
+ public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+ = SummaryProvider::new;
+
+ /**
+ * For search
+ */
+ public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new BaseSearchIndexProvider() {
+
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
+ boolean enabled) {
+ List<SearchIndexableResource> resources = new ArrayList<>();
+ SearchIndexableResource resource = new SearchIndexableResource(context);
+ resource.xmlResId = R.xml.data_usage;
+ resources.add(resource);
+
+ resource = new SearchIndexableResource(context);
+ resource.xmlResId = R.xml.data_usage_cellular;
+ resources.add(resource);
+
+ resource = new SearchIndexableResource(context);
+ resource.xmlResId = R.xml.data_usage_wifi;
+ resources.add(resource);
+
+ return resources;
+ }
+
+ @Override
+ public List<String> getNonIndexableKeys(Context context) {
+ List<String> keys = super.getNonIndexableKeys(context);
+
+ if (!DataUsageUtils.hasMobileData(context)) {
+ keys.add(KEY_MOBILE_USAGE_TITLE);
+ keys.add(KEY_MOBILE_DATA_USAGE_TOGGLE);
+ keys.add(KEY_MOBILE_DATA_USAGE);
+ keys.add(KEY_MOBILE_BILLING_CYCLE);
+ }
+
+ if (!DataUsageUtils.hasWifiRadio(context)) {
+ keys.add(KEY_WIFI_DATA_USAGE);
+ }
+
+ // This title is named Wifi, and will confuse users.
+ keys.add(KEY_WIFI_USAGE_TITLE);
+
+ return keys;
+ }
+ };
+}
diff --git a/src/com/android/settings/datausage/DataUsageSummaryPreference.java b/src/com/android/settings/datausage/DataUsageSummaryPreference.java
new file mode 100644
index 0000000..984df02
--- /dev/null
+++ b/src/com/android/settings/datausage/DataUsageSummaryPreference.java
@@ -0,0 +1,117 @@
+/*
+ * Copyright (C) 2018 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.settings.datausage;
+
+import android.content.Context;
+import android.content.Intent;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.Button;
+import android.widget.TextView;
+
+import com.android.settings.R;
+import com.android.settings.SummaryPreference;
+import com.android.settingslib.utils.StringUtil;
+
+import libcore.util.Objects;
+
+/**
+ * Provides a summary of data usage.
+ */
+public class DataUsageSummaryPreference extends SummaryPreference {
+
+ private int mNumPlans;
+ /** The ending time of the billing cycle in milliseconds since epoch. */
+ private long mCycleEndTimeMs;
+ /** The time of the last update in standard milliseconds since the epoch */
+ private long mSnapshotTimeMs;
+ /** Name of carrier, or null if not available */
+ private CharSequence mCarrierName;
+ private String mLimitInfoText;
+ private Intent mLaunchIntent;
+
+ public DataUsageSummaryPreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ setLayoutResource(R.layout.data_usage_summary_preference);
+ }
+
+ public void setLimitInfo(String text) {
+ if (!Objects.equal(text, mLimitInfoText)) {
+ mLimitInfoText = text;
+ notifyChanged();
+ }
+ }
+
+ public void setUsageInfo(long cycleEnd, long snapshotTime, CharSequence carrierName,
+ int numPlans, Intent launchIntent) {
+ mCycleEndTimeMs = cycleEnd;
+ mSnapshotTimeMs = snapshotTime;
+ mCarrierName = carrierName;
+ mNumPlans = numPlans;
+ mLaunchIntent = launchIntent;
+ notifyChanged();
+ }
+
+ @Override
+ public void onBindViewHolder(PreferenceViewHolder holder) {
+ super.onBindViewHolder(holder);
+
+ TextView usageTitle = (TextView) holder.findViewById(R.id.usage_title);
+ usageTitle.setVisibility(mNumPlans > 1 ? View.VISIBLE : View.GONE);
+
+ TextView cycleTime = (TextView) holder.findViewById(R.id.cycle_left_time);
+ cycleTime.setText(getContext().getString(R.string.cycle_left_time_text,
+ StringUtil.formatElapsedTime(getContext(),
+ mCycleEndTimeMs - System.currentTimeMillis(),false /* withSeconds */)));
+
+ TextView carrierInfo = (TextView) holder.findViewById(R.id.carrier_and_update);
+ setCarrierInfo(carrierInfo, mCarrierName, mSnapshotTimeMs);
+
+ Button launchButton = (Button) holder.findViewById(R.id.launch_mdp_app_button);
+ launchButton.setOnClickListener((view) -> {
+ getContext().sendBroadcast(mLaunchIntent);
+ });
+ if (mLaunchIntent != null) {
+ launchButton.setVisibility(View.VISIBLE);
+ } else {
+ launchButton.setVisibility(View.GONE);
+ }
+
+ TextView limitInfo = (TextView) holder.findViewById(R.id.data_limits);
+ limitInfo.setVisibility(
+ mLimitInfoText == null || mLimitInfoText.isEmpty() ? View.GONE : View.VISIBLE);
+ limitInfo.setText(mLimitInfoText);
+ }
+
+ private void setCarrierInfo(TextView carrierInfo, CharSequence carrierName, long updateAge) {
+ if (mNumPlans > 0 && updateAge >= 0L) {
+ carrierInfo.setVisibility(View.VISIBLE);
+ if (carrierName != null) {
+ carrierInfo.setText(getContext().getString(R.string.carrier_and_update_text,
+ carrierName, StringUtil.formatRelativeTime(
+ getContext(), updateAge, false /* withSeconds */)));
+ } else {
+ carrierInfo.setText(getContext().getString(R.string.no_carrier_update_text,
+ StringUtil.formatRelativeTime(
+ getContext(), updateAge, false /* withSeconds */)));
+ }
+ } else {
+ carrierInfo.setVisibility(View.GONE);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/com/android/settings/datausage/DataUsageSummaryPreferenceController.java b/src/com/android/settings/datausage/DataUsageSummaryPreferenceController.java
new file mode 100644
index 0000000..11da829
--- /dev/null
+++ b/src/com/android/settings/datausage/DataUsageSummaryPreferenceController.java
@@ -0,0 +1,286 @@
+/*
+ * Copyright (C) 2018 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.settings.datausage;
+
+import android.content.Context;
+import android.content.Intent;
+import android.net.NetworkPolicyManager;
+import android.net.NetworkTemplate;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+import android.telephony.SubscriptionInfo;
+import android.telephony.SubscriptionManager;
+import android.telephony.SubscriptionPlan;
+import android.text.BidiFormatter;
+import android.text.Spannable;
+import android.text.SpannableString;
+import android.text.TextUtils;
+import android.text.format.Formatter;
+import android.text.style.RelativeSizeSpan;
+import android.util.Log;
+import android.util.RecurrenceRule;
+
+import com.android.internal.util.CollectionUtils;
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settingslib.NetworkPolicyEditor;
+import com.android.settingslib.net.DataUsageController;
+
+import java.util.List;
+
+/**
+ * This is the controller for the top of the data usage screen that retrieves carrier data from the
+ * new subscriptions framework API if available. The controller reads subscription information from
+ * the framework and falls back to legacy usage data if none are available.
+ */
+public class DataUsageSummaryPreferenceController extends BasePreferenceController {
+
+ private static final String TAG = "DataUsageController";
+ private static final String KEY = "status_header";
+ private static final long PETA = 1000000000000000L;
+ private static final float RELATIVE_SIZE_LARGE = 1.25f * 1.25f; // (1/0.8)^2
+ private static final float RELATIVE_SIZE_SMALL = 1.0f / RELATIVE_SIZE_LARGE; // 0.8^2
+
+ private final DataUsageController mDataUsageController;
+ private final DataUsageInfoController mDataInfoController;
+ private final NetworkTemplate mDefaultTemplate;
+ private final NetworkPolicyEditor mPolicyEditor;
+ private final int mDataUsageTemplate;
+ private final boolean mHasMobileData;
+ private final SubscriptionManager mSubscriptionManager;
+
+ /** Name of the carrier, or null if not available */
+ private CharSequence mCarrierName;
+
+ /** The number of registered plans, [0,N] */
+ private int mDataplanCount;
+
+ /** The time of the last update in milliseconds since the epoch, or -1 if unknown */
+ private long mSnapshotTime;
+
+ /**
+ * The size of the first registered plan if one exists or the size of the warning if it is set.
+ * -1 if no information is available.
+ */
+ private long mDataplanSize;
+ /** The number of bytes used since the start of the cycle. */
+ private long mDataplanUse;
+ /** The starting time of the billing cycle in ms since the epoch */
+ private long mCycleStart;
+ /** The ending time of the billing cycle in ms since the epoch */
+ private long mCycleEnd;
+
+ private Intent mManageSubscriptionIntent;
+
+ public DataUsageSummaryPreferenceController(Context context) {
+ super(context, KEY);
+
+ final int defaultSubId = DataUsageUtils.getDefaultSubscriptionId(context);
+ mDefaultTemplate = DataUsageUtils.getDefaultTemplate(context, defaultSubId);
+ NetworkPolicyManager policyManager = NetworkPolicyManager.from(context);
+ mPolicyEditor = new NetworkPolicyEditor(policyManager);
+
+ mHasMobileData = DataUsageUtils.hasMobileData(context)
+ && defaultSubId != SubscriptionManager.INVALID_SUBSCRIPTION_ID;
+
+ mDataUsageController = new DataUsageController(context);
+ mDataInfoController = new DataUsageInfoController();
+
+ if (mHasMobileData) {
+ mDataUsageTemplate = R.string.cell_data_template;
+ } else if (DataUsageUtils.hasWifiRadio(context)) {
+ mDataUsageTemplate = R.string.wifi_data_template;
+ } else {
+ mDataUsageTemplate = R.string.ethernet_data_template;
+ }
+
+ mSubscriptionManager = (SubscriptionManager)
+ mContext.getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE);
+ }
+
+ @VisibleForTesting
+ DataUsageSummaryPreferenceController(
+ Context context,
+ DataUsageController dataUsageController,
+ DataUsageInfoController dataInfoController,
+ NetworkTemplate defaultTemplate,
+ NetworkPolicyEditor policyEditor,
+ int dataUsageTemplate,
+ boolean hasMobileData,
+ SubscriptionManager subscriptionManager) {
+ super(context, KEY);
+ mDataUsageController = dataUsageController;
+ mDataInfoController = dataInfoController;
+ mDefaultTemplate = defaultTemplate;
+ mPolicyEditor = policyEditor;
+ mDataUsageTemplate = dataUsageTemplate;
+ mHasMobileData = hasMobileData;
+ mSubscriptionManager = subscriptionManager;
+ }
+
+ @VisibleForTesting
+ void setPlanValues(int dataPlanCount, long dataPlanSize, long dataPlanUse) {
+ mDataplanCount = dataPlanCount;
+ mDataplanSize = dataPlanSize;
+ mDataplanUse = dataPlanUse;
+ }
+
+ @VisibleForTesting
+ void setCarrierValues(String carrierName, long snapshotTime, long cycleEnd, Intent intent) {
+ mCarrierName = carrierName;
+ mSnapshotTime = snapshotTime;
+ mCycleEnd = cycleEnd;
+ mManageSubscriptionIntent = intent;
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ DataUsageSummaryPreference summaryPreference = (DataUsageSummaryPreference) preference;
+ DataUsageController.DataUsageInfo info = mDataUsageController.getDataUsageInfo(
+ mDefaultTemplate);
+
+ mDataInfoController.updateDataLimit(info, mPolicyEditor.getPolicy(mDefaultTemplate));
+
+ if (mSubscriptionManager != null) {
+ refreshDataplanInfo(info);
+ }
+
+ if (mDataplanCount == 0 && (info.warningLevel > 0 || info.limitLevel > 0)) {
+ final String warning = Formatter.formatFileSize(mContext, info.warningLevel);
+ final String limit = Formatter.formatFileSize(mContext, info.limitLevel);
+ summaryPreference.setLimitInfo(mContext.getString(info.limitLevel <= 0
+ ? R.string.cell_warning_only
+ : R.string.cell_warning_and_limit, warning, limit));
+ } else {
+ summaryPreference.setLimitInfo(null);
+ }
+
+ final StringBuilder title = new StringBuilder();
+ if (mHasMobileData) {
+ title.append(formatUsage(mContext, mContext.getString(R.string.data_used),
+ mDataplanUse));
+ if (mDataplanCount >= 0 && mDataplanSize > 0L) {
+ title.append(formatUsage(mContext, mContext.getString(R.string.data_remaining),
+ mDataplanSize - mDataplanUse));
+ }
+ } else {
+ title.append(formatUsage(mContext, mContext.getString(mDataUsageTemplate),
+ mDataplanUse));
+ }
+ summaryPreference.setTitle(title.toString());
+
+ if (mDataplanSize <= 0) {
+ summaryPreference.setChartEnabled(false);
+ } else {
+ summaryPreference.setChartEnabled(true);
+ summaryPreference.setLabels(Formatter.formatFileSize(mContext, 0 /* sizeBytes */),
+ Formatter.formatFileSize(mContext, mDataplanSize));
+ summaryPreference.setRatios(mDataplanUse / (float) mDataplanSize, 0 /* middle */,
+ (mDataplanSize - mDataplanUse) / (float) mDataplanSize);
+ }
+ summaryPreference.setUsageInfo(mCycleEnd, mSnapshotTime, mCarrierName,
+ mDataplanCount, mManageSubscriptionIntent);
+ }
+
+ // TODO(b/70950124) add test for this method once the robolectric shadow run script is
+ // completed (b/3526807)
+ private void refreshDataplanInfo(DataUsageController.DataUsageInfo info) {
+ // reset data before overwriting
+ mCarrierName = null;
+ mDataplanCount = 0;
+ mDataplanSize = mDataInfoController.getSummaryLimit(info);
+ mDataplanUse = info.usageLevel;
+ mCycleStart = info.cycleStart;
+ mCycleEnd = info.cycleEnd;
+ mSnapshotTime = -1L;
+
+ final int defaultSubId = SubscriptionManager.getDefaultSubscriptionId();
+ final SubscriptionInfo subInfo = mSubscriptionManager.getDefaultDataSubscriptionInfo();
+ if (subInfo != null && mHasMobileData) {
+ mCarrierName = subInfo.getCarrierName();
+ List<SubscriptionPlan> plans = mSubscriptionManager.getSubscriptionPlans(defaultSubId);
+ final SubscriptionPlan primaryPlan = getPrimaryPlan(mSubscriptionManager, defaultSubId);
+ if (primaryPlan != null) {
+ mDataplanCount = plans.size();
+ mDataplanSize = primaryPlan.getDataLimitBytes();
+ if (unlimited(mDataplanSize)) {
+ mDataplanSize = 0L;
+ }
+ mDataplanUse = primaryPlan.getDataUsageBytes();
+
+ RecurrenceRule rule = primaryPlan.getCycleRule();
+ if (rule != null && rule.start != null && rule.end != null) {
+ mCycleStart = rule.start.toEpochSecond() * 1000L;
+ mCycleEnd = rule.end.toEpochSecond() * 1000L;
+ }
+ mSnapshotTime = System.currentTimeMillis() - primaryPlan.getDataUsageTime();
+ }
+ }
+ mManageSubscriptionIntent =
+ mSubscriptionManager.createManageSubscriptionIntent(defaultSubId);
+ Log.i(TAG, "Have " + mDataplanCount + " plans, dflt sub-id " + defaultSubId
+ + ", intent " + mManageSubscriptionIntent);
+ }
+
+ public static SubscriptionPlan getPrimaryPlan(SubscriptionManager subManager, int primaryId) {
+ List<SubscriptionPlan> plans = subManager.getSubscriptionPlans(primaryId);
+ if (CollectionUtils.isEmpty(plans)) {
+ return null;
+ }
+ // First plan in the list is the primary plan
+ SubscriptionPlan plan = plans.get(0);
+ return plan.getDataLimitBytes() > 0
+ && saneSize(plan.getDataUsageBytes())
+ && plan.getCycleRule() != null ? plan : null;
+ }
+
+ private static boolean saneSize(long value) {
+ return value >= 0L && value < PETA;
+ }
+
+ public static boolean unlimited(long size) {
+ return size == SubscriptionPlan.BYTES_UNLIMITED;
+ }
+
+ @VisibleForTesting
+ private static CharSequence formatUsage(Context context, String template, long usageLevel) {
+ final int FLAGS = Spannable.SPAN_INCLUSIVE_INCLUSIVE;
+
+ final Formatter.BytesResult usedResult = Formatter.formatBytes(context.getResources(),
+ usageLevel, Formatter.FLAG_CALCULATE_ROUNDED);
+ final SpannableString enlargedValue = new SpannableString(usedResult.value);
+ enlargedValue.setSpan(
+ new RelativeSizeSpan(RELATIVE_SIZE_LARGE), 0, enlargedValue.length(), FLAGS);
+
+ final SpannableString amountTemplate = new SpannableString(
+ context.getString(com.android.internal.R.string.fileSizeSuffix)
+ .replace("%1$s", "^1").replace("%2$s", "^2"));
+ final CharSequence formattedUsage = TextUtils.expandTemplate(amountTemplate,
+ enlargedValue, usedResult.units);
+
+ final SpannableString fullTemplate = new SpannableString(template);
+ fullTemplate.setSpan(
+ new RelativeSizeSpan(RELATIVE_SIZE_SMALL), 0, fullTemplate.length(), FLAGS);
+ return TextUtils.expandTemplate(fullTemplate,
+ BidiFormatter.getInstance().unicodeWrap(formattedUsage.toString()));
+ }
+}
diff --git a/src/com/android/settings/datausage/MockDataPlanUsage.java b/src/com/android/settings/datausage/MockDataPlanUsage.java
deleted file mode 100644
index e3aa97a..0000000
--- a/src/com/android/settings/datausage/MockDataPlanUsage.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import android.graphics.Color;
-
-/**
- * Mock data plan usage data.
- */
-@Deprecated // This class is only needed because we don't have working API yet.
-final class MockDataPlanUsage {
- static final MockDataPlanUsage[] DATA_PLAN_USAGES = new MockDataPlanUsage[3];
- static final String SYNC_TIME = "Today 12:24pm";
- final String mUsage;
- final int mUsageTextColor;
- final String mName;
- final double mPercentageUsage;
- final int mMeterBackgroundColor;
- final int mMeterConsumedColor;
- final String mDescription;
-
- private MockDataPlanUsage(String usage, int usageTextColor, String name,
- double percentageUsage, int meterBackgroundColor, int meterConsumedColor,
- String description) {
- mUsage = usage;
- mUsageTextColor = usageTextColor;
- mName = name;
- mPercentageUsage = percentageUsage;
- mMeterBackgroundColor = meterBackgroundColor;
- mMeterConsumedColor = meterConsumedColor;
- mDescription = description;
- }
-
- static MockDataPlanUsage[] getDataPlanUsage() {
- DATA_PLAN_USAGES[0] = new MockDataPlanUsage("100 MB and 14 days left",
- Color.parseColor("#FF5C94F1"), "GigaMaxLite / 1GB", 0.27D,
- Color.parseColor("#FFDBDCDC"), Color.parseColor("#FF5C94F1"),
- "Premium plan from Telekomsel");
-
- DATA_PLAN_USAGES[1] = new MockDataPlanUsage("1.25 GB and 14 days left",
- Color.parseColor("#FF673AB7"), "GigaMaxLite 4G / 5GB", 0.47D,
- Color.parseColor("#FFDBDCDC"), Color.parseColor("#FF673AB7"),
- "Plenty of 4G data");
-
- DATA_PLAN_USAGES[2] = new MockDataPlanUsage("700 MB and 14 days left",
- Color.parseColor("#FF4CAF50"), "GigaMaxLite Video / 7GB", 0.67D,
- Color.parseColor("#FFDBDCDC"), Color.parseColor("#FF4CAF50"),
- "Use certain video apps for free");
- return DATA_PLAN_USAGES;
- }
-}
diff --git a/src/com/android/settings/datausage/UnrestrictedDataAccess.java b/src/com/android/settings/datausage/UnrestrictedDataAccess.java
index e8a7bbf..2e20406 100644
--- a/src/com/android/settings/datausage/UnrestrictedDataAccess.java
+++ b/src/com/android/settings/datausage/UnrestrictedDataAccess.java
@@ -14,13 +14,14 @@
package com.android.settings.datausage;
+import static com.android.settingslib.RestrictedLockUtils.checkIfMeteredDataRestricted;
+
import android.app.Application;
import android.content.Context;
import android.os.Bundle;
import android.os.UserHandle;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceViewHolder;
-import android.util.FeatureFlagUtils;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
@@ -31,12 +32,12 @@
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.applications.AppStateBaseBridge;
-import com.android.settings.applications.InstalledAppDetails;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.datausage.AppStateDataUsageBridge.DataUsageState;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.widget.AppSwitchPreference;
+import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import com.android.settingslib.RestrictedPreferenceHelper;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.ApplicationsState.AppEntry;
import com.android.settingslib.applications.ApplicationsState.AppFilter;
@@ -172,6 +173,8 @@
preference.setOnPreferenceChangeListener(this);
getPreferenceScreen().addPreference(preference);
} else {
+ preference.setDisabledByAdmin(checkIfMeteredDataRestricted(getContext(),
+ entry.info.packageName, UserHandle.getUserId(entry.info.uid)));
preference.reuse();
}
preference.setOrder(i);
@@ -242,16 +245,22 @@
return app != null && UserHandle.isApp(app.info.uid);
}
- private class AccessPreference extends AppSwitchPreference
+ @VisibleForTesting
+ class AccessPreference extends AppSwitchPreference
implements DataSaverBackend.Listener {
private final AppEntry mEntry;
private final DataUsageState mState;
+ private final RestrictedPreferenceHelper mHelper;
public AccessPreference(final Context context, AppEntry entry) {
super(context);
+ setWidgetLayoutResource(R.layout.restricted_switch_widget);
+ mHelper = new RestrictedPreferenceHelper(context, this, null);
mEntry = entry;
mState = (DataUsageState) mEntry.extraInfo;
mEntry.ensureLabel(getContext());
+ setDisabledByAdmin(checkIfMeteredDataRestricted(context, entry.info.packageName,
+ UserHandle.getUserId(entry.info.uid)));
setState();
if (mEntry.icon != null) {
setIcon(mEntry.icon);
@@ -274,29 +283,31 @@
protected void onClick() {
if (mState.isDataSaverBlacklisted) {
// app is blacklisted, launch App Data Usage screen
- if (FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.APP_INFO_V2)) {
- AppInfoDashboardFragment.startAppInfoFragment(AppDataUsage.class,
- R.string.app_data_usage,
- UnrestrictedDataAccess.this,
- mEntry);
- } else {
- InstalledAppDetails.startAppInfoFragment(AppDataUsage.class,
- R.string.app_data_usage,
- UnrestrictedDataAccess.this,
- mEntry);
- }
+ AppInfoDashboardFragment.startAppInfoFragment(AppDataUsage.class,
+ R.string.app_data_usage,
+ UnrestrictedDataAccess.this,
+ mEntry);
} else {
// app is not blacklisted, let superclass handle toggle switch
super.onClick();
}
}
+ @Override
+ public void performClick() {
+ if (!mHelper.performClick()) {
+ super.performClick();
+ }
+ }
+
// Sets UI state based on whitelist/blacklist status.
private void setState() {
setTitle(mEntry.label);
if (mState != null) {
setChecked(mState.isDataSaverWhitelisted);
- if (mState.isDataSaverBlacklisted) {
+ if (isDisabledByAdmin()) {
+ setSummary(R.string.disabled_by_admin);
+ } else if (mState.isDataSaverBlacklisted) {
setSummary(R.string.restrict_background_blacklisted);
} else {
setSummary("");
@@ -323,10 +334,21 @@
}
});
}
- holder.findViewById(android.R.id.widget_frame)
- .setVisibility(mState != null && mState.isDataSaverBlacklisted
- ? View.INVISIBLE : View.VISIBLE);
+ final boolean disabledByAdmin = isDisabledByAdmin();
+ final View widgetFrame = holder.findViewById(android.R.id.widget_frame);
+ if (disabledByAdmin) {
+ widgetFrame.setVisibility(View.VISIBLE);
+ } else {
+ widgetFrame.setVisibility(mState != null && mState.isDataSaverBlacklisted
+ ? View.INVISIBLE : View.VISIBLE);
+ }
super.onBindViewHolder(holder);
+
+ mHelper.onBindViewHolder(holder);
+ holder.findViewById(R.id.restricted_icon).setVisibility(
+ disabledByAdmin ? View.VISIBLE : View.GONE);
+ holder.findViewById(android.R.id.switch_widget).setVisibility(
+ disabledByAdmin ? View.GONE : View.VISIBLE);
}
@Override
@@ -348,6 +370,19 @@
reuse();
}
}
+
+ public void setDisabledByAdmin(EnforcedAdmin admin) {
+ mHelper.setDisabledByAdmin(admin);
+ }
+
+ public boolean isDisabledByAdmin() {
+ return mHelper.isDisabledByAdmin();
+ }
+
+ @VisibleForTesting
+ public AppEntry getEntryForTest() {
+ return mEntry;
+ }
}
}
diff --git a/src/com/android/settings/development/BugReportInPowerPreferenceController.java b/src/com/android/settings/development/BugReportInPowerPreferenceController.java
index 31b618b..d7c5434 100644
--- a/src/com/android/settings/development/BugReportInPowerPreferenceController.java
+++ b/src/com/android/settings/development/BugReportInPowerPreferenceController.java
@@ -18,7 +18,6 @@
import android.content.ComponentName;
import android.content.Context;
-import android.content.pm.PackageManager;
import android.os.UserManager;
import android.provider.Settings;
import android.support.annotation.VisibleForTesting;
@@ -28,7 +27,6 @@
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.development.DeveloperOptionsPreferenceController;
-import com.android.settingslib.wrapper.PackageManagerWrapper;
public class BugReportInPowerPreferenceController extends
DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener,
@@ -37,21 +35,16 @@
private static final String KEY_BUGREPORT_IN_POWER = "bugreport_in_power";
@VisibleForTesting
- static final ComponentName COMPONENT_NAME = new ComponentName("com.android.shell",
- "com.android.shell.BugreportStorageProvider");
- @VisibleForTesting
static int SETTING_VALUE_ON = 1;
@VisibleForTesting
static int SETTING_VALUE_OFF = 0;
- private final PackageManagerWrapper mPackageManager;
private final UserManager mUserManager;
private SwitchPreference mPreference;
public BugReportInPowerPreferenceController(Context context) {
super(context);
mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
- mPackageManager = new PackageManagerWrapper(context.getPackageManager());
}
@Override
@@ -77,7 +70,6 @@
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Global.BUGREPORT_IN_POWER_MENU,
isEnabled ? SETTING_VALUE_ON : SETTING_VALUE_OFF);
- setBugreportStorageProviderStatus(isEnabled);
return true;
}
@@ -97,13 +89,6 @@
protected void onDeveloperOptionsSwitchDisabled() {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Global.BUGREPORT_IN_POWER_MENU, SETTING_VALUE_OFF);
- setBugreportStorageProviderStatus(false);
mPreference.setChecked(false);
}
-
- private void setBugreportStorageProviderStatus(boolean isEnabled) {
- mPackageManager.setComponentEnabledSetting(COMPONENT_NAME,
- isEnabled ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED
- : PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, 0 /* flags */);
- }
}
diff --git a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
index ce4b7bf..395d230 100644
--- a/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
+++ b/src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java
@@ -435,7 +435,6 @@
controllers.add(new ForceMSAAPreferenceController(context));
controllers.add(new HardwareOverlaysPreferenceController(context));
controllers.add(new SimulateColorSpacePreferenceController(context));
- controllers.add(new SetGpuRendererPreferenceController(context));
controllers.add(new UsbAudioRoutingPreferenceController(context));
controllers.add(new StrictModePreferenceController(context));
controllers.add(new ProfileGpuRenderingPreferenceController(context));
diff --git a/src/com/android/settings/development/SelectUsbConfigPreferenceController.java b/src/com/android/settings/development/SelectUsbConfigPreferenceController.java
index 77a9a75..63eb24c 100644
--- a/src/com/android/settings/development/SelectUsbConfigPreferenceController.java
+++ b/src/com/android/settings/development/SelectUsbConfigPreferenceController.java
@@ -27,11 +27,11 @@
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
-import android.text.TextUtils;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settings.connecteddevice.usb.UsbBackend;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnCreate;
@@ -48,6 +48,8 @@
private final String[] mListValues;
private final String[] mListSummaries;
private final UsbManager mUsbManager;
+ @VisibleForTesting
+ UsbBackend.UsbManagerPassThrough mUsbManagerPassThrough;
private BroadcastReceiver mUsbReceiver;
private ListPreference mPreference;
@@ -57,6 +59,7 @@
mListValues = context.getResources().getStringArray(R.array.usb_configuration_values);
mListSummaries = context.getResources().getStringArray(R.array.usb_configuration_titles);
mUsbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);
+ mUsbManagerPassThrough = new UsbBackend.UsbManagerPassThrough(mUsbManager);
mUsbReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
@@ -95,7 +98,8 @@
return false;
}
- writeUsbConfigurationOption(newValue.toString());
+ writeUsbConfigurationOption(mUsbManagerPassThrough
+ .usbFunctionsFromString(newValue.toString()));
updateUsbConfigurationValues();
return true;
}
@@ -129,14 +133,15 @@
}
@VisibleForTesting
- void setCurrentFunction(String newValue, boolean usbDataUnlocked) {
- mUsbManager.setCurrentFunction(newValue, usbDataUnlocked);
+ void setCurrentFunctions(long functions) {
+ mUsbManager.setCurrentFunctions(functions);
}
private void updateUsbConfigurationValues() {
+ long functions = mUsbManagerPassThrough.getCurrentFunctions();
int index = 0;
for (int i = 0; i < mListValues.length; i++) {
- if (mUsbManager.isFunctionEnabled(mListValues[i])) {
+ if (functions == mUsbManagerPassThrough.usbFunctionsFromString(mListValues[i])) {
index = i;
break;
}
@@ -145,11 +150,7 @@
mPreference.setSummary(mListSummaries[index]);
}
- private void writeUsbConfigurationOption(String newValue) {
- if (TextUtils.equals(newValue, "none")) {
- setCurrentFunction(newValue, false);
- } else {
- setCurrentFunction(newValue, true);
- }
+ private void writeUsbConfigurationOption(long newValue) {
+ setCurrentFunctions(newValue);
}
}
diff --git a/src/com/android/settings/development/SetGpuRendererPreferenceController.java b/src/com/android/settings/development/SetGpuRendererPreferenceController.java
deleted file mode 100644
index b19344c..0000000
--- a/src/com/android/settings/development/SetGpuRendererPreferenceController.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.development;
-
-import android.content.Context;
-import android.os.SystemProperties;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-import android.text.TextUtils;
-import android.view.ThreadedRenderer;
-
-import com.android.settings.R;
-import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settingslib.development.DeveloperOptionsPreferenceController;
-import com.android.settingslib.development.SystemPropPoker;
-
-public class SetGpuRendererPreferenceController extends
- DeveloperOptionsPreferenceController implements Preference.OnPreferenceChangeListener,
- PreferenceControllerMixin {
-
- private static final String DEBUG_HW_RENDERER_KEY = "debug_hw_renderer";
-
- private final String[] mListValues;
- private final String[] mListSummaries;
- private ListPreference mPreference;
-
- public SetGpuRendererPreferenceController(Context context) {
- super(context);
-
- mListValues = context.getResources().getStringArray(R.array.debug_hw_renderer_values);
- mListSummaries = context.getResources().getStringArray(R.array.debug_hw_renderer_entries);
- }
-
- @Override
- public String getPreferenceKey() {
- return DEBUG_HW_RENDERER_KEY;
- }
-
- @Override
- public void displayPreference(PreferenceScreen screen) {
- super.displayPreference(screen);
-
- mPreference = (ListPreference) screen.findPreference(getPreferenceKey());
- }
-
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- writeDebugHwRendererOptions(newValue);
- updateDebugHwRendererOptions();
- return true;
- }
-
- @Override
- public void updateState(Preference preference) {
- updateDebugHwRendererOptions();
- }
-
- @Override
- protected void onDeveloperOptionsSwitchEnabled() {
- mPreference.setEnabled(true);
- }
-
- @Override
- protected void onDeveloperOptionsSwitchDisabled() {
- mPreference.setEnabled(false);
- }
-
- private void writeDebugHwRendererOptions(Object newValue) {
- SystemProperties.set(ThreadedRenderer.DEBUG_RENDERER_PROPERTY,
- newValue == null ? "" : newValue.toString());
- SystemPropPoker.getInstance().poke();
- }
-
- private void updateDebugHwRendererOptions() {
- final String value = SystemProperties.get(
- ThreadedRenderer.DEBUG_RENDERER_PROPERTY, "" /* default */);
- int index = 0; // default
- for (int i = 0; i < mListValues.length; i++) {
- if (TextUtils.equals(value, mListValues[i])) {
- index = i;
- break;
- }
- }
- mPreference.setValue(mListValues[index]);
- mPreference.setSummary(mListSummaries[index]);
- }
-}
diff --git a/src/com/android/settings/deviceinfo/DeviceModelPreferenceController.java b/src/com/android/settings/deviceinfo/DeviceModelPreferenceController.java
index ee069da..831c630 100644
--- a/src/com/android/settings/deviceinfo/DeviceModelPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/DeviceModelPreferenceController.java
@@ -41,7 +41,7 @@
@Override
public boolean isAvailable() {
- return true;
+ return mContext.getResources().getBoolean(R.bool.config_show_device_model);
}
@Override
diff --git a/src/com/android/settings/deviceinfo/IpAddressPreferenceController.java b/src/com/android/settings/deviceinfo/IpAddressPreferenceController.java
index f4e2f8c..1af6397 100644
--- a/src/com/android/settings/deviceinfo/IpAddressPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/IpAddressPreferenceController.java
@@ -19,6 +19,8 @@
import android.content.Context;
import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settings.R;
+
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.deviceinfo.AbstractIpAddressPreferenceController;
@@ -31,5 +33,10 @@
super(context, lifecycle);
}
+ @Override
+ public boolean isAvailable() {
+ return mContext.getResources().getBoolean(R.bool.config_show_wifi_ip_address);
+ }
+
// This space intentionally left blank
}
diff --git a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java
index 93f75bf..4eb2ddd 100644
--- a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java
@@ -58,7 +58,7 @@
@Override
public boolean isAvailable() {
- return true;
+ return mTelephonyManager.isVoiceCapable();
}
@Override
diff --git a/src/com/android/settings/deviceinfo/StorageSettings.java b/src/com/android/settings/deviceinfo/StorageSettings.java
index efcf03d..2093469 100644
--- a/src/com/android/settings/deviceinfo/StorageSettings.java
+++ b/src/com/android/settings/deviceinfo/StorageSettings.java
@@ -236,7 +236,6 @@
Intent intent = Utils.onBuildStartFragmentIntent(getActivity(),
StorageDashboardFragment.class.getName(), args, null,
R.string.storage_settings, null, false, getMetricsCategory());
- intent.putExtra(SettingsDrawerActivity.EXTRA_SHOW_MENU, true);
getActivity().startActivity(intent);
finish();
}
diff --git a/src/com/android/settings/deviceinfo/UsbBackend.java b/src/com/android/settings/deviceinfo/UsbBackend.java
deleted file mode 100644
index 5d2502b..0000000
--- a/src/com/android/settings/deviceinfo/UsbBackend.java
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * Copyright (C) 2015 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.settings.deviceinfo;
-
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.content.pm.PackageManager;
-import android.hardware.usb.UsbManager;
-import android.hardware.usb.UsbPort;
-import android.hardware.usb.UsbPortStatus;
-import android.os.UserHandle;
-import android.os.UserManager;
-import android.support.annotation.VisibleForTesting;
-
-public class UsbBackend {
-
- public static final int MODE_POWER_MASK = 0x01;
- public static final int MODE_POWER_SINK = 0x00;
- public static final int MODE_POWER_SOURCE = 0x01;
-
- public static final int MODE_DATA_MASK = 0x03 << 1;
- public static final int MODE_DATA_NONE = 0x00 << 1;
- public static final int MODE_DATA_MTP = 0x01 << 1;
- public static final int MODE_DATA_PTP = 0x02 << 1;
- public static final int MODE_DATA_MIDI = 0x03 << 1;
-
- private final boolean mRestricted;
- private final boolean mRestrictedBySystem;
- private final boolean mMidi;
-
- private UsbManager mUsbManager;
- private UsbPort mPort;
- private UsbPortStatus mPortStatus;
-
- private Context mContext;
-
- public UsbBackend(Context context) {
- this(context, new UserRestrictionUtil(context));
- }
-
- @VisibleForTesting
- public UsbBackend(Context context, UserRestrictionUtil userRestrictionUtil) {
- mContext = context;
- mUsbManager = context.getSystemService(UsbManager.class);
-
- mRestricted = userRestrictionUtil.isUsbFileTransferRestricted();
- mRestrictedBySystem = userRestrictionUtil.isUsbFileTransferRestrictedBySystem();
- mMidi = context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_MIDI);
-
- UsbPort[] ports = mUsbManager.getPorts();
- if (ports == null) {
- return;
- }
- // For now look for a connected port, in the future we should identify port in the
- // notification and pick based on that.
- final int N = ports.length;
- for (int i = 0; i < N; i++) {
- UsbPortStatus status = mUsbManager.getPortStatus(ports[i]);
- if (status.isConnected()) {
- mPort = ports[i];
- mPortStatus = status;
- break;
- }
- }
- }
-
- public int getCurrentMode() {
- if (mPort != null) {
- int power = mPortStatus.getCurrentPowerRole() == UsbPort.POWER_ROLE_SOURCE
- ? MODE_POWER_SOURCE : MODE_POWER_SINK;
- return power | getUsbDataMode();
- }
- return MODE_POWER_SINK | getUsbDataMode();
- }
-
- public int getUsbDataMode() {
- if (!isUsbDataUnlocked()) {
- return MODE_DATA_NONE;
- } else if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MTP)) {
- return MODE_DATA_MTP;
- } else if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_PTP)) {
- return MODE_DATA_PTP;
- } else if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MIDI)) {
- return MODE_DATA_MIDI;
- }
- return MODE_DATA_NONE; // ...
- }
-
- private boolean isUsbDataUnlocked() {
- Intent intent = mContext.registerReceiver(null,
- new IntentFilter(UsbManager.ACTION_USB_STATE));
- return intent == null ?
- false : intent.getBooleanExtra(UsbManager.USB_DATA_UNLOCKED, false);
- }
-
- private void setUsbFunction(int mode) {
- switch (mode) {
- case MODE_DATA_MTP:
- mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MTP, true);
- break;
- case MODE_DATA_PTP:
- mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_PTP, true);
- break;
- case MODE_DATA_MIDI:
- mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MIDI, true);
- break;
- default:
- mUsbManager.setCurrentFunction(null, false);
- break;
- }
- }
-
- public void setMode(int mode) {
- if (mPort != null) {
- int powerRole = modeToPower(mode);
- // If we aren't using any data modes and we support host mode, then go to host mode
- // so maybe? the other device can provide data if it wants, otherwise go into device
- // mode because we have no choice.
- int dataRole = (mode & MODE_DATA_MASK) == MODE_DATA_NONE
- && mPortStatus.isRoleCombinationSupported(powerRole, UsbPort.DATA_ROLE_HOST)
- ? UsbPort.DATA_ROLE_HOST : UsbPort.DATA_ROLE_DEVICE;
- mUsbManager.setPortRoles(mPort, powerRole, dataRole);
- }
- setUsbFunction(mode & MODE_DATA_MASK);
- }
-
- private int modeToPower(int mode) {
- return (mode & MODE_POWER_MASK) == MODE_POWER_SOURCE
- ? UsbPort.POWER_ROLE_SOURCE : UsbPort.POWER_ROLE_SINK;
- }
-
- public boolean isModeDisallowed(int mode) {
- if (mRestricted && (mode & MODE_DATA_MASK) != MODE_DATA_NONE
- && (mode & MODE_DATA_MASK) != MODE_DATA_MIDI) {
- // No USB data modes are supported.
- return true;
- }
- return false;
- }
-
- public boolean isModeDisallowedBySystem(int mode) {
- if (mRestrictedBySystem && (mode & MODE_DATA_MASK) != MODE_DATA_NONE
- && (mode & MODE_DATA_MASK) != MODE_DATA_MIDI) {
- // No USB data modes are supported.
- return true;
- }
- return false;
- }
-
- public boolean isModeSupported(int mode) {
- if (!mMidi && (mode & MODE_DATA_MASK) == MODE_DATA_MIDI) {
- return false;
- }
-
- if (mPort != null) {
- int power = modeToPower(mode);
- if ((mode & MODE_DATA_MASK) != 0) {
- // We have a port and data, need to be in device mode.
- return mPortStatus.isRoleCombinationSupported(power,
- UsbPort.DATA_ROLE_DEVICE);
- } else {
- // No data needed, we can do this power mode in either device or host.
- return mPortStatus.isRoleCombinationSupported(power, UsbPort.DATA_ROLE_DEVICE)
- || mPortStatus.isRoleCombinationSupported(power, UsbPort.DATA_ROLE_HOST);
- }
- }
- // No port, support sink modes only.
- return (mode & MODE_POWER_MASK) != MODE_POWER_SOURCE;
- }
-
- // Wrapper class to enable testing with UserManager APIs
- public static class UserRestrictionUtil {
- private UserManager mUserManager;
-
- public UserRestrictionUtil(Context context) {
- mUserManager = UserManager.get(context);
- }
-
- public boolean isUsbFileTransferRestricted() {
- return mUserManager.hasUserRestriction(UserManager.DISALLOW_USB_FILE_TRANSFER);
- }
-
- public boolean isUsbFileTransferRestrictedBySystem() {
- return mUserManager.hasBaseUserRestriction(
- UserManager.DISALLOW_USB_FILE_TRANSFER, UserHandle.of(UserHandle.myUserId()));
- }
- }
-}
diff --git a/src/com/android/settings/deviceinfo/WifiMacAddressPreferenceController.java b/src/com/android/settings/deviceinfo/WifiMacAddressPreferenceController.java
index 92390d7..8375310 100644
--- a/src/com/android/settings/deviceinfo/WifiMacAddressPreferenceController.java
+++ b/src/com/android/settings/deviceinfo/WifiMacAddressPreferenceController.java
@@ -19,6 +19,7 @@
import android.content.Context;
import com.android.settings.core.PreferenceControllerMixin;
+import com.android.settings.R;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.deviceinfo.AbstractWifiMacAddressPreferenceController;
@@ -31,5 +32,10 @@
super(context, lifecycle);
}
+ @Override
+ public boolean isAvailable() {
+ return mContext.getResources().getBoolean(R.bool.config_show_wifi_mac_address);
+ }
+
// This space intentionally left blank
}
diff --git a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
index 04e7fde..03b69a5 100644
--- a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
+++ b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoFragment.java
@@ -21,24 +21,25 @@
import android.app.Activity;
import android.app.Fragment;
import android.content.Context;
+import android.content.Intent;
import android.content.pm.UserInfo;
import android.os.Bundle;
import android.os.UserManager;
import android.provider.SearchIndexableResource;
-import android.telephony.TelephonyManager;
import android.view.View;
-import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
-import com.android.settings.SettingsActivity;
import com.android.settings.Utils;
+import com.android.settings.accounts.EmergencyInfoPreferenceController;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.deviceinfo.BluetoothAddressPreferenceController;
import com.android.settings.deviceinfo.BrandedAccountPreferenceController;
import com.android.settings.deviceinfo.BuildNumberPreferenceController;
import com.android.settings.deviceinfo.DeviceModelPreferenceController;
+import com.android.settings.deviceinfo.DeviceNamePreferenceController;
import com.android.settings.deviceinfo.FccEquipmentIdPreferenceController;
import com.android.settings.deviceinfo.FeedbackPreferenceController;
import com.android.settings.deviceinfo.ImsStatusPreferenceController;
@@ -52,11 +53,9 @@
import com.android.settings.deviceinfo.imei.ImeiInfoPreferenceController;
import com.android.settings.deviceinfo.simstatus.SimStatusPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settings.deviceinfo.DeviceNamePreferenceController;
import java.util.ArrayList;
import java.util.Arrays;
@@ -103,6 +102,7 @@
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Activity activity, Fragment fragment, Lifecycle lifecycle) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
+ controllers.add(new EmergencyInfoPreferenceController(context));
controllers.add(new PhoneNumberPreferenceController(context));
controllers.add(new BrandedAccountPreferenceController(context));
DeviceNamePreferenceController deviceNamePreferenceController =
@@ -127,6 +127,16 @@
return controllers;
}
+ @Override
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ final BuildNumberPreferenceController buildNumberPreferenceController =
+ getPreferenceController(BuildNumberPreferenceController.class);
+ if (buildNumberPreferenceController.onActivityResult(requestCode, resultCode, data)) {
+ return;
+ }
+ super.onActivityResult(requestCode, resultCode, data);
+ }
+
private void initHeader() {
// TODO: Migrate into its own controller.
final LayoutPreference headerPreference =
@@ -154,6 +164,25 @@
controller.done(context, true /* rebindActions */);
}
+ private static class SummaryProvider implements SummaryLoader.SummaryProvider {
+
+ private final SummaryLoader mSummaryLoader;
+
+ public SummaryProvider(SummaryLoader summaryLoader) {
+ mSummaryLoader = summaryLoader;
+ }
+
+ @Override
+ public void setListening(boolean listening) {
+ if (listening) {
+ mSummaryLoader.setSummary(this, DeviceModelPreferenceController.getDeviceModel());
+ }
+ }
+ }
+
+ public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
+ = (activity, summaryLoader) -> new SummaryProvider(summaryLoader);
+
/**
* For Search.
*/
diff --git a/src/com/android/settings/deviceinfo/storage/UserProfileController.java b/src/com/android/settings/deviceinfo/storage/UserProfileController.java
index 4870e7e..c9fe54e 100644
--- a/src/com/android/settings/deviceinfo/storage/UserProfileController.java
+++ b/src/com/android/settings/deviceinfo/storage/UserProfileController.java
@@ -85,7 +85,6 @@
Intent intent = Utils.onBuildStartFragmentIntent(mContext,
StorageProfileFragment.class.getName(), args, null, 0,
mUser.name, false, MetricsProto.MetricsEvent.DEVICEINFO_STORAGE);
- intent.putExtra(SettingsDrawerActivity.EXTRA_SHOW_MENU, true);
mContext.startActivity(intent);
return true;
}
diff --git a/src/com/android/settings/display/BrightnessLevelPreferenceController.java b/src/com/android/settings/display/BrightnessLevelPreferenceController.java
index ee573eb..fc08511 100644
--- a/src/com/android/settings/display/BrightnessLevelPreferenceController.java
+++ b/src/com/android/settings/display/BrightnessLevelPreferenceController.java
@@ -45,7 +45,6 @@
private static final String TAG = "BrightnessPrefCtrl";
private static final String KEY_BRIGHTNESS = "brightness";
- private static final Uri BRIGHTNESS_MODE_URI;
private static final Uri BRIGHTNESS_URI;
private static final Uri BRIGHTNESS_FOR_VR_URI;
private static final Uri BRIGHTNESS_ADJ_URI;
@@ -59,7 +58,6 @@
private Preference mPreference;
static {
- BRIGHTNESS_MODE_URI = System.getUriFor(System.SCREEN_BRIGHTNESS_MODE);
BRIGHTNESS_URI = System.getUriFor(System.SCREEN_BRIGHTNESS);
BRIGHTNESS_FOR_VR_URI = System.getUriFor(System.SCREEN_BRIGHTNESS_FOR_VR);
BRIGHTNESS_ADJ_URI = System.getUriFor(System.SCREEN_AUTO_BRIGHTNESS_ADJ);
@@ -112,10 +110,8 @@
public void updateState(Preference preference) {
updatedSummary(preference);
}
-
@Override
public void onStart() {
- mContentResolver.registerContentObserver(BRIGHTNESS_MODE_URI, false, mBrightnessObserver);
mContentResolver.registerContentObserver(BRIGHTNESS_URI, false, mBrightnessObserver);
mContentResolver.registerContentObserver(BRIGHTNESS_FOR_VR_URI, false, mBrightnessObserver);
mContentResolver.registerContentObserver(BRIGHTNESS_ADJ_URI, false, mBrightnessObserver);
@@ -137,18 +133,11 @@
final double value = System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS_FOR_VR,
mMaxBrightness);
return getPercentage(value, mMinVrBrightness, mMaxVrBrightness);
+ } else {
+ final double value = Settings.System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS,
+ mMinBrightness);
+ return getPercentage(value, mMinBrightness, mMaxBrightness);
}
- final int brightnessMode = Settings.System.getInt(mContentResolver,
- System.SCREEN_BRIGHTNESS_MODE, System.SCREEN_BRIGHTNESS_MODE_MANUAL);
- if (brightnessMode == System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) {
- final float value = Settings.System.getFloat(mContentResolver,
- System.SCREEN_AUTO_BRIGHTNESS_ADJ, 0);
- // auto brightness is between -1 and 1
- return getPercentage(value, -1, 1);
- }
- final double value = Settings.System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS,
- mMinBrightness);
- return getPercentage(value, mMinBrightness, mMaxBrightness);
}
private double getPercentage(double value, int min, int max) {
diff --git a/src/com/android/settings/fingerprint/FingerprintAuthenticateSidecar.java b/src/com/android/settings/fingerprint/FingerprintAuthenticateSidecar.java
index d649c0b..1fa59a2 100644
--- a/src/com/android/settings/fingerprint/FingerprintAuthenticateSidecar.java
+++ b/src/com/android/settings/fingerprint/FingerprintAuthenticateSidecar.java
@@ -21,12 +21,12 @@
import android.os.CancellationSignal;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
/**
* Sidecar fragment to handle the state around fingerprint authentication
*/
-public class FingerprintAuthenticateSidecar extends InstrumentedPreferenceFragment {
+public class FingerprintAuthenticateSidecar extends InstrumentedFragment {
private static final String TAG = "FingerprintAuthenticateSidecar";
diff --git a/src/com/android/settings/fingerprint/FingerprintEnrollBase.java b/src/com/android/settings/fingerprint/FingerprintEnrollBase.java
index 7c34f2d..5a148d3 100644
--- a/src/com/android/settings/fingerprint/FingerprintEnrollBase.java
+++ b/src/com/android/settings/fingerprint/FingerprintEnrollBase.java
@@ -48,7 +48,6 @@
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setTheme(R.style.Theme_FingerprintEnroll);
mToken = getIntent().getByteArrayExtra(
ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN);
if (savedInstanceState != null && mToken == null) {
diff --git a/src/com/android/settings/fingerprint/FingerprintRemoveSidecar.java b/src/com/android/settings/fingerprint/FingerprintRemoveSidecar.java
index 462d09e..7caca3f 100644
--- a/src/com/android/settings/fingerprint/FingerprintRemoveSidecar.java
+++ b/src/com/android/settings/fingerprint/FingerprintRemoveSidecar.java
@@ -21,7 +21,7 @@
import android.hardware.fingerprint.Fingerprint;
import android.hardware.fingerprint.FingerprintManager;
import android.os.Bundle;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import android.os.UserHandle;
import java.util.Queue;
@@ -31,7 +31,7 @@
/**
* Sidecar fragment to handle the state around fingerprint removal.
*/
-public class FingerprintRemoveSidecar extends InstrumentedPreferenceFragment {
+public class FingerprintRemoveSidecar extends InstrumentedFragment {
private static final String TAG = "FingerprintRemoveSidecar";
private Listener mListener;
@@ -99,20 +99,6 @@
setRetainInstance(true);
}
- @Override
- public void onAttach(Context context) {
- super.onAttach(context);
- }
-
- @Override
- public void onResume() {
- super.onResume();
- }
-
- @Override
- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
- }
-
public void setListener(Listener listener) {
if (mListener == null && listener != null) {
while (!mFingerprintsRemoved.isEmpty()) {
diff --git a/src/com/android/settings/fingerprint/FingerprintSettings.java b/src/com/android/settings/fingerprint/FingerprintSettings.java
index de7187c..caad988 100644
--- a/src/com/android/settings/fingerprint/FingerprintSettings.java
+++ b/src/com/android/settings/fingerprint/FingerprintSettings.java
@@ -35,7 +35,6 @@
import android.support.annotation.VisibleForTesting;
import android.support.v7.preference.Preference;
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
-import android.support.v7.preference.Preference.OnPreferenceClickListener;
import android.support.v7.preference.PreferenceGroup;
import android.support.v7.preference.PreferenceScreen;
import android.support.v7.preference.PreferenceViewHolder;
@@ -921,49 +920,4 @@
});
}
}
-
- /**
- * @deprecated in favor of new SecuritySettings.
- */
- @Deprecated
- public static Preference getFingerprintPreferenceForUser(Context context, final int userId) {
- final FingerprintManager fpm = Utils.getFingerprintManagerOrNull(context);
- if (fpm == null || !fpm.isHardwareDetected()) {
- Log.v(TAG, "No fingerprint hardware detected!!");
- return null;
- }
- Preference fingerprintPreference = new Preference(context);
- fingerprintPreference.setKey(KEY_FINGERPRINT_SETTINGS);
- fingerprintPreference.setTitle(R.string.security_settings_fingerprint_preference_title);
- final List<Fingerprint> items = fpm.getEnrolledFingerprints(userId);
- final int fingerprintCount = items != null ? items.size() : 0;
- final String clazz;
- if (fingerprintCount > 0) {
- fingerprintPreference.setSummary(context.getResources().getQuantityString(
- R.plurals.security_settings_fingerprint_preference_summary,
- fingerprintCount, fingerprintCount));
- clazz = FingerprintSettings.class.getName();
- } else {
- fingerprintPreference.setSummary(
- R.string.security_settings_fingerprint_preference_summary_none);
- clazz = FingerprintEnrollIntroduction.class.getName();
- }
- fingerprintPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- final Context context = preference.getContext();
- final UserManager userManager = UserManager.get(context);
- if (Utils.startQuietModeDialogIfNecessary(context, userManager,
- userId)) {
- return false;
- }
- Intent intent = new Intent();
- intent.setClassName("com.android.settings", clazz);
- intent.putExtra(Intent.EXTRA_USER_ID, userId);
- context.startActivity(intent);
- return true;
- }
- });
- return fingerprintPreference;
- }
}
diff --git a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
index de027a3..981b0dc 100644
--- a/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/AdvancedPowerUsageDetail.java
@@ -46,6 +46,8 @@
import com.android.settings.applications.LayoutPreference;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.fuelgauge.anomaly.AnomalyUtils;
+import com.android.settings.fuelgauge.batterytip.BatteryTipPreferenceController;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
import com.android.settings.fuelgauge.anomaly.Anomaly;
import com.android.settings.fuelgauge.anomaly.AnomalyDialogFragment;
@@ -56,6 +58,7 @@
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.StringUtil;
import java.util.ArrayList;
import java.util.List;
@@ -69,7 +72,7 @@
ButtonActionDialogFragment.AppButtonsDialogListener,
AnomalyDialogFragment.AnomalyDialogListener,
LoaderManager.LoaderCallbacks<List<Anomaly>>,
- BackgroundActivityPreferenceController.WarningConfirmationListener {
+ BatteryTipPreferenceController.BatteryTipListener {
public static final String TAG = "AdvancedPowerUsageDetail";
public static final String EXTRA_UID = "extra_uid";
@@ -282,10 +285,10 @@
final int powerMah = bundle.getInt(EXTRA_POWER_USAGE_AMOUNT);
mForegroundPreference.setSummary(
TextUtils.expandTemplate(getText(R.string.battery_used_for),
- Utils.formatElapsedTime(context, foregroundTimeMs, false)));
+ StringUtil.formatElapsedTime(context, foregroundTimeMs, false)));
mBackgroundPreference.setSummary(
TextUtils.expandTemplate(getText(R.string.battery_active_for),
- Utils.formatElapsedTime(context, backgroundTimeMs, false)));
+ StringUtil.formatElapsedTime(context, backgroundTimeMs, false)));
mPowerUsagePreference.setSummary(
getString(R.string.battery_detail_power_percentage, usagePercent, powerMah));
}
@@ -373,8 +376,8 @@
}
@Override
- public void onLimitBackgroundActivity() {
- mBackgroundActivityPreferenceController.setRestricted(
+ public void onBatteryTipHandled(BatteryTip batteryTip) {
+ mBackgroundActivityPreferenceController.updateSummary(
findPreference(mBackgroundActivityPreferenceController.getPreferenceKey()));
}
}
diff --git a/src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java b/src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java
index a52433b..7bd1b3d 100644
--- a/src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/AppButtonsPreferenceController.java
@@ -74,7 +74,7 @@
* An easy way to handle them is to delegate them to {@link #handleDialogClick(int)} and
* {@link #handleActivityResult(int, int, Intent)} in this controller.
*/
-//TODO(b/35810915): Make InstalledAppDetails use this controller
+//TODO(b/35810915): Make AppInfoDashboardFragment use this controller
public class AppButtonsPreferenceController extends AbstractPreferenceController implements
PreferenceControllerMixin, LifecycleObserver, OnResume, OnDestroy,
ApplicationsState.Callbacks {
diff --git a/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java b/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java
index 01e4182..21bd4b7 100644
--- a/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceController.java
@@ -14,27 +14,22 @@
package com.android.settings.fuelgauge;
-import android.app.AlertDialog;
import android.app.AppOpsManager;
-import android.app.Dialog;
import android.app.Fragment;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
-import android.content.DialogInterface;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageManager;
-import android.os.Build;
-import android.os.Bundle;
import android.os.UserManager;
import android.support.annotation.VisibleForTesting;
-import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
-import android.util.Log;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.BatteryTipDialogFragment;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.fuelgauge.PowerWhitelistBackend;
@@ -99,15 +94,6 @@
return mTargetPackage != null;
}
- /**
- * Called from the warning dialog, if the user decides to go ahead and disable background
- * activity for this package
- */
- public void setRestricted(Preference preference) {
- mBatteryUtils.setForceAppStandby(mUid, mTargetPackage, AppOpsManager.MODE_IGNORED);
- updateSummary(preference);
- }
-
@Override
public String getPreferenceKey() {
return KEY_BACKGROUND_ACTIVITY;
@@ -119,20 +105,13 @@
final int mode = mAppOpsManager
.checkOpNoThrow(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, mUid, mTargetPackage);
final boolean restricted = mode == AppOpsManager.MODE_IGNORED;
- if (!restricted) {
- showDialog();
- return false;
- }
- mBatteryUtils.setForceAppStandby(mUid, mTargetPackage, AppOpsManager.MODE_ALLOWED);
- updateSummary(preference);
- return true;
+ showDialog(restricted);
}
return false;
}
- @VisibleForTesting
- void updateSummary(Preference preference) {
+ public void updateSummary(Preference preference) {
if (mPowerWhitelistBackend.isWhitelisted(mTargetPackage)) {
preference.setSummary(R.string.background_activity_summary_whitelisted);
return;
@@ -150,42 +129,16 @@
}
@VisibleForTesting
- void showDialog() {
- final WarningDialogFragment dialogFragment = new WarningDialogFragment();
+ void showDialog(boolean restricted) {
+ final AppInfo appInfo = new AppInfo.Builder()
+ .setPackageName(mTargetPackage)
+ .build();
+ BatteryTip tip = restricted
+ ? new UnrestrictAppTip(BatteryTip.StateType.NEW, appInfo)
+ : new RestrictAppTip(BatteryTip.StateType.NEW, appInfo);
+
+ final BatteryTipDialogFragment dialogFragment = BatteryTipDialogFragment.newInstance(tip);
dialogFragment.setTargetFragment(mFragment, 0 /* requestCode */);
dialogFragment.show(mFragment.getFragmentManager(), TAG);
}
-
- interface WarningConfirmationListener {
- void onLimitBackgroundActivity();
- }
-
- /**
- * Warning dialog to show to the user as turning off background activity can lead to
- * apps misbehaving as their background task scheduling guarantees will no longer be honored.
- */
- public static class WarningDialogFragment extends InstrumentedDialogFragment {
- @Override
- public int getMetricsCategory() {
- // TODO (b/65494831): add metric id
- return 0;
- }
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- final WarningConfirmationListener listener =
- (WarningConfirmationListener) getTargetFragment();
- return new AlertDialog.Builder(getContext())
- .setTitle(R.string.background_activity_warning_dialog_title)
- .setMessage(R.string.background_activity_warning_dialog_text)
- .setPositiveButton(R.string.dlg_ok, new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- listener.onLimitBackgroundActivity();
- }
- })
- .setNegativeButton(R.string.dlg_cancel, null)
- .create();
- }
- }
}
diff --git a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java b/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java
index 91f35e2..2f93d0a 100644
--- a/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/BatteryAppListPreferenceController.java
@@ -18,7 +18,6 @@
package com.android.settings.fuelgauge;
import android.app.Activity;
-import android.app.Fragment;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.os.BatteryStats;
@@ -31,7 +30,6 @@
import android.support.v14.preference.PreferenceFragment;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceGroup;
-import android.support.v7.preference.PreferenceManager;
import android.support.v7.preference.PreferenceScreen;
import android.text.TextUtils;
import android.text.format.DateUtils;
@@ -48,16 +46,14 @@
import com.android.settings.SettingsActivity;
import com.android.settings.core.FeatureFlags;
import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.Utils;
import com.android.settings.fuelgauge.anomaly.Anomaly;
-import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnDestroy;
import com.android.settingslib.core.lifecycle.events.OnPause;
+import com.android.settingslib.utils.StringUtil;
import java.util.ArrayList;
import java.util.List;
@@ -66,7 +62,8 @@
*/
public class BatteryAppListPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin, LifecycleObserver, OnPause, OnDestroy {
- private static final boolean USE_FAKE_DATA = true;
+ @VisibleForTesting
+ static final boolean USE_FAKE_DATA = false;
private static final int MAX_ITEMS_TO_LIST = USE_FAKE_DATA ? 30 : 10;
private static final int MIN_AVERAGE_POWER_THRESHOLD_MILLI_AMP = 10;
private static final int STATS_TYPE = BatteryStats.STATS_SINCE_CHARGED;
@@ -362,8 +359,8 @@
// Only show summary when usage time is longer than one minute
final long usageTimeMs = sipper.usageTimeMs;
if (usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) {
- final CharSequence timeSequence = Utils.formatElapsedTime(mContext, usageTimeMs,
- false);
+ final CharSequence timeSequence =
+ StringUtil.formatElapsedTime(mContext, usageTimeMs, false);
preference.setSummary(
(sipper.drainType != DrainType.APP || mBatteryUtils.shouldHideSipper(sipper))
? timeSequence
diff --git a/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java b/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
index d0f4080..ca4742d 100644
--- a/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
+++ b/src/com/android/settings/fuelgauge/BatteryBroadcastReceiver.java
@@ -27,7 +27,7 @@
/**
* Use this broadcastReceiver to listen to the battery change, and it will invoke
- * {@link OnBatteryChangedListener} if any of the followings has been changed:
+ * {@link OnBatteryChangedListener} if any of the following has been changed:
*
* 1. Battery level(e.g. 100%->99%)
* 2. Battery status(e.g. plugged->unplugged)
@@ -35,7 +35,14 @@
*/
public class BatteryBroadcastReceiver extends BroadcastReceiver {
- interface OnBatteryChangedListener {
+ /**
+ * Callback when the following has been changed:
+ *
+ * Battery level(e.g. 100%->99%)
+ * Battery status(e.g. plugged->unplugged)
+ * Battery saver(e.g. off->on)
+ */
+ public interface OnBatteryChangedListener {
void onBatteryChanged();
}
diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java
index 6384130..43465ab 100644
--- a/src/com/android/settings/fuelgauge/BatteryInfo.java
+++ b/src/com/android/settings/fuelgauge/BatteryInfo.java
@@ -25,7 +25,6 @@
import android.os.Bundle;
import android.os.SystemClock;
import android.support.annotation.WorkerThread;
-import android.text.TextUtils;
import android.text.format.Formatter;
import android.util.SparseIntArray;
@@ -34,8 +33,14 @@
import com.android.settings.graph.UsageView;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.R;
+import com.android.settingslib.utils.PowerUtil;
+import com.android.settingslib.utils.StringUtil;
+import java.util.concurrent.TimeUnit;
public class BatteryInfo {
+ private static final long SEVEN_MINUTES_MICROS = TimeUnit.MINUTES.toMicros(7);
+ private static final long FIFTEEN_MINUTES_MICROS = TimeUnit.MINUTES.toMicros(15);
+ private static final long ONE_DAY_MICROS = TimeUnit.DAYS.toMicros(1);
public CharSequence chargeLabel;
public CharSequence remainingLabel;
@@ -100,7 +105,7 @@
if (lastTime >= 0) {
points.put(lastTime, lastLevel);
points.put((int) (timePeriod +
- BatteryUtils.convertUsToMs(remainingTimeUs)),
+ PowerUtil.convertUsToMs(remainingTimeUs)),
mCharging ? 100 : 0);
}
}
@@ -160,7 +165,7 @@
PowerUsageFeatureProvider provider =
FeatureFactory.getFactory(context).getPowerUsageFeatureProvider(context);
final long elapsedRealtimeUs =
- BatteryUtils.convertMsToUs(SystemClock.elapsedRealtime());
+ PowerUtil.convertMsToUs(SystemClock.elapsedRealtime());
Intent batteryBroadcast = context.registerReceiver(null,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
@@ -176,7 +181,7 @@
.logRuntime(LOG_TAG, "time for enhanced BatteryInfo", startTime);
return BatteryInfo.getBatteryInfo(context, batteryBroadcast, stats,
elapsedRealtimeUs, shortString,
- BatteryUtils.convertMsToUs(estimate.estimateMillis),
+ PowerUtil.convertMsToUs(estimate.estimateMillis),
estimate.isBasedOnUsage);
}
}
@@ -217,53 +222,61 @@
info.statusLabel = Utils.getBatteryStatus(resources, batteryBroadcast);
if (!info.mCharging) {
- if (drainTimeUs > 0) {
- info.remainingTimeUs = drainTimeUs;
- CharSequence timeString = Utils.formatElapsedTime(context,
- BatteryUtils.convertUsToMs(drainTimeUs), false /* withSeconds */);
- info.remainingLabel = TextUtils.expandTemplate(context.getText(shortString ?
- R.string.power_remaining_duration_only_short :
- (basedOnUsage ?
- R.string.power_remaining_duration_only_enhanced :
- R.string.power_remaining_duration_only)), timeString);
- info.chargeLabel = TextUtils.expandTemplate(context.getText(
- shortString ?
- R.string.power_discharging_duration_short :
- basedOnUsage ?
- R.string.power_discharging_duration_enhanced :
- R.string.power_discharging_duration),
- info.batteryPercentString, timeString);
- } else {
- info.remainingLabel = null;
- info.chargeLabel = info.batteryPercentString;
- }
+ updateBatteryInfoDischarging(context, shortString, drainTimeUs, basedOnUsage, info);
} else {
- final long chargeTime = stats.computeChargeTimeRemaining(elapsedRealtimeUs);
- final int status = batteryBroadcast.getIntExtra(BatteryManager.EXTRA_STATUS,
- BatteryManager.BATTERY_STATUS_UNKNOWN);
- info.discharging = false;
- if (chargeTime > 0 && status != BatteryManager.BATTERY_STATUS_FULL) {
- info.remainingTimeUs = chargeTime;
- CharSequence timeString = Utils.formatElapsedTime(context,
- BatteryUtils.convertUsToMs(chargeTime), false /* withSeconds */);
- int resId = R.string.power_charging_duration;
- info.remainingLabel = TextUtils.expandTemplate(context.getText(
- R.string.power_remaining_charging_duration_only), timeString);
- info.chargeLabel = TextUtils.expandTemplate(context.getText(resId),
- info.batteryPercentString, timeString);
- } else {
- final String chargeStatusLabel = resources.getString(
- R.string.battery_info_status_charging_lower);
- info.remainingLabel = null;
- info.chargeLabel = info.batteryLevel == 100 ? info.batteryPercentString :
- resources.getString(R.string.power_charging, info.batteryPercentString,
- chargeStatusLabel);
- }
+ updateBatteryInfoCharging(context, batteryBroadcast, stats, elapsedRealtimeUs, info);
}
BatteryUtils.logRuntime(LOG_TAG, "time for getBatteryInfo", startTime);
return info;
}
+ private static void updateBatteryInfoCharging(Context context, Intent batteryBroadcast,
+ BatteryStats stats, long elapsedRealtimeUs, BatteryInfo info) {
+ final Resources resources = context.getResources();
+ final long chargeTime = stats.computeChargeTimeRemaining(elapsedRealtimeUs);
+ final int status = batteryBroadcast.getIntExtra(BatteryManager.EXTRA_STATUS,
+ BatteryManager.BATTERY_STATUS_UNKNOWN);
+ info.discharging = false;
+ if (chargeTime > 0 && status != BatteryManager.BATTERY_STATUS_FULL) {
+ info.remainingTimeUs = chargeTime;
+ CharSequence timeString = StringUtil.formatElapsedTime(context,
+ PowerUtil.convertUsToMs(info.remainingTimeUs), false /* withSeconds */);
+ int resId = R.string.power_charging_duration;
+ info.remainingLabel = context.getString(
+ R.string.power_remaining_charging_duration_only, timeString);
+ info.chargeLabel = context.getString(resId, info.batteryPercentString, timeString);
+ } else {
+ final String chargeStatusLabel = resources.getString(
+ R.string.battery_info_status_charging_lower);
+ info.remainingLabel = null;
+ info.chargeLabel = info.batteryLevel == 100 ? info.batteryPercentString :
+ resources.getString(R.string.power_charging, info.batteryPercentString,
+ chargeStatusLabel);
+ }
+ }
+
+ private static void updateBatteryInfoDischarging(Context context, boolean shortString,
+ long drainTimeUs, boolean basedOnUsage, BatteryInfo info) {
+ if (drainTimeUs > 0) {
+ info.remainingTimeUs = drainTimeUs;
+ info.remainingLabel = PowerUtil.getBatteryRemainingStringFormatted(
+ context,
+ PowerUtil.convertUsToMs(drainTimeUs),
+ null /* percentageString */,
+ basedOnUsage && !shortString
+ );
+ info.chargeLabel = PowerUtil.getBatteryRemainingStringFormatted(
+ context,
+ PowerUtil.convertUsToMs(drainTimeUs),
+ info.batteryPercentString,
+ basedOnUsage && !shortString
+ );
+ } else {
+ info.remainingLabel = null;
+ info.chargeLabel = info.batteryPercentString;
+ }
+ }
+
public interface BatteryDataParser {
void onParsingStarted(long startTime, long endTime);
diff --git a/src/com/android/settings/fuelgauge/BatterySaverReceiver.java b/src/com/android/settings/fuelgauge/BatterySaverReceiver.java
index 2254438..300dc0f 100644
--- a/src/com/android/settings/fuelgauge/BatterySaverReceiver.java
+++ b/src/com/android/settings/fuelgauge/BatterySaverReceiver.java
@@ -69,7 +69,7 @@
mBatterySaverListener = lsn;
}
- interface BatterySaverListener {
+ public interface BatterySaverListener {
void onPowerSaveModeChanged();
void onBatteryChanged(boolean pluggedIn);
}
diff --git a/src/com/android/settings/fuelgauge/BatterySaverSettings.java b/src/com/android/settings/fuelgauge/BatterySaverSettings.java
deleted file mode 100644
index 2a4fd6e..0000000
--- a/src/com/android/settings/fuelgauge/BatterySaverSettings.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*
- * Copyright (C) 2014 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.settings.fuelgauge;
-
-import android.content.ContentResolver;
-import android.content.Context;
-import android.content.res.Resources;
-import android.database.ContentObserver;
-import android.net.Uri;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.PowerManager;
-import android.provider.SearchIndexableResource;
-import android.provider.Settings;
-import android.provider.Settings.Global;
-import android.support.annotation.VisibleForTesting;
-import android.util.Log;
-import android.widget.Switch;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.util.ArrayUtils;
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.SettingsPreferenceFragment;
-import com.android.settings.Utils;
-import com.android.settings.dashboard.conditional.BatterySaverCondition;
-import com.android.settings.dashboard.conditional.ConditionManager;
-import com.android.settings.notification.SettingPref;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.widget.SwitchBar;
-
-import java.util.Arrays;
-import java.util.List;
-
-public class BatterySaverSettings extends SettingsPreferenceFragment
- implements SwitchBar.OnSwitchChangeListener, BatterySaverReceiver.BatterySaverListener,
- Indexable {
- private static final String TAG = "BatterySaverSettings";
- private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
- private static final String KEY_TURN_ON_AUTOMATICALLY = "turn_on_automatically";
- private static final long WAIT_FOR_SWITCH_ANIM = 500;
-
- private final Handler mHandler = new Handler();
- private final SettingsObserver mSettingsObserver = new SettingsObserver(mHandler);
-
- @VisibleForTesting
- SwitchBar mSwitchBar;
- private Context mContext;
- private boolean mCreated;
- private SettingPref mTriggerPref;
- private Switch mSwitch;
- private boolean mValidListener;
- private PowerManager mPowerManager;
- private BatterySaverReceiver mReceiver;
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.FUELGAUGE_BATTERY_SAVER;
- }
-
- @Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- if (mCreated) {
- mSwitchBar.show();
- return;
- }
- mCreated = true;
- addPreferencesFromResource(R.xml.battery_saver_settings);
- mFooterPreferenceMixin.createFooterPreference()
- .setTitle(com.android.internal.R.string.battery_saver_description);
- mContext = getActivity();
- mSwitchBar = ((SettingsActivity) mContext).getSwitchBar();
- mSwitchBar.setSwitchBarText(R.string.battery_saver_master_switch_title,
- R.string.battery_saver_master_switch_title);
- mSwitch = mSwitchBar.getSwitch();
- mSwitchBar.show();
-
- int[] levelChoices = getResources().getIntArray(R.array.battery_saver_trigger_values);
- final int currentThreshold = Global.getInt(mContext.getContentResolver(),
- Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
- levelChoices = ArrayUtils.appendInt(levelChoices, currentThreshold);
- Arrays.sort(levelChoices);
-
- mTriggerPref = new SettingPref(SettingPref.TYPE_GLOBAL, KEY_TURN_ON_AUTOMATICALLY,
- Global.LOW_POWER_MODE_TRIGGER_LEVEL,
- 0, /*default*/
- levelChoices) {
- @Override
- protected String getCaption(Resources res, int value) {
- if (value > 0 && value <= 100) {
- return res.getString(R.string.battery_saver_turn_on_automatically_pct,
- Utils.formatPercentage(value));
- }
- return res.getString(R.string.battery_saver_turn_on_automatically_never);
- }
- };
- mTriggerPref.init(this);
-
- mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
- mReceiver = new BatterySaverReceiver(mContext);
- mReceiver.setBatterySaverListener(this);
- }
-
- @Override
- public void onDestroyView() {
- super.onDestroyView();
- mSwitchBar.hide();
- }
-
- @Override
- public void onResume() {
- super.onResume();
- mSettingsObserver.setListening(true);
- mReceiver.setListening(true);
- if (!mValidListener) {
- mSwitchBar.addOnSwitchChangeListener(this);
- mValidListener = true;
- }
- updateSwitch();
- }
-
- @Override
- public void onPause() {
- super.onPause();
- mSettingsObserver.setListening(false);
- mReceiver.setListening(false);
- if (mValidListener) {
- mSwitchBar.removeOnSwitchChangeListener(this);
- mValidListener = false;
- }
- }
-
- @Override
- public void onSwitchChanged(Switch switchView, boolean isChecked) {
- mHandler.removeCallbacks(mStartMode);
- if (isChecked) {
- mHandler.postDelayed(mStartMode, WAIT_FOR_SWITCH_ANIM);
- } else {
- if (DEBUG) Log.d(TAG, "Stopping low power mode from settings");
- trySetPowerSaveMode(false);
- }
- }
-
- private void trySetPowerSaveMode(boolean mode) {
- if (!mPowerManager.setPowerSaveMode(mode)) {
- if (DEBUG) Log.d(TAG, "Setting mode failed, fallback to current value");
- mHandler.post(mUpdateSwitch);
- }
- // TODO: Remove once broadcast is in place.
- ConditionManager.get(getContext()).getCondition(BatterySaverCondition.class).refreshState();
- }
-
- private void updateSwitch() {
- final boolean mode = mPowerManager.isPowerSaveMode();
- if (DEBUG) Log.d(TAG, "updateSwitch: isChecked=" + mSwitch.isChecked() + " mode=" + mode);
- if (mode == mSwitch.isChecked()) return;
-
- // set listener to null so that that code below doesn't trigger onCheckedChanged()
- if (mValidListener) {
- mSwitchBar.removeOnSwitchChangeListener(this);
- }
- mSwitch.setChecked(mode);
- if (mValidListener) {
- mSwitchBar.addOnSwitchChangeListener(this);
- }
- }
-
- private final Runnable mUpdateSwitch = new Runnable() {
- @Override
- public void run() {
- updateSwitch();
- }
- };
-
- private final Runnable mStartMode = new Runnable() {
- @Override
- public void run() {
- AsyncTask.execute(new Runnable() {
- @Override
- public void run() {
- if (DEBUG) Log.d(TAG, "Starting low power mode from settings");
- trySetPowerSaveMode(true);
- }
- });
- }
- };
-
- @Override
- public void onPowerSaveModeChanged() {
- mHandler.post(mUpdateSwitch);
- }
-
- @Override
- public void onBatteryChanged(boolean pluggedIn) {
- mSwitchBar.setEnabled(!pluggedIn);
- }
-
- private final class SettingsObserver extends ContentObserver {
- private final Uri LOW_POWER_MODE_TRIGGER_LEVEL_URI
- = Global.getUriFor(Global.LOW_POWER_MODE_TRIGGER_LEVEL);
-
- public SettingsObserver(Handler handler) {
- super(handler);
- }
-
- @Override
- public void onChange(boolean selfChange, Uri uri) {
- if (LOW_POWER_MODE_TRIGGER_LEVEL_URI.equals(uri)) {
- mTriggerPref.update(mContext);
- }
- }
-
- public void setListening(boolean listening) {
- final ContentResolver cr = getContentResolver();
- if (listening) {
- cr.registerContentObserver(LOW_POWER_MODE_TRIGGER_LEVEL_URI, false, this);
- } else {
- cr.unregisterContentObserver(this);
- }
- }
- }
-
- /**
- * For Search.
- */
- public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
- new BaseSearchIndexProvider() {
- @Override
- public List<SearchIndexableResource> getXmlResourcesToIndex(
- Context context, boolean enabled) {
- final SearchIndexableResource sir = new SearchIndexableResource(context);
- sir.xmlResId = R.xml.battery_saver_settings;
- return Arrays.asList(sir);
- }
- };
-}
diff --git a/src/com/android/settings/fuelgauge/BatteryUtils.java b/src/com/android/settings/fuelgauge/BatteryUtils.java
index 5738c29..da9b705 100644
--- a/src/com/android/settings/fuelgauge/BatteryUtils.java
+++ b/src/com/android/settings/fuelgauge/BatteryUtils.java
@@ -43,6 +43,7 @@
import com.android.settings.fuelgauge.anomaly.Anomaly;
import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.utils.PowerUtil;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Collections;
@@ -68,19 +69,18 @@
int BACKGROUND = 2;
int ALL = 3;
}
-
private static final String TAG = "BatteryUtils";
private static final int MIN_POWER_THRESHOLD_MILLI_AMP = 5;
+
private static final int SECONDS_IN_HOUR = 60 * 60;
private static BatteryUtils sInstance;
-
private PackageManager mPackageManager;
+
private AppOpsManager mAppOpsManager;
private Context mContext;
@VisibleForTesting
PowerUsageFeatureProvider mPowerUsageFeatureProvider;
-
public static BatteryUtils getInstance(Context context) {
if (sInstance == null || sInstance.isDataCorrupted()) {
sInstance = new BatteryUtils(context);
@@ -131,29 +131,30 @@
// Return the min value of STATE_TOP time and foreground activity time, since both of these
// time have some errors
- return convertUsToMs(
+ return PowerUtil.convertUsToMs(
Math.min(timeUs, getForegroundActivityTotalTimeUs(uid, rawRealTimeUs)));
}
private long getScreenUsageTimeMs(BatteryStats.Uid uid, int which) {
- final long rawRealTimeUs = convertMsToUs(SystemClock.elapsedRealtime());
+ final long rawRealTimeUs = PowerUtil.convertMsToUs(SystemClock.elapsedRealtime());
return getScreenUsageTimeMs(uid, which, rawRealTimeUs);
}
private long getProcessBackgroundTimeMs(BatteryStats.Uid uid, int which) {
- final long rawRealTimeUs = convertMsToUs(SystemClock.elapsedRealtime());
+ final long rawRealTimeUs = PowerUtil.convertMsToUs(SystemClock.elapsedRealtime());
final long timeUs = uid.getProcessStateTime(
BatteryStats.Uid.PROCESS_STATE_BACKGROUND, rawRealTimeUs, which);
Log.v(TAG, "package: " + mPackageManager.getNameForUid(uid.getUid()));
Log.v(TAG, "background time(us): " + timeUs);
- return convertUsToMs(timeUs);
+ return PowerUtil.convertUsToMs(timeUs);
}
private long getProcessForegroundTimeMs(BatteryStats.Uid uid, int which) {
- final long rawRealTimeUs = convertMsToUs(SystemClock.elapsedRealtime());
+ final long rawRealTimeUs = PowerUtil.convertMsToUs(SystemClock.elapsedRealtime());
return getScreenUsageTimeMs(uid, which, rawRealTimeUs)
- + convertUsToMs(getForegroundServiceTotalTimeUs(uid, rawRealTimeUs));
+ + PowerUtil.convertUsToMs(
+ getForegroundServiceTotalTimeUs(uid, rawRealTimeUs));
}
/**
@@ -267,9 +268,10 @@
*/
public long calculateRunningTimeBasedOnStatsType(BatteryStatsHelper batteryStatsHelper,
int statsType) {
- final long elapsedRealtimeUs = convertMsToUs(SystemClock.elapsedRealtime());
+ final long elapsedRealtimeUs = PowerUtil.convertMsToUs(
+ SystemClock.elapsedRealtime());
// Return the battery time (millisecond) on status mStatsType
- return convertUsToMs(
+ return PowerUtil.convertUsToMs(
batteryStatsHelper.getStats().computeBatteryRealtime(elapsedRealtimeUs, statsType));
}
@@ -390,25 +392,15 @@
}
}
- public static long convertUsToMs(long timeUs) {
- return timeUs / 1000;
- }
-
- public static long convertMsToUs(long timeMs) {
- return timeMs * 1000;
- }
-
public void setForceAppStandby(int uid, String packageName,
int mode) {
final boolean isPreOApp = isLegacyApp(packageName);
if (isPreOApp) {
// Control whether app could run in the background if it is pre O app
- mAppOpsManager.setMode(AppOpsManager.OP_RUN_IN_BACKGROUND, uid, packageName,
- mode);
+ mAppOpsManager.setMode(AppOpsManager.OP_RUN_IN_BACKGROUND, uid, packageName, mode);
}
// Control whether app could run jobs in the background
- mAppOpsManager.setMode(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, uid, packageName,
- mode);
+ mAppOpsManager.setMode(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, uid, packageName, mode);
}
public void initBatteryStatsHelper(BatteryStatsHelper statsHelper, Bundle bundle,
@@ -425,7 +417,8 @@
// Stuff we always need to get BatteryInfo
final Intent batteryBroadcast = mContext.registerReceiver(null,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
- final long elapsedRealtimeUs = BatteryUtils.convertMsToUs(SystemClock.elapsedRealtime());
+ final long elapsedRealtimeUs = PowerUtil.convertMsToUs(
+ SystemClock.elapsedRealtime());
BatteryInfo batteryInfo;
// 0 means we are discharging, anything else means charging
@@ -443,7 +436,7 @@
if (estimate != null) {
batteryInfo = BatteryInfo.getBatteryInfo(mContext, batteryBroadcast, stats,
elapsedRealtimeUs, false /* shortString */,
- BatteryUtils.convertMsToUs(estimate.estimateMillis),
+ PowerUtil.convertMsToUs(estimate.estimateMillis),
estimate.isBasedOnUsage);
} else {
batteryInfo = BatteryInfo.getBatteryInfo(mContext, batteryBroadcast, stats,
diff --git a/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java b/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
index e58ccd3..509f967 100644
--- a/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
+++ b/src/com/android/settings/fuelgauge/DebugEstimatesLoader.java
@@ -22,6 +22,7 @@
import android.os.SystemClock;
import com.android.internal.os.BatteryStatsHelper;
import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.utils.PowerUtil;
import com.android.settingslib.utils.AsyncLoader;
import java.util.ArrayList;
import java.util.List;
@@ -46,7 +47,8 @@
FeatureFactory.getFactory(context).getPowerUsageFeatureProvider(context);
// get stuff we'll need for both BatteryInfo
- final long elapsedRealtimeUs = BatteryUtils.convertMsToUs(SystemClock.elapsedRealtime());
+ final long elapsedRealtimeUs = PowerUtil.convertMsToUs(
+ SystemClock.elapsedRealtime());
Intent batteryBroadcast = getContext().registerReceiver(null,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
BatteryStats stats = mStatsHelper.getStats();
@@ -60,7 +62,7 @@
}
BatteryInfo newInfo = BatteryInfo.getBatteryInfo(getContext(), batteryBroadcast, stats,
elapsedRealtimeUs, false,
- BatteryUtils.convertMsToUs(estimate.estimateMillis),
+ PowerUtil.convertMsToUs(estimate.estimateMillis),
estimate.isBasedOnUsage);
List<BatteryInfo> infos = new ArrayList<>();
diff --git a/src/com/android/settings/fuelgauge/InactiveApps.java b/src/com/android/settings/fuelgauge/InactiveApps.java
index f91a5c6..ac09a57 100644
--- a/src/com/android/settings/fuelgauge/InactiveApps.java
+++ b/src/com/android/settings/fuelgauge/InactiveApps.java
@@ -16,12 +16,21 @@
package com.android.settings.fuelgauge;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_ACTIVE;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_EXEMPTED;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_FREQUENT;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_NEVER;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_RARE;
+import static android.app.usage.UsageStatsManager.STANDBY_BUCKET_WORKING_SET;
+
import android.app.usage.UsageStatsManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
+import android.content.res.Resources;
import android.os.Bundle;
+import android.support.v7.preference.ListPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.Preference.OnPreferenceClickListener;
import android.support.v7.preference.PreferenceGroup;
@@ -29,10 +38,22 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.widget.RadioButtonPreference;
import java.util.List;
-public class InactiveApps extends SettingsPreferenceFragment implements OnPreferenceClickListener {
+public class InactiveApps extends SettingsPreferenceFragment
+ implements Preference.OnPreferenceChangeListener {
+
+ private static final CharSequence[] SETTABLE_BUCKETS_NAMES =
+ {"ACTIVE", "WORKING_SET", "FREQUENT", "RARE"};
+
+ private static final CharSequence[] SETTABLE_BUCKETS_VALUES = {
+ Integer.toString(STANDBY_BUCKET_ACTIVE),
+ Integer.toString(STANDBY_BUCKET_WORKING_SET),
+ Integer.toString(STANDBY_BUCKET_FREQUENT),
+ Integer.toString(STANDBY_BUCKET_RARE)
+ };
private UsageStatsManager mUsageStats;
@@ -68,29 +89,51 @@
List<ResolveInfo> apps = pm.queryIntentActivities(launcherIntent, 0);
for (ResolveInfo app : apps) {
String packageName = app.activityInfo.applicationInfo.packageName;
- Preference p = new Preference(getPrefContext());
+ ListPreference p = new ListPreference(getPrefContext());
p.setTitle(app.loadLabel(pm));
p.setIcon(app.loadIcon(pm));
p.setKey(packageName);
+ p.setEntries(SETTABLE_BUCKETS_NAMES);
+ p.setEntryValues(SETTABLE_BUCKETS_VALUES);
updateSummary(p);
- p.setOnPreferenceClickListener(this);
+ p.setOnPreferenceChangeListener(this);
screen.addPreference(p);
}
}
- private void updateSummary(Preference p) {
- boolean inactive = mUsageStats.isAppInactive(p.getKey());
- p.setSummary(inactive
- ? R.string.inactive_app_inactive_summary
- : R.string.inactive_app_active_summary);
+ static String bucketToName(int bucket) {
+ switch (bucket) {
+ case STANDBY_BUCKET_EXEMPTED: return "EXEMPTED";
+ case STANDBY_BUCKET_ACTIVE: return "ACTIVE";
+ case STANDBY_BUCKET_WORKING_SET: return "WORKING_SET";
+ case STANDBY_BUCKET_FREQUENT: return "FREQUENT";
+ case STANDBY_BUCKET_RARE: return "RARE";
+ case STANDBY_BUCKET_NEVER: return "NEVER";
+ }
+ return "";
+ }
+
+ private void updateSummary(ListPreference p) {
+ final Resources res = getActivity().getResources();
+ final int appBucket = mUsageStats.getAppStandbyBucket(p.getKey());
+ final String bucketName = bucketToName(appBucket);
+ p.setSummary(res.getString(R.string.standby_bucket_summary, bucketName));
+ // Buckets outside of the range of the dynamic ones are only used for special
+ // purposes and can either not be changed out of, or might have undesirable
+ // side-effects in combination with other assumptions.
+ final boolean changeable = appBucket >= STANDBY_BUCKET_ACTIVE
+ && appBucket <= STANDBY_BUCKET_RARE;
+ if (changeable) {
+ p.setValue(Integer.toString(appBucket));
+ }
+ p.setEnabled(changeable);
}
@Override
- public boolean onPreferenceClick(Preference preference) {
- String packageName = preference.getKey();
- mUsageStats.setAppInactive(packageName, !mUsageStats.isAppInactive(packageName));
- updateSummary(preference);
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ mUsageStats.setAppStandbyBucket(preference.getKey(), Integer.parseInt((String) newValue));
+ updateSummary((ListPreference) preference);
return false;
}
}
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
index 6ed92a7..25351d3 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
@@ -47,6 +47,7 @@
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.StringUtil;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
@@ -318,7 +319,7 @@
return;
}
if (usageData.usageList.size() <= 1) {
- CharSequence timeSequence = Utils.formatElapsedTime(getContext(),
+ CharSequence timeSequence = StringUtil.formatElapsedTime(getContext(),
usageData.totalUsageTimeMs, false);
usageData.summary = usageData.usageType == UsageType.IDLE ? timeSequence
: TextUtils.expandTemplate(getText(R.string.battery_used_for), timeSequence);
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index e0954e5..3583b14 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -37,10 +37,7 @@
import android.view.View.OnLongClickListener;
import android.widget.TextView;
-import com.android.internal.hardware.AmbientDisplayConfiguration;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.os.BatterySipper;
-import com.android.internal.os.BatterySipper.DrainType;
import com.android.settings.R;
import com.android.settings.Settings.HighPowerApplicationsActivity;
import com.android.settings.SettingsActivity;
@@ -48,10 +45,7 @@
import com.android.settings.applications.LayoutPreference;
import com.android.settings.applications.manageapplications.ManageApplications;
import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.display.AmbientDisplayPreferenceController;
-import com.android.settings.display.AutoBrightnessPreferenceController;
import com.android.settings.display.BatteryPercentagePreferenceController;
-import com.android.settings.display.TimeoutPreferenceController;
import com.android.settings.fuelgauge.anomaly.Anomaly;
import com.android.settings.fuelgauge.anomaly.AnomalyDetectionPolicy;
import com.android.settings.fuelgauge.batterytip.BatteryTipLoader;
@@ -63,6 +57,8 @@
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.utils.PowerUtil;
+import com.android.settingslib.utils.StringUtil;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -72,7 +68,7 @@
* consumed since the last time it was unplugged.
*/
public class PowerUsageSummary extends PowerUsageBase implements OnLongClickListener,
- OnClickListener, BatteryTipPreferenceController.BatteryTipListener {
+ BatteryTipPreferenceController.BatteryTipListener {
static final String TAG = "PowerUsageSummary";
@@ -80,7 +76,6 @@
private static final String KEY_APP_LIST = "app_list";
private static final String KEY_BATTERY_HEADER = "battery_header";
private static final String KEY_BATTERY_TIP = "battery_tip";
- private static final String KEY_SHOW_ALL_APPS = "show_all_apps";
private static final String KEY_SCREEN_USAGE = "screen_usage";
private static final String KEY_TIME_SINCE_LAST_FULL_CHARGE = "last_full_charge";
@@ -93,14 +88,10 @@
private static final int MENU_STATS_TYPE = Menu.FIRST;
@VisibleForTesting
static final int MENU_HIGH_POWER_APPS = Menu.FIRST + 3;
- @VisibleForTesting
- static final int MENU_TOGGLE_APPS = Menu.FIRST + 4;
private static final int MENU_HELP = Menu.FIRST + 5;
public static final int DEBUG_INFO_LOADER = 3;
@VisibleForTesting
- boolean mShowAllApps = false;
- @VisibleForTesting
PowerGaugePreference mScreenUsagePref;
@VisibleForTesting
PowerGaugePreference mLastFullChargePref;
@@ -169,12 +160,12 @@
// be unplugged for a period of time before being willing ot make an estimate.
summary1.setText(mPowerFeatureProvider.getOldEstimateDebugString(
Formatter.formatShortElapsedTime(getContext(),
- BatteryUtils.convertUsToMs(oldInfo.remainingTimeUs))));
+ PowerUtil.convertUsToMs(oldInfo.remainingTimeUs))));
// for this one we can just set the string directly
summary2.setText(mPowerFeatureProvider.getEnhancedEstimateDebugString(
Formatter.formatShortElapsedTime(getContext(),
- BatteryUtils.convertUsToMs(newInfo.remainingTimeUs))));
+ PowerUtil.convertUsToMs(newInfo.remainingTimeUs))));
batteryView.setBatteryLevel(oldInfo.batteryLevel);
batteryView.setCharging(!oldInfo.discharging);
@@ -221,7 +212,6 @@
mAnomalySparseArray = new SparseArray<>();
restartBatteryInfoLoader();
- restoreSavedInstance(icicle);
}
@Override
@@ -230,21 +220,6 @@
}
@Override
- public void onSaveInstanceState(Bundle outState) {
- super.onSaveInstanceState(outState);
- outState.putBoolean(KEY_SHOW_ALL_APPS, mShowAllApps);
- }
-
- @Override
- public boolean onPreferenceTreeClick(Preference preference) {
- if (KEY_BATTERY_HEADER.equals(preference.getKey())) {
- performBatteryHeaderClick();
- return true;
- }
- return super.onPreferenceTreeClick(preference);
- }
-
- @Override
protected String getLogTag() {
return TAG;
}
@@ -284,11 +259,6 @@
menu.add(Menu.NONE, MENU_HIGH_POWER_APPS, Menu.NONE, R.string.high_power_apps);
- if (mPowerFeatureProvider.isPowerAccountingToggleEnabled()) {
- menu.add(Menu.NONE, MENU_TOGGLE_APPS, Menu.NONE,
- mShowAllApps ? R.string.hide_extra_apps : R.string.show_all_apps);
- }
-
super.onCreateOptionsMenu(menu, inflater);
}
@@ -322,41 +292,11 @@
metricsFeatureProvider.action(context,
MetricsEvent.ACTION_SETTINGS_MENU_BATTERY_OPTIMIZATION);
return true;
- case MENU_TOGGLE_APPS:
- mShowAllApps = !mShowAllApps;
- item.setTitle(mShowAllApps ? R.string.hide_extra_apps : R.string.show_all_apps);
- metricsFeatureProvider.action(context,
- MetricsEvent.ACTION_SETTINGS_MENU_BATTERY_APPS_TOGGLE, mShowAllApps);
- restartBatteryStatsLoader(false /* clearHeader */);
- return true;
default:
return super.onOptionsItemSelected(item);
}
}
- @VisibleForTesting
- void restoreSavedInstance(Bundle savedInstance) {
- if (savedInstance != null) {
- mShowAllApps = savedInstance.getBoolean(KEY_SHOW_ALL_APPS, false);
- }
- }
-
- private void performBatteryHeaderClick() {
- if (mPowerFeatureProvider.isAdvancedUiEnabled()) {
- Utils.startWithFragment(getContext(), PowerUsageAdvanced.class.getName(), null,
- null, 0, R.string.advanced_battery_title, null, getMetricsCategory());
- } else {
- mStatsHelper.storeStatsHistoryInFile(BatteryHistoryDetail.BATTERY_HISTORY_FILE);
- Bundle args = new Bundle(2);
- args.putString(BatteryHistoryDetail.EXTRA_STATS,
- BatteryHistoryDetail.BATTERY_HISTORY_FILE);
- args.putParcelable(BatteryHistoryDetail.EXTRA_BROADCAST,
- mStatsHelper.getBatteryBroadcast());
- Utils.startWithFragment(getContext(), BatteryHistoryDetail.class.getName(), args,
- null, 0, R.string.history_details_title, null, getMetricsCategory());
- }
- }
-
protected void refreshUi() {
final Context context = getContext();
if (context == null) {
@@ -370,13 +310,13 @@
final long lastFullChargeTime = mBatteryUtils.calculateLastFullChargeTime(mStatsHelper,
System.currentTimeMillis());
updateLastFullChargePreference(lastFullChargeTime);
- mScreenUsagePref.setSubtitle(Utils.formatElapsedTime(getContext(),
+ mScreenUsagePref.setSubtitle(StringUtil.formatElapsedTime(getContext(),
mBatteryUtils.calculateScreenUsageTime(mStatsHelper), false));
- final CharSequence timeSequence = Utils.formatRelativeTime(context, lastFullChargeTime,
+ final CharSequence timeSequence = StringUtil.formatRelativeTime(context, lastFullChargeTime,
false);
- mBatteryAppListPreferenceController.refreshAppListGroup(mStatsHelper, mShowAllApps,
- timeSequence);
+ mBatteryAppListPreferenceController.refreshAppListGroup(mStatsHelper,
+ false /* showAllApps */, timeSequence);
}
@VisibleForTesting
@@ -396,7 +336,7 @@
@VisibleForTesting
void updateLastFullChargePreference(long timeMs) {
- final CharSequence timeSequence = Utils.formatRelativeTime(getContext(), timeMs, false);
+ final CharSequence timeSequence = StringUtil.formatRelativeTime(getContext(), timeMs, false);
mLastFullChargePref.setSubtitle(timeSequence);
}
@@ -435,12 +375,9 @@
getLoaderManager().restartLoader(BATTERY_INFO_LOADER, Bundle.EMPTY,
mBatteryInfoLoaderCallbacks);
if (mPowerFeatureProvider.isEstimateDebugEnabled()) {
- // Unfortunately setting a long click listener on a view means it will no
- // longer pass the regular click event to the parent, so we have to register
- // a regular click listener as well.
+ // Set long click action for summary to show debug info
View header = mBatteryLayoutPref.findViewById(R.id.summary1);
header.setOnLongClickListener(this);
- header.setOnClickListener(this);
}
}
@@ -452,11 +389,6 @@
}
@Override
- public void onClick(View view) {
- performBatteryHeaderClick();
- }
-
- @Override
protected void restartBatteryStatsLoader() {
restartBatteryStatsLoader(true /* clearHeader */);
}
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacy.java b/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacy.java
index 605591d..e6c4923 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacy.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacy.java
@@ -69,6 +69,8 @@
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.PowerUtil;
+import com.android.settingslib.utils.StringUtil;
import java.util.ArrayList;
import java.util.List;
@@ -210,12 +212,12 @@
// be unplugged for a period of time before being willing ot make an estimate.
summary1.setText(mPowerFeatureProvider.getOldEstimateDebugString(
Formatter.formatShortElapsedTime(getContext(),
- BatteryUtils.convertUsToMs(oldInfo.remainingTimeUs))));
+ PowerUtil.convertUsToMs(oldInfo.remainingTimeUs))));
// for this one we can just set the string directly
summary2.setText(mPowerFeatureProvider.getEnhancedEstimateDebugString(
Formatter.formatShortElapsedTime(getContext(),
- BatteryUtils.convertUsToMs(newInfo.remainingTimeUs))));
+ PowerUtil.convertUsToMs(newInfo.remainingTimeUs))));
batteryView.setBatteryLevel(oldInfo.batteryLevel);
batteryView.setCharging(!oldInfo.discharging);
@@ -524,7 +526,7 @@
updateScreenPreference();
updateLastFullChargePreference(lastFullChargeTime);
- final CharSequence timeSequence = Utils.formatRelativeTime(context, lastFullChargeTime,
+ final CharSequence timeSequence = StringUtil.formatRelativeTime(context, lastFullChargeTime,
false);
final int resId = mShowAllApps ? R.string.power_usage_list_summary_device
: R.string.power_usage_list_summary;
@@ -653,12 +655,13 @@
mStatsHelper.getUsageList(), DrainType.SCREEN);
final long usageTimeMs = sipper != null ? sipper.usageTimeMs : 0;
- mScreenUsagePref.setSubtitle(Utils.formatElapsedTime(getContext(), usageTimeMs, false));
+ mScreenUsagePref.setSubtitle(
+ StringUtil.formatElapsedTime(getContext(), usageTimeMs, false));
}
@VisibleForTesting
void updateLastFullChargePreference(long timeMs) {
- final CharSequence timeSequence = Utils.formatRelativeTime(getContext(), timeMs, false);
+ final CharSequence timeSequence = StringUtil.formatRelativeTime(getContext(), timeMs, false);
mLastFullChargePref.setSubtitle(timeSequence);
}
@@ -685,8 +688,8 @@
// Only show summary when usage time is longer than one minute
final long usageTimeMs = sipper.usageTimeMs;
if (usageTimeMs >= DateUtils.MINUTE_IN_MILLIS) {
- final CharSequence timeSequence = Utils.formatElapsedTime(getContext(), usageTimeMs,
- false);
+ final CharSequence timeSequence =
+ StringUtil.formatElapsedTime(getContext(), usageTimeMs, false);
preference.setSummary(
(sipper.drainType != DrainType.APP || mBatteryUtils.shouldHideSipper(sipper))
? timeSequence
diff --git a/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceController.java b/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceController.java
new file mode 100644
index 0000000..4d3dd31
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceController.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterysaver;
+
+import android.content.Context;
+import android.provider.Settings;
+import android.support.annotation.VisibleForTesting;
+import android.support.v14.preference.SwitchPreference;
+import android.support.v7.preference.Preference;
+
+import com.android.settings.core.BasePreferenceController;
+import com.android.settings.core.TogglePreferenceController;
+
+/**
+ * Controller that update whether to turn on battery saver automatically
+ */
+public class AutoBatterySaverPreferenceController extends TogglePreferenceController implements
+ Preference.OnPreferenceChangeListener {
+ private static final int LOW_POWER_MODE_TRIGGER_THRESHOLD = 15;
+
+ @VisibleForTesting
+ static final String KEY_AUTO_BATTERY_SAVER = "auto_battery_saver";
+
+ public AutoBatterySaverPreferenceController(Context context) {
+ super(context, KEY_AUTO_BATTERY_SAVER);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public boolean isChecked() {
+ return Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0) != 0;
+ }
+
+ @Override
+ public boolean setChecked(boolean isChecked) {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL,
+ isChecked
+ ? LOW_POWER_MODE_TRIGGER_THRESHOLD
+ : 0);
+ return true;
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java b/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java
new file mode 100644
index 0000000..1c787ab
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java
@@ -0,0 +1,135 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterysaver;
+
+import android.content.ContentResolver;
+import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Handler;
+import android.provider.Settings;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceScreen;
+
+import com.android.settings.R;
+import com.android.settings.Utils;
+import com.android.settings.core.BasePreferenceController;
+import com.android.settings.widget.SeekBarPreference;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnStart;
+import com.android.settingslib.core.lifecycle.events.OnStop;
+
+/**
+ * Controller that update the battery saver seekbar
+ */
+public class AutoBatterySeekBarPreferenceController extends BasePreferenceController implements
+ LifecycleObserver, OnStart, OnStop, SeekBarPreference.OnPreferenceChangeListener {
+ @VisibleForTesting
+ static final String KEY_AUTO_BATTERY_SEEK_BAR = "battery_saver_seek_bar";
+ private SeekBarPreference mPreference;
+ private AutoBatterySaverSettingObserver mContentObserver;
+
+ public AutoBatterySeekBarPreferenceController(Context context, Lifecycle lifecycle) {
+ super(context, KEY_AUTO_BATTERY_SEEK_BAR);
+ mContentObserver = new AutoBatterySaverSettingObserver(new Handler());
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ mPreference = (SeekBarPreference) screen.findPreference(
+ KEY_AUTO_BATTERY_SEEK_BAR);
+ updatePreference(mPreference);
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ super.updateState(preference);
+ updatePreference(preference);
+ }
+
+ @Override
+ public void onStart() {
+ mContentObserver.registerContentObserver();
+ }
+
+ @Override
+ public void onStop() {
+ mContentObserver.unRegisterContentObserver();
+ }
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ final int progress = (int) newValue;
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, progress);
+ return true;
+ }
+
+ @VisibleForTesting
+ void updatePreference(Preference preference) {
+ final ContentResolver contentResolver = mContext.getContentResolver();
+ final int level = Settings.Global.getInt(contentResolver,
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
+ if (level == 0) {
+ preference.setVisible(false);
+ } else {
+ preference.setVisible(true);
+ preference.setTitle(mContext.getString(R.string.battery_saver_seekbar_title,
+ Utils.formatPercentage(level)));
+ ((SeekBarPreference) preference).setProgress(level);
+ }
+ }
+
+ /**
+ * Observer that listens to change from {@link Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL}
+ */
+ private final class AutoBatterySaverSettingObserver extends ContentObserver {
+ private final Uri mUri = Settings.Global.getUriFor(
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL);
+ private final ContentResolver mContentResolver;
+
+ public AutoBatterySaverSettingObserver(Handler handler) {
+ super(handler);
+ mContentResolver = mContext.getContentResolver();
+ }
+
+ public void registerContentObserver() {
+ mContentResolver.registerContentObserver(mUri, false, this);
+ }
+
+ public void unRegisterContentObserver() {
+ mContentResolver.unregisterContentObserver(this);
+ }
+
+ @Override
+ public void onChange(boolean selfChange, Uri uri, int userId) {
+ if (mUri.equals(uri)) {
+ updatePreference(mPreference);
+ }
+ }
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java
new file mode 100644
index 0000000..1d427c9
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterysaver;
+
+import android.content.Context;
+import android.os.PowerManager;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+
+import com.android.settings.fuelgauge.BatteryBroadcastReceiver;
+import com.android.settings.fuelgauge.BatterySaverReceiver;
+import com.android.settings.widget.TwoStateButtonPreferenceController;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnStart;
+import com.android.settingslib.core.lifecycle.events.OnStop;
+
+/**
+ * Controller to update the battery saver button
+ */
+public class BatterySaverButtonPreferenceController extends
+ TwoStateButtonPreferenceController implements
+ LifecycleObserver, OnStart, OnStop, BatterySaverReceiver.BatterySaverListener {
+ private static final String KEY = "battery_saver_button_container";
+ private BatterySaverReceiver mBatterySaverReceiver;
+ @VisibleForTesting
+ PowerManager mPowerManager;
+
+ public BatterySaverButtonPreferenceController(Context context, Lifecycle lifecycle) {
+ super(context, KEY);
+ mPowerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
+ mBatterySaverReceiver = new BatterySaverReceiver(context);
+ mBatterySaverReceiver.setBatterySaverListener(this);
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ }
+
+ @Override
+ public void onStart() {
+ mBatterySaverReceiver.setListening(true);
+ }
+
+ @Override
+ public void onStop() {
+ mBatterySaverReceiver.setListening(false);
+ }
+
+ @Override
+ public void updateState(Preference preference) {
+ super.updateState(preference);
+ setButtonVisibility(!mPowerManager.isPowerSaveMode());
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+
+ @Override
+ public void onButtonClicked(boolean stateOn) {
+ mPowerManager.setPowerSaveMode(stateOn);
+ }
+
+ @Override
+ public void onPowerSaveModeChanged() {
+ setButtonVisibility(!mPowerManager.isPowerSaveMode());
+ }
+
+ @Override
+ public void onBatteryChanged(boolean pluggedIn) {
+ setButtonEnabled(!pluggedIn);
+ }
+}
\ No newline at end of file
diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java
new file mode 100644
index 0000000..2340675
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverSettings.java
@@ -0,0 +1,103 @@
+/*
+ * Copyright (C) 2014 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.settings.fuelgauge.batterysaver;
+
+import android.content.Context;
+import android.os.Bundle;
+import android.os.PowerManager;
+import android.provider.SearchIndexableResource;
+import android.provider.Settings.Global;
+import android.support.annotation.VisibleForTesting;
+import android.util.Log;
+
+import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.internal.util.ArrayUtils;
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settings.search.Indexable;
+import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Battery saver settings page
+ */
+public class BatterySaverSettings extends DashboardFragment {
+ private static final String TAG = "BatterySaverSettings";
+
+ @Override
+ public void onActivityCreated(Bundle savedInstanceState) {
+ super.onActivityCreated(savedInstanceState);
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsEvent.FUELGAUGE_BATTERY_SAVER;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.battery_saver_settings;
+ }
+
+ @Override
+ protected String getLogTag() {
+ return TAG;
+ }
+
+ @Override
+ protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ return buildPreferenceControllers(context, getLifecycle());
+ }
+
+ @Override
+ public int getHelpResource() {
+ return R.string.help_url_battery_saver_settings;
+ }
+
+ private static List<AbstractPreferenceController> buildPreferenceControllers(
+ Context context, Lifecycle lifecycle) {
+ final List<AbstractPreferenceController> controllers = new ArrayList<>();
+ controllers.add(new AutoBatterySaverPreferenceController(context));
+ controllers.add(new AutoBatterySeekBarPreferenceController(context, lifecycle));
+ controllers.add(new BatterySaverButtonPreferenceController(context, lifecycle));
+ return controllers;
+ }
+
+ /**
+ * For Search.
+ */
+ public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new BaseSearchIndexProvider() {
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(
+ Context context, boolean enabled) {
+ final SearchIndexableResource sir = new SearchIndexableResource(context);
+ sir.xmlResId = R.xml.battery_saver_settings;
+ return Arrays.asList(sir);
+ }
+
+ @Override
+ public List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ return buildPreferenceControllers(context, null);
+ }
+ };
+}
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
index b51474d..d93b589 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragment.java
@@ -34,6 +34,11 @@
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.HighUsageTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
+import com.android.settingslib.utils.StringUtil;
+
+import java.util.List;
/**
* Dialog Fragment to show action dialog for each anomaly
@@ -79,11 +84,45 @@
return new AlertDialog.Builder(context)
.setMessage(getString(R.string.battery_tip_dialog_message,
- Utils.formatElapsedTime(context, highUsageTip.getScreenTimeMs(),
+ StringUtil.formatElapsedTime(
+ context, highUsageTip.getScreenTimeMs(),
false /* withSeconds */)))
.setView(view)
.setPositiveButton(android.R.string.ok, null)
.create();
+ case BatteryTip.TipType.APP_RESTRICTION:
+ final RestrictAppTip restrictAppTip = (RestrictAppTip) mBatteryTip;
+ final List<AppInfo> restrictedAppList = restrictAppTip.getRestrictAppList();
+ final int num = restrictedAppList.size();
+
+ final AlertDialog.Builder builder = new AlertDialog.Builder(context)
+ .setTitle(context.getResources().getQuantityString(
+ R.plurals.battery_tip_restrict_app_dialog_title, num, num))
+ .setMessage(getString(R.string.battery_tip_restrict_app_dialog_message))
+ .setPositiveButton(R.string.battery_tip_restrict_app_dialog_ok, this)
+ .setNegativeButton(android.R.string.cancel, null);
+
+ // TODO(b/72385333): consider building dialog with 5+ apps when strings are done
+ if (num > 1) {
+ final RecyclerView restrictionView = (RecyclerView) LayoutInflater.from(
+ context).inflate(R.layout.recycler_view, null);
+ restrictionView.setLayoutManager(new LinearLayoutManager(context));
+ restrictionView.setAdapter(new HighUsageAdapter(context, restrictedAppList));
+ builder.setView(restrictionView);
+ }
+
+ return builder.create();
+ case BatteryTip.TipType.REMOVE_APP_RESTRICTION:
+ final UnrestrictAppTip unrestrictAppTip = (UnrestrictAppTip) mBatteryTip;
+ final CharSequence name = Utils.getApplicationLabel(context,
+ unrestrictAppTip.getPackageName());
+
+ return new AlertDialog.Builder(context)
+ .setTitle(getString(R.string.battery_tip_unrestrict_app_dialog_title, name))
+ .setMessage(R.string.battery_tip_unrestrict_app_dialog_message)
+ .setPositiveButton(R.string.battery_tip_unrestrict_app_dialog_ok, this)
+ .setNegativeButton(R.string.battery_tip_unrestrict_app_dialog_cancel, null)
+ .create();
default:
throw new IllegalArgumentException("unknown type " + mBatteryTip.getType());
}
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
index ced3461..a615841 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoader.java
@@ -26,6 +26,7 @@
import com.android.settings.fuelgauge.batterytip.detectors.HighUsageDetector;
import com.android.settings.fuelgauge.batterytip.detectors.LowBatteryDetector;
import com.android.settings.fuelgauge.batterytip.detectors.SmartBatteryDetector;
+import com.android.settings.fuelgauge.batterytip.detectors.RestrictAppDetector;
import com.android.settings.fuelgauge.batterytip.detectors.SummaryDetector;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.LowBatteryTip;
@@ -70,6 +71,7 @@
tips.add(new SmartBatteryDetector(policy, context.getContentResolver()).detect());
tips.add(new EarlyWarningDetector(policy, context).detect());
tips.add(new SummaryDetector(policy).detect());
+ tips.add(new RestrictAppDetector(policy).detect());
Collections.sort(tips);
return tips;
diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipUtils.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipUtils.java
index 5781afd..5eec322 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipUtils.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipUtils.java
@@ -17,12 +17,17 @@
package com.android.settings.fuelgauge.batterytip;
import android.app.Fragment;
+import android.content.Context;
import com.android.settings.SettingsActivity;
import com.android.settings.fuelgauge.batterytip.actions.BatterySaverAction;
import com.android.settings.fuelgauge.batterytip.actions.BatteryTipAction;
+import com.android.settings.fuelgauge.batterytip.actions.RestrictAppAction;
import com.android.settings.fuelgauge.batterytip.actions.SmartBatteryAction;
+import com.android.settings.fuelgauge.batterytip.actions.UnrestrictAppAction;
import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
/**
* Utility class for {@link BatteryTip}
@@ -42,7 +47,11 @@
case BatteryTip.TipType.SMART_BATTERY_MANAGER:
return new SmartBatteryAction(settingsActivity, fragment);
case BatteryTip.TipType.BATTERY_SAVER:
- return new BatterySaverAction(settingsActivity.getApplicationContext());
+ return new BatterySaverAction(settingsActivity);
+ case BatteryTip.TipType.APP_RESTRICTION:
+ return new RestrictAppAction(settingsActivity, (RestrictAppTip) batteryTip);
+ case BatteryTip.TipType.REMOVE_APP_RESTRICTION:
+ return new UnrestrictAppAction(settingsActivity, (UnrestrictAppTip) batteryTip);
default:
return null;
}
diff --git a/src/com/android/settings/fuelgauge/batterytip/HighUsageAdapter.java b/src/com/android/settings/fuelgauge/batterytip/HighUsageAdapter.java
index 60aa6c8..d982280 100644
--- a/src/com/android/settings/fuelgauge/batterytip/HighUsageAdapter.java
+++ b/src/com/android/settings/fuelgauge/batterytip/HighUsageAdapter.java
@@ -30,6 +30,7 @@
import com.android.settings.R;
import com.android.settings.Utils;
+import com.android.settingslib.utils.StringUtil;
import java.util.List;
/**
@@ -77,7 +78,9 @@
Utils.getBadgedIcon(mIconDrawableFactory, mPackageManager, app.packageName,
UserHandle.myUserId()));
holder.appName.setText(Utils.getApplicationLabel(mContext, app.packageName));
- holder.appTime.setText(Utils.formatElapsedTime(mContext, app.screenOnTimeMs, false));
+ if (app.screenOnTimeMs != 0) {
+ holder.appTime.setText(StringUtil.formatElapsedTime(mContext, app.screenOnTimeMs, false));
+ }
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java b/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java
new file mode 100644
index 0000000..9c49822
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppAction.java
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.actions;
+
+import android.app.AppOpsManager;
+import android.content.Context;
+import android.support.annotation.VisibleForTesting;
+
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+
+import java.util.List;
+
+/**
+ * Action to restrict the apps, then app is not allowed to run in the background.
+ */
+public class RestrictAppAction extends BatteryTipAction {
+ private RestrictAppTip mRestrictAppTip;
+ @VisibleForTesting
+ BatteryUtils mBatteryUtils;
+
+ public RestrictAppAction(Context context, RestrictAppTip tip) {
+ super(context);
+ mRestrictAppTip = tip;
+ mBatteryUtils = BatteryUtils.getInstance(context);
+ }
+
+ /**
+ * Handle the action when user clicks positive button
+ */
+ @Override
+ public void handlePositiveAction() {
+ final List<AppInfo> appInfos = mRestrictAppTip.getRestrictAppList();
+
+ for (int i = 0, size = appInfos.size(); i < size; i++) {
+ final String packageName = appInfos.get(i).packageName;
+ // Force app standby, then app can't run in the background
+ mBatteryUtils.setForceAppStandby(mBatteryUtils.getPackageUid(packageName), packageName,
+ AppOpsManager.MODE_IGNORED);
+ }
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batterytip/actions/UnrestrictAppAction.java b/src/com/android/settings/fuelgauge/batterytip/actions/UnrestrictAppAction.java
new file mode 100644
index 0000000..16812f6
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterytip/actions/UnrestrictAppAction.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.actions;
+
+import android.app.AppOpsManager;
+import android.content.Context;
+
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
+
+/**
+ * Action to clear the restriction to the app
+ */
+public class UnrestrictAppAction extends BatteryTipAction {
+ private UnrestrictAppTip mUnRestrictAppTip;
+ private BatteryUtils mBatteryUtils;
+
+ public UnrestrictAppAction(Context context, UnrestrictAppTip tip) {
+ super(context);
+ mUnRestrictAppTip = tip;
+ mBatteryUtils = BatteryUtils.getInstance(context);
+ }
+
+ /**
+ * Handle the action when user clicks positive button
+ */
+ @Override
+ public void handlePositiveAction() {
+ final String packageName = mUnRestrictAppTip.getPackageName();
+ // Clear force app standby, then app can run in the background
+ mBatteryUtils.setForceAppStandby(mBatteryUtils.getPackageUid(packageName), packageName,
+ AppOpsManager.MODE_ALLOWED);
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java b/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java
new file mode 100644
index 0000000..46e241a
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterytip/detectors/RestrictAppDetector.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.detectors;
+
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.BatteryTipPolicy;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Detector whether to show summary tip. This detector should be executed as the last
+ * {@link BatteryTipDetector} since it need the most up-to-date {@code visibleTips}
+ */
+public class RestrictAppDetector implements BatteryTipDetector {
+ private BatteryTipPolicy mPolicy;
+
+ public RestrictAppDetector(BatteryTipPolicy policy) {
+ mPolicy = policy;
+ }
+
+ @Override
+ public BatteryTip detect() {
+ // TODO(b/70570352): Detect restrict apps here, get data from database
+ final List<AppInfo> highUsageApps = new ArrayList<>();
+ return new RestrictAppTip(
+ highUsageApps.isEmpty() ? BatteryTip.StateType.INVISIBLE : BatteryTip.StateType.NEW,
+ highUsageApps);
+ }
+}
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryTip.java
index 09ebc4b..59cd5ee 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryTip.java
@@ -50,7 +50,8 @@
TipType.SMART_BATTERY_MANAGER,
TipType.APP_RESTRICTION,
TipType.REDUCED_BATTERY,
- TipType.LOW_BATTERY})
+ TipType.LOW_BATTERY,
+ TipType.REMOVE_APP_RESTRICTION})
public @interface TipType {
int SMART_BATTERY_MANAGER = 0;
int APP_RESTRICTION = 1;
@@ -59,6 +60,7 @@
int REDUCED_BATTERY = 4;
int LOW_BATTERY = 5;
int SUMMARY = 6;
+ int REMOVE_APP_RESTRICTION = 7;
}
private static final String KEY_PREFIX = "key_battery_tip";
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
index 2aabf98..6091131 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/HighUsageTip.java
@@ -22,9 +22,9 @@
import android.support.annotation.VisibleForTesting;
import com.android.settings.R;
-import com.android.settings.Utils;
import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settingslib.utils.StringUtil;
import java.util.List;
/**
@@ -65,7 +65,7 @@
@Override
public CharSequence getSummary(Context context) {
return context.getString(R.string.battery_tip_high_usage_summary,
- Utils.formatElapsedTime(context, mScreenTimeMs, false));
+ StringUtil.formatElapsedTime(context, mScreenTimeMs, false));
}
@Override
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
new file mode 100644
index 0000000..1d84d7f
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTip.java
@@ -0,0 +1,106 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.tips;
+
+import android.content.Context;
+import android.content.res.Resources;
+import android.os.Parcel;
+
+import com.android.internal.annotations.VisibleForTesting;
+import com.android.settings.R;
+import com.android.settings.Utils;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Tip to suggest user to restrict some bad apps
+ */
+public class RestrictAppTip extends BatteryTip {
+ private List<AppInfo> mRestrictAppList;
+
+ public RestrictAppTip(@StateType int state, List<AppInfo> restrictApps) {
+ super(TipType.APP_RESTRICTION, state, true /* showDialog */);
+ mRestrictAppList = restrictApps;
+ }
+
+ public RestrictAppTip(@StateType int state, AppInfo appInfo) {
+ super(TipType.APP_RESTRICTION, state, true /* showDialog */);
+ mRestrictAppList = new ArrayList<>();
+ mRestrictAppList.add(appInfo);
+ }
+
+ @VisibleForTesting
+ RestrictAppTip(Parcel in) {
+ super(in);
+ mRestrictAppList = in.createTypedArrayList(AppInfo.CREATOR);
+ }
+
+ @Override
+ public CharSequence getTitle(Context context) {
+ final int num = mRestrictAppList.size();
+ return context.getResources().getQuantityString(
+ mState == StateType.HANDLED
+ ? R.plurals.battery_tip_restrict_handled_title
+ : R.plurals.battery_tip_restrict_title,
+ num, num);
+ }
+
+ @Override
+ public CharSequence getSummary(Context context) {
+ final int num = mRestrictAppList.size();
+ final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
+ mRestrictAppList.get(0).packageName) : "";
+ return mState == StateType.HANDLED
+ ? context.getString(R.string.battery_tip_restrict_handled_summary)
+ : context.getResources().getQuantityString(R.plurals.battery_tip_restrict_summary,
+ num, appLabel, num);
+ }
+
+ @Override
+ public int getIconId() {
+ return mState == StateType.HANDLED
+ ? R.drawable.ic_perm_device_information_green_24dp
+ : R.drawable.ic_battery_alert_24dp;
+ }
+
+ @Override
+ public void updateState(BatteryTip tip) {
+ mState = tip.mState;
+ }
+
+ public List<AppInfo> getRestrictAppList() {
+ return mRestrictAppList;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ super.writeToParcel(dest, flags);
+ dest.writeTypedList(mRestrictAppList);
+ }
+
+ public static final Creator CREATOR = new Creator() {
+ public BatteryTip createFromParcel(Parcel in) {
+ return new RestrictAppTip(in);
+ }
+
+ public BatteryTip[] newArray(int size) {
+ return new RestrictAppTip[size];
+ }
+ };
+}
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java
new file mode 100644
index 0000000..ec67f6a
--- /dev/null
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTip.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.tips;
+
+import android.content.Context;
+import android.os.Parcel;
+
+import com.android.internal.annotations.VisibleForTesting;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+
+/**
+ * Tip to suggest user to remove app restriction. This is the empty tip and it is only used in
+ * {@link com.android.settings.fuelgauge.AdvancedPowerUsageDetail} to create dialog.
+ */
+public class UnrestrictAppTip extends BatteryTip {
+ private AppInfo mAppInfo;
+
+ public UnrestrictAppTip(@StateType int state, AppInfo appInfo) {
+ super(TipType.REMOVE_APP_RESTRICTION, state, true /* showDialog */);
+ mAppInfo = appInfo;
+ }
+
+ @VisibleForTesting
+ UnrestrictAppTip(Parcel in) {
+ super(in);
+ mAppInfo = in.readParcelable(getClass().getClassLoader());
+ }
+
+ @Override
+ public CharSequence getTitle(Context context) {
+ // Don't need title since this is an empty tip
+ return null;
+ }
+
+ @Override
+ public CharSequence getSummary(Context context) {
+ // Don't need summary since this is an empty tip
+ return null;
+ }
+
+ @Override
+ public int getIconId() {
+ return 0;
+ }
+
+ public String getPackageName() {
+ return mAppInfo.packageName;
+ }
+
+ @Override
+ public void updateState(BatteryTip tip) {
+ mState = tip.mState;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ super.writeToParcel(dest, flags);
+ dest.writeParcelable(mAppInfo, flags);
+ }
+
+ public static final Creator CREATOR = new Creator() {
+ public BatteryTip createFromParcel(Parcel in) {
+ return new UnrestrictAppTip(in);
+ }
+
+ public BatteryTip[] newArray(int size) {
+ return new UnrestrictAppTip[size];
+ }
+ };
+}
diff --git a/src/com/android/settings/inputmethod/PhysicalKeyboardPreferenceController.java b/src/com/android/settings/inputmethod/PhysicalKeyboardPreferenceController.java
index ec0aecd..f80b68f 100644
--- a/src/com/android/settings/inputmethod/PhysicalKeyboardPreferenceController.java
+++ b/src/com/android/settings/inputmethod/PhysicalKeyboardPreferenceController.java
@@ -66,12 +66,12 @@
@Override
public void onPause() {
- mIm.registerInputDeviceListener(this, null);
+ mIm.unregisterInputDeviceListener(this);
}
@Override
public void onResume() {
- mIm.unregisterInputDeviceListener(this);
+ mIm.registerInputDeviceListener(this, null);
}
@Override
diff --git a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java
index 38b64a5..3243e56 100644
--- a/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java
+++ b/src/com/android/settings/inputmethod/UserDictionaryAddWordFragment.java
@@ -27,7 +27,7 @@
import android.widget.ArrayAdapter;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.inputmethod.UserDictionaryAddWordContents.LocaleRenderer;
@@ -41,7 +41,7 @@
* As opposed to the UserDictionaryActivity, this is only invoked within Settings
* from the UserDictionarySettings.
*/
-public class UserDictionaryAddWordFragment extends InstrumentedPreferenceFragment
+public class UserDictionaryAddWordFragment extends InstrumentedFragment
implements AdapterView.OnItemSelectedListener,
com.android.internal.app.LocalePicker.LocaleSelectionListener {
@@ -55,7 +55,6 @@
public void onActivityCreated(final Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setHasOptionsMenu(true);
- getActivity().getActionBar().setTitle(R.string.user_dict_settings_title);
// Keep the instance so that we remember mContents when configuration changes (eg rotation)
setRetainInstance(true);
}
diff --git a/src/com/android/settings/localepicker/LocaleDragAndDropAdapter.java b/src/com/android/settings/localepicker/LocaleDragAndDropAdapter.java
index 1d21c12..0d8cbaf 100644
--- a/src/com/android/settings/localepicker/LocaleDragAndDropAdapter.java
+++ b/src/com/android/settings/localepicker/LocaleDragAndDropAdapter.java
@@ -34,7 +34,7 @@
import com.android.internal.app.LocalePicker;
import com.android.internal.app.LocaleStore;
-import com.android.settings.CreateShortcut;
+import com.android.settings.shortcut.CreateShortcut;
import com.android.settings.R;
import java.text.NumberFormat;
diff --git a/src/com/android/settings/location/LocationEnabler.java b/src/com/android/settings/location/LocationEnabler.java
index 30ecf2e..fd557a3 100644
--- a/src/com/android/settings/location/LocationEnabler.java
+++ b/src/com/android/settings/location/LocationEnabler.java
@@ -169,7 +169,7 @@
if (admin == null) {
admin = RestrictedLockUtils.checkIfRestrictionEnforced(
- mContext, UserManager.DISALLOW_CONFIG_LOCATION_MODE, userId);
+ mContext, UserManager.DISALLOW_CONFIG_LOCATION, userId);
}
return admin;
}
diff --git a/src/com/android/settings/location/LocationFooterPreferenceController.java b/src/com/android/settings/location/LocationFooterPreferenceController.java
new file mode 100644
index 0000000..f15d437
--- /dev/null
+++ b/src/com/android/settings/location/LocationFooterPreferenceController.java
@@ -0,0 +1,223 @@
+/*
+ * Copyright (C) 2018 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.settings.location;
+
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.pm.ResolveInfo;
+import android.location.LocationManager;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceCategory;
+import android.util.Log;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnPause;
+import com.android.settingslib.widget.FooterPreference;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * Preference controller for location footer preference category
+ */
+public class LocationFooterPreferenceController extends LocationBasePreferenceController
+ implements LifecycleObserver, OnPause {
+ private static final String TAG = "LocationFooter";
+ private static final String KEY_LOCATION_FOOTER = "location_footer";
+ private static final Intent INJECT_INTENT =
+ new Intent(LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION);
+ private final Context mContext;
+ private final PackageManager mPackageManager;
+ private Collection<ComponentName> mFooterInjectors;
+
+ public LocationFooterPreferenceController(Context context, Lifecycle lifecycle) {
+ super(context, lifecycle);
+ mContext = context;
+ mPackageManager = mContext.getPackageManager();
+ mFooterInjectors = new ArrayList<>();
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ }
+
+ @Override
+ public String getPreferenceKey() {
+ return KEY_LOCATION_FOOTER;
+ }
+
+ /**
+ * Insert footer preferences. Send a {@link LocationManager#SETTINGS_FOOTER_DISPLAYED_ACTION}
+ * broadcast to receivers who have injected a footer
+ */
+ @Override
+ public void updateState(Preference preference) {
+ PreferenceCategory category = (PreferenceCategory) preference;
+ category.removeAll();
+ mFooterInjectors.clear();
+ Collection<FooterData> footerData = getFooterData();
+ for (FooterData data : footerData) {
+ // Generate a footer preference with the given text
+ FooterPreference footerPreference = new FooterPreference(preference.getContext());
+ String footerString;
+ try {
+ footerString =
+ mPackageManager
+ .getResourcesForApplication(data.applicationInfo)
+ .getString(data.footerStringRes);
+ } catch (NameNotFoundException exception) {
+ if (Log.isLoggable(TAG, Log.WARN)) {
+ Log.w(
+ TAG,
+ "Resources not found for application "
+ + data.applicationInfo.packageName);
+ }
+ continue;
+ }
+ footerPreference.setTitle(footerString);
+ // Inject the footer
+ category.addPreference(footerPreference);
+ // Send broadcast to the injector announcing a footer has been injected
+ sendBroadcastFooterDisplayed(data.componentName);
+ mFooterInjectors.add(data.componentName);
+ }
+ }
+
+ /**
+ * Do nothing on location mode changes.
+ */
+ @Override
+ public void onLocationModeChanged(int mode, boolean restricted) {}
+
+ /**
+ * Location footer preference group should be displayed if there is at least one footer to
+ * inject.
+ */
+ @Override
+ public boolean isAvailable() {
+ return !getFooterData().isEmpty();
+ }
+
+ /**
+ * Send a {@link LocationManager#SETTINGS_FOOTER_REMOVED_ACTION} broadcast to footer injectors
+ * when LocationFragment is on pause
+ */
+ @Override
+ public void onPause() {
+ // Send broadcast to the footer injectors. Notify them the footer is not visible.
+ for (ComponentName componentName : mFooterInjectors) {
+ final Intent intent = new Intent(LocationManager.SETTINGS_FOOTER_REMOVED_ACTION);
+ intent.setComponent(componentName);
+ mContext.sendBroadcast(intent);
+ }
+ }
+
+ /**
+ * Send a {@link LocationManager#SETTINGS_FOOTER_DISPLAYED_ACTION} broadcast to a footer
+ * injector.
+ */
+ @VisibleForTesting
+ void sendBroadcastFooterDisplayed(ComponentName componentName) {
+ Intent intent = new Intent(LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION);
+ intent.setComponent(componentName);
+ mContext.sendBroadcast(intent);
+ }
+
+ /**
+ * Return a list of strings with text provided by ACTION_INJECT_FOOTER broadcast receivers.
+ */
+ private Collection<FooterData> getFooterData() {
+ // Fetch footer text from system apps
+ final List<ResolveInfo> resolveInfos =
+ mPackageManager.queryBroadcastReceivers(
+ INJECT_INTENT, PackageManager.GET_META_DATA);
+ if (resolveInfos == null) {
+ if (Log.isLoggable(TAG, Log.ERROR)) {
+ Log.e(TAG, "Unable to resolve intent " + INJECT_INTENT);
+ return Collections.emptyList();
+ }
+ } else if (Log.isLoggable(TAG, Log.DEBUG)) {
+ Log.d(TAG, "Found broadcast receivers: " + resolveInfos);
+ }
+
+ final Collection<FooterData> footerDataList = new ArrayList<>(resolveInfos.size());
+ for (ResolveInfo resolveInfo : resolveInfos) {
+ final ActivityInfo activityInfo = resolveInfo.activityInfo;
+ final ApplicationInfo appInfo = activityInfo.applicationInfo;
+
+ // If a non-system app tries to inject footer, ignore it
+ if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
+ if (Log.isLoggable(TAG, Log.WARN)) {
+ Log.w(TAG, "Ignoring attempt to inject footer from app not in system image: "
+ + resolveInfo);
+ continue;
+ }
+ }
+
+ // Get the footer text resource id from broadcast receiver's metadata
+ if (activityInfo.metaData == null) {
+ if (Log.isLoggable(TAG, Log.DEBUG)) {
+ Log.d(TAG, "No METADATA in broadcast receiver " + activityInfo.name);
+ continue;
+ }
+ }
+
+ final int footerTextRes =
+ activityInfo.metaData.getInt(LocationManager.METADATA_SETTINGS_FOOTER_STRING);
+ if (footerTextRes == 0) {
+ if (Log.isLoggable(TAG, Log.WARN)) {
+ Log.w(
+ TAG,
+ "No mapping of integer exists for "
+ + LocationManager.METADATA_SETTINGS_FOOTER_STRING);
+ }
+ continue;
+ }
+ footerDataList.add(
+ new FooterData(
+ footerTextRes,
+ appInfo,
+ new ComponentName(activityInfo.packageName, activityInfo.name)));
+ }
+ return footerDataList;
+ }
+
+ /**
+ * Contains information related to a footer.
+ */
+ private static class FooterData {
+
+ // The string resource of the footer
+ final int footerStringRes;
+
+ // Application info of receiver injecting this footer
+ final ApplicationInfo applicationInfo;
+
+ // The component that injected the footer. It must be a receiver of broadcast
+ // LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION
+ final ComponentName componentName;
+
+ FooterData(int footerRes, ApplicationInfo appInfo, ComponentName componentName) {
+ this.footerStringRes = footerRes;
+ this.applicationInfo = appInfo;
+ this.componentName = componentName;
+ }
+ }
+}
diff --git a/src/com/android/settings/location/LocationSettings.java b/src/com/android/settings/location/LocationSettings.java
index 3cc5b84..510c162 100644
--- a/src/com/android/settings/location/LocationSettings.java
+++ b/src/com/android/settings/location/LocationSettings.java
@@ -131,9 +131,10 @@
controllers.add(new LocationForWorkPreferenceController(context, lifecycle));
controllers.add(
new RecentLocationRequestPreferenceController(context, fragment, lifecycle));
+ controllers.add(new LocationScanningPreferenceController(context));
controllers.add(
new LocationServicePreferenceController(context, fragment, lifecycle));
- controllers.add(new LocationScanningPreferenceController(context));
+ controllers.add(new LocationFooterPreferenceController(context, lifecycle));
return controllers;
}
diff --git a/src/com/android/settings/location/RecentLocationRequestPreferenceController.java b/src/com/android/settings/location/RecentLocationRequestPreferenceController.java
index 8cbe95c..b17d19e 100644
--- a/src/com/android/settings/location/RecentLocationRequestPreferenceController.java
+++ b/src/com/android/settings/location/RecentLocationRequestPreferenceController.java
@@ -20,19 +20,15 @@
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceScreen;
-import android.util.FeatureFlagUtils;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
-import com.android.settings.applications.InstalledAppDetails;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.widget.AppPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.location.RecentLocationApps;
import java.util.ArrayList;
-import java.util.Comparator;
import java.util.List;
public class RecentLocationRequestPreferenceController extends LocationBasePreferenceController {
@@ -60,19 +56,11 @@
public boolean onPreferenceClick(Preference preference) {
// start new fragment to display extended information
final Bundle args = new Bundle();
- if (FeatureFlagUtils.isEnabled(mFragment.getActivity(), FeatureFlags.APP_INFO_V2)) {
- args.putString(AppInfoDashboardFragment.ARG_PACKAGE_NAME, mPackage);
- ((SettingsActivity) mFragment.getActivity()).startPreferencePanelAsUser(
- mFragment,
- AppInfoDashboardFragment.class.getName(), args,
- R.string.application_info_label, null, mUserHandle);
- } else {
- args.putString(InstalledAppDetails.ARG_PACKAGE_NAME, mPackage);
- ((SettingsActivity) mFragment.getActivity()).startPreferencePanelAsUser(
- mFragment,
- InstalledAppDetails.class.getName(), args,
- R.string.application_info_label, null, mUserHandle);
- }
+ args.putString(AppInfoDashboardFragment.ARG_PACKAGE_NAME, mPackage);
+ ((SettingsActivity) mFragment.getActivity()).startPreferencePanelAsUser(
+ mFragment,
+ AppInfoDashboardFragment.class.getName(), args,
+ R.string.application_info_label, null, mUserHandle);
return true;
}
}
diff --git a/src/com/android/settings/network/NetworkScorerPicker.java b/src/com/android/settings/network/NetworkScorerPicker.java
index 187c9ce..34accf2 100644
--- a/src/com/android/settings/network/NetworkScorerPicker.java
+++ b/src/com/android/settings/network/NetworkScorerPicker.java
@@ -50,7 +50,6 @@
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
super.onCreatePreferences(savedInstanceState, rootKey);
- addPreferencesFromResource(R.xml.network_scorer_picker_prefs);
updateCandidates();
}
@@ -69,6 +68,11 @@
return view;
}
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.network_scorer_picker_prefs;
+ }
+
@VisibleForTesting
public void updateCandidates() {
final PreferenceScreen screen = getPreferenceScreen();
diff --git a/src/com/android/settings/nfc/AndroidBeam.java b/src/com/android/settings/nfc/AndroidBeam.java
index 707017b..8377f14 100644
--- a/src/com/android/settings/nfc/AndroidBeam.java
+++ b/src/com/android/settings/nfc/AndroidBeam.java
@@ -29,7 +29,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settingslib.HelpUtils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.ShowAdminSupportDetailsDialog;
@@ -38,7 +38,7 @@
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
-public class AndroidBeam extends InstrumentedPreferenceFragment
+public class AndroidBeam extends InstrumentedFragment
implements SwitchBar.OnSwitchChangeListener {
private View mView;
private NfcAdapter mNfcAdapter;
diff --git a/src/com/android/settings/notification/AllowSoundPreferenceController.java b/src/com/android/settings/notification/AllowSoundPreferenceController.java
index dcd5e45..7186be1 100644
--- a/src/com/android/settings/notification/AllowSoundPreferenceController.java
+++ b/src/com/android/settings/notification/AllowSoundPreferenceController.java
@@ -56,6 +56,7 @@
}
+ @Override
public void updateState(Preference preference) {
if (mChannel != null) {
RestrictedSwitchPreference pref = (RestrictedSwitchPreference) preference;
diff --git a/src/com/android/settings/notification/AppNotificationSettings.java b/src/com/android/settings/notification/AppNotificationSettings.java
index 333e060..78139dc 100644
--- a/src/com/android/settings/notification/AppNotificationSettings.java
+++ b/src/com/android/settings/notification/AppNotificationSettings.java
@@ -19,10 +19,8 @@
import android.app.NotificationChannel;
import android.app.NotificationChannelGroup;
import android.content.Context;
-import android.content.Intent;
import android.os.AsyncTask;
-import android.os.Bundle;
-import android.provider.Settings;
+import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceGroup;
@@ -32,9 +30,8 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
-import com.android.settings.Utils;
-import com.android.settings.applications.AppInfoBase;
-import com.android.settings.widget.MasterSwitchPreference;
+import com.android.settings.widget.MasterCheckBoxPreference;
+import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.core.AbstractPreferenceController;
import java.util.ArrayList;
@@ -120,7 +117,8 @@
mControllers.add(new BadgePreferenceController(context, mBackend));
mControllers.add(new AllowSoundPreferenceController(
context, mImportanceListener, mBackend));
- mControllers.add(new ImportancePreferenceController(context));
+ mControllers.add(new ImportancePreferenceController(
+ context, mImportanceListener, mBackend));
mControllers.add(new SoundPreferenceController(context, this,
mImportanceListener, mBackend));
mControllers.add(new LightsPreferenceController(context, mBackend));
@@ -178,17 +176,37 @@
groupCategory.setKey(group.getId());
populateGroupToggle(groupCategory, group);
}
-
- final List<NotificationChannel> channels = group.getChannels();
- Collections.sort(channels, mChannelComparator);
- int N = channels.size();
- for (int i = 0; i < N; i++) {
- final NotificationChannel channel = channels.get(i);
- populateSingleChannelPrefs(groupCategory, channel, group.isBlocked());
+ if (!group.isBlocked()) {
+ final List<NotificationChannel> channels = group.getChannels();
+ Collections.sort(channels, mChannelComparator);
+ int N = channels.size();
+ for (int i = 0; i < N; i++) {
+ final NotificationChannel channel = channels.get(i);
+ populateSingleChannelPrefs(groupCategory, channel, group.isBlocked());
+ }
}
}
}
+ protected void populateGroupToggle(final PreferenceGroup parent,
+ NotificationChannelGroup group) {
+ RestrictedSwitchPreference preference = new RestrictedSwitchPreference(getPrefContext());
+ preference.setTitle(R.string.notification_switch_label);
+ preference.setEnabled(mSuspendedAppsAdmin == null
+ && isChannelGroupBlockable(group));
+ preference.setChecked(!group.isBlocked());
+ preference.setOnPreferenceClickListener(preference1 -> {
+ final boolean allowGroup = ((SwitchPreference) preference1).isChecked();
+ group.setBlocked(!allowGroup);
+ mBackend.updateChannelGroup(mAppRow.pkg, mAppRow.uid, group);
+
+ onGroupBlockStateChanged(group);
+ return true;
+ });
+
+ parent.addPreference(preference);
+ }
+
private Comparator<NotificationChannelGroup> mChannelGroupComparator =
new Comparator<NotificationChannelGroup>() {
@@ -203,4 +221,37 @@
return left.getId().compareTo(right.getId());
}
};
+
+ protected void onGroupBlockStateChanged(NotificationChannelGroup group) {
+ if (group == null) {
+ return;
+ }
+ PreferenceGroup groupGroup = (
+ PreferenceGroup) getPreferenceScreen().findPreference(group.getId());
+
+ if (groupGroup != null) {
+ if (group.isBlocked()) {
+ List<Preference> toRemove = new ArrayList<>();
+ int childCount = groupGroup.getPreferenceCount();
+ for (int i = 0; i < childCount; i++) {
+ Preference pref = groupGroup.getPreference(i);
+ if (pref instanceof MasterCheckBoxPreference) {
+ toRemove.add(pref);
+ }
+ }
+ for (Preference pref : toRemove) {
+ groupGroup.removePreference(pref);
+ }
+ } else {
+ final List<NotificationChannel> channels = group.getChannels();
+ Collections.sort(channels, mChannelComparator);
+ int N = channels.size();
+ for (int i = 0; i < N; i++) {
+ final NotificationChannel channel = channels.get(i);
+ populateSingleChannelPrefs(groupGroup, channel, group.isBlocked());
+ }
+ }
+ }
+ }
+
}
diff --git a/src/com/android/settings/notification/BlockPreferenceController.java b/src/com/android/settings/notification/BlockPreferenceController.java
index 6b65b0f..8b27098 100644
--- a/src/com/android/settings/notification/BlockPreferenceController.java
+++ b/src/com/android/settings/notification/BlockPreferenceController.java
@@ -103,6 +103,10 @@
mChannel.setImportance(importance);
saveChannel();
}
+ if (mBackend.onlyHasDefaultChannel(mAppRow.pkg, mAppRow.uid)) {
+ mAppRow.banned = blocked;
+ mBackend.setNotificationsEnabledForPackage(mAppRow.pkg, mAppRow.uid, !blocked);
+ }
} else if (mChannelGroup != null && mChannelGroup.getGroup() != null) {
mChannelGroup.setBlocked(blocked);
mBackend.updateChannelGroup(mAppRow.pkg, mAppRow.uid, mChannelGroup.getGroup());
diff --git a/src/com/android/settings/notification/ChannelImportanceSettings.java b/src/com/android/settings/notification/ChannelImportanceSettings.java
deleted file mode 100644
index 27b23b8..0000000
--- a/src/com/android/settings/notification/ChannelImportanceSettings.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.notification;
-
-import static android.app.NotificationChannel.USER_LOCKED_IMPORTANCE;
-import static android.app.NotificationChannel.USER_LOCKED_SOUND;
-import static android.app.NotificationManager.IMPORTANCE_DEFAULT;
-import static android.app.NotificationManager.IMPORTANCE_HIGH;
-import static android.app.NotificationManager.IMPORTANCE_LOW;
-import static android.app.NotificationManager.IMPORTANCE_MAX;
-import static android.app.NotificationManager.IMPORTANCE_MIN;
-
-import android.content.Context;
-import android.media.RingtoneManager;
-import android.provider.SearchIndexableResource;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-import android.text.TextUtils;
-import android.util.Log;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.R;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.widget.RadioButtonPreference;
-import com.android.settingslib.core.AbstractPreferenceController;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class ChannelImportanceSettings extends NotificationSettingsBase
- implements RadioButtonPreference.OnClickListener, Indexable {
- private static final String TAG = "NotiImportance";
-
- private static final String KEY_IMPORTANCE_HIGH = "importance_high";
- private static final String KEY_IMPORTANCE_DEFAULT = "importance_default";
- private static final String KEY_IMPORTANCE_LOW = "importance_low";
- private static final String KEY_IMPORTANCE_MIN = "importance_min";
-
- List<RadioButtonPreference> mImportances = new ArrayList<>();
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.NOTIFICATION_CHANNEL_IMPORTANCE;
- }
-
- @Override
- public void onResume() {
- super.onResume();
- if (mAppRow == null || mChannel == null) {
- Log.w(TAG, "Missing package or channel");
- finish();
- return;
- }
- createPreferenceHierarchy();
- }
-
- @Override
- protected String getLogTag() {
- return TAG;
- }
-
- @Override
- protected int getPreferenceScreenResId() {
- return R.xml.notification_importance;
- }
-
- @Override
- protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
- return null;
- }
-
- @Override
- public void onPause() {
- super.onPause();
- }
-
- private PreferenceScreen createPreferenceHierarchy() {
- PreferenceScreen root = getPreferenceScreen();
-
- for (int i = 0; i < root.getPreferenceCount(); i++) {
- Preference pref = root.getPreference(i);
- if (pref instanceof RadioButtonPreference) {
- RadioButtonPreference radioPref = (RadioButtonPreference) pref;
- radioPref.setOnClickListener(this);
- mImportances.add(radioPref);
- }
- }
-
- switch (mChannel.getImportance()) {
- case IMPORTANCE_MIN:
- updateRadioButtons(KEY_IMPORTANCE_MIN);
- break;
- case IMPORTANCE_LOW:
- updateRadioButtons(KEY_IMPORTANCE_LOW);
- break;
- case IMPORTANCE_DEFAULT:
- updateRadioButtons(KEY_IMPORTANCE_DEFAULT);
- break;
- case IMPORTANCE_HIGH:
- case IMPORTANCE_MAX:
- updateRadioButtons(KEY_IMPORTANCE_HIGH);
- break;
- }
-
- return root;
- }
-
- private void updateRadioButtons(String selectionKey) {
- for (RadioButtonPreference pref : mImportances) {
- if (selectionKey.equals(pref.getKey())) {
- pref.setChecked(true);
- } else {
- pref.setChecked(false);
- }
- }
- }
-
- @Override
- public void onRadioButtonClicked(RadioButtonPreference clicked) {
- int oldImportance = mChannel.getImportance();
- switch (clicked.getKey()) {
- case KEY_IMPORTANCE_HIGH:
- mChannel.setImportance(IMPORTANCE_HIGH);
- break;
- case KEY_IMPORTANCE_DEFAULT:
- mChannel.setImportance(IMPORTANCE_DEFAULT);
- break;
- case KEY_IMPORTANCE_LOW:
- mChannel.setImportance(IMPORTANCE_LOW);
- break;
- case KEY_IMPORTANCE_MIN:
- mChannel.setImportance(IMPORTANCE_MIN);
- break;
- }
- updateRadioButtons(clicked.getKey());
-
- // If you are moving from an importance level without sound to one with sound,
- // but the sound you had selected was "Silence",
- // then set sound for this channel to your default sound,
- // because you probably intended to cause this channel to actually start making sound.
- if (oldImportance < IMPORTANCE_DEFAULT
- && !SoundPreferenceController.hasValidSound(mChannel)
- && mChannel.getImportance() >= IMPORTANCE_DEFAULT) {
- mChannel.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION),
- mChannel.getAudioAttributes());
- mChannel.lockFields(USER_LOCKED_SOUND);
- }
- mChannel.lockFields(USER_LOCKED_IMPORTANCE);
- mBackend.updateChannel(mAppRow.pkg, mAppRow.uid, mChannel);
- }
-}
diff --git a/src/com/android/settings/notification/ChannelNotificationSettings.java b/src/com/android/settings/notification/ChannelNotificationSettings.java
index ea17a05..23451ec 100644
--- a/src/com/android/settings/notification/ChannelNotificationSettings.java
+++ b/src/com/android/settings/notification/ChannelNotificationSettings.java
@@ -79,7 +79,8 @@
mControllers = new ArrayList<>();
mControllers.add(new HeaderPreferenceController(context, this));
mControllers.add(new BlockPreferenceController(context, mImportanceListener, mBackend));
- mControllers.add(new ImportancePreferenceController(context));
+ mControllers.add(new ImportancePreferenceController(
+ context, mImportanceListener, mBackend));
mControllers.add(new AllowSoundPreferenceController(
context, mImportanceListener, mBackend));
mControllers.add(new SoundPreferenceController(context, this,
diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java
index 7cfa124..a3af471 100644
--- a/src/com/android/settings/notification/ConfigureNotificationSettings.java
+++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java
@@ -30,9 +30,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.RingtonePreference;
-import com.android.settings.applications.NotificationApps;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.gestures.SwipeToNotificationPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
@@ -153,15 +151,6 @@
}
}
- public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
- = new SummaryLoader.SummaryProviderFactory() {
- @Override
- public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
- SummaryLoader summaryLoader) {
- return new NotificationApps.SummaryProvider(activity, summaryLoader);
- }
- };
-
/**
* For Search.
*/
diff --git a/src/com/android/settings/notification/DeletedChannelsPreferenceController.java b/src/com/android/settings/notification/DeletedChannelsPreferenceController.java
index 16eb9ed..45fb8ec 100644
--- a/src/com/android/settings/notification/DeletedChannelsPreferenceController.java
+++ b/src/com/android/settings/notification/DeletedChannelsPreferenceController.java
@@ -55,7 +55,6 @@
preference.setTitle(mContext.getResources().getQuantityString(
R.plurals.deleted_channels, deletedChannelCount, deletedChannelCount));
}
- preference.setEnabled(false);
preference.setSelectable(false);
}
}
diff --git a/src/com/android/settings/notification/EnableZenModeDialog.java b/src/com/android/settings/notification/EnableZenModeDialog.java
deleted file mode 100644
index f683a21..0000000
--- a/src/com/android/settings/notification/EnableZenModeDialog.java
+++ /dev/null
@@ -1,467 +0,0 @@
-package com.android.settings.notification;
-
-/*
- * Copyright (C) 2018 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.
- */
-
-import static android.util.Log.wtf;
-
-import android.app.Activity;
-import android.app.ActivityManager;
-import android.app.AlarmManager;
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.app.NotificationManager;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.net.Uri;
-import android.os.Bundle;
-import android.provider.Settings;
-import android.service.notification.Condition;
-import android.service.notification.ZenModeConfig;
-import android.text.TextUtils;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.CompoundButton;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.RadioButton;
-import android.widget.RadioGroup;
-import android.widget.ScrollView;
-import android.widget.TextView;
-
-import com.android.internal.annotations.VisibleForTesting;
-import com.android.internal.logging.MetricsLogger;
-import com.android.internal.logging.nano.MetricsProto;
-import com.android.settings.R;
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
-
-import java.util.Arrays;
-import java.util.Calendar;
-import java.util.GregorianCalendar;
-import java.util.Objects;
-
-public class EnableZenModeDialog extends InstrumentedDialogFragment {
-
- private static final String TAG = "EnableZenModeDialog";
- private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
-
- private static final int[] MINUTE_BUCKETS = ZenModeConfig.MINUTE_BUCKETS;
- private static final int MIN_BUCKET_MINUTES = MINUTE_BUCKETS[0];
- private static final int MAX_BUCKET_MINUTES = MINUTE_BUCKETS[MINUTE_BUCKETS.length - 1];
- private static final int DEFAULT_BUCKET_INDEX = Arrays.binarySearch(MINUTE_BUCKETS, 60);
-
- @VisibleForTesting
- public static final int FOREVER_CONDITION_INDEX = 0;
- @VisibleForTesting
- public static final int COUNTDOWN_CONDITION_INDEX = 1;
- @VisibleForTesting
- public static final int COUNTDOWN_ALARM_CONDITION_INDEX = 2;
- @VisibleForTesting
- protected Activity mActivity;
-
- private static final int SECONDS_MS = 1000;
- private static final int MINUTES_MS = 60 * SECONDS_MS;
-
- @VisibleForTesting
- protected Uri mForeverId;
- private int mBucketIndex = -1;
-
- private AlarmManager mAlarmManager;
- private int mUserId;
- private boolean mAttached;
-
- @VisibleForTesting
- protected Context mContext;
-
- private RadioGroup mZenRadioGroup;
- @VisibleForTesting
- protected LinearLayout mZenRadioGroupContent;
- private int MAX_MANUAL_DND_OPTIONS = 3;
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- NotificationManager noMan = (NotificationManager) getContext().
- getSystemService(Context.NOTIFICATION_SERVICE);
- mContext = getContext();
- mForeverId = Condition.newId(mContext).appendPath("forever").build();
- mAlarmManager = (AlarmManager) getContext().getSystemService(Context.ALARM_SERVICE);
- mUserId = mContext.getUserId();
- mAttached = false;
-
- final AlertDialog.Builder builder = new AlertDialog.Builder(getContext())
- .setTitle(R.string.zen_mode_settings_turn_on_dialog_title)
- .setNegativeButton(R.string.cancel, null)
- .setPositiveButton(R.string.zen_mode_enable_dialog_turn_on,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- int checkedId = mZenRadioGroup.getCheckedRadioButtonId();
- ConditionTag tag = getConditionTagAt(checkedId);
-
- if (isForever(tag.condition)) {
- MetricsLogger.action(getContext(),
- MetricsProto.MetricsEvent.
- NOTIFICATION_ZEN_MODE_TOGGLE_ON_FOREVER);
- } else if (isAlarm(tag.condition)) {
- MetricsLogger.action(getContext(),
- MetricsProto.MetricsEvent.
- NOTIFICATION_ZEN_MODE_TOGGLE_ON_ALARM);
- } else if (isCountdown(tag.condition)) {
- MetricsLogger.action(getContext(),
- MetricsProto.MetricsEvent.
- NOTIFICATION_ZEN_MODE_TOGGLE_ON_COUNTDOWN);
- } else {
- wtf(TAG, "Invalid manual condition: " + tag.condition);
- }
- // always triggers priority-only dnd with chosen condition
- noMan.setZenMode(Settings.Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS,
- getRealConditionId(tag.condition), TAG);
- }
- });
-
- View contentView = getContentView();
- bindConditions(forever());
- builder.setView(contentView);
- return builder.create();
- }
-
- private void hideAllConditions() {
- final int N = mZenRadioGroupContent.getChildCount();
- for (int i = 0; i < N; i++) {
- mZenRadioGroupContent.getChildAt(i).setVisibility(View.GONE);
- }
- }
-
- protected View getContentView() {
- if (mActivity == null) {
- mActivity = getActivity();
- }
- final LayoutInflater inflater = mActivity.getLayoutInflater();
- View contentView = inflater.inflate(R.layout.zen_mode_turn_on_dialog_container, null);
- ScrollView container = (ScrollView) contentView.findViewById(R.id.container);
-
- mZenRadioGroup = container.findViewById(R.id.zen_radio_buttons);
- mZenRadioGroupContent = container.findViewById(R.id.zen_radio_buttons_content);
-
- for (int i = 0; i < MAX_MANUAL_DND_OPTIONS; i++) {
- final View radioButton = inflater.inflate(R.layout.zen_mode_radio_button,
- mZenRadioGroup, false);
- mZenRadioGroup.addView(radioButton);
- radioButton.setId(i);
-
- final View radioButtonContent = inflater.inflate(R.layout.zen_mode_condition,
- mZenRadioGroupContent, false);
- radioButtonContent.setId(i + MAX_MANUAL_DND_OPTIONS);
- mZenRadioGroupContent.addView(radioButtonContent);
- }
- hideAllConditions();
- return contentView;
- }
-
- @Override
- public int getMetricsCategory() {
- return MetricsProto.MetricsEvent.NOTIFICATION_ZEN_MODE_ENABLE_DIALOG;
- }
-
- @VisibleForTesting
- protected void bind(final Condition condition, final View row, final int rowId) {
- if (condition == null) throw new IllegalArgumentException("condition must not be null");
- final boolean enabled = condition.state == Condition.STATE_TRUE;
- final ConditionTag tag = row.getTag() != null ? (ConditionTag) row.getTag() :
- new ConditionTag();
- row.setTag(tag);
- final boolean first = tag.rb == null;
- if (tag.rb == null) {
- tag.rb = (RadioButton) mZenRadioGroup.getChildAt(rowId);
- }
- tag.condition = condition;
- final Uri conditionId = getConditionId(tag.condition);
- if (DEBUG) Log.d(TAG, "bind i=" + mZenRadioGroupContent.indexOfChild(row) + " first="
- + first + " condition=" + conditionId);
- tag.rb.setEnabled(enabled);
- tag.rb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
- if (isChecked) {
- tag.rb.setChecked(true);
- if (DEBUG) Log.d(TAG, "onCheckedChanged " + conditionId);
- MetricsLogger.action(mContext,
- MetricsProto.MetricsEvent.QS_DND_CONDITION_SELECT);
- announceConditionSelection(tag);
- }
- }
- });
-
- updateUi(tag, row, condition, enabled, rowId, conditionId);
- row.setVisibility(View.VISIBLE);
- }
-
- @VisibleForTesting
- protected ConditionTag getConditionTagAt(int index) {
- return (ConditionTag) mZenRadioGroupContent.getChildAt(index).getTag();
- }
-
- @VisibleForTesting
- protected void bindConditions(Condition c) {
- // forever
- bind(forever(), mZenRadioGroupContent.getChildAt(FOREVER_CONDITION_INDEX),
- FOREVER_CONDITION_INDEX);
- if (c == null) {
- bindGenericCountdown();
- bindNextAlarm(getTimeUntilNextAlarmCondition());
- } else if (isForever(c)) {
- getConditionTagAt(FOREVER_CONDITION_INDEX).rb.setChecked(true);
- bindGenericCountdown();
- bindNextAlarm(getTimeUntilNextAlarmCondition());
- } else {
- if (isAlarm(c)) {
- bindGenericCountdown();
- bindNextAlarm(c);
- getConditionTagAt(COUNTDOWN_ALARM_CONDITION_INDEX).rb.setChecked(true);
- } else if (isCountdown(c)) {
- bindNextAlarm(getTimeUntilNextAlarmCondition());
- bind(c, mZenRadioGroupContent.getChildAt(COUNTDOWN_CONDITION_INDEX),
- COUNTDOWN_CONDITION_INDEX);
- getConditionTagAt(COUNTDOWN_CONDITION_INDEX).rb.setChecked(true);
- } else {
- wtf(TAG, "Invalid manual condition: " + c);
- }
- }
- }
-
- public static Uri getConditionId(Condition condition) {
- return condition != null ? condition.id : null;
- }
-
- public Condition forever() {
- Uri foreverId = Condition.newId(mContext).appendPath("forever").build();
- return new Condition(foreverId, foreverSummary(mContext), "", "", 0 /*icon*/,
- Condition.STATE_TRUE, 0 /*flags*/);
- }
-
- public long getNextAlarm() {
- final AlarmManager.AlarmClockInfo info = mAlarmManager.getNextAlarmClock(mUserId);
- return info != null ? info.getTriggerTime() : 0;
- }
-
- @VisibleForTesting
- protected boolean isAlarm(Condition c) {
- return c != null && ZenModeConfig.isValidCountdownToAlarmConditionId(c.id);
- }
-
- @VisibleForTesting
- protected boolean isCountdown(Condition c) {
- return c != null && ZenModeConfig.isValidCountdownConditionId(c.id);
- }
-
- private boolean isForever(Condition c) {
- return c != null && mForeverId.equals(c.id);
- }
-
- private Uri getRealConditionId(Condition condition) {
- return isForever(condition) ? null : getConditionId(condition);
- }
-
- private String foreverSummary(Context context) {
- return context.getString(com.android.internal.R.string.zen_mode_forever);
- }
-
- private static void setToMidnight(Calendar calendar) {
- calendar.set(Calendar.HOUR_OF_DAY, 0);
- calendar.set(Calendar.MINUTE, 0);
- calendar.set(Calendar.SECOND, 0);
- calendar.set(Calendar.MILLISECOND, 0);
- }
-
- // Returns a time condition if the next alarm is within the next week.
- @VisibleForTesting
- protected Condition getTimeUntilNextAlarmCondition() {
- GregorianCalendar weekRange = new GregorianCalendar();
- setToMidnight(weekRange);
- weekRange.add(Calendar.DATE, 6);
- final long nextAlarmMs = getNextAlarm();
- if (nextAlarmMs > 0) {
- GregorianCalendar nextAlarm = new GregorianCalendar();
- nextAlarm.setTimeInMillis(nextAlarmMs);
- setToMidnight(nextAlarm);
-
- if (weekRange.compareTo(nextAlarm) >= 0) {
- return ZenModeConfig.toNextAlarmCondition(mContext, nextAlarmMs,
- ActivityManager.getCurrentUser());
- }
- }
- return null;
- }
-
- @VisibleForTesting
- protected void bindGenericCountdown() {
- mBucketIndex = DEFAULT_BUCKET_INDEX;
- Condition countdown = ZenModeConfig.toTimeCondition(mContext,
- MINUTE_BUCKETS[mBucketIndex], ActivityManager.getCurrentUser());
- if (!mAttached || getConditionTagAt(COUNTDOWN_CONDITION_INDEX).condition == null) {
- bind(countdown, mZenRadioGroupContent.getChildAt(COUNTDOWN_CONDITION_INDEX),
- COUNTDOWN_CONDITION_INDEX);
- }
- }
-
- private void updateUi(ConditionTag tag, View row, Condition condition,
- boolean enabled, int rowId, Uri conditionId) {
- if (tag.lines == null) {
- tag.lines = row.findViewById(android.R.id.content);
- }
- if (tag.line1 == null) {
- tag.line1 = (TextView) row.findViewById(android.R.id.text1);
- }
-
- if (tag.line2 == null) {
- tag.line2 = (TextView) row.findViewById(android.R.id.text2);
- }
-
- final String line1 = !TextUtils.isEmpty(condition.line1) ? condition.line1
- : condition.summary;
- final String line2 = condition.line2;
- tag.line1.setText(line1);
- if (TextUtils.isEmpty(line2)) {
- tag.line2.setVisibility(View.GONE);
- } else {
- tag.line2.setVisibility(View.VISIBLE);
- tag.line2.setText(line2);
- }
- tag.lines.setEnabled(enabled);
- tag.lines.setAlpha(enabled ? 1 : .4f);
-
- tag.lines.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- tag.rb.setChecked(true);
- }
- });
-
- // minus button
- final ImageView button1 = (ImageView) row.findViewById(android.R.id.button1);
- button1.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- onClickTimeButton(row, tag, false /*down*/, rowId);
- }
- });
-
- // plus button
- final ImageView button2 = (ImageView) row.findViewById(android.R.id.button2);
- button2.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- onClickTimeButton(row, tag, true /*up*/, rowId);
- }
- });
-
- final long time = ZenModeConfig.tryParseCountdownConditionId(conditionId);
- if (rowId == COUNTDOWN_CONDITION_INDEX && time > 0) {
- button1.setVisibility(View.VISIBLE);
- button2.setVisibility(View.VISIBLE);
- if (mBucketIndex > -1) {
- button1.setEnabled(mBucketIndex > 0);
- button2.setEnabled(mBucketIndex < MINUTE_BUCKETS.length - 1);
- } else {
- final long span = time - System.currentTimeMillis();
- button1.setEnabled(span > MIN_BUCKET_MINUTES * MINUTES_MS);
- final Condition maxCondition = ZenModeConfig.toTimeCondition(mContext,
- MAX_BUCKET_MINUTES, ActivityManager.getCurrentUser());
- button2.setEnabled(!Objects.equals(condition.summary, maxCondition.summary));
- }
-
- button1.setAlpha(button1.isEnabled() ? 1f : .5f);
- button2.setAlpha(button2.isEnabled() ? 1f : .5f);
- } else {
- button1.setVisibility(View.GONE);
- button2.setVisibility(View.GONE);
- }
- }
-
- @VisibleForTesting
- protected void bindNextAlarm(Condition c) {
- View alarmContent = mZenRadioGroupContent.getChildAt(COUNTDOWN_ALARM_CONDITION_INDEX);
- ConditionTag tag = (ConditionTag) alarmContent.getTag();
-
- if (c != null && (!mAttached || tag == null || tag.condition == null)) {
- bind(c, alarmContent, COUNTDOWN_ALARM_CONDITION_INDEX);
- }
-
- // hide the alarm radio button if there isn't a "next alarm condition"
- tag = (ConditionTag) alarmContent.getTag();
- boolean showAlarm = tag != null && tag.condition != null;
- mZenRadioGroup.getChildAt(COUNTDOWN_ALARM_CONDITION_INDEX).setVisibility(
- showAlarm ? View.VISIBLE : View.GONE);
- alarmContent.setVisibility(showAlarm ? View.VISIBLE : View.GONE);
- }
-
- private void onClickTimeButton(View row, ConditionTag tag, boolean up, int rowId) {
- MetricsLogger.action(mContext, MetricsProto.MetricsEvent.QS_DND_TIME, up);
- Condition newCondition = null;
- final int N = MINUTE_BUCKETS.length;
- if (mBucketIndex == -1) {
- // not on a known index, search for the next or prev bucket by time
- final Uri conditionId = getConditionId(tag.condition);
- final long time = ZenModeConfig.tryParseCountdownConditionId(conditionId);
- final long now = System.currentTimeMillis();
- for (int i = 0; i < N; i++) {
- int j = up ? i : N - 1 - i;
- final int bucketMinutes = MINUTE_BUCKETS[j];
- final long bucketTime = now + bucketMinutes * MINUTES_MS;
- if (up && bucketTime > time || !up && bucketTime < time) {
- mBucketIndex = j;
- newCondition = ZenModeConfig.toTimeCondition(mContext,
- bucketTime, bucketMinutes, ActivityManager.getCurrentUser(),
- false /*shortVersion*/);
- break;
- }
- }
- if (newCondition == null) {
- mBucketIndex = DEFAULT_BUCKET_INDEX;
- newCondition = ZenModeConfig.toTimeCondition(mContext,
- MINUTE_BUCKETS[mBucketIndex], ActivityManager.getCurrentUser());
- }
- } else {
- // on a known index, simply increment or decrement
- mBucketIndex = Math.max(0, Math.min(N - 1, mBucketIndex + (up ? 1 : -1)));
- newCondition = ZenModeConfig.toTimeCondition(mContext,
- MINUTE_BUCKETS[mBucketIndex], ActivityManager.getCurrentUser());
- }
- bind(newCondition, row, rowId);
- tag.rb.setChecked(true);
- announceConditionSelection(tag);
- }
-
- private void announceConditionSelection(ConditionTag tag) {
- // condition will always be priority-only
- String modeText = mContext.getString(R.string.zen_interruption_level_priority);
- if (tag.line1 != null) {
- mZenRadioGroupContent.announceForAccessibility(mContext.getString(
- R.string.zen_mode_and_condition, modeText, tag.line1.getText()));
- }
- }
-
- // used as the view tag on condition rows
- @VisibleForTesting
- protected static class ConditionTag {
- public RadioButton rb;
- public View lines;
- public TextView line1;
- public TextView line2;
- public Condition condition;
- }
-}
diff --git a/src/com/android/settings/notification/ImportancePreferenceController.java b/src/com/android/settings/notification/ImportancePreferenceController.java
index 977cd9a..f95c34a 100644
--- a/src/com/android/settings/notification/ImportancePreferenceController.java
+++ b/src/com/android/settings/notification/ImportancePreferenceController.java
@@ -16,41 +16,39 @@
package com.android.settings.notification;
+import static android.app.NotificationChannel.USER_LOCKED_SOUND;
+import static android.app.NotificationManager.IMPORTANCE_DEFAULT;
+import static android.app.NotificationManager.IMPORTANCE_HIGH;
+import static android.app.NotificationManager.IMPORTANCE_MIN;
import static android.app.NotificationManager.IMPORTANCE_UNSPECIFIED;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.provider.Settings;
+import android.media.RingtoneManager;
import android.support.v7.preference.Preference;
-import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.Utils;
-import com.android.settings.applications.AppInfoBase;
+import com.android.settings.RestrictedListPreference;
import com.android.settings.core.PreferenceControllerMixin;
public class ImportancePreferenceController extends NotificationPreferenceController
- implements PreferenceControllerMixin {
+ implements PreferenceControllerMixin, Preference.OnPreferenceChangeListener {
private static final String KEY_IMPORTANCE = "importance";
+ private NotificationSettingsBase.ImportanceListener mImportanceListener;
- // Ironically doesn't take an importance listener because the importance is not changed
- // by this controller's preference but by the screen it links to.
- public ImportancePreferenceController(Context context) {
- super(context, null);
+ public ImportancePreferenceController(Context context,
+ NotificationSettingsBase.ImportanceListener importanceListener,
+ NotificationBackend backend) {
+ super(context, backend);
+ mImportanceListener = importanceListener;
}
@Override
public String getPreferenceKey() {
return KEY_IMPORTANCE;
}
-
- private int getMetricsCategory() {
- return MetricsProto.MetricsEvent.NOTIFICATION_TOPIC_NOTIFICATION;
- }
@Override
public boolean isAvailable() {
@@ -63,51 +61,82 @@
return !NotificationChannel.DEFAULT_CHANNEL_ID.equals(mChannel.getId());
}
+ @Override
public void updateState(Preference preference) {
if (mAppRow!= null && mChannel != null) {
preference.setEnabled(mAdmin == null && isChannelConfigurable());
- Bundle channelArgs = new Bundle();
- channelArgs.putInt(AppInfoBase.ARG_PACKAGE_UID, mAppRow.uid);
- channelArgs.putString(AppInfoBase.ARG_PACKAGE_NAME, mAppRow.pkg);
- channelArgs.putString(Settings.EXTRA_CHANNEL_ID, mChannel.getId());
- if (preference.isEnabled()) {
- Intent channelIntent = Utils.onBuildStartFragmentIntent(mContext,
- ChannelImportanceSettings.class.getName(),
- channelArgs, null,
- R.string.notification_importance_title, null,
- false, getMetricsCategory());
- preference.setIntent(channelIntent);
- preference.setSummary(getImportanceSummary(mContext, mChannel));
+ preference.setSummary(getImportanceSummary(mChannel));
+
+ int importances = IMPORTANCE_HIGH - IMPORTANCE_MIN + 1;
+ CharSequence[] entries = new CharSequence[importances];
+ CharSequence[] values = new CharSequence[importances];
+
+ int index = 0;
+ for (int i = IMPORTANCE_HIGH; i >= IMPORTANCE_MIN; i--) {
+ NotificationChannel channel = new NotificationChannel("", "", i);
+ entries[index] = getImportanceSummary(channel);
+ values[index] = String.valueOf(i);
+ index++;
}
+
+ RestrictedListPreference pref = (RestrictedListPreference) preference;
+ pref.setEntries(entries);
+ pref.setEntryValues(values);
+ pref.setValue(String.valueOf(mChannel.getImportance()));
}
}
- protected static String getImportanceSummary(Context context, NotificationChannel channel) {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ if (mChannel != null) {
+ final int importance = Integer.parseInt((String) newValue);
+
+ // If you are moving from an importance level without sound to one with sound,
+ // but the sound you had selected was "Silence",
+ // then set sound for this channel to your default sound,
+ // because you probably intended to cause this channel to actually start making sound.
+ if (mChannel.getImportance() < IMPORTANCE_DEFAULT
+ && !SoundPreferenceController.hasValidSound(mChannel)
+ && importance >= IMPORTANCE_DEFAULT) {
+ mChannel.setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION),
+ mChannel.getAudioAttributes());
+ mChannel.lockFields(USER_LOCKED_SOUND);
+ }
+
+ mChannel.setImportance(importance);
+ mChannel.lockFields(NotificationChannel.USER_LOCKED_IMPORTANCE);
+ saveChannel();
+ mImportanceListener.onImportanceChanged();
+ }
+ return true;
+ }
+
+ protected String getImportanceSummary(NotificationChannel channel) {
String summary = "";
int importance = channel.getImportance();
switch (importance) {
case IMPORTANCE_UNSPECIFIED:
- summary = context.getString(R.string.notification_importance_unspecified);
+ summary = mContext.getString(R.string.notification_importance_unspecified);
break;
case NotificationManager.IMPORTANCE_MIN:
- summary = context.getString(R.string.notification_importance_min);
+ summary = mContext.getString(R.string.notification_importance_min);
break;
case NotificationManager.IMPORTANCE_LOW:
- summary = context.getString(R.string.notification_importance_low);
+ summary = mContext.getString(R.string.notification_importance_low);
break;
case NotificationManager.IMPORTANCE_DEFAULT:
if (SoundPreferenceController.hasValidSound(channel)) {
- summary = context.getString(R.string.notification_importance_default);
+ summary = mContext.getString(R.string.notification_importance_default);
} else {
- summary = context.getString(R.string.notification_importance_low);
+ summary = mContext.getString(R.string.notification_importance_low);
}
break;
case NotificationManager.IMPORTANCE_HIGH:
case NotificationManager.IMPORTANCE_MAX:
if (SoundPreferenceController.hasValidSound(channel)) {
- summary = context.getString(R.string.notification_importance_high);
+ summary = mContext.getString(R.string.notification_importance_high);
} else {
- summary = context.getString(R.string.notification_importance_high_silent);
+ summary = mContext.getString(R.string.notification_importance_high_silent);
}
break;
default:
diff --git a/src/com/android/settings/notification/NotificationAppPreference.java b/src/com/android/settings/notification/NotificationAppPreference.java
new file mode 100644
index 0000000..a6bcdd6
--- /dev/null
+++ b/src/com/android/settings/notification/NotificationAppPreference.java
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2018 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.settings.notification;
+
+import android.content.Context;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.text.TextUtils;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.ProgressBar;
+import android.widget.Switch;
+
+import com.android.settings.R;
+import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.TwoTargetPreference;
+
+/**
+ * Shows an app icon, title and summary. Has a second switch touch target.
+ */
+public class NotificationAppPreference extends TwoTargetPreference {
+
+ private int mProgress;
+ private boolean mProgressVisible;
+ private Switch mSwitch;
+ private boolean mChecked;
+ private boolean mEnableSwitch = true;
+
+ public NotificationAppPreference(Context context) {
+ super(context);
+ setLayoutResource(R.layout.preference_app);
+ }
+
+ public NotificationAppPreference(Context context, AttributeSet attrs) {
+ super(context, attrs);
+ setLayoutResource(R.layout.preference_app);
+ }
+
+ @Override
+ protected int getSecondTargetResId() {
+ return R.layout.preference_widget_master_switch;
+ }
+
+ public void setProgress(int amount) {
+ mProgress = amount;
+ mProgressVisible = true;
+ notifyChanged();
+ }
+
+ @Override
+ public void onBindViewHolder(PreferenceViewHolder view) {
+ super.onBindViewHolder(view);
+
+ view.findViewById(R.id.summary_container)
+ .setVisibility(TextUtils.isEmpty(getSummary()) ? View.GONE : View.VISIBLE);
+ final ProgressBar progress = (ProgressBar) view.findViewById(android.R.id.progress);
+ if (mProgressVisible) {
+ progress.setProgress(mProgress);
+ progress.setVisibility(View.VISIBLE);
+ } else {
+ progress.setVisibility(View.GONE);
+ }
+
+ final View widgetView = view.findViewById(android.R.id.widget_frame);
+ if (widgetView != null) {
+ widgetView.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (mSwitch != null && !mSwitch.isEnabled()) {
+ return;
+ }
+ setChecked(!mChecked);
+ if (!callChangeListener(mChecked)) {
+ setChecked(!mChecked);
+ } else {
+ persistBoolean(mChecked);
+ }
+ }
+ });
+ }
+
+ mSwitch = (Switch) view.findViewById(R.id.switchWidget);
+ if (mSwitch != null) {
+ mSwitch.setContentDescription(getTitle());
+ mSwitch.setChecked(mChecked);
+ mSwitch.setEnabled(mEnableSwitch);
+ }
+ }
+
+ public boolean isChecked() {
+ return mSwitch != null && mChecked;
+ }
+
+ public void setChecked(boolean checked) {
+ mChecked = checked;
+ if (mSwitch != null) {
+ mSwitch.setChecked(checked);
+ }
+ }
+
+ public void setSwitchEnabled(boolean enabled) {
+ mEnableSwitch = enabled;
+ if (mSwitch != null) {
+ mSwitch.setEnabled(enabled);
+ }
+ }
+
+ /**
+ * If admin is not null, disables the switch.
+ * Otherwise, keep it enabled.
+ */
+ public void setDisabledByAdmin(RestrictedLockUtils.EnforcedAdmin admin) {
+ setSwitchEnabled(admin == null);
+ }
+
+ public Switch getSwitch() {
+ return mSwitch;
+ }
+}
diff --git a/src/com/android/settings/notification/NotificationBackend.java b/src/com/android/settings/notification/NotificationBackend.java
index e047efa..d205fb4 100644
--- a/src/com/android/settings/notification/NotificationBackend.java
+++ b/src/com/android/settings/notification/NotificationBackend.java
@@ -15,6 +15,9 @@
*/
package com.android.settings.notification;
+import static android.app.NotificationManager.IMPORTANCE_NONE;
+import static android.app.NotificationManager.IMPORTANCE_UNSPECIFIED;
+
import android.app.INotificationManager;
import android.app.NotificationChannel;
import android.app.NotificationChannelGroup;
@@ -101,6 +104,12 @@
public boolean setNotificationsEnabledForPackage(String pkg, int uid, boolean enabled) {
try {
+ if (onlyHasDefaultChannel(pkg, uid)) {
+ NotificationChannel defaultChannel =
+ getChannel(pkg, uid, NotificationChannel.DEFAULT_CHANNEL_ID);
+ defaultChannel.setImportance(enabled ? IMPORTANCE_UNSPECIFIED : IMPORTANCE_NONE);
+ updateChannel(pkg, uid, defaultChannel);
+ }
sINM.setNotificationsEnabledForPackage(pkg, uid, enabled);
return true;
} catch (Exception e) {
diff --git a/src/com/android/settings/notification/NotificationSettingsBase.java b/src/com/android/settings/notification/NotificationSettingsBase.java
index 18b77bc..09789f3 100644
--- a/src/com/android/settings/notification/NotificationSettingsBase.java
+++ b/src/com/android/settings/notification/NotificationSettingsBase.java
@@ -74,6 +74,7 @@
import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Comparator;
import java.util.List;
@@ -252,30 +253,6 @@
return null;
}
- protected void populateGroupToggle(final PreferenceGroup parent,
- NotificationChannelGroup group) {
- RestrictedSwitchPreference preference = new RestrictedSwitchPreference(getPrefContext());
- preference.setTitle(R.string.notification_switch_label);
- preference.setEnabled(mSuspendedAppsAdmin == null
- && isChannelGroupBlockable(group));
- preference.setChecked(!group.isBlocked());
- preference.setOnPreferenceClickListener(preference1 -> {
- final boolean allowGroup = ((SwitchPreference) preference1).isChecked();
- group.setBlocked(!allowGroup);
- mBackend.updateChannelGroup(mAppRow.pkg, mAppRow.uid, group);
-
- for (int i = 0; i < parent.getPreferenceCount(); i++) {
- Preference pref = parent.getPreference(i);
- if (pref instanceof MasterSwitchPreference) {
- ((MasterSwitchPreference) pref).setSwitchEnabled(allowGroup);
- }
- }
- return true;
- });
-
- parent.addPreference(preference);
- }
-
protected Preference populateSingleChannelPrefs(PreferenceGroup parent,
final NotificationChannel channel, final boolean groupBlocked) {
MasterCheckBoxPreference channelPref = new MasterCheckBoxPreference(
diff --git a/src/com/android/settings/notification/NotificationsOffPreferenceController.java b/src/com/android/settings/notification/NotificationsOffPreferenceController.java
index 74591cf..ba304de 100644
--- a/src/com/android/settings/notification/NotificationsOffPreferenceController.java
+++ b/src/com/android/settings/notification/NotificationsOffPreferenceController.java
@@ -57,7 +57,6 @@
preference.setTitle(R.string.app_notifications_off_desc);
}
}
- preference.setEnabled(false);
preference.setSelectable(false);
}
}
diff --git a/src/com/android/settings/notification/RecentNotifyingAppsPreferenceController.java b/src/com/android/settings/notification/RecentNotifyingAppsPreferenceController.java
index dbffc55..ce5e1d1 100644
--- a/src/com/android/settings/notification/RecentNotifyingAppsPreferenceController.java
+++ b/src/com/android/settings/notification/RecentNotifyingAppsPreferenceController.java
@@ -21,6 +21,7 @@
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
+import android.os.Bundle;
import android.os.UserHandle;
import android.service.notification.NotifyingApp;
import android.support.annotation.VisibleForTesting;
@@ -32,6 +33,7 @@
import android.util.ArraySet;
import android.util.IconDrawableFactory;
import android.util.Log;
+import android.widget.Switch;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
@@ -40,9 +42,11 @@
import com.android.settings.applications.InstalledAppCounter;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.AppPreference;
+import com.android.settings.widget.MasterSwitchPreference;
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.StringUtil;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import java.util.ArrayList;
@@ -147,7 +151,8 @@
@Override
protected void onCountComplete(int num) {
if (mHasRecentApps) {
- mSeeAllPref.setTitle(mContext.getString(R.string.see_all_apps_title, num));
+ mSeeAllPref.setTitle(
+ mContext.getString(R.string.recent_notifications_see_all_title));
} else {
mSeeAllPref.setSummary(mContext.getString(R.string.apps_summary, num));
}
@@ -196,13 +201,13 @@
// Rebind prefs/avoid adding new prefs if possible. Adding/removing prefs causes jank.
// Build a cached preference pool
- final Map<String, Preference> appPreferences = new ArrayMap<>();
+ final Map<String, NotificationAppPreference> appPreferences = new ArrayMap<>();
int prefCount = mCategory.getPreferenceCount();
for (int i = 0; i < prefCount; i++) {
final Preference pref = mCategory.getPreference(i);
final String key = pref.getKey();
if (!TextUtils.equals(key, KEY_SEE_ALL)) {
- appPreferences.put(key, pref);
+ appPreferences.put(key, (NotificationAppPreference) pref);
}
}
final int recentAppsCount = recentApps.size();
@@ -217,24 +222,34 @@
}
boolean rebindPref = true;
- Preference pref = appPreferences.remove(pkgName);
+ NotificationAppPreference pref = appPreferences.remove(pkgName);
if (pref == null) {
- pref = new AppPreference(prefContext);
+ pref = new NotificationAppPreference(prefContext);
rebindPref = false;
}
pref.setKey(pkgName);
pref.setTitle(appEntry.label);
pref.setIcon(mIconDrawableFactory.getBadgedIcon(appEntry.info));
- pref.setSummary(Utils.formatRelativeTime(mContext,
+ pref.setSummary(StringUtil.formatRelativeTime(mContext,
System.currentTimeMillis() - app.getLastNotified(), false));
pref.setOrder(i);
- pref.setOnPreferenceClickListener(preference -> {
- AppInfoBase.startAppInfoFragment(AppNotificationSettings.class,
- R.string.notifications_title, pkgName, appEntry.info.uid, mHost,
- 1001 /*RequestCode */,
- MetricsProto.MetricsEvent.MANAGE_APPLICATIONS_NOTIFICATIONS);
- return true;
+ Bundle args = new Bundle();
+ args.putString(AppInfoBase.ARG_PACKAGE_NAME, pkgName);
+ args.putInt(AppInfoBase.ARG_PACKAGE_UID, appEntry.info.uid);
+
+ pref.setIntent(Utils.onBuildStartFragmentIntent(mHost.getActivity(),
+ AppNotificationSettings.class.getName(), args, null,
+ R.string.notifications_title, null, false,
+ MetricsProto.MetricsEvent.MANAGE_APPLICATIONS_NOTIFICATIONS));
+ pref.setOnPreferenceChangeListener((preference, newValue) -> {
+ boolean blocked = !(Boolean) newValue;
+ mNotificationBackend.setNotificationsEnabledForPackage(
+ pkgName, appEntry.info.uid, !blocked);
+ return true;
});
+ pref.setChecked(
+ !mNotificationBackend.getNotificationsBanned(pkgName, appEntry.info.uid));
+
if (!rebindPref) {
mCategory.addPreference(pref);
}
diff --git a/src/com/android/settings/notification/SettingsEnableZenModeDialog.java b/src/com/android/settings/notification/SettingsEnableZenModeDialog.java
new file mode 100644
index 0000000..dccdc26
--- /dev/null
+++ b/src/com/android/settings/notification/SettingsEnableZenModeDialog.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2018 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.settings.notification;
+
+import android.app.Dialog;
+import android.os.Bundle;
+
+import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
+
+public class SettingsEnableZenModeDialog extends InstrumentedDialogFragment {
+
+ @Override
+ public Dialog onCreateDialog(Bundle savedInstanceState) {
+ return new com.android.settingslib.notification.EnableZenModeDialog(
+ getContext()).createDialog();
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsProto.MetricsEvent.NOTIFICATION_ZEN_MODE_ENABLE_DIALOG;
+ }
+}
diff --git a/src/com/android/settings/notification/SoundSettings.java b/src/com/android/settings/notification/SoundSettings.java
index 132dea6..032a5cb 100644
--- a/src/com/android/settings/notification/SoundSettings.java
+++ b/src/com/android/settings/notification/SoundSettings.java
@@ -180,7 +180,7 @@
SoundSettings fragment, VolumeSeekBarPreference.Callback callback,
Lifecycle lifecycle) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
- controllers.add(new ZenModePreferenceController(context));
+ controllers.add(new ZenModePreferenceController(context, lifecycle));
controllers.add(new VibrateWhenRingPreferenceController(context));
// === Volumes ===
@@ -264,7 +264,7 @@
public List<String> getNonIndexableKeys(Context context) {
List<String> keys = super.getNonIndexableKeys(context);
// Duplicate results
- keys.add((new ZenModePreferenceController(context)).getPreferenceKey());
+ keys.add((new ZenModePreferenceController(context, null)).getPreferenceKey());
return keys;
}
};
diff --git a/src/com/android/settings/notification/VisibilityPreferenceController.java b/src/com/android/settings/notification/VisibilityPreferenceController.java
index 62ca183..dac90ef 100644
--- a/src/com/android/settings/notification/VisibilityPreferenceController.java
+++ b/src/com/android/settings/notification/VisibilityPreferenceController.java
@@ -84,14 +84,17 @@
| DevicePolicyManager.KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS);
}
- final String summaryHideEntry =
- mContext.getString(R.string.lock_screen_notifications_summary_hide);
- final String summaryHideEntryValue = Integer.toString(Notification.VISIBILITY_PRIVATE);
- entries.add(summaryHideEntry);
- values.add(summaryHideEntryValue);
- setRestrictedIfNotificationFeaturesDisabled(pref,
- summaryHideEntry, summaryHideEntryValue,
- DevicePolicyManager.KEYGUARD_DISABLE_SECURE_NOTIFICATIONS);
+ if (getLockscreenNotificationsEnabled()) {
+ final String summaryHideEntry =
+ mContext.getString(R.string.lock_screen_notifications_summary_hide);
+ final String summaryHideEntryValue = Integer.toString(
+ Notification.VISIBILITY_PRIVATE);
+ entries.add(summaryHideEntry);
+ values.add(summaryHideEntryValue);
+ setRestrictedIfNotificationFeaturesDisabled(pref,
+ summaryHideEntry, summaryHideEntryValue,
+ DevicePolicyManager.KEYGUARD_DISABLE_SECURE_NOTIFICATIONS);
+ }
entries.add(mContext.getString(R.string.lock_screen_notifications_summary_disable));
values.add(Integer.toString(Notification.VISIBILITY_SECRET));
pref.setEntries(entries.toArray(new CharSequence[entries.size()]));
diff --git a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
index 39cbf5d..9eab8bb 100644
--- a/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
+++ b/src/com/android/settings/notification/ZenAutomaticRuleHeaderPreferenceController.java
@@ -24,6 +24,7 @@
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.graphics.drawable.Drawable;
+import android.service.notification.ZenModeConfig;
import android.support.v14.preference.PreferenceFragment;
import android.support.v7.preference.Preference;
import android.util.Slog;
@@ -101,6 +102,13 @@
PackageManager packageManager = mContext.getPackageManager();
ApplicationInfo info = packageManager.getApplicationInfo(
mRule.getOwner().getPackageName(), 0);
+ if (info.isSystemApp()) {
+ if (ZenModeConfig.isValidScheduleConditionId(mRule.getConditionId())) {
+ return mContext.getDrawable(R.drawable.ic_timelapse);
+ } else if (ZenModeConfig.isValidEventConditionId(mRule.getConditionId())) {
+ return mContext.getDrawable(R.drawable.ic_event);
+ }
+ }
return info.loadIcon(packageManager);
} catch (PackageManager.NameNotFoundException e) {
Slog.w(TAG, "Unable to load icon - PackageManager.NameNotFoundException");
diff --git a/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java b/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
index a684d3e..9294a90 100644
--- a/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
+++ b/src/com/android/settings/notification/ZenAutomaticRuleSwitchPreferenceController.java
@@ -22,7 +22,6 @@
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.widget.Switch;
-import android.widget.Toast;
import com.android.settings.R;
import com.android.settings.applications.LayoutPreference;
@@ -36,14 +35,11 @@
private static final String KEY = "zen_automatic_rule_switch";
private AutomaticZenRule mRule;
private String mId;
- private Toast mEnabledToast;
- private int mToastTextResource;
private SwitchBar mSwitchBar;
public ZenAutomaticRuleSwitchPreferenceController(Context context, Fragment parent,
- int toastTextResource, Lifecycle lifecycle) {
+ Lifecycle lifecycle) {
super(context, KEY, parent, lifecycle);
- mToastTextResource = toastTextResource;
}
@Override
@@ -92,16 +88,5 @@
if (enabled == mRule.isEnabled()) return;
mRule.setEnabled(enabled);
mBackend.setZenRule(mId, mRule);
- if (enabled) {
- final int toastText = mToastTextResource;
- if (toastText != 0) {
- mEnabledToast = Toast.makeText(mContext, toastText, Toast.LENGTH_SHORT);
- mEnabledToast.show();
- }
- } else {
- if (mEnabledToast != null) {
- mEnabledToast.cancel();
- }
- }
}
}
diff --git a/src/com/android/settings/notification/ZenModeButtonPreferenceController.java b/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
index da540f4..d9c9691 100644
--- a/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
+++ b/src/com/android/settings/notification/ZenModeButtonPreferenceController.java
@@ -62,7 +62,7 @@
mZenButtonOn = (Button) ((LayoutPreference) preference)
.findViewById(R.id.zen_mode_settings_turn_on_button);
mZenButtonOn.setOnClickListener(v ->
- new EnableZenModeDialog().show(mFragment, TAG));
+ new SettingsEnableZenModeDialog().show(mFragment, TAG));
}
if (null == mZenButtonOff) {
diff --git a/src/com/android/settings/notification/ZenModeEventRuleSettings.java b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
index bb66768..cf6d7b5 100644
--- a/src/com/android/settings/notification/ZenModeEventRuleSettings.java
+++ b/src/com/android/settings/notification/ZenModeEventRuleSettings.java
@@ -82,8 +82,7 @@
List<AbstractPreferenceController> controllers = new ArrayList<>();
mHeader = new ZenAutomaticRuleHeaderPreferenceController(context, this,
getLifecycle());
- mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this,
- R.string.zen_event_rule_enabled_toast, getLifecycle());
+ mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this, getLifecycle());
controllers.add(mHeader);
controllers.add(mSwitch);
return controllers;
diff --git a/src/com/android/settings/notification/ZenModePreferenceController.java b/src/com/android/settings/notification/ZenModePreferenceController.java
index e11b422..aafda11 100644
--- a/src/com/android/settings/notification/ZenModePreferenceController.java
+++ b/src/com/android/settings/notification/ZenModePreferenceController.java
@@ -16,18 +16,56 @@
package com.android.settings.notification;
+import android.content.ContentResolver;
import android.content.Context;
+import android.database.ContentObserver;
+import android.net.Uri;
+import android.os.Handler;
+import android.os.UserHandle;
+import android.provider.Settings;
import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceScreen;
+import android.util.Slog;
-public class ZenModePreferenceController extends AdjustVolumeRestrictedPreferenceController {
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.events.OnPause;
+import com.android.settingslib.core.lifecycle.events.OnResume;
+
+public class ZenModePreferenceController extends AdjustVolumeRestrictedPreferenceController
+ implements LifecycleObserver, OnResume, OnPause {
private static final String KEY_ZEN_MODE = "zen_mode";
-
+ private SettingObserver mSettingObserver;
private ZenModeSettings.SummaryBuilder mSummaryBuilder;
- public ZenModePreferenceController(Context context) {
+ public ZenModePreferenceController(Context context, Lifecycle lifecycle) {
super(context);
mSummaryBuilder = new ZenModeSettings.SummaryBuilder(context);
+
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ mSettingObserver = new SettingObserver(screen.findPreference(KEY_ZEN_MODE));
+ }
+
+ @Override
+ public void onResume() {
+ if (mSettingObserver != null) {
+ mSettingObserver.register(mContext.getContentResolver());
+ }
+ }
+
+ @Override
+ public void onPause() {
+ if (mSettingObserver != null) {
+ mSettingObserver.unregister(mContext.getContentResolver());
+ }
}
@Override
@@ -44,7 +82,41 @@
public void updateState(Preference preference) {
super.updateState(preference);
if (preference.isEnabled()) {
- preference.setSummary(mSummaryBuilder.getAutomaticRulesSummary());
+ preference.setSummary(mSummaryBuilder.getSoundSummary());
+ }
+ }
+
+ class SettingObserver extends ContentObserver {
+ private final Uri ZEN_MODE_URI = Settings.Global.getUriFor(Settings.Global.ZEN_MODE);
+ private final Uri ZEN_MODE_CONFIG_ETAG_URI = Settings.Global.getUriFor(
+ Settings.Global.ZEN_MODE_CONFIG_ETAG);
+
+ private final Preference mPreference;
+
+ public SettingObserver(Preference preference) {
+ super(new Handler());
+ mPreference = preference;
+ }
+
+ public void register(ContentResolver cr) {
+ cr.registerContentObserver(ZEN_MODE_URI, false, this, UserHandle.USER_ALL);
+ cr.registerContentObserver(ZEN_MODE_CONFIG_ETAG_URI, false, this, UserHandle.USER_ALL);
+ }
+
+ public void unregister(ContentResolver cr) {
+ cr.unregisterContentObserver(this);
+ }
+
+ @Override
+ public void onChange(boolean selfChange, Uri uri) {
+ super.onChange(selfChange, uri);
+ if (ZEN_MODE_URI.equals(uri)) {
+ updateState(mPreference);
+ }
+
+ if (ZEN_MODE_CONFIG_ETAG_URI.equals(uri)) {
+ updateState(mPreference);
+ }
}
}
}
diff --git a/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java b/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
index ecfe91b..9ef1128 100644
--- a/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
+++ b/src/com/android/settings/notification/ZenModeScheduleRuleSettings.java
@@ -200,8 +200,7 @@
List<AbstractPreferenceController> controllers = new ArrayList<>();
mHeader = new ZenAutomaticRuleHeaderPreferenceController(context, this,
getLifecycle());
- mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this,
- R.string.zen_schedule_rule_enabled_toast, getLifecycle());
+ mSwitch = new ZenAutomaticRuleSwitchPreferenceController(context, this, getLifecycle());
controllers.add(mHeader);
controllers.add(mSwitch);
diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java
index a6145c4..2b48301 100644
--- a/src/com/android/settings/notification/ZenModeSettings.java
+++ b/src/com/android/settings/notification/ZenModeSettings.java
@@ -115,6 +115,26 @@
return mContext.getString(R.string.zen_mode_behavior_summary_custom);
}
+ String getSoundSummary() {
+ int zenMode = NotificationManager.from(mContext).getZenMode();
+
+ if (zenMode != Settings.Global.ZEN_MODE_OFF) {
+ Policy policy = NotificationManager.from(mContext).getNotificationPolicy();
+ return mContext.getString(R.string.zen_mode_sound_summary_on,
+ getBehaviorSettingSummary(policy, zenMode));
+ } else {
+ final int count = getEnabledAutomaticRulesCount();
+ if (count > 0) {
+ return mContext.getString(R.string.zen_mode_sound_summary_off_with_info,
+ mContext.getResources().getQuantityString(
+ R.plurals.zen_mode_sound_summary_summary_off_info,
+ count, count));
+ }
+
+ return mContext.getString(R.string.zen_mode_sound_summary_off);
+ }
+ }
+
String getAutomaticRulesSummary() {
final int count = getEnabledAutomaticRulesCount();
return count == 0 ? mContext.getString(R.string.zen_mode_settings_summary_off)
diff --git a/src/com/android/settings/notification/ZenRuleSelectionDialog.java b/src/com/android/settings/notification/ZenRuleSelectionDialog.java
index 0784d5a..9beac7c 100644
--- a/src/com/android/settings/notification/ZenRuleSelectionDialog.java
+++ b/src/com/android/settings/notification/ZenRuleSelectionDialog.java
@@ -119,13 +119,21 @@
final LinearLayout v = (LinearLayout) LayoutInflater.from(mContext).inflate(
R.layout.zen_rule_type, null, false);
- LoadIconTask task = new LoadIconTask((ImageView) v.findViewById(R.id.icon));
- task.execute(info);
+ ImageView iconView = v.findViewById(R.id.icon);
((TextView) v.findViewById(R.id.title)).setText(ri.title);
if (!ri.isSystem) {
+ LoadIconTask task = new LoadIconTask(iconView);
+ task.execute(info);
+
TextView subtitle = (TextView) v.findViewById(R.id.subtitle);
subtitle.setText(info.loadLabel(mPm));
subtitle.setVisibility(View.VISIBLE);
+ } else {
+ if (ZenModeConfig.isValidScheduleConditionId(ri.defaultConditionId)) {
+ iconView.setImageDrawable(mContext.getDrawable(R.drawable.ic_timelapse));
+ } else if (ZenModeConfig.isValidEventConditionId(ri.defaultConditionId)) {
+ iconView.setImageDrawable(mContext.getDrawable(R.drawable.ic_event));
+ }
}
v.setOnClickListener(new View.OnClickListener() {
@Override
diff --git a/src/com/android/settings/overlay/FeatureFactory.java b/src/com/android/settings/overlay/FeatureFactory.java
index 80d435f..585a2c1 100644
--- a/src/com/android/settings/overlay/FeatureFactory.java
+++ b/src/com/android/settings/overlay/FeatureFactory.java
@@ -27,13 +27,12 @@
import com.android.settings.connecteddevice.SmsMirroringFeatureProvider;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.dashboard.suggestions.SuggestionFeatureProvider;
-import com.android.settings.datausage.DataPlanFeatureProvider;
import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
import com.android.settings.gestures.AssistGestureFeatureProvider;
import com.android.settings.localepicker.LocaleFeatureProvider;
-import com.android.settings.security.SecurityFeatureProvider;
import com.android.settings.search.SearchFeatureProvider;
+import com.android.settings.security.SecurityFeatureProvider;
import com.android.settings.slices.SlicesFeatureProvider;
import com.android.settings.users.UserFeatureProvider;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
@@ -104,8 +103,6 @@
public abstract BluetoothFeatureProvider getBluetoothFeatureProvider(Context context);
- public abstract DataPlanFeatureProvider getDataPlanFeatureProvider();
-
public abstract SmsMirroringFeatureProvider getSmsMirroringFeatureProvider();
public abstract SlicesFeatureProvider getSlicesFeatureProvider();
diff --git a/src/com/android/settings/overlay/FeatureFactoryImpl.java b/src/com/android/settings/overlay/FeatureFactoryImpl.java
index 55f408d..965bfb1 100644
--- a/src/com/android/settings/overlay/FeatureFactoryImpl.java
+++ b/src/com/android/settings/overlay/FeatureFactoryImpl.java
@@ -35,8 +35,6 @@
import com.android.settings.dashboard.DashboardFeatureProviderImpl;
import com.android.settings.dashboard.suggestions.SuggestionFeatureProvider;
import com.android.settings.dashboard.suggestions.SuggestionFeatureProviderImpl;
-import com.android.settings.datausage.DataPlanFeatureProvider;
-import com.android.settings.datausage.DataPlanFeatureProviderImpl;
import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
import com.android.settings.enterprise.EnterprisePrivacyFeatureProviderImpl;
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
@@ -77,7 +75,6 @@
private AssistGestureFeatureProvider mAssistGestureFeatureProvider;
private UserFeatureProvider mUserFeatureProvider;
private BluetoothFeatureProvider mBluetoothFeatureProvider;
- private DataPlanFeatureProvider mDataPlanFeatureProvider;
private SmsMirroringFeatureProvider mSmsMirroringFeatureProvider;
private SlicesFeatureProvider mSlicesFeatureProvider;
private AccountFeatureProvider mAccountFeatureProvider;
@@ -192,14 +189,6 @@
}
@Override
- public DataPlanFeatureProvider getDataPlanFeatureProvider() {
- if (mDataPlanFeatureProvider == null) {
- mDataPlanFeatureProvider = new DataPlanFeatureProviderImpl();
- }
- return mDataPlanFeatureProvider;
- }
-
- @Override
public AssistGestureFeatureProvider getAssistGestureFeatureProvider() {
if (mAssistGestureFeatureProvider == null) {
mAssistGestureFeatureProvider = new AssistGestureFeatureProviderImpl();
diff --git a/src/com/android/settings/password/ChooseLockPassword.java b/src/com/android/settings/password/ChooseLockPassword.java
index 11efec3..a9c5c03 100644
--- a/src/com/android/settings/password/ChooseLockPassword.java
+++ b/src/com/android/settings/password/ChooseLockPassword.java
@@ -64,7 +64,7 @@
import com.android.settings.SettingsActivity;
import com.android.settings.SetupWizardUtils;
import com.android.settings.Utils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.notification.RedactionInterstitial;
import com.android.settings.widget.ImeAwareEditText;
import com.android.setupwizardlib.GlifLayout;
@@ -168,7 +168,7 @@
layout.setFitsSystemWindows(false);
}
- public static class ChooseLockPasswordFragment extends InstrumentedPreferenceFragment
+ public static class ChooseLockPasswordFragment extends InstrumentedFragment
implements OnClickListener, OnEditorActionListener, TextWatcher,
SaveAndFinishWorker.Listener {
private static final String KEY_FIRST_PIN = "first_pin";
diff --git a/src/com/android/settings/password/ChooseLockPattern.java b/src/com/android/settings/password/ChooseLockPattern.java
index 972fac8..0df1a11 100644
--- a/src/com/android/settings/password/ChooseLockPattern.java
+++ b/src/com/android/settings/password/ChooseLockPattern.java
@@ -43,7 +43,7 @@
import com.android.settings.SettingsActivity;
import com.android.settings.SetupWizardUtils;
import com.android.settings.Utils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.notification.RedactionInterstitial;
import com.android.setupwizardlib.GlifLayout;
@@ -153,7 +153,7 @@
return super.onKeyDown(keyCode, event);
}
- public static class ChooseLockPatternFragment extends InstrumentedPreferenceFragment
+ public static class ChooseLockPatternFragment extends InstrumentedFragment
implements View.OnClickListener, SaveAndFinishWorker.Listener {
public static final int CONFIRM_EXISTING_REQUEST = 55;
diff --git a/src/com/android/settings/password/ConfirmDeviceCredentialBaseFragment.java b/src/com/android/settings/password/ConfirmDeviceCredentialBaseFragment.java
index 5b18925..3f26750 100644
--- a/src/com/android/settings/password/ConfirmDeviceCredentialBaseFragment.java
+++ b/src/com/android/settings/password/ConfirmDeviceCredentialBaseFragment.java
@@ -52,13 +52,13 @@
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.Utils;
-import com.android.settings.core.InstrumentedPreferenceFragment;
+import com.android.settings.core.InstrumentedFragment;
import com.android.settings.fingerprint.FingerprintUiHelper;
/**
* Base fragment to be shared for PIN/Pattern/Password confirmation fragments.
*/
-public abstract class ConfirmDeviceCredentialBaseFragment extends InstrumentedPreferenceFragment
+public abstract class ConfirmDeviceCredentialBaseFragment extends InstrumentedFragment
implements FingerprintUiHelper.Callback {
public static final String PACKAGE = "com.android.settings";
diff --git a/src/com/android/settings/password/ConfirmLockPassword.java b/src/com/android/settings/password/ConfirmLockPassword.java
index 20182cb..dbca2fc 100644
--- a/src/com/android/settings/password/ConfirmLockPassword.java
+++ b/src/com/android/settings/password/ConfirmLockPassword.java
@@ -114,11 +114,6 @@
}
@Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- }
-
- @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final int storedQuality = mLockPatternUtils.getKeyguardStoredPasswordQuality(
diff --git a/src/com/android/settings/password/ConfirmLockPattern.java b/src/com/android/settings/password/ConfirmLockPattern.java
index 1e88150..c87ff43 100644
--- a/src/com/android/settings/password/ConfirmLockPattern.java
+++ b/src/com/android/settings/password/ConfirmLockPattern.java
@@ -105,11 +105,6 @@
}
@Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- }
-
- @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
ConfirmLockPattern activity = (ConfirmLockPattern) getActivity();
diff --git a/src/com/android/settings/password/ManagedLockPasswordProvider.java b/src/com/android/settings/password/ManagedLockPasswordProvider.java
index 82135cf..5786a5a 100644
--- a/src/com/android/settings/password/ManagedLockPasswordProvider.java
+++ b/src/com/android/settings/password/ManagedLockPasswordProvider.java
@@ -55,17 +55,6 @@
CharSequence getPickerOptionTitle(boolean forFingerprint) { return ""; }
/**
- * Gets resource id of the lock screen preference that should be displayed in security settings
- * if the current password quality is set to
- * {@link android.app.admin.DevicePolicyManager#PASSWORD_QUALITY_MANAGED}.
- * @param forProfile Whether the settings are shown for a user profile rather than a user.
- */
- public int getResIdForLockUnlockScreen(boolean forProfile) {
- return forProfile ? R.xml.security_settings_password_profile
- : R.xml.security_settings_password;
- }
-
- /**
* Creates intent that should be launched when user chooses managed password in the lock
* settings picker.
* @param requirePasswordToDecrypt Whether a password is needed to decrypt the user.
diff --git a/src/com/android/settings/search/CursorToSearchResultConverter.java b/src/com/android/settings/search/CursorToSearchResultConverter.java
deleted file mode 100644
index 8e5577d..0000000
--- a/src/com/android/settings/search/CursorToSearchResultConverter.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.search;
-
-import static com.android.settings.search.DatabaseResultLoader.BASE_RANKS;
-import static com.android.settings.search.SearchResult.TOP_RANK;
-
-import android.content.Context;
-import android.content.pm.PackageManager;
-import android.content.res.Resources;
-import android.database.Cursor;
-import android.graphics.drawable.Drawable;
-import android.os.BadParcelableException;
-import android.text.TextUtils;
-import android.util.Log;
-
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * Controller to Build search results from {@link Cursor} Objects.
- *
- * Each converted {@link Cursor} has the following fields:
- * - String Title
- * - String Summary
- * - int rank
- * - {@link Drawable} icon
- * - {@link ResultPayload} payload
- */
-public class CursorToSearchResultConverter {
-
- private static final String TAG = "CursorConverter";
-
- /**
- * These indices are used to match the columns of the this loader's SELECT statement.
- * These are not necessarily the same order nor similar coverage as the schema defined in
- * IndexDatabaseHelper
- */
- public static final int COLUMN_INDEX_ID = 0;
- public static final int COLUMN_INDEX_TITLE = 1;
- public static final int COLUMN_INDEX_SUMMARY_ON = 2;
- public static final int COLUMN_INDEX_SUMMARY_OFF = 3;
- public static final int COLUMN_INDEX_CLASS_NAME = 4;
- public static final int COLUMN_INDEX_SCREEN_TITLE = 5;
- public static final int COLUMN_INDEX_ICON = 6;
- public static final int COLUMN_INDEX_INTENT_ACTION = 7;
- public static final int COLUMN_INDEX_INTENT_ACTION_TARGET_PACKAGE = 8;
- public static final int COLUMN_INDEX_INTENT_ACTION_TARGET_CLASS = 9;
- public static final int COLUMN_INDEX_KEY = 10;
- public static final int COLUMN_INDEX_PAYLOAD_TYPE = 11;
- public static final int COLUMN_INDEX_PAYLOAD = 12;
-
- private final Context mContext;
-
- private final int LONG_TITLE_LENGTH = 20;
-
- private static final String[] whiteList = {
- "main_toggle_wifi",
- "main_toggle_bluetooth",
- "main_toggle_bluetooth_obsolete",
- "toggle_airplane",
- "tether_settings",
- "battery_saver",
- "toggle_nfc",
- "restrict_background",
- "data_usage_enable",
- "button_roaming_key",
- };
- private static final Set<String> prioritySettings = new HashSet(Arrays.asList(whiteList));
-
-
- public CursorToSearchResultConverter(Context context) {
- mContext = context;
- }
-
- public Set<SearchResult> convertCursor(Cursor cursorResults, int baseRank) {
- if (cursorResults == null) {
- return null;
- }
- final Map<String, Context> contextMap = new HashMap<>();
- final Set<SearchResult> results = new HashSet<>();
-
- while (cursorResults.moveToNext()) {
- SearchResult result = buildSingleSearchResultFromCursor(contextMap, cursorResults,
- baseRank);
- if (result != null) {
- results.add(result);
- }
- }
- return results;
- }
-
- public static ResultPayload getUnmarshalledPayload(byte[] marshalledPayload,
- int payloadType) {
- try {
- switch (payloadType) {
- case ResultPayload.PayloadType.INTENT:
- return ResultPayloadUtils.unmarshall(marshalledPayload,
- ResultPayload.CREATOR);
- case ResultPayload.PayloadType.INLINE_SWITCH:
- return ResultPayloadUtils.unmarshall(marshalledPayload,
- InlineSwitchPayload.CREATOR);
- case ResultPayload.PayloadType.INLINE_LIST:
- return ResultPayloadUtils.unmarshall(marshalledPayload,
- InlineListPayload.CREATOR);
- }
- } catch (BadParcelableException e) {
- Log.w(TAG, "Error creating parcelable: " + e);
- }
- return null;
- }
-
- private SearchResult buildSingleSearchResultFromCursor(Map<String, Context> contextMap,
- Cursor cursor, int baseRank) {
- final int docId = cursor.getInt(COLUMN_INDEX_ID);
- final String pkgName = cursor.getString(COLUMN_INDEX_INTENT_ACTION_TARGET_PACKAGE);
- final String title = cursor.getString(COLUMN_INDEX_TITLE);
- final String summaryOn = cursor.getString(COLUMN_INDEX_SUMMARY_ON);
- final String className = cursor.getString(COLUMN_INDEX_CLASS_NAME);
- final String key = cursor.getString(COLUMN_INDEX_KEY);
- final String iconResStr = cursor.getString(COLUMN_INDEX_ICON);
- final int payloadType = cursor.getInt(COLUMN_INDEX_PAYLOAD_TYPE);
- final byte[] marshalledPayload = cursor.getBlob(COLUMN_INDEX_PAYLOAD);
- final ResultPayload payload = getUnmarshalledPayload(marshalledPayload, payloadType);
-
- final int rank = getRank(title, baseRank, key);
-
- final SearchResult.Builder builder = new SearchResult.Builder()
- .setStableId(docId)
- .setTitle(title)
- .setSummary(summaryOn)
- .setRank(rank)
- .setIcon(getIconForPackage(contextMap, pkgName, className, iconResStr))
- .setPayload(payload);
- return builder.build();
- }
-
- private Drawable getIconForPackage(Map<String, Context> contextMap, String pkgName,
- String className, String iconResStr) {
- final int iconId = TextUtils.isEmpty(iconResStr)
- ? 0 : Integer.parseInt(iconResStr);
- Drawable icon;
- Context packageContext;
- if (iconId == 0) {
- icon = null;
- } else {
- if (TextUtils.isEmpty(className) && !TextUtils.isEmpty(pkgName)) {
- packageContext = contextMap.get(pkgName);
- if (packageContext == null) {
- try {
- packageContext = mContext.createPackageContext(pkgName, 0);
- } catch (PackageManager.NameNotFoundException e) {
- Log.e(TAG, "Cannot create Context for package: " + pkgName);
- return null;
- }
- contextMap.put(pkgName, packageContext);
- }
- } else {
- packageContext = mContext;
- }
- try {
- icon = packageContext.getDrawable(iconId);
- } catch (Resources.NotFoundException nfe) {
- icon = null;
- }
- }
- return icon;
- }
-
-
- /** Uses the breadcrumbs to determine the offset to the base rank.
- * There are three checks
- * A) If the result is prioritized and the highest base level
- * B) If the query matches the highest level menu title
- * C) If the query is longer than 20
- *
- * If the query matches A, set it to TOP_RANK
- * If the query matches B, the offset is 0.
- * If the query matches C, the offset is 1
-
- * @param title of the result.
- * @param baseRank of the result. Lower if it's a better result.
- * @return
- */
- private int getRank(String title, int baseRank, String key) {
- // The result can only be prioritized if it is a top ranked result.
- if (prioritySettings.contains(key) && baseRank < BASE_RANKS[1]) {
- return TOP_RANK;
- }
- if (title.length() > LONG_TITLE_LENGTH) {
- return baseRank + 1;
- }
- return baseRank;
- }
-}
\ No newline at end of file
diff --git a/src/com/android/settings/search/DatabaseIndexingManager.java b/src/com/android/settings/search/DatabaseIndexingManager.java
index 7b9a635..0c02b67 100644
--- a/src/com/android/settings/search/DatabaseIndexingManager.java
+++ b/src/com/android/settings/search/DatabaseIndexingManager.java
@@ -18,10 +18,10 @@
package com.android.settings.search;
-import static com.android.settings.search.CursorToSearchResultConverter.COLUMN_INDEX_ID;
-import static com.android.settings.search.CursorToSearchResultConverter
+import static com.android.settings.search.DatabaseResultLoader.COLUMN_INDEX_ID;
+import static com.android.settings.search.DatabaseResultLoader
.COLUMN_INDEX_INTENT_ACTION_TARGET_PACKAGE;
-import static com.android.settings.search.CursorToSearchResultConverter.COLUMN_INDEX_KEY;
+import static com.android.settings.search.DatabaseResultLoader.COLUMN_INDEX_KEY;
import static com.android.settings.search.DatabaseResultLoader.SELECT_COLUMNS;
import static com.android.settings.search.IndexDatabaseHelper.IndexColumns.CLASS_NAME;
import static com.android.settings.search.IndexDatabaseHelper.IndexColumns.DATA_ENTRIES;
diff --git a/src/com/android/settings/search/DatabaseResultLoader.java b/src/com/android/settings/search/DatabaseResultLoader.java
index 3b5cc47..7902eef 100644
--- a/src/com/android/settings/search/DatabaseResultLoader.java
+++ b/src/com/android/settings/search/DatabaseResultLoader.java
@@ -43,14 +43,11 @@
};
/**
- * Base ranks defines the best possible rank based on what the query matches.
- * If the query matches the prefix of the first word in the title, the best rank it can be
- * is 1
- * If the query matches the prefix of the other words in the title, the best rank it can be
- * is 3
- * If the query only matches the summary, the best rank it can be is 7
- * If the query only matches keywords or entries, the best rank it can be is 9
+ * These indices are used to match the columns of the this loader's SELECT statement.
+ * These are not necessarily the same order nor similar coverage as the schema defined in
+ * IndexDatabaseHelper
*/
- public static final int[] BASE_RANKS = {1, 3, 7, 9};
-
+ public static final int COLUMN_INDEX_ID = 0;
+ public static final int COLUMN_INDEX_INTENT_ACTION_TARGET_PACKAGE = 8;
+ public static final int COLUMN_INDEX_KEY = 10;
}
\ No newline at end of file
diff --git a/src/com/android/settings/search/SearchIndexableResourcesImpl.java b/src/com/android/settings/search/SearchIndexableResourcesImpl.java
index 75f64d3..55235a4 100644
--- a/src/com/android/settings/search/SearchIndexableResourcesImpl.java
+++ b/src/com/android/settings/search/SearchIndexableResourcesImpl.java
@@ -21,11 +21,14 @@
import com.android.settings.DateTimeSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.LegalSettings;
+import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragmentOld;
+import com.android.settings.datausage.DataUsageSummaryLegacy;
import com.android.settings.deviceinfo.aboutphone.MyDeviceInfoFragment;
import com.android.settings.accessibility.AccessibilitySettings;
import com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment;
import com.android.settings.accessibility.MagnificationPreferenceFragment;
-import com.android.settings.accounts.UserAndAccountDashboardFragment;
+import com.android.settings.accessibility.VibrationSettings;
+import com.android.settings.accounts.AccountDashboardFragment;
import com.android.settings.applications.AppAndNotificationDashboardFragment;
import com.android.settings.applications.DefaultAppSettings;
import com.android.settings.applications.SpecialAccessSettings;
@@ -35,19 +38,20 @@
import com.android.settings.bluetooth.BluetoothSettings;
import com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment;
import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
-import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragmentOld;
+import com.android.settings.connecteddevice.usb.UsbDetailsFragment;
import com.android.settings.datausage.DataUsageSummary;
import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
import com.android.settings.development.DevelopmentSettingsDashboardFragment;
import com.android.settings.deviceinfo.DeviceInfoSettings;
import com.android.settings.deviceinfo.StorageDashboardFragment;
import com.android.settings.deviceinfo.StorageSettings;
+import com.android.settings.deviceinfo.aboutphone.MyDeviceInfoFragment;
import com.android.settings.display.AmbientDisplaySettings;
import com.android.settings.display.NightDisplaySettings;
import com.android.settings.display.ScreenZoomSettings;
import com.android.settings.dream.DreamSettings;
import com.android.settings.enterprise.EnterprisePrivacySettings;
-import com.android.settings.fuelgauge.BatterySaverSettings;
+import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings;
import com.android.settings.fuelgauge.PowerUsageAdvanced;
import com.android.settings.fuelgauge.PowerUsageSummary;
import com.android.settings.fuelgauge.SmartBatterySettings;
@@ -75,7 +79,7 @@
import com.android.settings.security.EncryptionAndCredential;
import com.android.settings.security.LockscreenDashboardFragment;
import com.android.settings.security.ScreenPinningSettings;
-import com.android.settings.security.SecuritySettingsV2;
+import com.android.settings.security.SecuritySettings;
import com.android.settings.security.screenlock.ScreenLockSettings;
import com.android.settings.sim.SimSettings;
import com.android.settings.support.SupportDashboardActivity;
@@ -109,6 +113,7 @@
addIndex(BluetoothSettings.class);
addIndex(SimSettings.class);
addIndex(DataUsageSummary.class);
+ addIndex(DataUsageSummaryLegacy.class);
addIndex(ScreenZoomSettings.class);
addIndex(DisplaySettings.class);
addIndex(AmbientDisplaySettings.class);
@@ -132,11 +137,11 @@
addIndex(LanguageAndInputSettings.class);
addIndex(LocationSettings.class);
addIndex(ScanningSettings.class);
- addIndex(SecuritySettingsV2.class);
+ addIndex(SecuritySettings.class);
addIndex(ScreenLockSettings.class);
addIndex(EncryptionAndCredential.class);
addIndex(ScreenPinningSettings.class);
- addIndex(UserAndAccountDashboardFragment.class);
+ addIndex(AccountDashboardFragment.class);
addIndex(VirtualKeyboardFragment.class);
addIndex(AvailableVirtualKeyboardFragment.class);
addIndex(PhysicalKeyboardFragment.class);
@@ -167,12 +172,14 @@
addIndex(PowerUsageSummary.class);
addIndex(BatterySaverSettings.class);
addIndex(LockscreenDashboardFragment.class);
+ addIndex(UsbDetailsFragment.class);
addIndex(WifiDisplaySettings.class);
addIndex(ZenModeBehaviorSettings.class);
addIndex(ZenModeAutomationSettings.class);
addIndex(NightDisplaySettings.class);
addIndex(SmartBatterySettings.class);
addIndex(MyDeviceInfoFragment.class);
+ addIndex(VibrationSettings.class);
}
@Override
diff --git a/src/com/android/settings/search/SearchResult.java b/src/com/android/settings/search/SearchResult.java
deleted file mode 100644
index d96661a..0000000
--- a/src/com/android/settings/search/SearchResult.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.search;
-
-import android.graphics.drawable.Drawable;
-import android.text.TextUtils;
-import android.util.Log;
-
-import java.util.List;
-
-/**
- * Data class as an interface for all Search Results.
- */
-public class SearchResult implements Comparable<SearchResult> {
-
- private static final String TAG = "SearchResult";
-
- /**
- * Defines the lowest rank for a search result to be considered as ranked. Results with ranks
- * higher than this have no guarantee for sorting order.
- */
- public static final int BOTTOM_RANK = 10;
-
- /**
- * Defines the highest rank for a search result. Used for special search results only.
- */
- public static final int TOP_RANK = 0;
-
- /**
- * The title of the result and main text displayed.
- * Intent Results: Displays as the primary
- */
- public final CharSequence title;
-
- /**
- * Summary / subtitle text
- * Intent Results: Displays the text underneath the title
- */
- final public CharSequence summary;
-
- /**
- * An ordered list of the information hierarchy.
- * Intent Results: Displayed a hierarchy of selections to reach the setting from the home screen
- */
- public final List<String> breadcrumbs;
-
- /**
- * A suggestion for the ranking of the result.
- * Based on Settings Rank:
- * 1 is a near perfect match
- * 9 is the weakest match
- * TODO subject to change
- */
- public final int rank;
-
- /**
- * Identifier for the recycler view adapter.
- */
- @ResultPayload.PayloadType
- public final int viewType;
-
- /**
- * Metadata for the specific result types.
- */
- public final ResultPayload payload;
-
- /**
- * Result's icon.
- */
- public final Drawable icon;
-
- /**
- * Stable id for this object.
- */
- public final int stableId;
-
- protected SearchResult(Builder builder) {
- stableId = builder.mStableId;
- title = builder.mTitle;
- summary = builder.mSummary;
- breadcrumbs = builder.mBreadcrumbs;
- rank = builder.mRank;
- icon = builder.mIcon;
- payload = builder.mResultPayload;
- viewType = payload.getType();
- }
-
- @Override
- public int compareTo(SearchResult searchResult) {
- if (searchResult == null) {
- return -1;
- }
- return this.rank - searchResult.rank;
- }
-
- @Override
- public boolean equals(Object that) {
- if (this == that) {
- return true;
- }
- if (!(that instanceof SearchResult)) {
- return false;
- }
- return this.stableId == ((SearchResult) that).stableId;
- }
-
- @Override
- public int hashCode() {
- return stableId;
- }
-
- public static class Builder {
- protected CharSequence mTitle;
- protected CharSequence mSummary;
- protected List<String> mBreadcrumbs;
- protected int mRank = 42;
- protected ResultPayload mResultPayload;
- protected Drawable mIcon;
- protected int mStableId;
-
- public Builder setTitle(CharSequence title) {
- mTitle = title;
- return this;
- }
-
- public Builder setSummary(CharSequence summary) {
- mSummary = summary;
- return this;
- }
-
- public Builder addBreadcrumbs(List<String> breadcrumbs) {
- mBreadcrumbs = breadcrumbs;
- return this;
- }
-
- public Builder setRank(int rank) {
- if (rank >= 0 && rank <= 9) {
- mRank = rank;
- }
- return this;
- }
-
- public Builder setIcon(Drawable icon) {
- mIcon = icon;
- return this;
- }
-
- public Builder setPayload(ResultPayload payload) {
- mResultPayload = payload;
- return this;
- }
-
- public Builder setStableId(int stableId) {
- mStableId = stableId;
- return this;
- }
-
- public SearchResult build() {
- // Check that all of the mandatory fields are set.
- if (TextUtils.isEmpty(mTitle)) {
- throw new IllegalStateException("SearchResult missing title argument");
- } else if (mStableId == 0) {
- Log.v(TAG, "No stable ID on SearchResult with title: " + mTitle);
- throw new IllegalStateException("SearchResult missing stableId argument");
- } else if (mResultPayload == null) {
- throw new IllegalStateException("SearchResult missing Payload argument");
- }
- return new SearchResult(this);
- }
- }
-}
\ No newline at end of file
diff --git a/src/com/android/settings/search/actionbar/SearchMenuController.java b/src/com/android/settings/search/actionbar/SearchMenuController.java
index f3a9285..1729ccd 100644
--- a/src/com/android/settings/search/actionbar/SearchMenuController.java
+++ b/src/com/android/settings/search/actionbar/SearchMenuController.java
@@ -28,6 +28,7 @@
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.search.SearchFeatureProvider;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.ObservableFragment;
import com.android.settingslib.core.lifecycle.ObservablePreferenceFragment;
import com.android.settingslib.core.lifecycle.events.OnCreateOptionsMenu;
@@ -41,6 +42,10 @@
host.getLifecycle().addObserver(new SearchMenuController(host));
}
+ public static void init(@NonNull ObservableFragment host) {
+ host.getLifecycle().addObserver(new SearchMenuController(host));
+ }
+
private SearchMenuController(@NonNull Fragment host) {
mHost = host;
}
diff --git a/src/com/android/settings/security/ChangeProfileScreenLockPreferenceController.java b/src/com/android/settings/security/ChangeProfileScreenLockPreferenceController.java
index 9a33ec3..91c4410 100644
--- a/src/com/android/settings/security/ChangeProfileScreenLockPreferenceController.java
+++ b/src/com/android/settings/security/ChangeProfileScreenLockPreferenceController.java
@@ -16,8 +16,7 @@
package com.android.settings.security;
-import static com.android.settings.security
- .SecuritySettingsV2.SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE;
+import static com.android.settings.security.SecuritySettings.SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
@@ -37,7 +36,7 @@
private static final String KEY_UNLOCK_SET_OR_CHANGE_PROFILE = "unlock_set_or_change_profile";
public ChangeProfileScreenLockPreferenceController(Context context,
- SecuritySettingsV2 host) {
+ SecuritySettings host) {
super(context, host);
}
diff --git a/src/com/android/settings/security/ChangeScreenLockPreferenceController.java b/src/com/android/settings/security/ChangeScreenLockPreferenceController.java
index fdb9349..10143d2 100644
--- a/src/com/android/settings/security/ChangeScreenLockPreferenceController.java
+++ b/src/com/android/settings/security/ChangeScreenLockPreferenceController.java
@@ -16,7 +16,7 @@
package com.android.settings.security;
-import static com.android.settings.security.SecuritySettingsV2.SET_OR_CHANGE_LOCK_METHOD_REQUEST;
+import static com.android.settings.security.SecuritySettings.SET_OR_CHANGE_LOCK_METHOD_REQUEST;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
@@ -45,7 +45,7 @@
private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change";
protected final DevicePolicyManager mDPM;
- protected final SecuritySettingsV2 mHost;
+ protected final SecuritySettings mHost;
protected final UserManager mUm;
protected final LockPatternUtils mLockPatternUtils;
@@ -54,7 +54,7 @@
protected RestrictedPreference mPreference;
- public ChangeScreenLockPreferenceController(Context context, SecuritySettingsV2 host) {
+ public ChangeScreenLockPreferenceController(Context context, SecuritySettings host) {
super(context);
mUm = (UserManager) context.getSystemService(Context.USER_SERVICE);
mDPM = (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE);
diff --git a/src/com/android/settings/security/CryptKeeperSettings.java b/src/com/android/settings/security/CryptKeeperSettings.java
index 7d5ee9d..64f5abb 100644
--- a/src/com/android/settings/security/CryptKeeperSettings.java
+++ b/src/com/android/settings/security/CryptKeeperSettings.java
@@ -157,6 +157,7 @@
}
}
}
+ activity.setTitle(R.string.crypt_keeper_encrypt_title);
}
/**
diff --git a/src/com/android/settings/security/LockUnificationPreferenceController.java b/src/com/android/settings/security/LockUnificationPreferenceController.java
index 5486e29..abbf2f4 100644
--- a/src/com/android/settings/security/LockUnificationPreferenceController.java
+++ b/src/com/android/settings/security/LockUnificationPreferenceController.java
@@ -16,11 +16,10 @@
package com.android.settings.security;
-import static com.android.settings.security
- .SecuritySettingsV2.SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE;
-import static com.android.settings.security.SecuritySettingsV2.UNIFY_LOCK_CONFIRM_DEVICE_REQUEST;
-import static com.android.settings.security.SecuritySettingsV2.UNIFY_LOCK_CONFIRM_PROFILE_REQUEST;
-import static com.android.settings.security.SecuritySettingsV2.UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST;
+import static com.android.settings.security.SecuritySettings.SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE;
+import static com.android.settings.security.SecuritySettings.UNIFY_LOCK_CONFIRM_DEVICE_REQUEST;
+import static com.android.settings.security.SecuritySettings.UNIFY_LOCK_CONFIRM_PROFILE_REQUEST;
+import static com.android.settings.security.SecuritySettings.UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST;
import android.app.Activity;
import android.app.admin.DevicePolicyManager;
@@ -53,7 +52,7 @@
private final UserManager mUm;
private final LockPatternUtils mLockPatternUtils;
private final int mProfileChallengeUserId;
- private final SecuritySettingsV2 mHost;
+ private final SecuritySettings mHost;
private RestrictedSwitchPreference mUnifyProfile;
@@ -67,7 +66,7 @@
mUnifyProfile = (RestrictedSwitchPreference) screen.findPreference(KEY_UNIFICATION);
}
- public LockUnificationPreferenceController(Context context, SecuritySettingsV2 host) {
+ public LockUnificationPreferenceController(Context context, SecuritySettings host) {
super(context);
mHost = host;
mUm = (UserManager) context.getSystemService(Context.USER_SERVICE);
@@ -212,7 +211,7 @@
mCurrentProfilePassword);
mHost.startFragment(mHost, ChooseLockGeneric.ChooseLockGenericFragment.class.getName(),
R.string.lock_settings_picker_title,
- SecuritySettingsV2.SET_OR_CHANGE_LOCK_METHOD_REQUEST, null);
+ SecuritySettings.SET_OR_CHANGE_LOCK_METHOD_REQUEST, null);
}
}
diff --git a/src/com/android/settings/security/LockscreenDashboardFragment.java b/src/com/android/settings/security/LockscreenDashboardFragment.java
index 7054181..c400645 100644
--- a/src/com/android/settings/security/LockscreenDashboardFragment.java
+++ b/src/com/android/settings/security/LockscreenDashboardFragment.java
@@ -22,7 +22,7 @@
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
-import com.android.settings.accounts.AddUserWhenLockedPreferenceController;
+import com.android.settings.users.AddUserWhenLockedPreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.notification.LockScreenNotificationPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
@@ -86,10 +86,8 @@
KEY_LOCK_SCREEN_NOTIFICATON_WORK_PROFILE);
lifecycle.addObserver(notificationController);
controllers.add(notificationController);
- final AddUserWhenLockedPreferenceController addUserWhenLockedController =
- new AddUserWhenLockedPreferenceController(context, KEY_ADD_USER_FROM_LOCK_SCREEN);
- lifecycle.addObserver(addUserWhenLockedController);
- controllers.add(addUserWhenLockedController);
+ controllers.add(new AddUserWhenLockedPreferenceController(
+ context, KEY_ADD_USER_FROM_LOCK_SCREEN, lifecycle));
mOwnerInfoPreferenceController =
new OwnerInfoPreferenceController(context, this, lifecycle);
controllers.add(mOwnerInfoPreferenceController);
@@ -121,7 +119,7 @@
final List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new LockScreenNotificationPreferenceController(context));
controllers.add(new AddUserWhenLockedPreferenceController(context,
- KEY_ADD_USER_FROM_LOCK_SCREEN));
+ KEY_ADD_USER_FROM_LOCK_SCREEN, null /* lifecycle */));
controllers.add(new OwnerInfoPreferenceController(
context, null /* fragment */, null /* lifecycle */));
controllers.add(new LockdownButtonPreferenceController(context));
diff --git a/src/com/android/settings/security/SecurityFeatureProvider.java b/src/com/android/settings/security/SecurityFeatureProvider.java
index 35ff586..d533d1e 100644
--- a/src/com/android/settings/security/SecurityFeatureProvider.java
+++ b/src/com/android/settings/security/SecurityFeatureProvider.java
@@ -17,26 +17,14 @@
package com.android.settings.security;
import android.content.Context;
-import android.support.v7.preference.PreferenceScreen;
-import android.util.FeatureFlagUtils;
import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.security.trustagent.TrustAgentManager;
-import com.android.settingslib.drawer.DashboardCategory;
/** FeatureProvider for security. */
public interface SecurityFeatureProvider {
- default boolean isSecuritySettingsV2Enabled(Context context) {
- return FeatureFlagUtils.isEnabled(context, FeatureFlags.SECURITY_SETTINGS_V2);
- }
-
- /** Update preferences with data from associated tiles. */
- void updatePreferences(Context context, PreferenceScreen preferenceScreen,
- DashboardCategory dashboardCategory);
-
/** Returns the {@link TrustAgentManager} bound to this {@link SecurityFeatureProvider}. */
TrustAgentManager getTrustAgentManager();
diff --git a/src/com/android/settings/security/SecurityFeatureProviderImpl.java b/src/com/android/settings/security/SecurityFeatureProviderImpl.java
index 70b1ec1..56a0884 100644
--- a/src/com/android/settings/security/SecurityFeatureProviderImpl.java
+++ b/src/com/android/settings/security/SecurityFeatureProviderImpl.java
@@ -17,28 +17,9 @@
package com.android.settings.security;
import android.content.Context;
-import android.content.IContentProvider;
-import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.content.res.Resources;
-import android.graphics.drawable.Drawable;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-import android.text.TextUtils;
-import android.util.ArrayMap;
-import android.util.Pair;
import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.R;
import com.android.settings.security.trustagent.TrustAgentManager;
-import com.android.settingslib.drawer.DashboardCategory;
-import com.android.settingslib.drawer.Tile;
-import com.android.settingslib.drawer.TileUtils;
-import com.android.settingslib.utils.ThreadUtils;
-
-import java.util.Map;
-import java.util.TreeMap;
/** Implementation for {@code SecurityFeatureProvider}. */
public class SecurityFeatureProviderImpl implements SecurityFeatureProvider {
@@ -46,150 +27,6 @@
private TrustAgentManager mTrustAgentManager;
private LockPatternUtils mLockPatternUtils;
- @VisibleForTesting
- static final Drawable DEFAULT_ICON = null;
-
- @VisibleForTesting
- static Map<String, Pair<String, Integer>> sIconCache = new TreeMap<>();
-
- @VisibleForTesting
- static Map<String, String> sSummaryCache = new TreeMap<>();
-
- /** Update preferences with data from associated tiles. */
- public void updatePreferences(final Context context, final PreferenceScreen preferenceScreen,
- final DashboardCategory dashboardCategory) {
- if (preferenceScreen == null) {
- return;
- }
- int tilesCount = (dashboardCategory != null) ? dashboardCategory.getTilesCount() : 0;
- if (tilesCount == 0) {
- return;
- }
-
- initPreferences(context, preferenceScreen, dashboardCategory);
-
- // Fetching the summary and icon from the provider introduces latency, so do this on a
- // separate thread.
- ThreadUtils.postOnBackgroundThread(() ->
- updatePreferencesToRunOnWorkerThread(context, preferenceScreen, dashboardCategory));
- }
-
- @VisibleForTesting
- static void initPreferences(Context context, PreferenceScreen preferenceScreen,
- DashboardCategory dashboardCategory) {
- int tilesCount = (dashboardCategory != null) ? dashboardCategory.getTilesCount() : 0;
- for (int i = 0; i < tilesCount; i++) {
- Tile tile = dashboardCategory.getTile(i);
- // If the tile does not have a key or appropriate meta data, skip it.
- if (TextUtils.isEmpty(tile.key) || (tile.metaData == null)) {
- continue;
- }
- Preference matchingPref = preferenceScreen.findPreference(tile.key);
- // If the tile does not have a matching preference, skip it.
- if (matchingPref == null) {
- continue;
- }
- // Either remove an icon by replacing them with nothing, or use the cached one since
- // there is a delay in fetching the injected icon, and we don't want an inappropriate
- // icon to be displayed while waiting for the injected icon.
- final String iconUri =
- tile.metaData.getString(TileUtils.META_DATA_PREFERENCE_ICON_URI, null);
- Drawable drawable = DEFAULT_ICON;
- if ((iconUri != null) && sIconCache.containsKey(iconUri)) {
- Pair<String, Integer> icon = sIconCache.get(iconUri);
- try {
- drawable = context.getPackageManager()
- .getResourcesForApplication(icon.first /* package name */)
- .getDrawable(icon.second /* res id */,
- context.getTheme());
- } catch (PackageManager.NameNotFoundException e) {
- // Ignore and just load the default icon.
- }
- }
- matchingPref.setIcon(drawable);
- // Either reserve room for the summary or load the cached one. This prevents the title
- // from shifting when the final summary is injected.
- final String summaryUri =
- tile.metaData.getString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, null);
- String summary = context.getString(R.string.summary_placeholder);
- if ((summaryUri != null) && sSummaryCache.containsKey(summaryUri)) {
- summary = sSummaryCache.get(summaryUri);
- }
- matchingPref.setSummary(summary);
- }
- }
-
- @VisibleForTesting
- void updatePreferencesToRunOnWorkerThread(Context context, PreferenceScreen preferenceScreen,
- DashboardCategory dashboardCategory) {
-
- int tilesCount = (dashboardCategory != null) ? dashboardCategory.getTilesCount() : 0;
- Map<String, IContentProvider> providerMap = new ArrayMap<>();
- for (int i = 0; i < tilesCount; i++) {
- Tile tile = dashboardCategory.getTile(i);
- // If the tile does not have a key or appropriate meta data, skip it.
- if (TextUtils.isEmpty(tile.key) || (tile.metaData == null)) {
- continue;
- }
- Preference matchingPref = preferenceScreen.findPreference(tile.key);
- // If the tile does not have a matching preference, skip it.
- if (matchingPref == null) {
- continue;
- }
- // Check if the tile has content providers for dynamically updatable content.
- final String iconUri =
- tile.metaData.getString(TileUtils.META_DATA_PREFERENCE_ICON_URI, null);
- final String summaryUri =
- tile.metaData.getString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, null);
- if (!TextUtils.isEmpty(iconUri)) {
- String packageName = null;
- if (tile.intent != null) {
- Intent intent = tile.intent;
- if (!TextUtils.isEmpty(intent.getPackage())) {
- packageName = intent.getPackage();
- } else if (intent.getComponent() != null) {
- packageName = intent.getComponent().getPackageName();
- }
- }
- Pair<String, Integer> icon =
- TileUtils.getIconFromUri(context, packageName, iconUri, providerMap);
- if (icon != null) {
- sIconCache.put(iconUri, icon);
- // Icon is only returned if the icon belongs to Settings or the target app.
- // setIcon must be called on the UI thread.
- ThreadUtils.postOnMainThread(() -> {
- try {
- matchingPref.setIcon(context.getPackageManager()
- .getResourcesForApplication(icon.first /* package name */)
- .getDrawable(icon.second /* res id */,
- context.getTheme()));
- } catch (PackageManager.NameNotFoundException
- | Resources.NotFoundException e) {
- // Intentionally ignored. If icon resources cannot be found, do not
- // update.
- }
- });
- }
- }
- if (!TextUtils.isEmpty(summaryUri)) {
- String summary = TileUtils.getTextFromUri(context, summaryUri, providerMap,
- TileUtils.META_DATA_PREFERENCE_SUMMARY);
- sSummaryCache.put(summaryUri, summary);
- // setSummary must be called on UI thread.
- ThreadUtils.postOnMainThread(() -> {
- // Only update the summary if it has actually changed.
- if (summary == null) {
- if (matchingPref.getSummary() != null) {
- matchingPref.setSummary(summary);
- }
- } else if (!summary.equals(matchingPref.getSummary())) {
- matchingPref.setSummary(summary);
- }
- });
- }
- }
- }
-
@Override
public TrustAgentManager getTrustAgentManager() {
if (mTrustAgentManager == null) {
diff --git a/src/com/android/settings/security/SecuritySettings.java b/src/com/android/settings/security/SecuritySettings.java
index f099b44..df3b455 100644
--- a/src/com/android/settings/security/SecuritySettings.java
+++ b/src/com/android/settings/security/SecuritySettings.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2007 The Android Open Source Project
+ * Copyright (C) 2018 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.
@@ -13,744 +13,62 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package com.android.settings.security;
-import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import static com.android.settings.security.EncryptionStatusPreferenceController
+ .PREF_KEY_ENCRYPTION_SECURITY_PAGE;
import android.app.Activity;
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.app.FragmentManager;
-import android.app.admin.DevicePolicyManager;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
-import android.content.res.Resources;
import android.hardware.fingerprint.FingerprintManager;
-import android.os.Bundle;
-import android.os.PersistableBundle;
-import android.os.UserHandle;
-import android.os.UserManager;
-import android.os.storage.StorageManager;
import android.provider.SearchIndexableResource;
-import android.provider.Settings;
-import android.support.annotation.VisibleForTesting;
-import android.support.v14.preference.SwitchPreference;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.Preference.OnPreferenceChangeListener;
-import android.support.v7.preference.PreferenceGroup;
-import android.support.v7.preference.PreferenceScreen;
-import android.telephony.CarrierConfigManager;
-import android.telephony.SubscriptionInfo;
-import android.telephony.SubscriptionManager;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.internal.widget.LockPatternUtils;
+import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
-import com.android.settings.dashboard.DashboardFeatureProvider;
+import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.SummaryLoader;
import com.android.settings.enterprise.EnterprisePrivacyPreferenceController;
import com.android.settings.enterprise.ManageDeviceAdminPreferenceController;
-import com.android.settings.fingerprint.FingerprintSettings;
+import com.android.settings.fingerprint.FingerprintProfileStatusPreferenceController;
+import com.android.settings.fingerprint.FingerprintStatusPreferenceController;
import com.android.settings.location.LocationPreferenceController;
-import com.android.settings.notification.LockScreenNotificationPreferenceController;
-import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.password.ChooseLockGeneric.ChooseLockGenericFragment;
-import com.android.settings.password.ChooseLockSettingsHelper;
-import com.android.settings.password.ManagedLockPasswordProvider;
import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.search.SearchIndexableRaw;
-import com.android.settings.security.screenlock.ScreenLockSettings;
-import com.android.settings.security.trustagent.TrustAgentManager;
-import com.android.settings.security.trustagent.TrustAgentManager.TrustAgentComponentInfo;
-import com.android.settings.widget.GearPreference;
-import com.android.settingslib.RestrictedLockUtils;
-import com.android.settingslib.RestrictedPreference;
-import com.android.settingslib.RestrictedSwitchPreference;
-import com.android.settingslib.drawer.CategoryKey;
+import com.android.settings.security.screenlock.LockScreenPreferenceController;
+import com.android.settings.security.trustagent.ManageTrustAgentsPreferenceController;
+import com.android.settings.security.trustagent.TrustAgentListPreferenceController;
+import com.android.settings.widget.PreferenceCategoryController;
+import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.core.lifecycle.Lifecycle;
import java.util.ArrayList;
import java.util.List;
-/**
- * Gesture lock pattern settings.
- */
-public class SecuritySettings extends SettingsPreferenceFragment
- implements OnPreferenceChangeListener, Indexable,
- GearPreference.OnGearClickListener {
+public class SecuritySettings extends DashboardFragment {
private static final String TAG = "SecuritySettings";
- private static final String TRUST_AGENT_CLICK_INTENT = "trust_agent_click_intent";
-
- // Lock Settings
- private static final String KEY_UNLOCK_SET_OR_CHANGE = "unlock_set_or_change";
- private static final String KEY_UNLOCK_SET_OR_CHANGE_PROFILE = "unlock_set_or_change_profile";
- private static final String KEY_VISIBLE_PATTERN_PROFILE = "visiblepattern_profile";
- private static final String KEY_SECURITY_CATEGORY = "security_category";
- @VisibleForTesting
- static final String KEY_MANAGE_TRUST_AGENTS = "manage_trust_agents";
- private static final String KEY_UNIFICATION = "unification";
- @VisibleForTesting
- static final String KEY_LOCKSCREEN_PREFERENCES = "lockscreen_preferences";
- private static final String KEY_ENCRYPTION_AND_CREDENTIALS = "encryption_and_credential";
- private static final String KEY_LOCATION_SCANNING = "location_scanning";
- private static final String KEY_LOCATION = "location";
-
- private static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST = 123;
- private static final int CHANGE_TRUST_AGENT_SETTINGS = 126;
- private static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE = 127;
- private static final int UNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 128;
- private static final int UNIFY_LOCK_CONFIRM_PROFILE_REQUEST = 129;
- private static final int UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 130;
- private static final String TAG_UNIFICATION_DIALOG = "unification_dialog";
-
- // Misc Settings
- private static final String KEY_SIM_LOCK = "sim_lock_settings";
- private static final String KEY_SHOW_PASSWORD = "show_password";
- private static final String KEY_TRUST_AGENT = "trust_agent";
- private static final String KEY_SCREEN_PINNING = "screen_pinning_settings";
-
- // Security status
- private static final String KEY_SECURITY_STATUS = "security_status";
- private static final String SECURITY_STATUS_KEY_PREFIX = "security_status_";
-
- // Device management settings
- private static final String KEY_ENTERPRISE_PRIVACY = "enterprise_privacy";
- private static final String KEY_MANAGE_DEVICE_ADMIN = "manage_device_admin";
-
- // These switch preferences need special handling since they're not all stored in Settings.
- private static final String SWITCH_PREFERENCE_KEYS[] = {
- KEY_SHOW_PASSWORD, KEY_UNIFICATION, KEY_VISIBLE_PATTERN_PROFILE
- };
-
- private static final int MY_USER_ID = UserHandle.myUserId();
-
- private DashboardFeatureProvider mDashboardFeatureProvider;
- private DevicePolicyManager mDPM;
- private SecurityFeatureProvider mSecurityFeatureProvider;
- private TrustAgentManager mTrustAgentManager;
- private SubscriptionManager mSubscriptionManager;
- private UserManager mUm;
-
- private ChooseLockSettingsHelper mChooseLockSettingsHelper;
- private LockPatternUtils mLockPatternUtils;
- private ManagedLockPasswordProvider mManagedPasswordProvider;
-
- private SwitchPreference mVisiblePatternProfile;
- private RestrictedSwitchPreference mUnifyProfile;
-
- private SwitchPreference mShowPassword;
-
- private boolean mIsAdmin;
-
- private Intent mTrustAgentClickIntent;
-
- private int mProfileChallengeUserId;
-
- private String mCurrentDevicePassword;
- private String mCurrentProfilePassword;
-
- private LocationPreferenceController mLocationcontroller;
- private ManageDeviceAdminPreferenceController mManageDeviceAdminPreferenceController;
- private EnterprisePrivacyPreferenceController mEnterprisePrivacyPreferenceController;
+ public static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST = 123;
+ public static final int CHANGE_TRUST_AGENT_SETTINGS = 126;
+ public static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE = 127;
+ public static final int UNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 128;
+ public static final int UNIFY_LOCK_CONFIRM_PROFILE_REQUEST = 129;
+ public static final int UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 130;
@Override
public int getMetricsCategory() {
- return MetricsEvent.SECURITY;
+ return MetricsProto.MetricsEvent.SECURITY;
}
@Override
- public void onAttach(Context context) {
- super.onAttach(context);
- mLocationcontroller = new LocationPreferenceController(context, getLifecycle());
+ protected int getPreferenceScreenResId() {
+ return R.xml.security_dashboard_settings;
}
@Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- final Activity activity = getActivity();
-
- mSubscriptionManager = SubscriptionManager.from(activity);
-
- mLockPatternUtils = new LockPatternUtils(activity);
-
- mManagedPasswordProvider = ManagedLockPasswordProvider.get(activity, MY_USER_ID);
-
- mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
-
- mUm = UserManager.get(activity);
-
- mChooseLockSettingsHelper = new ChooseLockSettingsHelper(activity);
-
- mDashboardFeatureProvider = FeatureFactory.getFactory(activity)
- .getDashboardFeatureProvider(activity);
-
- mSecurityFeatureProvider = FeatureFactory.getFactory(activity).getSecurityFeatureProvider();
-
- mTrustAgentManager = mSecurityFeatureProvider.getTrustAgentManager();
-
- if (savedInstanceState != null
- && savedInstanceState.containsKey(TRUST_AGENT_CLICK_INTENT)) {
- mTrustAgentClickIntent = savedInstanceState.getParcelable(TRUST_AGENT_CLICK_INTENT);
- }
-
- mManageDeviceAdminPreferenceController
- = new ManageDeviceAdminPreferenceController(activity);
- mEnterprisePrivacyPreferenceController
- = new EnterprisePrivacyPreferenceController(activity);
- }
-
- private static int getResIdForLockUnlockScreen(LockPatternUtils lockPatternUtils,
- ManagedLockPasswordProvider managedPasswordProvider, int userId) {
- final boolean isMyUser = userId == MY_USER_ID;
- int resid = 0;
- if (!lockPatternUtils.isSecure(userId)) {
- if (!isMyUser) {
- resid = R.xml.security_settings_lockscreen_profile;
- } else if (lockPatternUtils.isLockScreenDisabled(userId)) {
- resid = R.xml.security_settings_lockscreen;
- } else {
- resid = R.xml.security_settings_chooser;
- }
- } else {
- switch (lockPatternUtils.getKeyguardStoredPasswordQuality(userId)) {
- case DevicePolicyManager.PASSWORD_QUALITY_SOMETHING:
- resid = isMyUser ? R.xml.security_settings_pattern
- : R.xml.security_settings_pattern_profile;
- break;
- case DevicePolicyManager.PASSWORD_QUALITY_NUMERIC:
- case DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX:
- resid = isMyUser ? R.xml.security_settings_pin
- : R.xml.security_settings_pin_profile;
- break;
- case DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC:
- case DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC:
- case DevicePolicyManager.PASSWORD_QUALITY_COMPLEX:
- resid = isMyUser ? R.xml.security_settings_password
- : R.xml.security_settings_password_profile;
- break;
- case DevicePolicyManager.PASSWORD_QUALITY_MANAGED:
- resid = managedPasswordProvider.getResIdForLockUnlockScreen(!isMyUser);
- break;
- }
- }
- return resid;
- }
-
- /**
- * Important!
- *
- * Don't forget to update the SecuritySearchIndexProvider if you are doing any change in the
- * logic or adding/removing preferences here.
- */
- private PreferenceScreen createPreferenceHierarchy() {
- PreferenceScreen root = getPreferenceScreen();
- if (root != null) {
- root.removeAll();
- }
- addPreferencesFromResource(R.xml.security_settings);
- root = getPreferenceScreen();
-
- // Add category for security status
- addPreferencesFromResource(R.xml.security_settings_status);
-
- // Add options for lock/unlock screen
- final int resid = getResIdForLockUnlockScreen(mLockPatternUtils,
- mManagedPasswordProvider, MY_USER_ID);
- addPreferencesFromResource(resid);
-
- // DO or PO installed in the user may disallow to change password.
- disableIfPasswordQualityManaged(KEY_UNLOCK_SET_OR_CHANGE, MY_USER_ID);
-
- mProfileChallengeUserId = Utils.getManagedProfileId(mUm, MY_USER_ID);
- if (mProfileChallengeUserId != UserHandle.USER_NULL
- && mLockPatternUtils.isSeparateProfileChallengeAllowed(mProfileChallengeUserId)) {
- addPreferencesFromResource(R.xml.security_settings_profile);
- addPreferencesFromResource(R.xml.security_settings_unification);
- final int profileResid = getResIdForLockUnlockScreen(mLockPatternUtils,
- mManagedPasswordProvider, mProfileChallengeUserId);
- addPreferencesFromResource(profileResid);
- maybeAddFingerprintPreference(root, mProfileChallengeUserId);
- if (!mLockPatternUtils.isSeparateProfileChallengeEnabled(mProfileChallengeUserId)) {
- final Preference lockPreference =
- root.findPreference(KEY_UNLOCK_SET_OR_CHANGE_PROFILE);
- final String summary = getContext().getString(
- R.string.lock_settings_profile_unified_summary);
- lockPreference.setSummary(summary);
- lockPreference.setEnabled(false);
- // PO may disallow to change password for the profile, but screen lock and managed
- // profile's lock is the same. Disable main "Screen lock" menu.
- disableIfPasswordQualityManaged(KEY_UNLOCK_SET_OR_CHANGE, mProfileChallengeUserId);
- } else {
- // PO may disallow to change profile password, and the profile's password is
- // separated from screen lock password. Disable profile specific "Screen lock" menu.
- disableIfPasswordQualityManaged(KEY_UNLOCK_SET_OR_CHANGE_PROFILE,
- mProfileChallengeUserId);
- }
- }
-
- Preference unlockSetOrChange = findPreference(KEY_UNLOCK_SET_OR_CHANGE);
- if (unlockSetOrChange instanceof GearPreference) {
- ((GearPreference) unlockSetOrChange).setOnGearClickListener(this);
- }
-
- mIsAdmin = mUm.isAdminUser();
-
- // Fingerprint and trust agents
- int numberOfTrustAgent = 0;
- PreferenceGroup securityCategory = (PreferenceGroup)
- root.findPreference(KEY_SECURITY_CATEGORY);
- if (securityCategory != null) {
- maybeAddFingerprintPreference(securityCategory, UserHandle.myUserId());
- numberOfTrustAgent = addTrustAgentSettings(securityCategory);
- setLockscreenPreferencesSummary(securityCategory);
- }
-
- mVisiblePatternProfile =
- (SwitchPreference) root.findPreference(KEY_VISIBLE_PATTERN_PROFILE);
- mUnifyProfile = (RestrictedSwitchPreference) root.findPreference(KEY_UNIFICATION);
-
- // Append the rest of the settings
- addPreferencesFromResource(R.xml.security_settings_misc);
-
- // Do not display SIM lock for devices without an Icc card
- TelephonyManager tm = TelephonyManager.getDefault();
- CarrierConfigManager cfgMgr = (CarrierConfigManager)
- getActivity().getSystemService(Context.CARRIER_CONFIG_SERVICE);
- PersistableBundle b = cfgMgr.getConfig();
- if (!mIsAdmin || !isSimIccReady() ||
- b.getBoolean(CarrierConfigManager.KEY_HIDE_SIM_LOCK_SETTINGS_BOOL)) {
- root.removePreference(root.findPreference(KEY_SIM_LOCK));
- } else {
- // Disable SIM lock if there is no ready SIM card.
- root.findPreference(KEY_SIM_LOCK).setEnabled(isSimReady());
- }
- if (Settings.System.getInt(getContentResolver(),
- Settings.System.LOCK_TO_APP_ENABLED, 0) != 0) {
- root.findPreference(KEY_SCREEN_PINNING).setSummary(
- getResources().getString(R.string.switch_on_text));
- }
-
- // Encryption status of device
- if (LockPatternUtils.isDeviceEncryptionEnabled()) {
- root.findPreference(KEY_ENCRYPTION_AND_CREDENTIALS).setSummary(
- R.string.encryption_and_credential_settings_summary);
- } else {
- root.findPreference(KEY_ENCRYPTION_AND_CREDENTIALS).setSummary(
- R.string.summary_placeholder);
- }
-
- // Show password
- mShowPassword = (SwitchPreference) root.findPreference(KEY_SHOW_PASSWORD);
-
- // Credential storage
- final UserManager um = (UserManager) getActivity().getSystemService(Context.USER_SERVICE);
-
- // Advanced Security features
- initTrustAgentPreference(root, numberOfTrustAgent);
-
- PreferenceGroup securityStatusPreferenceGroup =
- (PreferenceGroup) root.findPreference(KEY_SECURITY_STATUS);
- final List<Preference> tilePrefs = mDashboardFeatureProvider.getPreferencesForCategory(
- getActivity(), getPrefContext(), getMetricsCategory(),
- CategoryKey.CATEGORY_SECURITY);
- int numSecurityStatusPrefs = 0;
- if (tilePrefs != null && !tilePrefs.isEmpty()) {
- for (Preference preference : tilePrefs) {
- if (!TextUtils.isEmpty(preference.getKey())
- && preference.getKey().startsWith(SECURITY_STATUS_KEY_PREFIX)) {
- // Injected security status settings are placed under the Security status
- // category.
- securityStatusPreferenceGroup.addPreference(preference);
- numSecurityStatusPrefs++;
- } else {
- // Other injected settings are placed under the Security preference screen.
- root.addPreference(preference);
- }
- }
- }
-
- if (numSecurityStatusPrefs == 0) {
- root.removePreference(securityStatusPreferenceGroup);
- } else if (numSecurityStatusPrefs > 0) {
- // Update preference data with tile data. Security feature provider only updates the
- // data if it actually needs to be changed.
- mSecurityFeatureProvider.updatePreferences(getActivity(), root,
- mDashboardFeatureProvider.getTilesForCategory(
- CategoryKey.CATEGORY_SECURITY));
- }
-
- for (int i = 0; i < SWITCH_PREFERENCE_KEYS.length; i++) {
- final Preference pref = findPreference(SWITCH_PREFERENCE_KEYS[i]);
- if (pref != null) pref.setOnPreferenceChangeListener(this);
- }
-
- mLocationcontroller.displayPreference(root);
- mManageDeviceAdminPreferenceController.updateState(
- root.findPreference(KEY_MANAGE_DEVICE_ADMIN));
- mEnterprisePrivacyPreferenceController.displayPreference(root);
- final Preference enterprisePrivacyPreference = root.findPreference(
- mEnterprisePrivacyPreferenceController.getPreferenceKey());
- mEnterprisePrivacyPreferenceController.updateState(enterprisePrivacyPreference);
-
- return root;
- }
-
- @VisibleForTesting
- void initTrustAgentPreference(PreferenceScreen root, int numberOfTrustAgent) {
- Preference manageAgents = root.findPreference(KEY_MANAGE_TRUST_AGENTS);
- if (manageAgents != null) {
- if (!mLockPatternUtils.isSecure(MY_USER_ID)) {
- manageAgents.setEnabled(false);
- manageAgents.setSummary(R.string.disabled_because_no_backup_security);
- } else if (numberOfTrustAgent > 0) {
- manageAgents.setSummary(getActivity().getResources().getQuantityString(
- R.plurals.manage_trust_agents_summary_on,
- numberOfTrustAgent, numberOfTrustAgent));
- } else {
- manageAgents.setSummary(R.string.manage_trust_agents_summary);
- }
- }
- }
-
- @VisibleForTesting
- void setLockscreenPreferencesSummary(PreferenceGroup group) {
- final Preference lockscreenPreferences = group.findPreference(KEY_LOCKSCREEN_PREFERENCES);
- if (lockscreenPreferences != null) {
- lockscreenPreferences.setSummary(
- LockScreenNotificationPreferenceController.getSummaryResource(getContext()));
- }
- }
-
- /*
- * Sets the preference as disabled by admin if PASSWORD_QUALITY_MANAGED is set.
- * The preference must be a RestrictedPreference.
- */
- private void disableIfPasswordQualityManaged(String preferenceKey, int userId) {
- final EnforcedAdmin admin = RestrictedLockUtils.checkIfPasswordQualityIsSet(
- getActivity(), userId);
- if (admin != null && mDPM.getPasswordQuality(admin.component, userId) ==
- DevicePolicyManager.PASSWORD_QUALITY_MANAGED) {
- final RestrictedPreference pref =
- (RestrictedPreference) getPreferenceScreen().findPreference(preferenceKey);
- pref.setDisabledByAdmin(admin);
- }
- }
-
- private void maybeAddFingerprintPreference(PreferenceGroup securityCategory, int userId) {
- Preference fingerprintPreference =
- FingerprintSettings.getFingerprintPreferenceForUser(
- securityCategory.getContext(), userId);
- if (fingerprintPreference != null) {
- securityCategory.addPreference(fingerprintPreference);
- }
- }
-
- // Return the number of trust agents being added
- private int addTrustAgentSettings(PreferenceGroup securityCategory) {
- final boolean hasSecurity = mLockPatternUtils.isSecure(MY_USER_ID);
- final List<TrustAgentComponentInfo> agents = mTrustAgentManager.getActiveTrustAgents(
- getActivity(), mLockPatternUtils);
- for (TrustAgentComponentInfo agent : agents) {
- final RestrictedPreference trustAgentPreference =
- new RestrictedPreference(securityCategory.getContext());
- trustAgentPreference.setKey(KEY_TRUST_AGENT);
- trustAgentPreference.setTitle(agent.title);
- trustAgentPreference.setSummary(agent.summary);
- // Create intent for this preference.
- Intent intent = new Intent();
- intent.setComponent(agent.componentName);
- intent.setAction(Intent.ACTION_MAIN);
- trustAgentPreference.setIntent(intent);
- // Add preference to the settings menu.
- securityCategory.addPreference(trustAgentPreference);
-
- trustAgentPreference.setDisabledByAdmin(agent.admin);
- if (!trustAgentPreference.isDisabledByAdmin() && !hasSecurity) {
- trustAgentPreference.setEnabled(false);
- trustAgentPreference.setSummary(R.string.disabled_because_no_backup_security);
- }
- }
- return agents.size();
- }
-
- /* Return true if a there is a Slot that has Icc.
- */
- private boolean isSimIccReady() {
- TelephonyManager tm = TelephonyManager.getDefault();
- final List<SubscriptionInfo> subInfoList =
- mSubscriptionManager.getActiveSubscriptionInfoList();
-
- if (subInfoList != null) {
- for (SubscriptionInfo subInfo : subInfoList) {
- if (tm.hasIccCard(subInfo.getSimSlotIndex())) {
- return true;
- }
- }
- }
-
- return false;
- }
-
- /* Return true if a SIM is ready for locking.
- * TODO: consider adding to TelephonyManager or SubscritpionManasger.
- */
- private boolean isSimReady() {
- int simState = TelephonyManager.SIM_STATE_UNKNOWN;
- final List<SubscriptionInfo> subInfoList =
- mSubscriptionManager.getActiveSubscriptionInfoList();
- if (subInfoList != null) {
- for (SubscriptionInfo subInfo : subInfoList) {
- simState = TelephonyManager.getDefault().getSimState(subInfo.getSimSlotIndex());
- if((simState != TelephonyManager.SIM_STATE_ABSENT) &&
- (simState != TelephonyManager.SIM_STATE_UNKNOWN)){
- return true;
- }
- }
- }
- return false;
- }
-
- @Override
- public void onGearClick(GearPreference p) {
- if (KEY_UNLOCK_SET_OR_CHANGE.equals(p.getKey())) {
- startFragment(this, ScreenLockSettings.class.getName(), 0, 0, null);
- }
- }
-
- @Override
- public void onSaveInstanceState(Bundle outState) {
- super.onSaveInstanceState(outState);
- if (mTrustAgentClickIntent != null) {
- outState.putParcelable(TRUST_AGENT_CLICK_INTENT, mTrustAgentClickIntent);
- }
- }
-
- @Override
- public void onResume() {
- super.onResume();
-
- // Make sure we reload the preference hierarchy since some of these settings
- // depend on others...
- createPreferenceHierarchy();
-
- if (mVisiblePatternProfile != null) {
- mVisiblePatternProfile.setChecked(mLockPatternUtils.isVisiblePatternEnabled(
- mProfileChallengeUserId));
- }
-
- updateUnificationPreference();
-
- if (mShowPassword != null) {
- mShowPassword.setChecked(Settings.System.getInt(getContentResolver(),
- Settings.System.TEXT_SHOW_PASSWORD, 1) != 0);
- }
-
- mLocationcontroller.updateSummary();
- }
-
- @VisibleForTesting
- void updateUnificationPreference() {
- if (mUnifyProfile != null) {
- final boolean separate =
- mLockPatternUtils.isSeparateProfileChallengeEnabled(mProfileChallengeUserId);
- mUnifyProfile.setChecked(!separate);
- if (separate) {
- mUnifyProfile.setDisabledByAdmin(RestrictedLockUtils.checkIfRestrictionEnforced(
- getContext(), UserManager.DISALLOW_UNIFIED_PASSWORD,
- mProfileChallengeUserId));
- }
- }
- }
-
- @Override
- public boolean onPreferenceTreeClick(Preference preference) {
- final String key = preference.getKey();
- if (KEY_UNLOCK_SET_OR_CHANGE.equals(key)) {
- // TODO(b/35930129): Remove once existing password can be passed into vold directly.
- // Currently we need this logic to ensure that the QUIET_MODE is off for any work
- // profile with unified challenge on FBE-enabled devices. Otherwise, vold would not be
- // able to complete the operation due to the lack of (old) encryption key.
- if (mProfileChallengeUserId != UserHandle.USER_NULL
- && !mLockPatternUtils.isSeparateProfileChallengeEnabled(mProfileChallengeUserId)
- && StorageManager.isFileEncryptedNativeOnly()) {
- if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm,
- mProfileChallengeUserId)) {
- return false;
- }
- }
- startFragment(this, ChooseLockGenericFragment.class.getName(),
- R.string.lock_settings_picker_title, SET_OR_CHANGE_LOCK_METHOD_REQUEST, null);
- } else if (KEY_UNLOCK_SET_OR_CHANGE_PROFILE.equals(key)) {
- if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm,
- mProfileChallengeUserId)) {
- return false;
- }
- Bundle extras = new Bundle();
- extras.putInt(Intent.EXTRA_USER_ID, mProfileChallengeUserId);
- startFragment(this, ChooseLockGenericFragment.class.getName(),
- R.string.lock_settings_picker_title_profile,
- SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE, extras);
- } else if (KEY_TRUST_AGENT.equals(key)) {
- ChooseLockSettingsHelper helper =
- new ChooseLockSettingsHelper(this.getActivity(), this);
- mTrustAgentClickIntent = preference.getIntent();
- boolean confirmationLaunched = helper.launchConfirmationActivity(
- CHANGE_TRUST_AGENT_SETTINGS, preference.getTitle());
- if (!confirmationLaunched&& mTrustAgentClickIntent != null) {
- // If this returns false, it means no password confirmation is required.
- startActivity(mTrustAgentClickIntent);
- mTrustAgentClickIntent = null;
- }
- } else {
- // If we didn't handle it, let preferences handle it.
- return super.onPreferenceTreeClick(preference);
- }
- return true;
- }
-
- /**
- * see confirmPatternThenDisableAndClear
- */
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- if (requestCode == CHANGE_TRUST_AGENT_SETTINGS && resultCode == Activity.RESULT_OK) {
- if (mTrustAgentClickIntent != null) {
- startActivity(mTrustAgentClickIntent);
- mTrustAgentClickIntent = null;
- }
- return;
- } else if (requestCode == UNIFY_LOCK_CONFIRM_DEVICE_REQUEST
- && resultCode == Activity.RESULT_OK) {
- mCurrentDevicePassword =
- data.getStringExtra(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD);
- launchConfirmProfileLockForUnification();
- return;
- } else if (requestCode == UNIFY_LOCK_CONFIRM_PROFILE_REQUEST
- && resultCode == Activity.RESULT_OK) {
- mCurrentProfilePassword =
- data.getStringExtra(ChooseLockSettingsHelper.EXTRA_KEY_PASSWORD);
- unifyLocks();
- return;
- } else if (requestCode == UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST
- && resultCode == Activity.RESULT_OK) {
- ununifyLocks();
- return;
- }
- createPreferenceHierarchy();
- }
-
- private void launchConfirmDeviceLockForUnification() {
- final String title = getActivity().getString(
- R.string.unlock_set_unlock_launch_picker_title);
- final ChooseLockSettingsHelper helper =
- new ChooseLockSettingsHelper(getActivity(), this);
- if (!helper.launchConfirmationActivity(
- UNIFY_LOCK_CONFIRM_DEVICE_REQUEST, title, true, MY_USER_ID)) {
- launchConfirmProfileLockForUnification();
- }
- }
-
- private void launchConfirmProfileLockForUnification() {
- final String title = getActivity().getString(
- R.string.unlock_set_unlock_launch_picker_title_profile);
- final ChooseLockSettingsHelper helper =
- new ChooseLockSettingsHelper(getActivity(), this);
- if (!helper.launchConfirmationActivity(
- UNIFY_LOCK_CONFIRM_PROFILE_REQUEST, title, true, mProfileChallengeUserId)) {
- unifyLocks();
- createPreferenceHierarchy();
- }
- }
-
- private void unifyLocks() {
- int profileQuality =
- mLockPatternUtils.getKeyguardStoredPasswordQuality(mProfileChallengeUserId);
- if (profileQuality == DevicePolicyManager.PASSWORD_QUALITY_SOMETHING) {
- mLockPatternUtils.saveLockPattern(
- LockPatternUtils.stringToPattern(mCurrentProfilePassword),
- mCurrentDevicePassword, MY_USER_ID);
- } else {
- mLockPatternUtils.saveLockPassword(
- mCurrentProfilePassword, mCurrentDevicePassword,
- profileQuality, MY_USER_ID);
- }
- mLockPatternUtils.setSeparateProfileChallengeEnabled(mProfileChallengeUserId, false,
- mCurrentProfilePassword);
- final boolean profilePatternVisibility =
- mLockPatternUtils.isVisiblePatternEnabled(mProfileChallengeUserId);
- mLockPatternUtils.setVisiblePatternEnabled(profilePatternVisibility, MY_USER_ID);
- mCurrentDevicePassword = null;
- mCurrentProfilePassword = null;
- }
-
- private void unifyUncompliantLocks() {
- mLockPatternUtils.setSeparateProfileChallengeEnabled(mProfileChallengeUserId, false,
- mCurrentProfilePassword);
- startFragment(this, ChooseLockGenericFragment.class.getName(),
- R.string.lock_settings_picker_title, SET_OR_CHANGE_LOCK_METHOD_REQUEST, null);
- }
-
- private void ununifyLocks() {
- Bundle extras = new Bundle();
- extras.putInt(Intent.EXTRA_USER_ID, mProfileChallengeUserId);
- startFragment(this,
- ChooseLockGenericFragment.class.getName(),
- R.string.lock_settings_picker_title_profile,
- SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE, extras);
- }
-
- @Override
- public boolean onPreferenceChange(Preference preference, Object value) {
- boolean result = true;
- final String key = preference.getKey();
- final LockPatternUtils lockPatternUtils = mChooseLockSettingsHelper.utils();
- if (KEY_VISIBLE_PATTERN_PROFILE.equals(key)) {
- if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm,
- mProfileChallengeUserId)) {
- return false;
- }
- lockPatternUtils.setVisiblePatternEnabled((Boolean) value, mProfileChallengeUserId);
- } else if (KEY_UNIFICATION.equals(key)) {
- if (Utils.startQuietModeDialogIfNecessary(this.getActivity(), mUm,
- mProfileChallengeUserId)) {
- return false;
- }
- if ((Boolean) value) {
- final boolean compliantForDevice =
- (mLockPatternUtils.getKeyguardStoredPasswordQuality(mProfileChallengeUserId)
- >= DevicePolicyManager.PASSWORD_QUALITY_SOMETHING
- && mLockPatternUtils.isSeparateProfileChallengeAllowedToUnify(
- mProfileChallengeUserId));
- UnificationConfirmationDialog dialog =
- UnificationConfirmationDialog.newIntance(compliantForDevice);
- dialog.show(getChildFragmentManager(), TAG_UNIFICATION_DIALOG);
- } else {
- final String title = getActivity().getString(
- R.string.unlock_set_unlock_launch_picker_title);
- final ChooseLockSettingsHelper helper =
- new ChooseLockSettingsHelper(getActivity(), this);
- if(!helper.launchConfirmationActivity(
- UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST, title, true, MY_USER_ID)) {
- ununifyLocks();
- }
- }
- } else if (KEY_SHOW_PASSWORD.equals(key)) {
- Settings.System.putInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD,
- ((Boolean) value) ? 1 : 0);
- lockPatternUtils.setVisiblePasswordEnabled((Boolean) value, MY_USER_ID);
- }
- return result;
+ protected String getLogTag() {
+ return TAG;
}
@Override
@@ -758,206 +76,95 @@
return R.string.help_url_security;
}
+ @Override
+ protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
+ return buildPreferenceControllers(context, getLifecycle(), this /* host*/);
+ }
+
+ /**
+ * see confirmPatternThenDisableAndClear
+ */
+ @Override
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ if (getPreferenceController(TrustAgentListPreferenceController.class)
+ .handleActivityResult(requestCode, resultCode)) {
+ return;
+ }
+ if (getPreferenceController(LockUnificationPreferenceController.class)
+ .handleActivityResult(requestCode, resultCode, data)) {
+ return;
+ }
+ super.onActivityResult(requestCode, resultCode, data);
+ }
+
+ void launchConfirmDeviceLockForUnification() {
+ getPreferenceController(LockUnificationPreferenceController.class)
+ .launchConfirmDeviceLockForUnification();
+ }
+
+ void unifyUncompliantLocks() {
+ getPreferenceController(LockUnificationPreferenceController.class).unifyUncompliantLocks();
+ }
+
+ void updateUnificationPreference() {
+ getPreferenceController(LockUnificationPreferenceController.class).updateState(null);
+ }
+
+ private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
+ Lifecycle lifecycle, SecuritySettings host) {
+ final List<AbstractPreferenceController> controllers = new ArrayList<>();
+ controllers.add(new LocationPreferenceController(context, lifecycle));
+ controllers.add(new ManageDeviceAdminPreferenceController(context));
+ controllers.add(new EnterprisePrivacyPreferenceController(context));
+ controllers.add(new ManageTrustAgentsPreferenceController(context));
+ controllers.add(new ScreenPinningPreferenceController(context));
+ controllers.add(new SimLockPreferenceController(context));
+ controllers.add(new ShowPasswordPreferenceController(context));
+ controllers.add(new FingerprintStatusPreferenceController(context));
+ controllers.add(new EncryptionStatusPreferenceController(context,
+ PREF_KEY_ENCRYPTION_SECURITY_PAGE));
+ controllers.add(new TrustAgentListPreferenceController(context, host, lifecycle));
+ controllers.add(new LockScreenPreferenceController(context, lifecycle));
+ controllers.add(new ChangeScreenLockPreferenceController(context, host));
+
+ final List<AbstractPreferenceController> profileSecurityControllers = new ArrayList<>();
+ profileSecurityControllers.add(new ChangeProfileScreenLockPreferenceController(
+ context, host));
+ profileSecurityControllers.add(new LockUnificationPreferenceController(context, host));
+ profileSecurityControllers.add(new VisiblePatternProfilePreferenceController(
+ context, lifecycle));
+ profileSecurityControllers.add(new FingerprintProfileStatusPreferenceController(context));
+ controllers.add(new PreferenceCategoryController(context, "security_category_profile",
+ profileSecurityControllers));
+ controllers.addAll(profileSecurityControllers);
+
+ return controllers;
+ }
+
/**
* For Search. Please keep it in sync when updating "createPreferenceHierarchy()"
*/
public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
- new SecuritySearchIndexProvider();
+ new BaseSearchIndexProvider() {
- private static class SecuritySearchIndexProvider extends BaseSearchIndexProvider {
-
- // TODO (b/68001777) Refactor indexing to include all XML and block other settings.
-
- @Override
- public List<SearchIndexableResource> getXmlResourcesToIndex(
- Context context, boolean enabled) {
- final List<SearchIndexableResource> index = new ArrayList<>();
-
- final LockPatternUtils lockPatternUtils = new LockPatternUtils(context);
- final ManagedLockPasswordProvider managedPasswordProvider =
- ManagedLockPasswordProvider.get(context, MY_USER_ID);
- final DevicePolicyManager dpm = (DevicePolicyManager)
- context.getSystemService(Context.DEVICE_POLICY_SERVICE);
- final UserManager um = UserManager.get(context);
- final int profileUserId = Utils.getManagedProfileId(um, MY_USER_ID);
-
- // To add option for unlock screen, user's password must not be managed and
- // must not be unified with managed profile, whose password is managed.
- if (!isPasswordManaged(MY_USER_ID, context, dpm)
- && (profileUserId == UserHandle.USER_NULL
- || lockPatternUtils.isSeparateProfileChallengeAllowed(profileUserId)
- || !isPasswordManaged(profileUserId, context, dpm))) {
- // Add options for lock/unlock screen
- final int resId = getResIdForLockUnlockScreen(lockPatternUtils,
- managedPasswordProvider, MY_USER_ID);
- index.add(getSearchResource(context, resId));
- }
-
- if (profileUserId != UserHandle.USER_NULL
- && lockPatternUtils.isSeparateProfileChallengeAllowed(profileUserId)
- && !isPasswordManaged(profileUserId, context, dpm)) {
- index.add(getSearchResource(context, getResIdForLockUnlockScreen(
- lockPatternUtils, managedPasswordProvider, profileUserId)));
- }
-
- // Append the rest of the settings
- index.add(getSearchResource(context, R.xml.security_settings_misc));
-
- return index;
- }
-
- private SearchIndexableResource getSearchResource(Context context, int xmlResId) {
- final SearchIndexableResource sir = new SearchIndexableResource(context);
- sir.xmlResId = xmlResId;
- return sir;
- }
-
- private boolean isPasswordManaged(int userId, Context context, DevicePolicyManager dpm) {
- final EnforcedAdmin admin = RestrictedLockUtils.checkIfPasswordQualityIsSet(
- context, userId);
- return admin != null && dpm.getPasswordQuality(admin.component, userId) ==
- DevicePolicyManager.PASSWORD_QUALITY_MANAGED;
- }
-
- @Override
- public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
- final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>();
- final Resources res = context.getResources();
-
- final String screenTitle = res.getString(R.string.security_settings_title);
-
- SearchIndexableRaw data = new SearchIndexableRaw(context);
- data.title = screenTitle;
- data.key = "security_settings_screen";
- data.screenTitle = screenTitle;
- result.add(data);
-
- final UserManager um = UserManager.get(context);
-
- // Fingerprint
- final FingerprintManager fpm = Utils.getFingerprintManagerOrNull(context);
- if (fpm != null && fpm.isHardwareDetected()) {
- // This catches the title which can be overloaded in an overlay
- data = new SearchIndexableRaw(context);
- data.title = res.getString(R.string.security_settings_fingerprint_preference_title);
- data.key = "security_fingerprint";
- data.screenTitle = screenTitle;
- result.add(data);
- // Fallback for when the above doesn't contain "fingerprint"
- data = new SearchIndexableRaw(context);
- data.title = res.getString(R.string.fingerprint_manage_category_title);
- data.key = "security_managed_fingerprint";
- data.screenTitle = screenTitle;
- result.add(data);
- }
-
- final LockPatternUtils lockPatternUtils = new LockPatternUtils(context);
- final int profileUserId = Utils.getManagedProfileId(um, MY_USER_ID);
- if (profileUserId != UserHandle.USER_NULL
- && lockPatternUtils.isSeparateProfileChallengeAllowed(profileUserId)) {
- if (lockPatternUtils.getKeyguardStoredPasswordQuality(profileUserId)
- >= DevicePolicyManager.PASSWORD_QUALITY_SOMETHING
- && lockPatternUtils.isSeparateProfileChallengeAllowedToUnify(
- profileUserId)) {
- data = new SearchIndexableRaw(context);
- data.title = res.getString(R.string.lock_settings_profile_unification_title);
- data.key = "security_use_one_lock";
- data.screenTitle = screenTitle;
- result.add(data);
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(
+ Context context, boolean enabled) {
+ final List<SearchIndexableResource> index = new ArrayList<>();
+ // Append the rest of the settings
+ final SearchIndexableResource sir = new SearchIndexableResource(context);
+ sir.xmlResId = R.xml.security_dashboard_settings;
+ index.add(sir);
+ return index;
}
- }
- return result;
- }
- @Override
- public List<String> getNonIndexableKeys(Context context) {
- final List<String> keys = super.getNonIndexableKeys(context);
-
- LockPatternUtils lockPatternUtils = new LockPatternUtils(context);
-
- // Do not display SIM lock for devices without an Icc card
- final UserManager um = UserManager.get(context);
- final TelephonyManager tm = TelephonyManager.from(context);
- if (!um.isAdminUser() || !tm.hasIccCard()) {
- keys.add(KEY_SIM_LOCK);
- }
-
- // TrustAgent settings disappear when the user has no primary security.
- if (!lockPatternUtils.isSecure(MY_USER_ID)) {
- keys.add(KEY_TRUST_AGENT);
- keys.add(KEY_MANAGE_TRUST_AGENTS);
- }
-
- if (!(new EnterprisePrivacyPreferenceController(context))
- .isAvailable()) {
- keys.add(KEY_ENTERPRISE_PRIVACY);
- }
-
- // Duplicate in special app access
- keys.add(KEY_MANAGE_DEVICE_ADMIN);
- // Duplicates between parent-child
- keys.add(KEY_LOCATION);
- keys.add(KEY_ENCRYPTION_AND_CREDENTIALS);
- keys.add(KEY_SCREEN_PINNING);
- keys.add(KEY_LOCATION_SCANNING);
-
- return keys;
- }
- }
-
- public static class UnificationConfirmationDialog extends InstrumentedDialogFragment {
- private static final String EXTRA_COMPLIANT = "compliant";
-
- public static UnificationConfirmationDialog newIntance(boolean compliant) {
- UnificationConfirmationDialog dialog = new UnificationConfirmationDialog();
- Bundle args = new Bundle();
- args.putBoolean(EXTRA_COMPLIANT, compliant);
- dialog.setArguments(args);
- return dialog;
- }
-
- @Override
- public void show(FragmentManager manager, String tag) {
- if (manager.findFragmentByTag(tag) == null) {
- // Prevent opening multiple dialogs if tapped on button quickly
- super.show(manager, tag);
- }
- }
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- final SecuritySettings parentFragment = ((SecuritySettings) getParentFragment());
- final boolean compliant = getArguments().getBoolean(EXTRA_COMPLIANT);
- return new AlertDialog.Builder(getActivity())
- .setTitle(R.string.lock_settings_profile_unification_dialog_title)
- .setMessage(compliant ? R.string.lock_settings_profile_unification_dialog_body
- : R.string.lock_settings_profile_unification_dialog_uncompliant_body)
- .setPositiveButton(
- compliant ? R.string.lock_settings_profile_unification_dialog_confirm
- : R.string.lock_settings_profile_unification_dialog_uncompliant_confirm,
- (dialog, whichButton) -> {
- if (compliant) {
- parentFragment.launchConfirmDeviceLockForUnification();
- } else {
- parentFragment.unifyUncompliantLocks();
- }
- }
- )
- .setNegativeButton(R.string.cancel, null)
- .create();
- }
-
- @Override
- public void onDismiss(DialogInterface dialog) {
- super.onDismiss(dialog);
- ((SecuritySettings) getParentFragment()).updateUnificationPreference();
- }
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.DIALOG_UNIFICATION_CONFIRMATION;
- }
- }
+ @Override
+ public List<AbstractPreferenceController> getPreferenceControllers(Context
+ context) {
+ return buildPreferenceControllers(context, null /* lifecycle */,
+ null /* host*/);
+ }
+ };
static class SummaryProvider implements SummaryLoader.SummaryProvider {
@@ -973,13 +180,13 @@
public void setListening(boolean listening) {
if (listening) {
final FingerprintManager fpm =
- Utils.getFingerprintManagerOrNull(mContext);
+ Utils.getFingerprintManagerOrNull(mContext);
if (fpm != null && fpm.isHardwareDetected()) {
mSummaryLoader.setSummary(this,
- mContext.getString(R.string.security_dashboard_summary));
+ mContext.getString(R.string.security_dashboard_summary));
} else {
mSummaryLoader.setSummary(this, mContext.getString(
- R.string.security_dashboard_summary_no_fingerprint));
+ R.string.security_dashboard_summary_no_fingerprint));
}
}
}
@@ -987,11 +194,10 @@
public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY =
new SummaryLoader.SummaryProviderFactory() {
- @Override
- public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
- SummaryLoader summaryLoader) {
- return new SummaryProvider(activity, summaryLoader);
- }
- };
-
+ @Override
+ public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
+ SummaryLoader summaryLoader) {
+ return new SummaryProvider(activity, summaryLoader);
+ }
+ };
}
diff --git a/src/com/android/settings/security/SecuritySettingsV2.java b/src/com/android/settings/security/SecuritySettingsV2.java
deleted file mode 100644
index 323c0f4..0000000
--- a/src/com/android/settings/security/SecuritySettingsV2.java
+++ /dev/null
@@ -1,188 +0,0 @@
-package com.android.settings.security;
-
-import static com.android.settings.security.EncryptionStatusPreferenceController
- .PREF_KEY_ENCRYPTION_SECURITY_PAGE;
-
-import android.app.Activity;
-import android.content.Context;
-import android.content.Intent;
-import android.hardware.fingerprint.FingerprintManager;
-import android.provider.SearchIndexableResource;
-
-import com.android.internal.logging.nano.MetricsProto;
-import com.android.settings.R;
-import com.android.settings.Utils;
-import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.enterprise.EnterprisePrivacyPreferenceController;
-import com.android.settings.enterprise.ManageDeviceAdminPreferenceController;
-import com.android.settings.fingerprint.FingerprintProfileStatusPreferenceController;
-import com.android.settings.fingerprint.FingerprintStatusPreferenceController;
-import com.android.settings.location.LocationPreferenceController;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.security.screenlock.LockScreenPreferenceController;
-import com.android.settings.security.trustagent.ManageTrustAgentsPreferenceController;
-import com.android.settings.security.trustagent.TrustAgentListPreferenceController;
-import com.android.settings.widget.PreferenceCategoryController;
-import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class SecuritySettingsV2 extends DashboardFragment {
-
- private static final String TAG = "SecuritySettingsV2";
-
- public static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST = 123;
- public static final int CHANGE_TRUST_AGENT_SETTINGS = 126;
- public static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST_PROFILE = 127;
- public static final int UNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 128;
- public static final int UNIFY_LOCK_CONFIRM_PROFILE_REQUEST = 129;
- public static final int UNUNIFY_LOCK_CONFIRM_DEVICE_REQUEST = 130;
-
- @Override
- public int getMetricsCategory() {
- return MetricsProto.MetricsEvent.SECURITY;
- }
-
- @Override
- protected int getPreferenceScreenResId() {
- return R.xml.security_settings_v2;
- }
-
- @Override
- protected String getLogTag() {
- return TAG;
- }
-
- @Override
- public int getHelpResource() {
- return R.string.help_url_security;
- }
-
- @Override
- protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
- return buildPreferenceControllers(context, getLifecycle(), this /* host*/);
- }
-
- /**
- * see confirmPatternThenDisableAndClear
- */
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- if (getPreferenceController(TrustAgentListPreferenceController.class)
- .handleActivityResult(requestCode, resultCode)) {
- return;
- }
- if (getPreferenceController(LockUnificationPreferenceController.class)
- .handleActivityResult(requestCode, resultCode, data)) {
- return;
- }
- super.onActivityResult(requestCode, resultCode, data);
- }
-
- void launchConfirmDeviceLockForUnification() {
- getPreferenceController(LockUnificationPreferenceController.class)
- .launchConfirmDeviceLockForUnification();
- }
-
- void unifyUncompliantLocks() {
- getPreferenceController(LockUnificationPreferenceController.class).unifyUncompliantLocks();
- }
-
- void updateUnificationPreference() {
- getPreferenceController(LockUnificationPreferenceController.class).updateState(null);
- }
-
- private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
- Lifecycle lifecycle, SecuritySettingsV2 host) {
- final List<AbstractPreferenceController> controllers = new ArrayList<>();
- controllers.add(new LocationPreferenceController(context, lifecycle));
- controllers.add(new ManageDeviceAdminPreferenceController(context));
- controllers.add(new EnterprisePrivacyPreferenceController(context));
- controllers.add(new ManageTrustAgentsPreferenceController(context));
- controllers.add(new ScreenPinningPreferenceController(context));
- controllers.add(new SimLockPreferenceController(context));
- controllers.add(new ShowPasswordPreferenceController(context));
- controllers.add(new FingerprintStatusPreferenceController(context));
- controllers.add(new EncryptionStatusPreferenceController(context,
- PREF_KEY_ENCRYPTION_SECURITY_PAGE));
- controllers.add(new TrustAgentListPreferenceController(context, host, lifecycle));
- controllers.add(new LockScreenPreferenceController(context, lifecycle));
- controllers.add(new ChangeScreenLockPreferenceController(context, host));
-
- final List<AbstractPreferenceController> profileSecurityControllers = new ArrayList<>();
- profileSecurityControllers.add(new ChangeProfileScreenLockPreferenceController(
- context, host));
- profileSecurityControllers.add(new LockUnificationPreferenceController(context, host));
- profileSecurityControllers.add(new VisiblePatternProfilePreferenceController(
- context, lifecycle));
- profileSecurityControllers.add(new FingerprintProfileStatusPreferenceController(context));
- controllers.add(new PreferenceCategoryController(context, "security_category_profile",
- profileSecurityControllers));
- controllers.addAll(profileSecurityControllers);
-
- return controllers;
- }
-
- /**
- * For Search. Please keep it in sync when updating "createPreferenceHierarchy()"
- */
- public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
- new BaseSearchIndexProvider() {
-
- @Override
- public List<SearchIndexableResource> getXmlResourcesToIndex(
- Context context, boolean enabled) {
- final List<SearchIndexableResource> index = new ArrayList<>();
- // Append the rest of the settings
- final SearchIndexableResource sir = new SearchIndexableResource(context);
- sir.xmlResId = R.xml.security_settings_v2;
- index.add(sir);
- return index;
- }
-
- @Override
- public List<AbstractPreferenceController> getPreferenceControllers(Context
- context) {
- return buildPreferenceControllers(context, null /* lifecycle */,
- null /* host*/);
- }
- };
-
- static class SummaryProvider implements SummaryLoader.SummaryProvider {
-
- private final Context mContext;
- private final SummaryLoader mSummaryLoader;
-
- public SummaryProvider(Context context, SummaryLoader summaryLoader) {
- mContext = context;
- mSummaryLoader = summaryLoader;
- }
-
- @Override
- public void setListening(boolean listening) {
- if (listening) {
- final FingerprintManager fpm =
- Utils.getFingerprintManagerOrNull(mContext);
- if (fpm != null && fpm.isHardwareDetected()) {
- mSummaryLoader.setSummary(this,
- mContext.getString(R.string.security_dashboard_summary));
- } else {
- mSummaryLoader.setSummary(this, mContext.getString(
- R.string.security_dashboard_summary_no_fingerprint));
- }
- }
- }
- }
-
- public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY =
- new SummaryLoader.SummaryProviderFactory() {
- @Override
- public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
- SummaryLoader summaryLoader) {
- return new SummaryProvider(activity, summaryLoader);
- }
- };
-}
diff --git a/src/com/android/settings/security/UnificationConfirmationDialog.java b/src/com/android/settings/security/UnificationConfirmationDialog.java
index 482e268..029e64f 100644
--- a/src/com/android/settings/security/UnificationConfirmationDialog.java
+++ b/src/com/android/settings/security/UnificationConfirmationDialog.java
@@ -40,7 +40,7 @@
return dialog;
}
- public void show(SecuritySettingsV2 host) {
+ public void show(SecuritySettings host) {
final FragmentManager manager = host.getChildFragmentManager();
if (manager.findFragmentByTag(TAG_UNIFICATION_DIALOG) == null) {
// Prevent opening multiple dialogs if tapped on button quickly
@@ -50,7 +50,7 @@
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
- final SecuritySettingsV2 parentFragment = ((SecuritySettingsV2) getParentFragment());
+ final SecuritySettings parentFragment = ((SecuritySettings) getParentFragment());
final boolean compliant = getArguments().getBoolean(EXTRA_COMPLIANT);
return new AlertDialog.Builder(getActivity())
.setTitle(R.string.lock_settings_profile_unification_dialog_title)
@@ -75,7 +75,7 @@
@Override
public void onDismiss(DialogInterface dialog) {
super.onDismiss(dialog);
- ((SecuritySettingsV2) getParentFragment()).updateUnificationPreference();
+ ((SecuritySettings) getParentFragment()).updateUnificationPreference();
}
@Override
diff --git a/src/com/android/settings/security/VisiblePatternProfilePreferenceController.java b/src/com/android/settings/security/VisiblePatternProfilePreferenceController.java
index a9e56f4..55448e2 100644
--- a/src/com/android/settings/security/VisiblePatternProfilePreferenceController.java
+++ b/src/com/android/settings/security/VisiblePatternProfilePreferenceController.java
@@ -44,6 +44,11 @@
private Preference mPreference;
+ public VisiblePatternProfilePreferenceController(Context context) {
+ this(context, null /* lifecycle */);
+ }
+
+ // TODO (b/73074893) Replace this constructor without Lifecycle using setter method instead.
public VisiblePatternProfilePreferenceController(Context context, Lifecycle lifecycle) {
super(context, KEY_VISIBLE_PATTERN_PROFILE);
mUm = (UserManager) context.getSystemService(Context.USER_SERVICE);
diff --git a/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceController.java b/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceController.java
index 5bb8f75..3e39860 100644
--- a/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceController.java
+++ b/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceController.java
@@ -20,7 +20,6 @@
import android.os.UserHandle;
import android.support.annotation.VisibleForTesting;
import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
@@ -52,21 +51,18 @@
}
@Override
- public void displayPreference(PreferenceScreen screen) {
- super.displayPreference(screen);
- final Preference preference = screen.findPreference(getPreferenceKey());
- if (preference == null) {
- return;
- }
+ public void updateState(Preference preference) {
final int numberOfTrustAgent = getTrustAgentCount();
if (!mLockPatternUtils.isSecure(MY_USER_ID)) {
preference.setEnabled(false);
preference.setSummary(R.string.disabled_because_no_backup_security);
} else if (numberOfTrustAgent > 0) {
+ preference.setEnabled(true);
preference.setSummary(mContext.getResources().getQuantityString(
R.plurals.manage_trust_agents_summary_on,
numberOfTrustAgent, numberOfTrustAgent));
} else {
+ preference.setEnabled(true);
preference.setSummary(R.string.manage_trust_agents_summary);
}
}
diff --git a/src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java b/src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java
index 0c591ed..ec81aad 100644
--- a/src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java
+++ b/src/com/android/settings/security/trustagent/TrustAgentListPreferenceController.java
@@ -16,7 +16,7 @@
package com.android.settings.security.trustagent;
-import static com.android.settings.security.SecuritySettingsV2.CHANGE_TRUST_AGENT_SETTINGS;
+import static com.android.settings.security.SecuritySettings.CHANGE_TRUST_AGENT_SETTINGS;
import android.app.Activity;
import android.content.Context;
@@ -35,7 +35,7 @@
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.password.ChooseLockSettingsHelper;
import com.android.settings.security.SecurityFeatureProvider;
-import com.android.settings.security.SecuritySettingsV2;
+import com.android.settings.security.SecuritySettings;
import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -59,12 +59,12 @@
private final LockPatternUtils mLockPatternUtils;
private final TrustAgentManager mTrustAgentManager;
- private final SecuritySettingsV2 mHost;
+ private final SecuritySettings mHost;
private Intent mTrustAgentClickIntent;
private PreferenceCategory mSecurityCategory;
- public TrustAgentListPreferenceController(Context context, SecuritySettingsV2 host,
+ public TrustAgentListPreferenceController(Context context, SecuritySettings host,
Lifecycle lifecycle) {
super(context);
final SecurityFeatureProvider provider = FeatureFactory.getFactory(context)
diff --git a/src/com/android/settings/CreateShortcut.java b/src/com/android/settings/shortcut/CreateShortcut.java
similarity index 92%
rename from src/com/android/settings/CreateShortcut.java
rename to src/com/android/settings/shortcut/CreateShortcut.java
index 8bc801b..2bd9b761 100644
--- a/src/com/android/settings/CreateShortcut.java
+++ b/src/com/android/settings/shortcut/CreateShortcut.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.shortcut;
import android.app.LauncherActivity;
import android.content.ComponentName;
@@ -28,7 +28,9 @@
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
+import android.graphics.drawable.LayerDrawable;
import android.net.ConnectivityManager;
import android.os.AsyncTask;
import android.support.annotation.VisibleForTesting;
@@ -40,6 +42,7 @@
import android.widget.ListView;
import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
import com.android.settings.Settings.TetherSettingsActivity;
import com.android.settings.overlay.FeatureFactory;
@@ -65,7 +68,8 @@
finish();
}
- protected Intent createResultIntent(Intent shortcutIntent, ResolveInfo resolveInfo,
+ @VisibleForTesting
+ Intent createResultIntent(Intent shortcutIntent, ResolveInfo resolveInfo,
CharSequence label) {
shortcutIntent.setFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
ShortcutManager sm = getSystemService(ShortcutManager.class);
@@ -94,8 +98,8 @@
if (activityInfo.icon != 0) {
intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, createIcon(activityInfo.icon,
- R.layout.shortcut_badge,
- getResources().getDimensionPixelSize(R.dimen.shortcut_size)));
+ R.layout.shortcut_badge,
+ getResources().getDimensionPixelSize(R.dimen.shortcut_size)));
}
return intent;
}
@@ -112,7 +116,11 @@
private Bitmap createIcon(int resource, int layoutRes, int size) {
Context context = new ContextThemeWrapper(this, android.R.style.Theme_Material);
View view = LayoutInflater.from(context).inflate(layoutRes, null);
- ((ImageView) view.findViewById(android.R.id.icon)).setImageResource(resource);
+ Drawable iconDrawable = getDrawable(resource);
+ if (iconDrawable instanceof LayerDrawable) {
+ iconDrawable = ((LayerDrawable) iconDrawable).getDrawable(1);
+ }
+ ((ImageView) view.findViewById(android.R.id.icon)).setImageDrawable(iconDrawable);
int spec = MeasureSpec.makeMeasureSpec(size, MeasureSpec.EXACTLY);
view.measure(spec, spec);
diff --git a/src/com/android/settings/support/actionbar/HelpMenuController.java b/src/com/android/settings/support/actionbar/HelpMenuController.java
index a95d44e..1188fc2 100644
--- a/src/com/android/settings/support/actionbar/HelpMenuController.java
+++ b/src/com/android/settings/support/actionbar/HelpMenuController.java
@@ -27,6 +27,7 @@
import com.android.settingslib.HelpUtils;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
+import com.android.settingslib.core.lifecycle.ObservableFragment;
import com.android.settingslib.core.lifecycle.ObservablePreferenceFragment;
import com.android.settingslib.core.lifecycle.events.OnCreateOptionsMenu;
@@ -41,6 +42,10 @@
host.getLifecycle().addObserver(new HelpMenuController(host));
}
+ public static void init(@NonNull ObservableFragment host) {
+ host.getLifecycle().addObserver(new HelpMenuController(host));
+ }
+
private HelpMenuController(@NonNull Fragment host) {
mHost = host;
}
diff --git a/src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceController.java b/src/com/android/settings/system/AdditionalSystemUpdatePreferenceController.java
similarity index 88%
rename from src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceController.java
rename to src/com/android/settings/system/AdditionalSystemUpdatePreferenceController.java
index f91ed4e..1fbf835 100644
--- a/src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceController.java
+++ b/src/com/android/settings/system/AdditionalSystemUpdatePreferenceController.java
@@ -13,13 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.system;
import android.content.Context;
import com.android.settings.core.BasePreferenceController;
-import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settingslib.core.AbstractPreferenceController;
public class AdditionalSystemUpdatePreferenceController extends BasePreferenceController {
diff --git a/src/com/android/settings/system/SystemDashboardFragment.java b/src/com/android/settings/system/SystemDashboardFragment.java
index 323a2d4..deabf54 100644
--- a/src/com/android/settings/system/SystemDashboardFragment.java
+++ b/src/com/android/settings/system/SystemDashboardFragment.java
@@ -17,7 +17,6 @@
import android.content.Context;
import android.os.Bundle;
-import android.os.UserManager;
import android.provider.SearchIndexableResource;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceGroup;
@@ -27,8 +26,6 @@
import com.android.settings.R;
import com.android.settings.backup.BackupSettingsActivityPreferenceController;
import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.deviceinfo.AdditionalSystemUpdatePreferenceController;
-import com.android.settings.deviceinfo.SystemUpdatePreferenceController;
import com.android.settings.gestures.GesturesSettingPreferenceController;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
diff --git a/src/com/android/settings/deviceinfo/SystemUpdatePreferenceController.java b/src/com/android/settings/system/SystemUpdatePreferenceController.java
similarity index 73%
rename from src/com/android/settings/deviceinfo/SystemUpdatePreferenceController.java
rename to src/com/android/settings/system/SystemUpdatePreferenceController.java
index 2806275..20f43ef 100644
--- a/src/com/android/settings/deviceinfo/SystemUpdatePreferenceController.java
+++ b/src/com/android/settings/system/SystemUpdatePreferenceController.java
@@ -13,14 +13,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.system;
import static android.content.Context.CARRIER_CONFIG_SERVICE;
+import static android.content.Context.SYSTEM_UPDATE_SERVICE;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
+import android.os.Bundle;
import android.os.PersistableBundle;
+import android.os.SystemUpdateManager;
import android.os.UserManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
@@ -39,10 +42,12 @@
private static final String KEY_SYSTEM_UPDATE_SETTINGS = "system_update_settings";
private final UserManager mUm;
+ private final SystemUpdateManager mUpdateManager;
public SystemUpdatePreferenceController(Context context) {
super(context, KEY_SYSTEM_UPDATE_SETTINGS);
mUm = UserManager.get(context);
+ mUpdateManager = (SystemUpdateManager) context.getSystemService(SYSTEM_UPDATE_SERVICE);
}
@Override
@@ -84,7 +89,27 @@
@Override
public String getSummary() {
- return mContext.getString(R.string.about_summary, Build.VERSION.RELEASE);
+ final Bundle updateInfo = mUpdateManager.retrieveSystemUpdateInfo();
+ String summary = mContext.getString(R.string.android_version_summary,
+ Build.VERSION.RELEASE);
+ switch (updateInfo.getInt(SystemUpdateManager.KEY_STATUS)) {
+ case SystemUpdateManager.STATUS_WAITING_DOWNLOAD:
+ case SystemUpdateManager.STATUS_IN_PROGRESS:
+ case SystemUpdateManager.STATUS_WAITING_INSTALL:
+ case SystemUpdateManager.STATUS_WAITING_REBOOT:
+ summary = mContext.getString(R.string.android_version_pending_update_summary);
+ break;
+ case SystemUpdateManager.STATUS_UNKNOWN:
+ Log.d(TAG, "Update statue unknown");
+ // fall through to next branch
+ case SystemUpdateManager.STATUS_IDLE:
+ final String version = updateInfo.getString(SystemUpdateManager.KEY_TITLE);
+ if (!TextUtils.isEmpty(version)) {
+ summary = mContext.getString(R.string.android_version_summary, version);
+ }
+ break;
+ }
+ return summary;
}
/**
diff --git a/src/com/android/settings/accounts/AddUserWhenLockedPreferenceController.java b/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java
similarity index 92%
rename from src/com/android/settings/accounts/AddUserWhenLockedPreferenceController.java
rename to src/com/android/settings/users/AddUserWhenLockedPreferenceController.java
index c93ef73..06601fa 100644
--- a/src/com/android/settings/accounts/AddUserWhenLockedPreferenceController.java
+++ b/src/com/android/settings/users/AddUserWhenLockedPreferenceController.java
@@ -13,16 +13,16 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import android.content.Context;
import android.provider.Settings.Global;
import android.support.v7.preference.Preference;
import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.users.UserCapabilities;
import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnPause;
import com.android.settingslib.core.lifecycle.events.OnResume;
@@ -35,10 +35,13 @@
private final UserCapabilities mUserCaps;
private boolean mShouldUpdateUserList;
- public AddUserWhenLockedPreferenceController(Context context, String key) {
+ public AddUserWhenLockedPreferenceController(Context context, String key, Lifecycle lifecycle) {
super(context);
mPrefKey = key;
mUserCaps = UserCapabilities.create(context);
+ if (lifecycle != null) {
+ lifecycle.addObserver(this);
+ }
}
@Override
diff --git a/src/com/android/settings/accounts/AutoSyncDataPreferenceController.java b/src/com/android/settings/users/AutoSyncDataPreferenceController.java
similarity index 99%
rename from src/com/android/settings/accounts/AutoSyncDataPreferenceController.java
rename to src/com/android/settings/users/AutoSyncDataPreferenceController.java
index 128e88d..5d9ec43 100644
--- a/src/com/android/settings/accounts/AutoSyncDataPreferenceController.java
+++ b/src/com/android/settings/users/AutoSyncDataPreferenceController.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import android.app.ActivityManager;
import android.app.AlertDialog;
diff --git a/src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceController.java b/src/com/android/settings/users/AutoSyncPersonalDataPreferenceController.java
similarity index 97%
rename from src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceController.java
rename to src/com/android/settings/users/AutoSyncPersonalDataPreferenceController.java
index 673b453..79099ad 100644
--- a/src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceController.java
+++ b/src/com/android/settings/users/AutoSyncPersonalDataPreferenceController.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import android.app.Fragment;
import android.content.Context;
diff --git a/src/com/android/settings/accounts/AutoSyncWorkDataPreferenceController.java b/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
similarity index 80%
rename from src/com/android/settings/accounts/AutoSyncWorkDataPreferenceController.java
rename to src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
index acf43aa..5e8ad2c 100644
--- a/src/com/android/settings/accounts/AutoSyncWorkDataPreferenceController.java
+++ b/src/com/android/settings/users/AutoSyncWorkDataPreferenceController.java
@@ -13,10 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import android.app.Fragment;
import android.content.Context;
+import android.os.UserHandle;
import com.android.settings.Utils;
@@ -34,4 +35,10 @@
public String getPreferenceKey() {
return KEY_AUTO_SYNC_WORK_ACCOUNT;
}
+
+ @Override
+ public boolean isAvailable() {
+ return mUserHandle != null && !mUserManager.isManagedProfile() && !mUserManager.isLinkedUser()
+ && mUserManager.getProfiles(UserHandle.myUserId()).size() > 1;
+ }
}
diff --git a/src/com/android/settings/users/UserCapabilities.java b/src/com/android/settings/users/UserCapabilities.java
index a92e3e2..f1bfae9 100644
--- a/src/com/android/settings/users/UserCapabilities.java
+++ b/src/com/android/settings/users/UserCapabilities.java
@@ -34,6 +34,7 @@
boolean mCanAddGuest;
boolean mDisallowAddUser;
boolean mDisallowAddUserSetByAdmin;
+ boolean mDisallowSwitchUser;
RestrictedLockUtils.EnforcedAdmin mEnforcedAdmin;
private UserCapabilities() {}
@@ -41,6 +42,7 @@
public static UserCapabilities create(Context context) {
UserManager userManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
UserCapabilities caps = new UserCapabilities();
+
if (!UserManager.supportsMultipleUsers() || Utils.isMonkeyRunning()) {
caps.mEnabled = false;
return caps;
@@ -78,6 +80,9 @@
final boolean canAddUsersWhenLocked = mIsAdmin || Settings.Global.getInt(
context.getContentResolver(), Settings.Global.ADD_USERS_WHEN_LOCKED, 0) == 1;
mCanAddGuest = !mIsGuest && !mDisallowAddUser && canAddUsersWhenLocked;
+
+ UserManager userManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
+ mDisallowSwitchUser = userManager.hasUserRestriction(UserManager.DISALLOW_USER_SWITCH);
}
public boolean isAdmin() {
@@ -108,6 +113,7 @@
", mCanAddGuest=" + mCanAddGuest +
", mDisallowAddUser=" + mDisallowAddUser +
", mEnforcedAdmin=" + mEnforcedAdmin +
+ ", mDisallowSwitchUser=" + mDisallowSwitchUser +
'}';
}
}
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 834166b..f6bacd8 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -103,6 +103,7 @@
private static final String KEY_USER_LIST = "user_list";
private static final String KEY_USER_ME = "user_me";
private static final String KEY_ADD_USER = "user_add";
+ private static final String KEY_ADD_USER_WHEN_LOCKED = "user_settings_add_users_when_locked";
private static final int MENU_REMOVE_USER = Menu.FIRST;
@@ -145,8 +146,11 @@
private SparseArray<Bitmap> mUserIcons = new SparseArray<>();
private static SparseArray<Bitmap> sDarkDefaultUserBitmapCache = new SparseArray<>();
- private EditUserInfoController mEditUserInfoController =
- new EditUserInfoController();
+ private EditUserInfoController mEditUserInfoController = new EditUserInfoController();
+ private AddUserWhenLockedPreferenceController mAddUserWhenLockedPreferenceController;
+ private AutoSyncDataPreferenceController mAutoSyncDataPreferenceController;
+ private AutoSyncPersonalDataPreferenceController mAutoSyncPersonalDataPreferenceController;
+ private AutoSyncWorkDataPreferenceController mAutoSyncWorkDataPreferenceController;
// A place to cache the generated default avatar
private Drawable mDefaultIconDrawable;
@@ -191,6 +195,28 @@
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
+ addPreferencesFromResource(R.xml.user_settings);
+ if (Global.getInt(getContext().getContentResolver(), Global.DEVICE_PROVISIONED, 0) == 0) {
+ getActivity().finish();
+ return;
+ }
+ final Context context = getActivity();
+ mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController(
+ context, KEY_ADD_USER_WHEN_LOCKED, getLifecycle());
+
+ mAutoSyncDataPreferenceController = new AutoSyncDataPreferenceController(context, this);
+ mAutoSyncPersonalDataPreferenceController =
+ new AutoSyncPersonalDataPreferenceController(context, this);
+ mAutoSyncWorkDataPreferenceController =
+ new AutoSyncWorkDataPreferenceController(context, this);
+
+ final PreferenceScreen screen = getPreferenceScreen();
+ mAddUserWhenLockedPreferenceController.displayPreference(screen);
+ mAutoSyncDataPreferenceController.displayPreference(screen);
+ mAutoSyncPersonalDataPreferenceController.displayPreference(screen);
+ mAutoSyncWorkDataPreferenceController.displayPreference(screen);
+ screen.findPreference(mAddUserWhenLockedPreferenceController.getPreferenceKey())
+ .setOnPreferenceChangeListener(mAddUserWhenLockedPreferenceController);
if (icicle != null) {
if (icicle.containsKey(SAVE_ADDING_USER)) {
@@ -201,7 +227,7 @@
}
mEditUserInfoController.onRestoreInstanceState(icicle);
}
- final Context context = getActivity();
+
mUserCaps = UserCapabilities.create(context);
mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
if (!mUserCaps.mEnabled) {
@@ -210,7 +236,6 @@
final int myUserId = UserHandle.myUserId();
- addPreferencesFromResource(R.xml.user_settings);
mUserListCategory = (PreferenceGroup) findPreference(KEY_USER_LIST);
mMePreference = new UserPreference(getPrefContext(), null /* attrs */, myUserId,
null /* settings icon handler */,
@@ -224,31 +249,49 @@
mAddUser.useAdminDisabledSummary(false);
// Determine if add user/profile button should be visible
if (mUserCaps.mCanAddUser && Utils.isDeviceProvisioned(getActivity())) {
+ mAddUser.setVisible(true);
mAddUser.setOnPreferenceClickListener(this);
// change label to only mention user, if restricted profiles are not supported
if (!mUserCaps.mCanAddRestrictedProfile) {
mAddUser.setTitle(R.string.user_add_user_menu);
}
+ } else {
+ mAddUser.setVisible(false);
}
- setHasOptionsMenu(true);
- IntentFilter filter = new IntentFilter(Intent.ACTION_USER_REMOVED);
+ final IntentFilter filter = new IntentFilter(Intent.ACTION_USER_REMOVED);
filter.addAction(Intent.ACTION_USER_INFO_CHANGED);
context.registerReceiverAsUser(mUserChangeReceiver, UserHandle.ALL, filter, null, mHandler);
loadProfile();
updateUserList();
mShouldUpdateUserList = false;
-
- if (Global.getInt(getContext().getContentResolver(), Global.DEVICE_PROVISIONED, 0) == 0) {
- getActivity().finish();
- return;
- }
}
@Override
public void onResume() {
super.onResume();
- if (!mUserCaps.mEnabled) return;
+ if (!mUserCaps.mEnabled) {
+ return;
+ }
+ final PreferenceScreen screen = getPreferenceScreen();
+
+ if (mAutoSyncDataPreferenceController.isAvailable()) {
+ mAutoSyncDataPreferenceController.updateState(screen.findPreference(
+ mAutoSyncDataPreferenceController.getPreferenceKey()));
+ }
+ if (mAddUserWhenLockedPreferenceController.isAvailable()) {
+ mAddUserWhenLockedPreferenceController.updateState(screen.findPreference(
+ mAddUserWhenLockedPreferenceController.getPreferenceKey()));
+ }
+ if (mAutoSyncPersonalDataPreferenceController.isAvailable()) {
+ mAutoSyncPersonalDataPreferenceController.updateState(screen.findPreference(
+ mAutoSyncPersonalDataPreferenceController.getPreferenceKey()));
+ }
+ if (mAutoSyncWorkDataPreferenceController.isAvailable()) {
+ mAutoSyncWorkDataPreferenceController.updateState(screen.findPreference(
+ mAutoSyncWorkDataPreferenceController.getPreferenceKey()));
+ }
+
if (mShouldUpdateUserList) {
mUserCaps.updateAddUserCapabilities(getActivity());
loadProfile();
@@ -266,7 +309,9 @@
public void onDestroy() {
super.onDestroy();
- if (!mUserCaps.mEnabled) return;
+ if (mUserCaps == null || !mUserCaps.mEnabled) {
+ return;
+ }
getActivity().unregisterReceiver(mUserChangeReceiver);
}
@@ -286,6 +331,20 @@
}
@Override
+ public boolean onPreferenceTreeClick(Preference preference) {
+ if (mAutoSyncDataPreferenceController.handlePreferenceTreeClick(preference)) {
+ return true;
+ }
+ if (mAutoSyncPersonalDataPreferenceController.handlePreferenceTreeClick(preference)) {
+ return true;
+ }
+ if (mAutoSyncWorkDataPreferenceController.handlePreferenceTreeClick(preference)) {
+ return true;
+ }
+ return super.onPreferenceTreeClick(preference);
+ }
+
+ @Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
int pos = 0;
UserManager um = getContext().getSystemService(UserManager.class);
@@ -698,8 +757,12 @@
synchronized (mUserLock) {
if (userType == USER_TYPE_USER) {
mHandler.sendEmptyMessage(MESSAGE_UPDATE_LIST);
- mHandler.sendMessage(mHandler.obtainMessage(
- MESSAGE_SETUP_USER, user.id, user.serialNumber));
+ // Skip setting up user which results in user switching when the
+ // restriction is set.
+ if (!mUserCaps.mDisallowSwitchUser) {
+ mHandler.sendMessage(mHandler.obtainMessage(
+ MESSAGE_SETUP_USER, user.id, user.serialNumber));
+ }
} else {
mHandler.sendMessage(mHandler.obtainMessage(
MESSAGE_CONFIG_USER, user.id, user.serialNumber));
@@ -786,8 +849,12 @@
} else {
pref.setSummary(R.string.user_summary_not_set_up);
}
- pref.setOnPreferenceClickListener(this);
- pref.setSelectable(true);
+ // Disallow setting up user which results in user switching when the restriction is
+ // set.
+ if (!mUserCaps.mDisallowSwitchUser) {
+ pref.setOnPreferenceClickListener(this);
+ pref.setSelectable(true);
+ }
} else if (user.isRestricted()) {
pref.setSummary(R.string.user_summary_restricted_profile);
}
@@ -826,8 +893,13 @@
pref.setTitle(R.string.user_guest);
pref.setIcon(getEncircledDefaultIcon());
userPreferences.add(pref);
- pref.setDisabledByAdmin(
- mUserCaps.mDisallowAddUser ? mUserCaps.mEnforcedAdmin : null);
+ if (mUserCaps.mDisallowAddUser) {
+ pref.setDisabledByAdmin(mUserCaps.mEnforcedAdmin);
+ } else if (mUserCaps.mDisallowSwitchUser) {
+ pref.setDisabledByAdmin(RestrictedLockUtils.getDeviceOwner(context));
+ } else {
+ pref.setDisabledByAdmin(null);
+ }
int finalGuestId = guestId;
pref.setOnPreferenceClickListener(preference -> {
int id = finalGuestId;
@@ -857,32 +929,24 @@
loadIconsAsync(missingIcons);
}
- PreferenceScreen preferenceScreen = getPreferenceScreen();
- preferenceScreen.removeAll();
-
- // If profiles are supported, userPreferences will be added to the category labeled
- // "User & Profiles", otherwise the category is skipped and elements are added directly
- // to preferenceScreen
- PreferenceGroup groupToAddUsers;
+ // Remove everything from mUserListCategory and add new users.
+ mUserListCategory.removeAll();
+ // If profiles are supported, mUserListCategory will have a special title
if (mUserCaps.mCanAddRestrictedProfile) {
- mUserListCategory.removeAll();
- mUserListCategory.setOrder(Preference.DEFAULT_ORDER);
- preferenceScreen.addPreference(mUserListCategory);
- groupToAddUsers = mUserListCategory;
+ mUserListCategory.setTitle(R.string.user_list_title);
} else {
- groupToAddUsers = preferenceScreen;
+ mUserListCategory.setTitle(null);
}
+
for (UserPreference userPreference : userPreferences) {
userPreference.setOrder(Preference.DEFAULT_ORDER);
- groupToAddUsers.addPreference(userPreference);
+ mUserListCategory.addPreference(userPreference);
}
// Append Add user to the end of the list
if ((mUserCaps.mCanAddUser || mUserCaps.mDisallowAddUserSetByAdmin) &&
Utils.isDeviceProvisioned(getActivity())) {
boolean moreUsers = mUserManager.canAddMoreUsers();
- mAddUser.setOrder(Preference.DEFAULT_ORDER);
- preferenceScreen.addPreference(mAddUser);
mAddUser.setEnabled(moreUsers && !mAddingUser);
if (!moreUsers) {
mAddUser.setSummary(getString(R.string.user_add_max_count, getMaxRealUsers()));
diff --git a/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java b/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java
index 77142ed..8d798b1 100644
--- a/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java
+++ b/src/com/android/settings/wallpaper/WallpaperSuggestionActivity.java
@@ -59,7 +59,8 @@
@VisibleForTesting
public static boolean isSuggestionComplete(Context context) {
final WallpaperManagerWrapper manager = new WallpaperManagerWrapper(context);
- return manager.getWallpaperId(WallpaperManager.FLAG_SYSTEM) > 0;
+ return manager.isWallpaperServiceEnabled() ? manager.getWallpaperId(
+ WallpaperManager.FLAG_SYSTEM) > 0 : false;
}
}
diff --git a/src/com/android/settings/widget/EntityHeaderController.java b/src/com/android/settings/widget/EntityHeaderController.java
index 8607211..4ebc369 100644
--- a/src/com/android/settings/widget/EntityHeaderController.java
+++ b/src/com/android/settings/widget/EntityHeaderController.java
@@ -37,7 +37,6 @@
import android.support.annotation.VisibleForTesting;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
-import android.util.FeatureFlagUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
@@ -48,10 +47,8 @@
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.applications.AppInfoBase;
-import com.android.settings.applications.InstalledAppDetails;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -285,17 +282,10 @@
entityHeaderContent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- if (FeatureFlagUtils.isEnabled(mAppContext, FeatureFlags.APP_INFO_V2)) {
- AppInfoBase.startAppInfoFragment(
- AppInfoDashboardFragment.class, R.string.application_info_label,
- mPackageName, mUid, mFragment, 0 /* request */,
- mMetricsCategory);
- } else {
- AppInfoBase.startAppInfoFragment(
- InstalledAppDetails.class, R.string.application_info_label,
- mPackageName, mUid, mFragment, 0 /* request */,
- mMetricsCategory);
- }
+ AppInfoBase.startAppInfoFragment(
+ AppInfoDashboardFragment.class, R.string.application_info_label,
+ mPackageName, mUid, mFragment, 0 /* request */,
+ mMetricsCategory);
}
});
return;
diff --git a/src/com/android/settings/widget/HighlightablePreferenceGroupAdapter.java b/src/com/android/settings/widget/HighlightablePreferenceGroupAdapter.java
new file mode 100644
index 0000000..e1999ef
--- /dev/null
+++ b/src/com/android/settings/widget/HighlightablePreferenceGroupAdapter.java
@@ -0,0 +1,102 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+import android.content.Context;
+import android.support.annotation.VisibleForTesting;
+import android.support.v7.preference.PreferenceGroup;
+import android.support.v7.preference.PreferenceGroupAdapter;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.support.v7.widget.RecyclerView;
+import android.text.TextUtils;
+import android.util.TypedValue;
+import android.view.View;
+
+import com.android.settings.R;
+
+public class HighlightablePreferenceGroupAdapter extends PreferenceGroupAdapter {
+
+ @VisibleForTesting
+ static final long DELAY_HIGHLIGHT_DURATION_MILLIS = 600L;
+ private static final long HIGHLIGHT_DURATION = 5000L;
+
+ private final int mHighlightColor;
+ private final int mNormalBackgroundRes;
+ private final String mHighlightKey;
+
+ private boolean mHighlightRequested;
+ private int mHighlightPosition = RecyclerView.NO_POSITION;
+
+ public HighlightablePreferenceGroupAdapter(PreferenceGroup preferenceGroup, String key,
+ boolean highlightRequested) {
+ super(preferenceGroup);
+ mHighlightKey = key;
+ mHighlightRequested = highlightRequested;
+ final Context context = preferenceGroup.getContext();
+ final TypedValue outValue = new TypedValue();
+ context.getTheme().resolveAttribute(android.R.attr.selectableItemBackground,
+ outValue, true /* resolveRefs */);
+ mNormalBackgroundRes = outValue.resourceId;
+ mHighlightColor = context.getColor(R.color.preference_highligh_color);
+ }
+
+ @Override
+ public void onBindViewHolder(PreferenceViewHolder holder, int position) {
+ super.onBindViewHolder(holder, position);
+ updateBackground(holder, position);
+ }
+
+ @VisibleForTesting
+ void updateBackground(PreferenceViewHolder holder, int position) {
+ View v = holder.itemView;
+ if (position == mHighlightPosition) {
+ v.setBackgroundColor(mHighlightColor);
+ v.setTag(R.id.preference_highlighted, true);
+ v.postDelayed(() -> {
+ mHighlightPosition = RecyclerView.NO_POSITION;
+ removeHighlightBackground(v);
+ }, HIGHLIGHT_DURATION);
+ } else if (Boolean.TRUE.equals(v.getTag(R.id.preference_highlighted))) {
+ removeHighlightBackground(v);
+ }
+ }
+
+ public void requestHighlight(View root, RecyclerView recyclerView) {
+ if (mHighlightRequested || recyclerView == null || TextUtils.isEmpty(mHighlightKey)) {
+ return;
+ }
+ root.postDelayed(() -> {
+ final int position = getPreferenceAdapterPosition(mHighlightKey);
+ if (position < 0) {
+ return;
+ }
+ mHighlightRequested = true;
+ recyclerView.getLayoutManager().scrollToPosition(position);
+ mHighlightPosition = position;
+ notifyItemChanged(position);
+ }, DELAY_HIGHLIGHT_DURATION_MILLIS);
+ }
+
+ public boolean isHighlightRequested() {
+ return mHighlightRequested;
+ }
+
+ private void removeHighlightBackground(View v) {
+ v.setBackgroundResource(mNormalBackgroundRes);
+ v.setTag(R.id.preference_highlighted, false);
+ }
+}
diff --git a/src/com/android/settings/widget/MasterCheckBoxPreference.java b/src/com/android/settings/widget/MasterCheckBoxPreference.java
index 552f51c..fceeac2 100644
--- a/src/com/android/settings/widget/MasterCheckBoxPreference.java
+++ b/src/com/android/settings/widget/MasterCheckBoxPreference.java
@@ -83,6 +83,7 @@
if (mCheckBox != null) {
mCheckBox.setContentDescription(getTitle());
mCheckBox.setChecked(mChecked);
+ mCheckBox.setEnabled(mEnableCheckBox);
}
}
diff --git a/src/com/android/settings/widget/SeekBarPreference.java b/src/com/android/settings/widget/SeekBarPreference.java
index ee7d4b8..5af21b3 100644
--- a/src/com/android/settings/widget/SeekBarPreference.java
+++ b/src/com/android/settings/widget/SeekBarPreference.java
@@ -40,6 +40,7 @@
private int mProgress;
private int mMax;
+ private int mMin;
private boolean mTrackingTouch;
private boolean mContinuousUpdates;
@@ -55,6 +56,7 @@
TypedArray a = context.obtainStyledAttributes(
attrs, com.android.internal.R.styleable.ProgressBar, defStyleAttr, defStyleRes);
setMax(a.getInt(com.android.internal.R.styleable.ProgressBar_max, mMax));
+ setMin(a.getInt(com.android.internal.R.styleable.ProgressBar_min, mMin));
a.recycle();
a = context.obtainStyledAttributes(attrs,
@@ -94,6 +96,7 @@
com.android.internal.R.id.seekbar);
mSeekBar.setOnSeekBarChangeListener(this);
mSeekBar.setMax(mMax);
+ mSeekBar.setMin(mMin);
mSeekBar.setProgress(mProgress);
mSeekBar.setEnabled(isEnabled());
final CharSequence title = getTitle();
@@ -154,10 +157,21 @@
}
}
+ public void setMin(int min) {
+ if (min != mMin) {
+ mMin = min;
+ notifyChanged();
+ }
+ }
+
public int getMax() {
return mMax;
}
+ public int getMin() {
+ return mMin;
+ }
+
public void setProgress(int progress) {
setProgress(progress, true);
}
@@ -187,8 +201,8 @@
if (progress > mMax) {
progress = mMax;
}
- if (progress < 0) {
- progress = 0;
+ if (progress < mMin) {
+ progress = mMin;
}
if (progress != mProgress) {
mProgress = progress;
@@ -257,6 +271,7 @@
final SavedState myState = new SavedState(superState);
myState.progress = mProgress;
myState.max = mMax;
+ myState.min = mMin;
return myState;
}
@@ -273,6 +288,7 @@
super.onRestoreInstanceState(myState.getSuperState());
mProgress = myState.progress;
mMax = myState.max;
+ mMin = myState.min;
notifyChanged();
}
@@ -285,6 +301,7 @@
private static class SavedState extends BaseSavedState {
int progress;
int max;
+ int min;
public SavedState(Parcel source) {
super(source);
@@ -292,6 +309,7 @@
// Restore the click counter
progress = source.readInt();
max = source.readInt();
+ min = source.readInt();
}
@Override
@@ -301,6 +319,7 @@
// Save the click counter
dest.writeInt(progress);
dest.writeInt(max);
+ dest.writeInt(min);
}
public SavedState(Parcelable superState) {
diff --git a/src/com/android/settings/widget/TwoStateButtonPreference.java b/src/com/android/settings/widget/TwoStateButtonPreference.java
new file mode 100644
index 0000000..6b5fbbb
--- /dev/null
+++ b/src/com/android/settings/widget/TwoStateButtonPreference.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.support.v4.content.res.TypedArrayUtils;
+import android.util.AttributeSet;
+import android.widget.Button;
+
+import com.android.settings.R;
+import com.android.settings.applications.LayoutPreference;
+
+/**
+ * Preference that presents a button with two states(On vs Off)
+ */
+public class TwoStateButtonPreference extends LayoutPreference {
+ public TwoStateButtonPreference(Context context, AttributeSet attrs) {
+ super(context, attrs, TypedArrayUtils.getAttr(
+ context, R.attr.twoStateButtonPreferenceStyle, android.R.attr.preferenceStyle));
+
+ if (attrs != null) {
+ final TypedArray styledAttrs = context.obtainStyledAttributes(attrs,
+ R.styleable.TwoStateButtonPreference);
+ final int textOnId = styledAttrs.getResourceId(
+ R.styleable.TwoStateButtonPreference_textOn,
+ R.string.summary_placeholder);
+ final int textOffId = styledAttrs.getResourceId(
+ R.styleable.TwoStateButtonPreference_textOff,
+ R.string.summary_placeholder);
+ styledAttrs.recycle();
+
+ final Button buttonOn = getStateOnButton();
+ buttonOn.setText(textOnId);
+ final Button buttonOff = getStateOffButton();
+ buttonOff.setText(textOffId);
+ }
+ }
+
+ public Button getStateOnButton() {
+ return findViewById(R.id.state_on_button);
+ }
+
+
+ public Button getStateOffButton() {
+ return findViewById(R.id.state_off_button);
+ }
+}
\ No newline at end of file
diff --git a/src/com/android/settings/widget/TwoStateButtonPreferenceController.java b/src/com/android/settings/widget/TwoStateButtonPreferenceController.java
new file mode 100644
index 0000000..47699ef
--- /dev/null
+++ b/src/com/android/settings/widget/TwoStateButtonPreferenceController.java
@@ -0,0 +1,78 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+import android.content.Context;
+import android.support.v7.preference.PreferenceScreen;
+import android.view.View;
+import android.widget.Button;
+
+import com.android.settings.R;
+import com.android.settings.core.BasePreferenceController;
+
+/**
+ * Controller to update the button with two states(On vs Off).
+ */
+public abstract class TwoStateButtonPreferenceController extends BasePreferenceController
+ implements View.OnClickListener {
+ private Button mButtonOn;
+ private Button mButtonOff;
+
+ public TwoStateButtonPreferenceController(Context context, String key) {
+ super(context, key);
+ }
+
+ @Override
+ public void displayPreference(PreferenceScreen screen) {
+ super.displayPreference(screen);
+ final TwoStateButtonPreference preference =
+ (TwoStateButtonPreference) screen.findPreference(getPreferenceKey());
+ mButtonOn = preference.getStateOnButton();
+ mButtonOn.setOnClickListener(this);
+ mButtonOff = preference.getStateOffButton();
+ mButtonOff.setOnClickListener(this);
+ }
+
+ protected void setButtonVisibility(boolean stateOn) {
+ if (stateOn) {
+ mButtonOff.setVisibility(View.GONE);
+ mButtonOn.setVisibility(View.VISIBLE);
+ } else {
+ mButtonOff.setVisibility(View.VISIBLE);
+ mButtonOn.setVisibility(View.GONE);
+ }
+ }
+
+ protected void setButtonEnabled(boolean enabled) {
+ mButtonOn.setEnabled(enabled);
+ mButtonOff.setEnabled(enabled);
+ }
+
+ @Override
+ public void onClick(View v) {
+ final boolean stateOn = v.getId() == R.id.state_on_button;
+ onButtonClicked(stateOn);
+ }
+
+ /**
+ * Callback when button is clicked
+ *
+ * @param stateOn {@code true} if stateOn button is clicked, otherwise it means stateOff
+ * button is clicked
+ */
+ public abstract void onButtonClicked(boolean stateOn);
+}
\ No newline at end of file
diff --git a/src/com/android/settings/wifi/ConfigureWifiSettings.java b/src/com/android/settings/wifi/ConfigureWifiSettings.java
index 3cd925e..1607b74 100644
--- a/src/com/android/settings/wifi/ConfigureWifiSettings.java
+++ b/src/com/android/settings/wifi/ConfigureWifiSettings.java
@@ -63,10 +63,7 @@
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
- int tileLimit = 1;
- if (mWifiWakeupPreferenceController.isAvailable()) {
- tileLimit++;
- }
+ int tileLimit = 2;
if (mUseOpenWifiPreferenceController.isAvailable()) {
tileLimit++;
}
@@ -82,8 +79,7 @@
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
final NetworkScoreManagerWrapper networkScoreManagerWrapper =
new NetworkScoreManagerWrapper(context.getSystemService(NetworkScoreManager.class));
- mWifiWakeupPreferenceController = new WifiWakeupPreferenceController(
- context, getLifecycle());
+ mWifiWakeupPreferenceController = new WifiWakeupPreferenceController(context);
mUseOpenWifiPreferenceController = new UseOpenWifiPreferenceController(context, this,
networkScoreManagerWrapper, getLifecycle());
final WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
@@ -96,8 +92,6 @@
controllers.add(new WifiInfoPreferenceController(context, getLifecycle(), wifiManager));
controllers.add(new CellularFallbackPreferenceController(context));
controllers.add(new WifiP2pPreferenceController(context, getLifecycle(), wifiManager));
- controllers.add(new WpsPreferenceController(
- context, getLifecycle(), wifiManager, getFragmentManager()));
return controllers;
}
diff --git a/src/com/android/settings/wifi/ConnectedAccessPointPreference.java b/src/com/android/settings/wifi/ConnectedAccessPointPreference.java
index 6b9c788..514525c 100644
--- a/src/com/android/settings/wifi/ConnectedAccessPointPreference.java
+++ b/src/com/android/settings/wifi/ConnectedAccessPointPreference.java
@@ -36,6 +36,7 @@
public ConnectedAccessPointPreference(AccessPoint accessPoint, Context context,
UserBadgeCache cache, @DrawableRes int iconResId, boolean forSavedNetworks) {
super(accessPoint, context, cache, iconResId, forSavedNetworks);
+ setWidgetLayoutResource(R.layout.preference_widget_gear_no_bg);
}
public void setOnGearClickListener(OnGearClickListener l) {
@@ -44,26 +45,6 @@
}
@Override
- protected int getSecondTargetResId() {
- return R.layout.preference_widget_gear;
- }
-
- @Override
- protected boolean shouldHideSecondTarget() {
- return mOnGearClickListener == null;
- }
-
- @Override
- public void onBindViewHolder(PreferenceViewHolder holder) {
- super.onBindViewHolder(holder);
- final View gear = holder.findViewById(R.id.settings_button);
- if (gear != null) {
- gear.setOnClickListener(this);
- }
- setDividerVisibility(holder, View.VISIBLE);
- }
-
- @Override
public void onClick(View v) {
if (v.getId() == R.id.settings_button) {
if (mOnGearClickListener != null) {
diff --git a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
index 9f52159..3079f8d 100644
--- a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
+++ b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
@@ -161,7 +161,7 @@
final int accessPointsSize = accessPoints.size();
for (int i = 0; i < accessPointsSize; ++i) {
AccessPoint ap = accessPoints.get(i);
- String key = AccessPointPreference.generatePreferenceKey(ap);
+ String key = ap.getKey();
LongPressAccessPointPreference preference =
(LongPressAccessPointPreference) getCachedPreference(key);
if (preference == null) {
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 83d9c18..69dc130 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -85,16 +85,12 @@
private static final String TAG = "WifiSettings";
- /* package */ static final int MENU_ID_WPS_PBC = Menu.FIRST;
- private static final int MENU_ID_WPS_PIN = Menu.FIRST + 1;
private static final int MENU_ID_CONNECT = Menu.FIRST + 6;
private static final int MENU_ID_FORGET = Menu.FIRST + 7;
private static final int MENU_ID_MODIFY = Menu.FIRST + 8;
private static final int MENU_ID_WRITE_NFC = Menu.FIRST + 9;
public static final int WIFI_DIALOG_ID = 1;
- /* package */ static final int WPS_PBC_DIALOG_ID = 2;
- private static final int WPS_PIN_DIALOG_ID = 3;
private static final int WRITE_NFC_DIALOG_ID = 6;
// Instance state keys
@@ -109,6 +105,10 @@
private static final String PREF_KEY_CONFIGURE_WIFI_SETTINGS = "configure_settings";
private static final String PREF_KEY_SAVED_NETWORKS = "saved_networks";
+ private static boolean isVerboseLoggingEnabled() {
+ return WifiTracker.sVerboseLogging || Log.isLoggable(TAG, Log.VERBOSE);
+ }
+
private final Runnable mUpdateAccessPointsRunnable = () -> {
updateAccessPointPreferences();
};
@@ -371,7 +371,7 @@
}
setProgressBarVisible(true);
mWifiTracker.forceUpdate();
- if (WifiTracker.sVerboseLogging) {
+ if (isVerboseLoggingEnabled()) {
Log.i(TAG, "WifiSettings force update APs: " + mWifiTracker.getAccessPoints());
}
getView().removeCallbacks(mUpdateAccessPointsRunnable);
@@ -460,24 +460,6 @@
}
@Override
- public boolean onOptionsItemSelected(MenuItem item) {
- // If the user is not allowed to configure wifi, do not handle menu selections.
- if (mIsRestricted) {
- return false;
- }
-
- switch (item.getItemId()) {
- case MENU_ID_WPS_PBC:
- showDialog(WPS_PBC_DIALOG_ID);
- return true;
- case MENU_ID_WPS_PIN:
- showDialog(WPS_PIN_DIALOG_ID);
- return true;
- }
- return super.onOptionsItemSelected(item);
- }
-
- @Override
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo info) {
Preference preference = (Preference) view.getTag();
@@ -635,10 +617,6 @@
mSelectedAccessPoint = mDlgAccessPoint;
return mDialog;
- case WPS_PBC_DIALOG_ID:
- return new WpsDialog(getActivity(), WpsInfo.PBC);
- case WPS_PIN_DIALOG_ID:
- return new WpsDialog(getActivity(), WpsInfo.DISPLAY);
case WRITE_NFC_DIALOG_ID:
if (mSelectedAccessPoint != null) {
mWifiToNfcDialog = new WriteWifiConfigToNfcDialog(
@@ -660,10 +638,6 @@
switch (dialogId) {
case WIFI_DIALOG_ID:
return MetricsEvent.DIALOG_WIFI_AP_EDIT;
- case WPS_PBC_DIALOG_ID:
- return MetricsEvent.DIALOG_WIFI_PBC;
- case WPS_PIN_DIALOG_ID:
- return MetricsEvent.DIALOG_WIFI_PIN;
case WRITE_NFC_DIALOG_ID:
return MetricsEvent.DIALOG_WIFI_WRITE_NFC;
default:
@@ -762,7 +736,7 @@
}
// AccessPoints are sorted by the WifiTracker
final List<AccessPoint> accessPoints = mWifiTracker.getAccessPoints();
- if (WifiTracker.sVerboseLogging) {
+ if (isVerboseLoggingEnabled()) {
Log.i(TAG, "updateAccessPoints called for: " + accessPoints);
}
@@ -777,7 +751,7 @@
AccessPoint accessPoint = accessPoints.get(index);
// Ignore access points that are out of range.
if (accessPoint.isReachable()) {
- String key = AccessPointPreference.generatePreferenceKey(accessPoint);
+ String key = accessPoint.getKey();
hasAvailableAccessPoints = true;
LongPressAccessPointPreference pref =
(LongPressAccessPointPreference) getCachedPreference(key);
@@ -884,13 +858,14 @@
connectedAp);
// Launch details page on click.
- pref.setOnGearClickListener(l -> {
+ pref.setOnPreferenceClickListener(preference -> {
pref.getAccessPoint().saveWifiState(pref.getExtras());
SettingsActivity activity = (SettingsActivity) WifiSettings.this.getActivity();
activity.startPreferencePanel(this,
WifiNetworkDetailsFragment.class.getName(), pref.getExtras(),
-1 /* resId */, pref.getTitle(), null, 0 /* resultRequestCode */);
+ return true;
});
pref.refresh();
@@ -911,17 +886,10 @@
private void setAdditionalSettingsSummaries() {
mAdditionalSettingsPreferenceCategory.addPreference(mConfigureWifiSettingsPreference);
- final int defaultWakeupAvailable = getResources().getInteger(
- com.android.internal.R.integer.config_wifi_wakeup_available);
- boolean wifiWakeupAvailable = Settings.Global.getInt(
- getContentResolver(), Settings.Global.WIFI_WAKEUP_AVAILABLE, defaultWakeupAvailable)
- == 1;
- if (wifiWakeupAvailable) {
- mConfigureWifiSettingsPreference.setSummary(getString(
- isWifiWakeupEnabled()
- ? R.string.wifi_configure_settings_preference_summary_wakeup_on
- : R.string.wifi_configure_settings_preference_summary_wakeup_off));
- }
+ mConfigureWifiSettingsPreference.setSummary(getString(
+ isWifiWakeupEnabled()
+ ? R.string.wifi_configure_settings_preference_summary_wakeup_on
+ : R.string.wifi_configure_settings_preference_summary_wakeup_off));
int numSavedNetworks = mWifiTracker.getNumSavedNetworks();
if (numSavedNetworks > 0) {
mAdditionalSettingsPreferenceCategory.addPreference(mSavedNetworksPreference);
@@ -942,8 +910,6 @@
Settings.Global.WIFI_SCAN_ALWAYS_AVAILABLE, 0) == 1
&& Settings.Global.getInt(contentResolver,
Settings.Global.AIRPLANE_MODE_ON, 0) == 0
- && Settings.Global.getInt(contentResolver,
- Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED, 0) == 1
&& !powerManager.isPowerSaveMode();
}
diff --git a/src/com/android/settings/wifi/WifiWakeupPreferenceController.java b/src/com/android/settings/wifi/WifiWakeupPreferenceController.java
index a3170c0..bc9f2a0 100644
--- a/src/com/android/settings/wifi/WifiWakeupPreferenceController.java
+++ b/src/com/android/settings/wifi/WifiWakeupPreferenceController.java
@@ -31,52 +31,28 @@
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.wrapper.NetworkScoreManagerWrapper;
import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnPause;
-import com.android.settingslib.core.lifecycle.events.OnResume;
/**
* {@link PreferenceControllerMixin} that controls whether the Wi-Fi Wakeup feature should be
* enabled.
*/
public class WifiWakeupPreferenceController extends AbstractPreferenceController
- implements PreferenceControllerMixin, LifecycleObserver, OnResume, OnPause {
+ implements PreferenceControllerMixin {
private static final String KEY_ENABLE_WIFI_WAKEUP = "enable_wifi_wakeup";
- private SettingObserver mSettingObserver;
- public WifiWakeupPreferenceController(Context context, Lifecycle lifecycle) {
+ public WifiWakeupPreferenceController(Context context) {
super(context);
- lifecycle.addObserver(this);
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
- mSettingObserver = new SettingObserver(screen.findPreference(KEY_ENABLE_WIFI_WAKEUP));
- }
-
- @Override
- public void onResume() {
- if (mSettingObserver != null) {
- mSettingObserver.register(mContext.getContentResolver(), true /* register */);
- }
- }
-
- @Override
- public void onPause() {
- if (mSettingObserver != null) {
- mSettingObserver.register(mContext.getContentResolver(), false /* register */);
- }
}
@Override
public boolean isAvailable() {
- final int defaultValue = mContext.getResources().getInteger(
- com.android.internal.R.integer.config_wifi_wakeup_available);
- return Settings.Global.getInt(mContext.getContentResolver(),
- Settings.Global.WIFI_WAKEUP_AVAILABLE, defaultValue) == 1;
+ return true;
}
@Override
@@ -110,45 +86,12 @@
boolean wifiScanningEnabled = Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.WIFI_SCAN_ALWAYS_AVAILABLE, 0) == 1;
- boolean networkRecommendationsEnabled = Settings.Global.getInt(
- mContext.getContentResolver(),
- Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED, 0) == 1;
- enableWifiWakeup.setEnabled(networkRecommendationsEnabled && wifiScanningEnabled);
+ enableWifiWakeup.setEnabled(wifiScanningEnabled);
- if (!networkRecommendationsEnabled) {
- enableWifiWakeup.setSummary(R.string.wifi_wakeup_summary_scoring_disabled);
- } else if (!wifiScanningEnabled) {
- enableWifiWakeup.setSummary(R.string.wifi_wakeup_summary_scanning_disabled);
- } else {
+ if (wifiScanningEnabled) {
enableWifiWakeup.setSummary(R.string.wifi_wakeup_summary);
- }
- }
-
- class SettingObserver extends ContentObserver {
- private final Uri NETWORK_RECOMMENDATIONS_ENABLED_URI =
- Settings.Global.getUriFor(Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED);
-
- private final Preference mPreference;
-
- public SettingObserver(Preference preference) {
- super(new Handler());
- mPreference = preference;
- }
-
- public void register(ContentResolver cr, boolean register) {
- if (register) {
- cr.registerContentObserver(NETWORK_RECOMMENDATIONS_ENABLED_URI, false, this);
- } else {
- cr.unregisterContentObserver(this);
- }
- }
-
- @Override
- public void onChange(boolean selfChange, Uri uri) {
- super.onChange(selfChange, uri);
- if (NETWORK_RECOMMENDATIONS_ENABLED_URI.equals(uri)) {
- updateState(mPreference);
- }
+ } else {
+ enableWifiWakeup.setSummary(R.string.wifi_wakeup_summary_scanning_disabled);
}
}
}
diff --git a/src/com/android/settings/wifi/WpsDialog.java b/src/com/android/settings/wifi/WpsDialog.java
deleted file mode 100644
index 440b72d..0000000
--- a/src/com/android/settings/wifi/WpsDialog.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*
- * Copyright (C) 2012 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.settings.wifi;
-
-import android.app.AlertDialog;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.net.NetworkInfo;
-import android.net.NetworkInfo.DetailedState;
-import android.net.wifi.WifiInfo;
-import android.net.wifi.WifiManager;
-import android.net.wifi.WpsInfo;
-import android.os.Bundle;
-import android.os.Handler;
-import android.view.View;
-import android.widget.Button;
-import android.widget.ProgressBar;
-import android.widget.TextView;
-
-import com.android.settings.R;
-
-import java.util.Timer;
-import java.util.TimerTask;
-
-
-/**
- * Dialog to show WPS progress.
- */
-public class WpsDialog extends AlertDialog {
-
- private final static String TAG = "WpsDialog";
- private static final String DIALOG_STATE = "android:dialogState";
- private static final String DIALOG_MSG_STRING = "android:dialogMsg";
-
- private View mView;
- private TextView mTextView;
- private ProgressBar mTimeoutBar;
- private ProgressBar mProgressBar;
- private Button mButton;
- private Timer mTimer;
-
- private static final int WPS_TIMEOUT_S = 120;
-
- private WifiManager mWifiManager;
- private WifiManager.WpsCallback mWpsListener;
- private int mWpsSetup;
-
- private final IntentFilter mFilter;
- private BroadcastReceiver mReceiver;
-
- private Context mContext;
- private Handler mHandler = new Handler();
- private String mMsgString = "";
-
- private enum DialogState {
- WPS_INIT,
- WPS_START,
- WPS_COMPLETE,
- CONNECTED, //WPS + IP config is done
- WPS_FAILED
- }
- DialogState mDialogState = DialogState.WPS_INIT;
-
- public WpsDialog(Context context, int wpsSetup) {
- super(context);
- mContext = context;
- mWpsSetup = wpsSetup;
-
- class WpsListener extends WifiManager.WpsCallback {
-
- public void onStarted(String pin) {
- if (pin != null) {
- updateDialog(DialogState.WPS_START, String.format(
- mContext.getString(R.string.wifi_wps_onstart_pin), pin));
- } else {
- updateDialog(DialogState.WPS_START, mContext.getString(
- R.string.wifi_wps_onstart_pbc));
- }
- }
-
- public void onSucceeded() {
- updateDialog(DialogState.WPS_COMPLETE,
- mContext.getString(R.string.wifi_wps_complete));
- }
-
- public void onFailed(int reason) {
- String msg;
- switch (reason) {
- case WifiManager.WPS_OVERLAP_ERROR:
- msg = mContext.getString(R.string.wifi_wps_failed_overlap);
- break;
- case WifiManager.WPS_WEP_PROHIBITED:
- msg = mContext.getString(R.string.wifi_wps_failed_wep);
- break;
- case WifiManager.WPS_TKIP_ONLY_PROHIBITED:
- msg = mContext.getString(R.string.wifi_wps_failed_tkip);
- break;
- case WifiManager.IN_PROGRESS:
- msg = mContext.getString(R.string.wifi_wps_in_progress);
- break;
- default:
- msg = mContext.getString(R.string.wifi_wps_failed_generic);
- break;
- }
- updateDialog(DialogState.WPS_FAILED, msg);
- }
- }
-
- mWpsListener = new WpsListener();
-
-
- mFilter = new IntentFilter();
- mFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
- mFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
- mReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- handleEvent(context, intent);
- }
- };
- setCanceledOnTouchOutside(false);
- }
-
- @Override
- public Bundle onSaveInstanceState () {
- Bundle bundle = super.onSaveInstanceState();
- bundle.putString(DIALOG_STATE, mDialogState.toString());
- bundle.putString(DIALOG_MSG_STRING, mMsgString.toString());
- return bundle;
- }
-
- @Override
- public void onRestoreInstanceState(Bundle savedInstanceState) {
- if (savedInstanceState != null) {
- super.onRestoreInstanceState(savedInstanceState);
- DialogState dialogState = mDialogState.valueOf(savedInstanceState.getString(DIALOG_STATE));
- String msg = savedInstanceState.getString(DIALOG_MSG_STRING);
- updateDialog(dialogState, msg);
- if (dialogState == DialogState.WPS_START) {
- startWps();
- }
- }
- }
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- mView = getLayoutInflater().inflate(R.layout.wifi_wps_dialog, null);
-
- mTextView = (TextView) mView.findViewById(R.id.wps_dialog_txt);
- mTextView.setText(R.string.wifi_wps_setup_msg);
-
- mTimeoutBar = ((ProgressBar) mView.findViewById(R.id.wps_timeout_bar));
- mTimeoutBar.setMax(WPS_TIMEOUT_S);
- mTimeoutBar.setProgress(0);
-
- mProgressBar = ((ProgressBar) mView.findViewById(R.id.wps_progress_bar));
- mProgressBar.setVisibility(View.GONE);
-
- mButton = ((Button) mView.findViewById(R.id.wps_dialog_btn));
- mButton.setText(R.string.wifi_cancel);
- mButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- dismiss();
- }
- });
-
- mWifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
-
- setView(mView);
- if (savedInstanceState == null) {
- startWps();
- }
- super.onCreate(savedInstanceState);
- }
-
- @Override
- protected void onStart() {
- /*
- * increment timeout bar per second.
- */
- mTimer = new Timer(false);
- mTimer.schedule(new TimerTask() {
- @Override
- public void run() {
- mHandler.post(new Runnable() {
-
- @Override
- public void run() {
- mTimeoutBar.incrementProgressBy(1);
- }
- });
- }
- }, 1000, 1000);
-
- mContext.registerReceiver(mReceiver, mFilter);
-
- }
-
- @Override
- protected void onStop() {
- if (mDialogState != DialogState.WPS_COMPLETE) {
- mWifiManager.cancelWps(null);
- }
-
- if (mReceiver != null) {
- mContext.unregisterReceiver(mReceiver);
- mReceiver = null;
- }
-
- if (mTimer != null) {
- mTimer.cancel();
- }
- }
-
- private void updateDialog(final DialogState state, final String msg) {
- if (mDialogState.ordinal() >= state.ordinal()) {
- //ignore.
- return;
- }
- mDialogState = state;
- mMsgString = msg;
-
- mHandler.post(new Runnable() {
- @Override
- public void run() {
- switch(state) {
- case WPS_COMPLETE:
- mTimeoutBar.setVisibility(View.GONE);
- mProgressBar.setVisibility(View.VISIBLE);
- break;
- case CONNECTED:
- case WPS_FAILED:
- mButton.setText(mContext.getString(R.string.dlg_ok));
- mTimeoutBar.setVisibility(View.GONE);
- mProgressBar.setVisibility(View.GONE);
- if (mReceiver != null) {
- mContext.unregisterReceiver(mReceiver);
- mReceiver = null;
- }
- break;
- }
- mTextView.setText(msg);
- }
- });
- }
-
- private void handleEvent(Context context, Intent intent) {
- String action = intent.getAction();
- if (WifiManager.WIFI_STATE_CHANGED_ACTION.equals(action)) {
- final int state = intent.getIntExtra(WifiManager.EXTRA_WIFI_STATE,
- WifiManager.WIFI_STATE_UNKNOWN);
- if (state == WifiManager.WIFI_STATE_DISABLED) {
- if (mTimer != null) {
- mTimer.cancel();
- mTimer = null;
- }
- String msg = mContext.getString(R.string.wifi_wps_failed_wifi_disconnected);
- updateDialog(DialogState.WPS_FAILED, msg);
- }
- } else if (WifiManager.NETWORK_STATE_CHANGED_ACTION.equals(action)) {
- NetworkInfo info = (NetworkInfo) intent.getParcelableExtra(
- WifiManager.EXTRA_NETWORK_INFO);
- final NetworkInfo.DetailedState state = info.getDetailedState();
- if (state == DetailedState.CONNECTED &&
- mDialogState == DialogState.WPS_COMPLETE) {
- WifiInfo wifiInfo = mWifiManager.getConnectionInfo();
- if (wifiInfo != null) {
- String msg = String.format(mContext.getString(
- R.string.wifi_wps_connected), wifiInfo.getSSID());
- updateDialog(DialogState.CONNECTED, msg);
- }
- }
- }
- }
-
- private void startWps() {
- WpsInfo wpsConfig = new WpsInfo();
- wpsConfig.setup = mWpsSetup;
- mWifiManager.startWps(wpsConfig, mWpsListener);
- }
-}
diff --git a/src/com/android/settings/wifi/WpsPreferenceController.java b/src/com/android/settings/wifi/WpsPreferenceController.java
deleted file mode 100644
index f636593..0000000
--- a/src/com/android/settings/wifi/WpsPreferenceController.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.wifi;
-
-import android.app.Dialog;
-import android.app.FragmentManager;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.net.wifi.WifiManager;
-import android.net.wifi.WpsInfo;
-import android.os.Bundle;
-import android.support.annotation.VisibleForTesting;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-
-import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
-import com.android.settingslib.core.AbstractPreferenceController;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnPause;
-import com.android.settingslib.core.lifecycle.events.OnResume;
-
-/**
- * {@link PreferenceControllerMixin} that shows Dialog for WPS progress. Disabled when Wi-Fi is off.
- */
-public class WpsPreferenceController extends AbstractPreferenceController
- implements PreferenceControllerMixin, LifecycleObserver, OnPause, OnResume {
-
- private static final String KEY_WPS_PUSH = "wps_push_button";
- private static final String KEY_WPS_PIN = "wps_pin_entry";
-
- private final WifiManager mWifiManager;
- private final FragmentManager mFragmentManager;
- @VisibleForTesting
- final BroadcastReceiver mReceiver = new BroadcastReceiver() {
- @Override
- public void onReceive(Context context, Intent intent) {
- togglePreferences();
- }
- };
- private final IntentFilter mFilter = new IntentFilter(WifiManager.WIFI_STATE_CHANGED_ACTION);
-
- private Preference mWpsPushPref;
- private Preference mWpsPinPref;
-
- public WpsPreferenceController(
- Context context,
- Lifecycle lifecycle,
- WifiManager wifiManager,
- FragmentManager fragmentManager) {
- super(context);
- mWifiManager = wifiManager;
- mFragmentManager = fragmentManager;
- lifecycle.addObserver(this);
- }
-
- @Override
- public boolean isAvailable() {
- // Always show preference.
- return true;
- }
-
- @Override
- public String getPreferenceKey() {
- // Returns null because this controller contains more than 1 preference.
- return null;
- }
-
- @Override
- public void displayPreference(PreferenceScreen screen) {
- super.displayPreference(screen);
- mWpsPushPref = screen.findPreference(KEY_WPS_PUSH);
- mWpsPinPref = screen.findPreference(KEY_WPS_PIN);
- if (mWpsPushPref == null || mWpsPinPref == null) {
- return;
- }
- // WpsDialog: Create the dialog like WifiSettings does.
- mWpsPushPref.setOnPreferenceClickListener((arg) -> {
- WpsFragment wpsFragment = new WpsFragment(WpsInfo.PBC);
- wpsFragment.show(mFragmentManager, KEY_WPS_PUSH);
- return true;
- }
- );
-
- // WpsDialog: Create the dialog like WifiSettings does.
- mWpsPinPref.setOnPreferenceClickListener((arg) -> {
- WpsFragment wpsFragment = new WpsFragment(WpsInfo.DISPLAY);
- wpsFragment.show(mFragmentManager, KEY_WPS_PIN);
- return true;
- });
- togglePreferences();
- }
-
- @Override
- public void onResume() {
- mContext.registerReceiver(mReceiver, mFilter);
- }
-
- @Override
- public void onPause() {
- mContext.unregisterReceiver(mReceiver);
- }
-
- private void togglePreferences() {
- if (mWpsPushPref != null && mWpsPinPref != null) {
- boolean enabled = mWifiManager.isWifiEnabled();
- mWpsPushPref.setEnabled(enabled);
- mWpsPinPref.setEnabled(enabled);
- }
- }
-
- /**
- * Fragment for Dialog to show WPS progress.
- */
- public static class WpsFragment extends InstrumentedDialogFragment {
- private static int mWpsSetup;
-
- // Public default constructor is required for rotation.
- public WpsFragment() {
- super();
- }
-
- public WpsFragment(int wpsSetup) {
- super();
- mWpsSetup = wpsSetup;
- }
-
- @Override
- public int getMetricsCategory() {
- return MetricsEvent.DIALOG_WPS_SETUP;
- }
-
- @Override
- public Dialog onCreateDialog(Bundle savedInstanceState) {
- return new WpsDialog(getActivity(), mWpsSetup);
- }
- }
-}
diff --git a/src/com/android/settings/WifiCallingSettings.java b/src/com/android/settings/wifi/calling/WifiCallingSettings.java
similarity index 80%
rename from src/com/android/settings/WifiCallingSettings.java
rename to src/com/android/settings/wifi/calling/WifiCallingSettings.java
index e872fb8..7bab07a 100644
--- a/src/com/android/settings/WifiCallingSettings.java
+++ b/src/com/android/settings/wifi/calling/WifiCallingSettings.java
@@ -14,11 +14,10 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.wifi.calling;
import android.app.Fragment;
import android.app.FragmentManager;
-import android.content.Context;
import android.os.Bundle;
import android.support.v13.app.FragmentPagerAdapter;
import android.telephony.SubscriptionInfo;
@@ -28,9 +27,13 @@
import android.view.View;
import android.view.ViewGroup;
-import com.android.ims.ImsConfig;
import com.android.ims.ImsManager;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
+import com.android.settings.R;
+import com.android.settings.core.InstrumentedFragment;
+import com.android.settings.search.actionbar.SearchMenuController;
+import com.android.settings.support.actionbar.HelpMenuController;
+import com.android.settings.support.actionbar.HelpResourceProvider;
import com.android.settings.widget.RtlCompatibleViewPager;
import com.android.settings.widget.SlidingTabLayout;
@@ -40,7 +43,7 @@
* "Wi-Fi Calling settings" screen. This is the container fragment which holds
* {@link WifiCallingSettingsForSub} fragments.
*/
-public class WifiCallingSettings extends SettingsPreferenceFragment {
+public class WifiCallingSettings extends InstrumentedFragment implements HelpResourceProvider {
private static final String TAG = "WifiCallingSettings";
private List<SubscriptionInfo> mSil;
@@ -71,6 +74,10 @@
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
+ setHasOptionsMenu(true);
+ SearchMenuController.init(this /* host */);
+ HelpMenuController.init(this /* host */);
+
// TODO: besides in onCreate, we should also update subList when SIM / Sub status
// changes.
updateSubList();
@@ -87,6 +94,11 @@
}
}
+ @Override
+ public int getHelpResource() {
+ return R.string.help_uri_wifi_calling;
+ }
+
private final class WifiCallingViewPagerAdapter extends FragmentPagerAdapter {
private final RtlCompatibleViewPager mViewPager;
@@ -105,6 +117,7 @@
public Fragment getItem(int position) {
Log.d(TAG, "Adapter getItem " + position);
final Bundle args = new Bundle();
+ args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
args.putInt(WifiCallingSettingsForSub.FRAGMENT_BUNDLE_SUBID,
mSil.get(position).getSubscriptionId());
WifiCallingSettingsForSub fragment = new WifiCallingSettingsForSub();
@@ -132,26 +145,6 @@
}
}
- public static int getWfcModeSummary(Context context, int wfcMode) {
- int resId = com.android.internal.R.string.wifi_calling_off_summary;
- if (ImsManager.isWfcEnabledByUser(context)) {
- switch (wfcMode) {
- case ImsConfig.WfcModeFeatureValueConstants.WIFI_ONLY:
- resId = com.android.internal.R.string.wfc_mode_wifi_only_summary;
- break;
- case ImsConfig.WfcModeFeatureValueConstants.CELLULAR_PREFERRED:
- resId = com.android.internal.R.string.wfc_mode_cellular_preferred_summary;
- break;
- case ImsConfig.WfcModeFeatureValueConstants.WIFI_PREFERRED:
- resId = com.android.internal.R.string.wfc_mode_wifi_preferred_summary;
- break;
- default:
- Log.e(TAG, "Unexpected WFC mode value: " + wfcMode);
- }
- }
- return resId;
- }
-
private void updateSubList() {
mSil = SubscriptionManager.from(getActivity()).getActiveSubscriptionInfoList();
@@ -159,7 +152,7 @@
if (mSil == null) {
return;
}
- for (int i = 0; i < mSil.size();) {
+ for (int i = 0; i < mSil.size(); ) {
ImsManager imsManager = ImsManager.getInstance(getActivity(),
mSil.get(i).getSimSlotIndex());
if (!imsManager.isWfcEnabledByPlatform()) {
diff --git a/src/com/android/settings/WifiCallingSettingsForSub.java b/src/com/android/settings/wifi/calling/WifiCallingSettingsForSub.java
similarity index 98%
rename from src/com/android/settings/WifiCallingSettingsForSub.java
rename to src/com/android/settings/wifi/calling/WifiCallingSettingsForSub.java
index ba5ba84..2bfd796 100644
--- a/src/com/android/settings/WifiCallingSettingsForSub.java
+++ b/src/com/android/settings/wifi/calling/WifiCallingSettingsForSub.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.wifi.calling;
import android.app.Activity;
import android.app.AlertDialog;
@@ -45,6 +45,10 @@
import com.android.ims.ImsManager;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.telephony.Phone;
+import com.android.settings.R;
+import com.android.settings.SettingsActivity;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.Utils;
import com.android.settings.widget.SwitchBar;
/**
@@ -54,7 +58,7 @@
public class WifiCallingSettingsForSub extends SettingsPreferenceFragment
implements SwitchBar.OnSwitchChangeListener,
Preference.OnPreferenceChangeListener {
- private static final String TAG = "WifiCallingSettingsForSub";
+ private static final String TAG = "WifiCallingForSub";
//String keys for preference lookup
private static final String BUTTON_WFC_MODE = "wifi_calling_mode";
@@ -130,12 +134,6 @@
}
};
- @Override
- public int getHelpResource() {
- // Helper resource is already defined in the container fragment.
- return 0;
- }
-
private final OnPreferenceClickListener mUpdateAddressListener =
new OnPreferenceClickListener() {
/*
@@ -226,8 +224,7 @@
// SubId should always be specified when creating this fragment. Either through
// fragment.setArguments() or through savedInstanceState.
- if (getArguments() != null && getArguments().containsKey(FRAGMENT_BUNDLE_SUBID))
- {
+ if (getArguments() != null && getArguments().containsKey(FRAGMENT_BUNDLE_SUBID)) {
mSubId = getArguments().getInt(FRAGMENT_BUNDLE_SUBID);
} else if (savedInstanceState != null) {
mSubId = savedInstanceState.getInt(
diff --git a/src/com/android/settings/wifi/WifiCallingSuggestionActivity.java b/src/com/android/settings/wifi/calling/WifiCallingSuggestionActivity.java
similarity index 96%
rename from src/com/android/settings/wifi/WifiCallingSuggestionActivity.java
rename to src/com/android/settings/wifi/calling/WifiCallingSuggestionActivity.java
index c3c7adb..9a50a83 100644
--- a/src/com/android/settings/wifi/WifiCallingSuggestionActivity.java
+++ b/src/com/android/settings/wifi/calling/WifiCallingSuggestionActivity.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.wifi;
+package com.android.settings.wifi.calling;
import android.content.Context;
diff --git a/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java b/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
index 11f1f59..826ed42 100644
--- a/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
+++ b/src/com/android/settings/wifi/tether/WifiTetherPreferenceController.java
@@ -39,13 +39,12 @@
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
-import java.util.List;
-
public class WifiTetherPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop {
- public static final IntentFilter WIFI_TETHER_INTENT_FILTER;
private static final String WIFI_TETHER_SETTINGS = "wifi_tether";
+ private static final IntentFilter AIRPLANE_INTENT_FILTER = new IntentFilter(
+ Intent.ACTION_AIRPLANE_MODE_CHANGED);
private final ConnectivityManager mConnectivityManager;
private final String[] mWifiRegexs;
@@ -58,12 +57,6 @@
@VisibleForTesting
WifiTetherSoftApManager mWifiTetherSoftApManager;
- static {
- WIFI_TETHER_INTENT_FILTER = new IntentFilter(WifiManager.WIFI_AP_STATE_CHANGED_ACTION);
- WIFI_TETHER_INTENT_FILTER.addAction(ConnectivityManager.ACTION_TETHER_STATE_CHANGED);
- WIFI_TETHER_INTENT_FILTER.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED);
- }
-
public WifiTetherPreferenceController(Context context, Lifecycle lifecycle) {
this(context, lifecycle, true /* initSoftApManager */);
}
@@ -113,7 +106,7 @@
@Override
public void onStart() {
if (mPreference != null) {
- mContext.registerReceiver(mReceiver, WIFI_TETHER_INTENT_FILTER);
+ mContext.registerReceiver(mReceiver, AIRPLANE_INTENT_FILTER);
clearSummaryForAirplaneMode();
if (mWifiTetherSoftApManager != null) {
mWifiTetherSoftApManager.registerSoftApCallback();
@@ -140,6 +133,7 @@
@Override
public void onStateChanged(int state, int failureReason) {
mSoftApState = state;
+ handleWifiApStateChanged(state, failureReason);
}
@Override
@@ -162,34 +156,21 @@
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
- if (WifiManager.WIFI_AP_STATE_CHANGED_ACTION.equals(action)) {
- int state = intent.getIntExtra(
- WifiManager.EXTRA_WIFI_AP_STATE, WifiManager.WIFI_AP_STATE_FAILED);
- int reason = intent.getIntExtra(WifiManager.EXTRA_WIFI_AP_FAILURE_REASON,
- WifiManager.SAP_START_FAILURE_GENERAL);
- handleWifiApStateChanged(state, reason);
- } else if (ConnectivityManager.ACTION_TETHER_STATE_CHANGED.equals(action)) {
- List<String> active = intent.getStringArrayListExtra(
- ConnectivityManager.EXTRA_ACTIVE_TETHER);
- List<String> errored = intent.getStringArrayListExtra(
- ConnectivityManager.EXTRA_ERRORED_TETHER);
- updateTetherState(active.toArray(), errored.toArray());
- } else if (Intent.ACTION_AIRPLANE_MODE_CHANGED.equals(action)) {
+ if (Intent.ACTION_AIRPLANE_MODE_CHANGED.equals(action)) {
clearSummaryForAirplaneMode();
}
}
};
- private void handleWifiApStateChanged(int state, int reason) {
+ @VisibleForTesting
+ void handleWifiApStateChanged(int state, int reason) {
switch (state) {
case WifiManager.WIFI_AP_STATE_ENABLING:
mPreference.setSummary(R.string.wifi_tether_starting);
break;
case WifiManager.WIFI_AP_STATE_ENABLED:
- /**
- * Summary on enable is handled by tether
- * broadcast notice
- */
+ WifiConfiguration wifiConfig = mWifiManager.getWifiApConfiguration();
+ updateConfigSummary(wifiConfig);
break;
case WifiManager.WIFI_AP_STATE_DISABLING:
mPreference.setSummary(R.string.wifi_tether_stopping);
@@ -208,32 +189,6 @@
}
}
- private void updateTetherState(Object[] tethered, Object[] errored) {
- boolean wifiTethered = matchRegex(tethered);
- boolean wifiErrored = matchRegex(errored);
-
- if (wifiTethered) {
- WifiConfiguration wifiConfig = mWifiManager.getWifiApConfiguration();
- updateConfigSummary(wifiConfig);
- } else if (wifiErrored) {
- mPreference.setSummary(R.string.wifi_error);
- } else {
- mPreference.setSummary(R.string.wifi_hotspot_off_subtext);
- }
- }
-
- private boolean matchRegex(Object[] tethers) {
- for (Object o : tethers) {
- String s = (String) o;
- for (String regex : mWifiRegexs) {
- if (s.matches(regex)) {
- return true;
- }
- }
- }
- return false;
- }
-
private void updateConfigSummary(WifiConfiguration wifiConfig) {
final String s = mContext.getString(
com.android.internal.R.string.wifi_tether_configure_ssid_default);
diff --git a/src/com/android/settings/wifi/tether/WifiTetherSwitchBarController.java b/src/com/android/settings/wifi/tether/WifiTetherSwitchBarController.java
index 627bf32..699e5ae 100644
--- a/src/com/android/settings/wifi/tether/WifiTetherSwitchBarController.java
+++ b/src/com/android/settings/wifi/tether/WifiTetherSwitchBarController.java
@@ -21,6 +21,7 @@
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
+import android.content.IntentFilter;
import android.net.ConnectivityManager;
import android.net.wifi.WifiManager;
import android.os.Handler;
@@ -36,12 +37,19 @@
public class WifiTetherSwitchBarController implements SwitchWidgetController.OnSwitchChangeListener,
LifecycleObserver, OnStart, OnStop {
+ private static final IntentFilter WIFI_INTENT_FILTER;
+
private final Context mContext;
private final SwitchWidgetController mSwitchBar;
private final ConnectivityManager mConnectivityManager;
private final DataSaverBackend mDataSaverBackend;
private final WifiManager mWifiManager;
+ static {
+ WIFI_INTENT_FILTER = new IntentFilter(WifiManager.WIFI_AP_STATE_CHANGED_ACTION);
+ WIFI_INTENT_FILTER.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED);
+ }
+
WifiTetherSwitchBarController(Context context, SwitchWidgetController switchBar) {
mContext = context;
mSwitchBar = switchBar;
@@ -56,8 +64,7 @@
@Override
public void onStart() {
mSwitchBar.startListening();
- mContext.registerReceiver(mReceiver,
- WifiTetherPreferenceController.WIFI_TETHER_INTENT_FILTER);
+ mContext.registerReceiver(mReceiver, WIFI_INTENT_FILTER);
}
@Override
diff --git a/src/com/android/settings/wrapper/WallpaperManagerWrapper.java b/src/com/android/settings/wrapper/WallpaperManagerWrapper.java
index 89015e5..eabc5bb 100644
--- a/src/com/android/settings/wrapper/WallpaperManagerWrapper.java
+++ b/src/com/android/settings/wrapper/WallpaperManagerWrapper.java
@@ -22,12 +22,23 @@
public class WallpaperManagerWrapper {
private final WallpaperManager mWallpaperManager;
+ private final boolean mWallpaperServiceEnabled;
public WallpaperManagerWrapper(Context context) {
- mWallpaperManager = (WallpaperManager) context.getSystemService(Context.WALLPAPER_SERVICE);
+ mWallpaperServiceEnabled = context.getResources().getBoolean(
+ com.android.internal.R.bool.config_enableWallpaperService);
+ mWallpaperManager = mWallpaperServiceEnabled ? (WallpaperManager) context.getSystemService(
+ Context.WALLPAPER_SERVICE) : null;
+ }
+
+ public boolean isWallpaperServiceEnabled() {
+ return mWallpaperServiceEnabled;
}
public int getWallpaperId(int which) {
+ if (!mWallpaperServiceEnabled) {
+ throw new RuntimeException("This device does not have wallpaper service enabled.");
+ }
return mWallpaperManager.getWallpaperId(which);
}
}
diff --git a/tests/robotests/assets/grandfather_not_implementing_index_provider b/tests/robotests/assets/grandfather_not_implementing_index_provider
index be910e1..43697bd 100644
--- a/tests/robotests/assets/grandfather_not_implementing_index_provider
+++ b/tests/robotests/assets/grandfather_not_implementing_index_provider
@@ -10,7 +10,6 @@
com.android.settings.development.qstile.DevelopmentTileConfigFragment
com.android.settings.deviceinfo.StorageProfileFragment
com.android.settings.notification.ChannelNotificationSettings
-com.android.settings.notification.ChannelImportanceSettings
com.android.settings.notification.ChannelGroupNotificationSettings
com.android.settings.notification.AppNotificationSettings
com.android.settings.wifi.details.WifiNetworkDetailsFragment
diff --git a/tests/robotests/assets/grandfather_not_implementing_indexable b/tests/robotests/assets/grandfather_not_implementing_indexable
index 9d593a0..748dc94 100644
--- a/tests/robotests/assets/grandfather_not_implementing_indexable
+++ b/tests/robotests/assets/grandfather_not_implementing_indexable
@@ -15,7 +15,6 @@
com.android.settings.inputmethod.UserDictionaryList
com.android.settings.datausage.DataSaverSummary
com.android.settings.datausage.AppDataUsage
-com.android.settings.datausage.DataPlanUsageSummary
com.android.settings.accessibility.FontSizePreferenceFragmentForSetupWizard
com.android.settings.applications.ManageDomainUrls
com.android.settings.applications.appinfo.WriteSettingsDetails
@@ -43,7 +42,6 @@
com.android.settings.applications.RunningServices
com.android.settings.applications.ConfirmConvertToFbe
com.android.settings.deviceinfo.PublicVolumeSettings
-com.android.settings.applications.InstalledAppDetails
com.android.settings.accessibility.ToggleAccessibilityServicePreferenceFragment
com.android.settings.print.PrintServiceSettingsFragment
com.android.settings.deviceinfo.PrivateVolumeSettings
@@ -62,8 +60,7 @@
com.android.settings.applications.appinfo.PictureInPictureDetails
com.android.settings.ApnSettings
com.android.settings.PrivacySettings
-com.android.settings.WifiCallingSettings
-com.android.settings.WifiCallingSettingsForSub
+com.android.settings.wifi.calling.WifiCallingSettingsForSub
com.android.settings.password.SetupChooseLockGeneric$SetupChooseLockGenericFragment
com.android.settings.SetupRedactionInterstitial$SetupRedactionInterstitialFragment
com.android.settings.security.trustagent.TrustAgentSettings
@@ -73,4 +70,4 @@
com.android.settings.ApnEditor
com.android.settings.UserCredentialsSettings
com.android.settings.TestingSettings
-com.android.settings.applications.DirectoryAccessDetails
\ No newline at end of file
+com.android.settings.applications.DirectoryAccessDetails
diff --git a/tests/robotests/assets/grandfather_not_in_search_index_provider_registry b/tests/robotests/assets/grandfather_not_in_search_index_provider_registry
index 6a831b0..666b224 100644
--- a/tests/robotests/assets/grandfather_not_in_search_index_provider_registry
+++ b/tests/robotests/assets/grandfather_not_in_search_index_provider_registry
@@ -1,3 +1,2 @@
com.android.settings.display.ScreenZoomPreferenceFragmentForSetupWizard
-com.android.settings.search.indexing.FakeSettingsFragment
-com.android.settings.security.SecuritySettings
\ No newline at end of file
+com.android.settings.search.indexing.FakeSettingsFragment
\ No newline at end of file
diff --git a/tests/robotests/assets/grandfather_slice_controller_not_in_xml b/tests/robotests/assets/grandfather_slice_controller_not_in_xml
new file mode 100644
index 0000000..f11027e
--- /dev/null
+++ b/tests/robotests/assets/grandfather_slice_controller_not_in_xml
@@ -0,0 +1 @@
+com.android.settings.testutils.FakeToggleController
\ No newline at end of file
diff --git a/tests/robotests/res/values-mcc999/config.xml b/tests/robotests/res/values-mcc999/config.xml
index e755f27..f43e39c 100644
--- a/tests/robotests/res/values-mcc999/config.xml
+++ b/tests/robotests/res/values-mcc999/config.xml
@@ -23,6 +23,8 @@
<bool name="config_additional_system_update_setting_enable">true</bool>
<bool name="config_show_wifi_settings">false</bool>
<bool name="config_show_toggle_airplane">false</bool>
+ <bool name="config_show_app_info_settings_memory">false</bool>
+ <bool name="config_show_app_info_settings_battery">false</bool>
<bool name="config_show_high_power_apps">false</bool>
<bool name="config_show_alarm_volume">false</bool>
<bool name="config_show_charging_sounds">false</bool>
@@ -57,4 +59,7 @@
<bool name="config_show_color_inversion_preference">false</bool>
<bool name="config_show_system_update_settings">false</bool>
<bool name="config_wifi_support_connected_mac_randomization">false</bool>
+ <bool name="config_show_device_model">false</bool>
+ <bool name="config_show_wifi_ip_address">false</bool>
+ <bool name="config_show_wifi_mac_address">false</bool>
</resources>
diff --git a/tests/robotests/src/android/hardware/usb/UsbManagerExtras.java b/tests/robotests/src/android/hardware/usb/UsbManagerExtras.java
new file mode 100644
index 0000000..b9bccd2
--- /dev/null
+++ b/tests/robotests/src/android/hardware/usb/UsbManagerExtras.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2010 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 android.hardware.usb;
+
+import android.annotation.SystemService;
+import android.content.Context;
+import android.hardware.usb.gadget.V1_0.GadgetFunction;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.StringJoiner;
+
+/**
+ * Definitions that were added to UsbManager in P.
+ *
+ * Copied partially from frameworks/base/core/java/android/hardware/usb/UsbManager to
+ * fix issues with roboelectric during test.
+ */
+@SystemService(Context.USB_SERVICE)
+public class UsbManagerExtras {
+ public static final long NONE = 0;
+ public static final long MTP = GadgetFunction.MTP;
+ public static final long PTP = GadgetFunction.PTP;
+ public static final long RNDIS = GadgetFunction.RNDIS;
+ public static final long MIDI = GadgetFunction.MIDI;
+ public static final long ACCESSORY = GadgetFunction.ACCESSORY;
+ public static final long AUDIO_SOURCE = GadgetFunction.AUDIO_SOURCE;
+ public static final long ADB = GadgetFunction.ADB;
+
+ private static final long SETTABLE_FUNCTIONS = MTP | PTP | RNDIS | MIDI;
+
+ private static final Map<String, Long> STR_MAP = new HashMap<>();
+
+ static {
+ STR_MAP.put(UsbManager.USB_FUNCTION_MTP, MTP);
+ STR_MAP.put(UsbManager.USB_FUNCTION_PTP, PTP);
+ STR_MAP.put(UsbManager.USB_FUNCTION_RNDIS, RNDIS);
+ STR_MAP.put(UsbManager.USB_FUNCTION_MIDI, MIDI);
+ STR_MAP.put(UsbManager.USB_FUNCTION_ACCESSORY, ACCESSORY);
+ STR_MAP.put(UsbManager.USB_FUNCTION_AUDIO_SOURCE, AUDIO_SOURCE);
+ STR_MAP.put(UsbManager.USB_FUNCTION_ADB, ADB);
+ }
+
+ /**
+ * Returns whether the given functions are valid inputs to UsbManager.
+ * Currently the empty functions or any of MTP, PTP, RNDIS, MIDI are accepted.
+ */
+ public static boolean isSettableFunctions(long functions) {
+ return (~SETTABLE_FUNCTIONS & functions) == 0;
+ }
+
+ /**
+ * Returns the string representation of the given functions.
+ */
+ public static String usbFunctionsToString(long functions) {
+ StringJoiner joiner = new StringJoiner(",");
+ if ((functions | MTP) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_MTP);
+ }
+ if ((functions | PTP) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_PTP);
+ }
+ if ((functions | RNDIS) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_RNDIS);
+ }
+ if ((functions | MIDI) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_MIDI);
+ }
+ if ((functions | ACCESSORY) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_ACCESSORY);
+ }
+ if ((functions | AUDIO_SOURCE) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_AUDIO_SOURCE);
+ }
+ if ((functions | ADB) != 0) {
+ joiner.add(UsbManager.USB_FUNCTION_ADB);
+ }
+ return joiner.toString();
+ }
+
+ /**
+ * Parses a string of usb functions and returns a mask of the same functions.
+ */
+ public static long usbFunctionsFromString(String functions) {
+ if (functions == null) {
+ return 0;
+ }
+ long ret = 0;
+ for (String function : functions.split(",")) {
+ if (STR_MAP.containsKey(function)) {
+ ret |= STR_MAP.get(function);
+ }
+ }
+ return ret;
+ }
+}
diff --git a/tests/robotests/src/android/os/SystemUpdateManager.java b/tests/robotests/src/android/os/SystemUpdateManager.java
new file mode 100644
index 0000000..f81df36
--- /dev/null
+++ b/tests/robotests/src/android/os/SystemUpdateManager.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2018 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 android.os;
+
+/**
+ * Duplicate class for platform SystemUpdateManager to get around Robolectric sdk problem.
+ */
+public class SystemUpdateManager {
+
+ public static final String KEY_STATUS = "status";
+ public static final String KEY_TITLE = "title";
+
+ public static final int STATUS_UNKNOWN = 0;
+ public static final int STATUS_IDLE = 1;
+ public static final int STATUS_WAITING_DOWNLOAD = 2;
+ public static final int STATUS_IN_PROGRESS = 3;
+ public static final int STATUS_WAITING_INSTALL = 4;
+ public static final int STATUS_WAITING_REBOOT = 5;
+
+ public Bundle retrieveSystemUpdateInfo() {
+ return null;
+ }
+}
diff --git a/tests/robotests/src/com/android/internal/app/ColorDisplayController.java b/tests/robotests/src/com/android/internal/app/ColorDisplayController.java
index 74e7d8a..e31ba51 100644
--- a/tests/robotests/src/com/android/internal/app/ColorDisplayController.java
+++ b/tests/robotests/src/com/android/internal/app/ColorDisplayController.java
@@ -16,8 +16,8 @@
package com.android.internal.app;
/**
- * Fake controller to make robolectric test compile. Should be removed when Robolectric supports
- * API 25.
+ * Fake controller to make robolectric test compile. This is necessary since
+ * ColorDisplayController is not part of Android's API.
*/
public class ColorDisplayController {
diff --git a/tests/robotests/src/com/android/settings/MasterClearTest.java b/tests/robotests/src/com/android/settings/MasterClearTest.java
index 776025f..3ba3edb 100644
--- a/tests/robotests/src/com/android/settings/MasterClearTest.java
+++ b/tests/robotests/src/com/android/settings/MasterClearTest.java
@@ -18,11 +18,14 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
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 static org.robolectric.Shadows.shadowOf;
@@ -86,6 +89,9 @@
@Mock
private Activity mMockActivity;
+ @Mock
+ private Intent mMockIntent;
+
private ShadowActivity mShadowActivity;
private ShadowAccountManager mShadowAccountManager;
private Activity mActivity;
@@ -110,7 +116,7 @@
MockitoAnnotations.initMocks(this);
mMasterClear = spy(new MasterClear());
mActivity = Robolectric.setupActivity(Activity.class);
- mShadowActivity = shadowOf(mActivity);
+ mShadowActivity = shadowOf(mActivity);https://stackoverflow.com/questions/14889951/how-to-verify-a-method-is-called-two-times-with-mockito-verify
// mShadowAccountManager = shadowOf(AccountManager.get(mActivity));
mContentView = LayoutInflater.from(mActivity).inflate(R.layout.master_clear, null);
@@ -213,38 +219,115 @@
}
@Test
- public void testTryShowAccountConfirmation_unsupported() {
- when(mMasterClear.getActivity()).thenReturn(mActivity);
- /* Using the default resources, account confirmation shouldn't trigger */
- assertThat(mMasterClear.tryShowAccountConfirmation()).isFalse();
+ public void testOnActivityResultInternal_invalideRequest() {
+ int invalidRequestCode = -1;
+ doReturn(false).when(mMasterClear).isValidRequestCode(eq(invalidRequestCode));
+
+ mMasterClear.onActivityResultInternal(invalidRequestCode, Activity.RESULT_OK, null);
+
+ verify(mMasterClear, times(1)).isValidRequestCode(eq(invalidRequestCode));
+ verify(mMasterClear, times(0)).establishInitialState();
+ verify(mMasterClear, times(0)).getAccountConfirmationIntent();
+ verify(mMasterClear, times(0)).showFinalConfirmation();
}
@Test
- public void testTryShowAccountConfirmation_no_relevant_accounts() {
+ public void testOnActivityResultInternal_resultCanceled() {
+ doReturn(true).when(mMasterClear).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ doNothing().when(mMasterClear).establishInitialState();
+
+ mMasterClear.onActivityResultInternal(
+ MasterClear.KEYGUARD_REQUEST, Activity.RESULT_CANCELED, null);
+
+ verify(mMasterClear, times(1)).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ verify(mMasterClear, times(1)).establishInitialState();
+ verify(mMasterClear, times(0)).getAccountConfirmationIntent();
+ verify(mMasterClear, times(0)).showFinalConfirmation();
+ }
+
+ @Test
+ public void testOnActivityResultInternal_keyguardRequestTriggeringConfirmAccount() {
+ doReturn(true).when(mMasterClear).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ doReturn(mMockIntent).when(mMasterClear).getAccountConfirmationIntent();
+ doNothing().when(mMasterClear).showAccountCredentialConfirmation(eq(mMockIntent));
+
+ mMasterClear.onActivityResultInternal(
+ MasterClear.KEYGUARD_REQUEST, Activity.RESULT_OK, null);
+
+ verify(mMasterClear, times(1)).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ verify(mMasterClear, times(0)).establishInitialState();
+ verify(mMasterClear, times(1)).getAccountConfirmationIntent();
+ verify(mMasterClear, times(1)).showAccountCredentialConfirmation(eq(mMockIntent));
+ }
+
+ @Test
+ public void testOnActivityResultInternal_keyguardRequestTriggeringShowFinal() {
+ doReturn(true).when(mMasterClear).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ doReturn(null).when(mMasterClear).getAccountConfirmationIntent();
+ doNothing().when(mMasterClear).showFinalConfirmation();
+
+ mMasterClear.onActivityResultInternal(
+ MasterClear.KEYGUARD_REQUEST, Activity.RESULT_OK, null);
+
+ verify(mMasterClear, times(1)).isValidRequestCode(eq(MasterClear.KEYGUARD_REQUEST));
+ verify(mMasterClear, times(0)).establishInitialState();
+ verify(mMasterClear, times(1)).getAccountConfirmationIntent();
+ verify(mMasterClear, times(1)).showFinalConfirmation();
+ }
+
+ @Test
+ public void testOnActivityResultInternal_confirmRequestTriggeringShowFinal() {
+ doReturn(true).when(mMasterClear)
+ .isValidRequestCode(eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
+ doNothing().when(mMasterClear).showFinalConfirmation();
+
+ mMasterClear.onActivityResultInternal(
+ MasterClear.CREDENTIAL_CONFIRM_REQUEST, Activity.RESULT_OK, null);
+
+ verify(mMasterClear, times(1))
+ .isValidRequestCode(eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
+ verify(mMasterClear, times(0)).establishInitialState();
+ verify(mMasterClear, times(0)).getAccountConfirmationIntent();
+ verify(mMasterClear, times(1)).showFinalConfirmation();
+ }
+
+ @Test
+ public void testGetAccountConfirmationIntent_unsupported() {
+ when(mMasterClear.getActivity()).thenReturn(mActivity);
+ /* Using the default resources, account confirmation shouldn't trigger */
+ assertThat(mMasterClear.getAccountConfirmationIntent()).isNull();
+ }
+
+ @Test
+ public void testGetAccountConfirmationIntent_no_relevant_accounts() {
when(mMasterClear.getActivity()).thenReturn(mMockActivity);
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
- when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
- when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
+ when(mMockActivity.getString(R.string.account_confirmation_package))
+ .thenReturn(TEST_CONFIRMATION_PACKAGE);
+ when(mMockActivity.getString(R.string.account_confirmation_class))
+ .thenReturn(TEST_CONFIRMATION_CLASS);
Account[] accounts = new Account[0];
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
when(mAccountManager.getAccountsByType(TEST_ACCOUNT_TYPE)).thenReturn(accounts);
- assertThat(mMasterClear.tryShowAccountConfirmation()).isFalse();
+ assertThat(mMasterClear.getAccountConfirmationIntent()).isNull();
}
@Test
- public void testTryShowAccountConfirmation_unresolved() {
+ public void testGetAccountConfirmationIntent_unresolved() {
when(mMasterClear.getActivity()).thenReturn(mMockActivity);
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
- when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
- when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
+ when(mMockActivity.getString(R.string.account_confirmation_package))
+ .thenReturn(TEST_CONFIRMATION_PACKAGE);
+ when(mMockActivity.getString(R.string.account_confirmation_class))
+ .thenReturn(TEST_CONFIRMATION_CLASS);
Account[] accounts = new Account[] { new Account(TEST_ACCOUNT_NAME, TEST_ACCOUNT_TYPE) };
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
when(mAccountManager.getAccountsByType(TEST_ACCOUNT_TYPE)).thenReturn(accounts);
// The package manager should not resolve the confirmation intent targeting the non-existent
// confirmation package.
when(mMockActivity.getPackageManager()).thenReturn(mPackageManager);
- assertThat(mMasterClear.tryShowAccountConfirmation()).isFalse();
+ assertThat(mMasterClear.getAccountConfirmationIntent()).isNull();
}
@Test
@@ -252,8 +335,10 @@
when(mMasterClear.getActivity()).thenReturn(mMockActivity);
// Only try to show account confirmation if the appropriate resource overlays are available.
when(mMockActivity.getString(R.string.account_type)).thenReturn(TEST_ACCOUNT_TYPE);
- when(mMockActivity.getString(R.string.account_confirmation_package)).thenReturn(TEST_CONFIRMATION_PACKAGE);
- when(mMockActivity.getString(R.string.account_confirmation_class)).thenReturn(TEST_CONFIRMATION_CLASS);
+ when(mMockActivity.getString(R.string.account_confirmation_package))
+ .thenReturn(TEST_CONFIRMATION_PACKAGE);
+ when(mMockActivity.getString(R.string.account_confirmation_class))
+ .thenReturn(TEST_CONFIRMATION_CLASS);
// Add accounts to trigger the search for a resolving intent.
Account[] accounts = new Account[] { new Account(TEST_ACCOUNT_NAME, TEST_ACCOUNT_TYPE) };
when(mMockActivity.getSystemService(Context.ACCOUNT_SERVICE)).thenReturn(mAccountManager);
@@ -268,10 +353,18 @@
resolveInfo.activityInfo = activityInfo;
when(mPackageManager.resolveActivity(any(), eq(0))).thenReturn(resolveInfo);
- // Finally mock out the startActivityForResultCall
- doNothing().when(mMasterClear).startActivityForResult(any(), eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
+ Intent actualIntent = mMasterClear.getAccountConfirmationIntent();
+ assertEquals(TEST_CONFIRMATION_PACKAGE, actualIntent.getComponent().getPackageName());
+ assertEquals(TEST_CONFIRMATION_CLASS, actualIntent.getComponent().getClassName());
+ }
- assertThat(mMasterClear.tryShowAccountConfirmation()).isTrue();
+ public void testShowAccountCredentialConfirmation() {
+ // Finally mock out the startActivityForResultCall
+ doNothing().when(mMasterClear)
+ .startActivityForResult(eq(mMockIntent), eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
+ mMasterClear.showAccountCredentialConfirmation(mMockIntent);
+ verify(mMasterClear, times(1))
+ .startActivityForResult(eq(mMockIntent), eq(MasterClear.CREDENTIAL_CONFIRM_REQUEST));
}
@Test
diff --git a/tests/robotests/src/com/android/settings/SettingsActivityTest.java b/tests/robotests/src/com/android/settings/SettingsActivityTest.java
index 509ecda..25abd4d 100644
--- a/tests/robotests/src/com/android/settings/SettingsActivityTest.java
+++ b/tests/robotests/src/com/android/settings/SettingsActivityTest.java
@@ -16,7 +16,6 @@
package com.android.settings;
-import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Mockito.doReturn;
@@ -28,17 +27,14 @@
import android.app.ActivityManager;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
-import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
-import android.os.Bundle;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
@@ -48,9 +44,6 @@
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class SettingsActivityTest {
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private Context mContext;
-
@Mock
private FragmentManager mFragmentManager;
@Mock
@@ -84,13 +77,4 @@
verify(mTaskDescription).setIcon(nullable(Bitmap.class));
}
-
- @Test
- public void testSaveState_EnabledHomeSaved() {
- mActivity.mDisplayHomeAsUpEnabled = true;
- Bundle bundle = new Bundle();
- mActivity.saveState(bundle);
-
- assertThat((boolean) bundle.get(SettingsActivity.SAVE_KEY_SHOW_HOME_AS_UP)).isTrue();
- }
}
diff --git a/tests/robotests/src/com/android/settings/SetupWizardUtilsTest.java b/tests/robotests/src/com/android/settings/SetupWizardUtilsTest.java
index 21061c1..1b3e9ca 100644
--- a/tests/robotests/src/com/android/settings/SetupWizardUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/SetupWizardUtilsTest.java
@@ -78,4 +78,14 @@
assertResId(SetupWizardUtils.getTheme(intent)).isEqualTo(R.style.GlifV2Theme_Light);
}
+ @Test
+ public void testGetTheme_glifV3Light_shouldReturnThemeResource() {
+ SettingsShadowSystemProperties.set(SetupWizardUtils.SYSTEM_PROP_SETUPWIZARD_THEME,
+ WizardManagerHelper.THEME_GLIF_V3_LIGHT);
+ Intent intent = new Intent();
+
+ assertResId(SetupWizardUtils.getTheme(intent)).isEqualTo(R.style.GlifV3Theme_Light);
+ assertResId(SetupWizardUtils.getTransparentTheme(intent))
+ .isEqualTo(R.style.GlifV3Theme_Light_Transparent);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/UtilsTest.java b/tests/robotests/src/com/android/settings/UtilsTest.java
index fb571bb..d1c4a55 100644
--- a/tests/robotests/src/com/android/settings/UtilsTest.java
+++ b/tests/robotests/src/com/android/settings/UtilsTest.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright (C) 2018 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.settings;
import static com.google.common.truth.Truth.assertThat;
@@ -25,9 +41,7 @@
import android.os.storage.DiskInfo;
import android.os.storage.StorageManager;
import android.os.storage.VolumeInfo;
-import android.text.SpannableStringBuilder;
import android.text.format.DateUtils;
-import android.text.style.TtsSpan;
import android.util.IconDrawableFactory;
import android.widget.EditText;
import android.widget.TextView;
@@ -35,6 +49,7 @@
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.wrapper.DevicePolicyManagerWrapper;
+import com.android.settingslib.utils.StringUtil;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -110,175 +125,6 @@
}
@Test
- public void testFormatElapsedTime_WithSeconds_ShowSeconds() {
- final double testMillis = 5 * DateUtils.MINUTE_IN_MILLIS + 30 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "5m 30s";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_NoSeconds_DoNotShowSeconds() {
- final double testMillis = 5 * DateUtils.MINUTE_IN_MILLIS + 30 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "6m";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_TimeMoreThanOneDay_ShowCorrectly() {
- final double testMillis = 2 * DateUtils.DAY_IN_MILLIS
- + 4 * DateUtils.HOUR_IN_MILLIS + 15 * DateUtils.MINUTE_IN_MILLIS;
- final String expectedTime = "2d 4h 15m";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_ZeroFieldsInTheMiddleDontShow() {
- final double testMillis = 2 * DateUtils.DAY_IN_MILLIS + 15 * DateUtils.MINUTE_IN_MILLIS;
- final String expectedTime = "2d 15m";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_FormatZero_WithSeconds() {
- final double testMillis = 0;
- final String expectedTime = "0s";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_FormatZero_NoSeconds() {
- final double testMillis = 0;
- final String expectedTime = "0m";
-
- assertThat(Utils.formatElapsedTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatElapsedTime_onlyContainsMinute_hasTtsSpan() {
- final double testMillis = 15 * DateUtils.MINUTE_IN_MILLIS;
-
- final CharSequence charSequence = Utils.formatElapsedTime(mContext, testMillis, false);
- assertThat(charSequence).isInstanceOf(SpannableStringBuilder.class);
-
- final SpannableStringBuilder expectedString = (SpannableStringBuilder) charSequence;
- final TtsSpan[] ttsSpans = expectedString.getSpans(0, expectedString.length(),
- TtsSpan.class);
-
- assertThat(ttsSpans).asList().hasSize(1);
- assertThat(ttsSpans[0].getType()).isEqualTo(TtsSpan.TYPE_MEASURE);
- }
-
- @Test
- public void testFormatRelativeTime_WithSeconds_ShowSeconds() {
- final double testMillis = 40 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "40 sec. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_NoSeconds_DoNotShowSeconds() {
- final double testMillis = 40 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "1 min. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_LessThanTwoMinutes_withSeconds() {
- final double testMillis = 119 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "119 sec. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_LessThanTwoMinutes_NoSeconds() {
- final double testMillis = 119 * DateUtils.SECOND_IN_MILLIS;
- final String expectedTime = "2 min. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_TwoMinutes_withSeconds() {
- final double testMillis = 2 * DateUtils.MINUTE_IN_MILLIS;
- final String expectedTime = "2 min. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_LessThanTwoHours_withSeconds() {
- final double testMillis = 119 * DateUtils.MINUTE_IN_MILLIS;
- final String expectedTime = "119 min. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_TwoHours_withSeconds() {
- final double testMillis = 2 * DateUtils.HOUR_IN_MILLIS;
- final String expectedTime = "2 hr. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_LessThanTwoDays_withSeconds() {
- final double testMillis = 47 * DateUtils.HOUR_IN_MILLIS;
- final String expectedTime = "47 hr. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_TwoDays_withSeconds() {
- final double testMillis = 2 * DateUtils.DAY_IN_MILLIS;
- final String expectedTime = "2 days ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_FormatZero_WithSeconds() {
- final double testMillis = 0;
- final String expectedTime = "0 sec. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, true).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
- public void testFormatRelativeTime_FormatZero_NoSeconds() {
- final double testMillis = 0;
- final String expectedTime = "0 min. ago";
-
- assertThat(Utils.formatRelativeTime(mContext, testMillis, false).toString()).isEqualTo(
- expectedTime);
- }
-
- @Test
public void testInitializeVolumeDoesntBreakOnNullVolume() {
VolumeInfo info = new VolumeInfo("id", 0, new DiskInfo("id", 0), "");
StorageManager storageManager = mock(StorageManager.class, RETURNS_DEEP_STUBS);
diff --git a/tests/robotests/src/com/android/settings/accessibility/VibrationPreferenceFragmentTest.java b/tests/robotests/src/com/android/settings/accessibility/VibrationPreferenceFragmentTest.java
new file mode 100644
index 0000000..f6a5a82
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/accessibility/VibrationPreferenceFragmentTest.java
@@ -0,0 +1,138 @@
+/*
+ * Copyright (C) 2018 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.settings.accessibility;
+
+import static com.android.settings.accessibility.VibrationPreferenceFragment.KEY_INTENSITY_OFF;
+import static com.android.settings.accessibility.VibrationPreferenceFragment.KEY_INTENSITY_LOW;
+import static com.android.settings.accessibility.VibrationPreferenceFragment.KEY_INTENSITY_MEDIUM;
+import static com.android.settings.accessibility.VibrationPreferenceFragment.KEY_INTENSITY_HIGH;
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.when;
+
+import android.app.Activity;
+import android.content.Context;
+import android.os.UserManager;
+import android.os.Vibrator;
+import android.provider.Settings;
+
+import com.android.settings.TestConfig;
+import com.android.settings.accessibility.VibrationPreferenceFragment.VibrationIntensityCandidateInfo;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.widget.RadioButtonPickerFragment.CandidateInfo;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Answers;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class VibrationPreferenceFragmentTest {
+ public static final Map<Integer, String> INTENSITY_TO_KEY = new HashMap<>();
+
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private Activity mActivity;
+ @Mock
+ private UserManager mUserManager;
+
+ private Context mContext;
+ private TestVibrationPreferenceFragment mFragment;
+
+ static {
+ INTENSITY_TO_KEY.put(Vibrator.VIBRATION_INTENSITY_OFF, KEY_INTENSITY_OFF);
+ INTENSITY_TO_KEY.put(Vibrator.VIBRATION_INTENSITY_LOW, KEY_INTENSITY_LOW);
+ INTENSITY_TO_KEY.put(Vibrator.VIBRATION_INTENSITY_MEDIUM, KEY_INTENSITY_MEDIUM);
+ INTENSITY_TO_KEY.put(Vibrator.VIBRATION_INTENSITY_HIGH, KEY_INTENSITY_HIGH);
+ }
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ FakeFeatureFactory.setupForTest();
+
+ mContext = RuntimeEnvironment.application;
+
+ mFragment = spy(new TestVibrationPreferenceFragment());
+ doReturn(mUserManager).when(mActivity).getSystemService(Context.USER_SERVICE);
+ doReturn(mContext).when(mFragment).getContext();
+ mFragment.onAttach(mActivity);
+ }
+
+ @Test
+ public void changeIntensitySetting_shouldResultInCorrespondingKey() {
+ for (Map.Entry<Integer, String> entry : INTENSITY_TO_KEY.entrySet()) {
+ Settings.System.putInt(mContext.getContentResolver(),
+ Settings.System.HAPTIC_FEEDBACK_INTENSITY, entry.getKey());
+ assertThat(mFragment.getDefaultKey()).isEqualTo(entry.getValue());
+ }
+ }
+
+ @Test
+ public void initialDefaultKey_shouldBeMedium() {
+ assertThat(mFragment.getDefaultKey()).isEqualTo(KEY_INTENSITY_MEDIUM);
+ }
+
+ @Test
+ public void candidates_shouldBeSortedByIntensity() {
+ final List<? extends CandidateInfo> candidates = mFragment.getCandidates();
+ assertThat(candidates.size()).isEqualTo(INTENSITY_TO_KEY.size());
+ VibrationIntensityCandidateInfo prevCandidate =
+ (VibrationIntensityCandidateInfo) candidates.get(0);
+ for (int i = 1; i < candidates.size(); i++) {
+ VibrationIntensityCandidateInfo candidate =
+ (VibrationIntensityCandidateInfo) candidates.get(i);
+ assertThat(candidate.getIntensity()).isLessThan(prevCandidate.getIntensity());
+ }
+ }
+
+ private class TestVibrationPreferenceFragment extends VibrationPreferenceFragment {
+ @Override
+ protected int getPreferenceScreenResId() {
+ return 0;
+ }
+
+ @Override
+ public int getMetricsCategory() {
+ return 0;
+ }
+
+ /**
+ * Get the setting string of the vibration intensity setting this preference is dealing with.
+ */
+ @Override
+ protected String getVibrationIntensitySetting() {
+ return Settings.System.HAPTIC_FEEDBACK_INTENSITY;
+ }
+
+ @Override
+ protected int getDefaultVibrationIntensity() {
+ return Vibrator.VIBRATION_INTENSITY_MEDIUM;
+ }
+ }
+}
+
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/accounts/AccountDashboardFragmentTest.java
new file mode 100644
index 0000000..9371019
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/accounts/AccountDashboardFragmentTest.java
@@ -0,0 +1,157 @@
+/*
+ * Copyright (C) 2016 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.settings.accounts;
+
+import static com.android.settings.accounts.AccountDashboardFragmentTest
+ .ShadowAuthenticationHelper.LABELS;
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+import android.app.Activity;
+import android.content.Context;
+import android.os.UserHandle;
+import android.provider.SearchIndexableResource;
+import android.text.TextUtils;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.dashboard.SummaryLoader;
+import com.android.settingslib.accounts.AuthenticatorHelper;
+import com.android.settingslib.drawer.CategoryKey;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.Robolectric;
+import org.robolectric.RobolectricTestRunner;
+import org.robolectric.annotation.Config;
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+import org.robolectric.annotation.Resetter;
+import org.robolectric.shadows.ShadowApplication;
+
+import java.util.List;
+
+@RunWith(RobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class AccountDashboardFragmentTest {
+
+ private AccountDashboardFragment mFragment;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mFragment = new AccountDashboardFragment();
+ }
+
+ @After
+ public void tearDown() {
+ ShadowAuthenticationHelper.reset();
+ }
+
+ @Test
+ public void testCategory_isAccount() {
+ assertThat(mFragment.getCategoryKey()).isEqualTo(CategoryKey.CATEGORY_ACCOUNT);
+ }
+
+ @Test
+ @Config(shadows = {
+ ShadowAuthenticationHelper.class
+ })
+ public void updateSummary_hasAccount_shouldDisplayUpTo3AccountTypes() {
+ ShadowAuthenticationHelper.setHasAccount(true);
+ final SummaryLoader loader = mock(SummaryLoader.class);
+ final Activity activity = Robolectric.buildActivity(Activity.class).setup().get();
+
+ final SummaryLoader.SummaryProvider provider = mFragment.SUMMARY_PROVIDER_FACTORY
+ .createSummaryProvider(activity, loader);
+ provider.setListening(true);
+
+ verify(loader).setSummary(provider, LABELS[0] + ", " + LABELS[1] + ", " + LABELS[2]);
+ }
+
+ @Test
+ @Config(shadows = {
+ ShadowAuthenticationHelper.class
+ })
+ public void updateSummary_noAccount_shouldDisplayDefaultSummary() {
+ ShadowAuthenticationHelper.setHasAccount(false);
+ final SummaryLoader loader = mock(SummaryLoader.class);
+ final Activity activity = Robolectric.buildActivity(Activity.class).setup().get();
+
+ final SummaryLoader.SummaryProvider provider = mFragment.SUMMARY_PROVIDER_FACTORY
+ .createSummaryProvider(activity, loader);
+ provider.setListening(true);
+
+ verify(loader).setSummary(provider,
+ activity.getString(R.string.account_dashboard_default_summary));
+ }
+
+ @Test
+ public void testSearchIndexProvider_shouldIndexResource() {
+ final List<SearchIndexableResource> indexRes =
+ AccountDashboardFragment.SEARCH_INDEX_DATA_PROVIDER.getXmlResourcesToIndex(
+ ShadowApplication.getInstance().getApplicationContext(),
+ true /* enabled */);
+
+ assertThat(indexRes).isNotNull();
+ assertThat(indexRes.get(0).xmlResId).isEqualTo(mFragment.getPreferenceScreenResId());
+ }
+
+ @Implements(AuthenticatorHelper.class)
+ public static class ShadowAuthenticationHelper {
+
+ static final String[] TYPES = new String[] {"type1", "type2", "type3", "type4"};
+ static final String[] LABELS = new String[] {"LABEL1", "LABEL2",
+ "LABEL3", "LABEL4"};
+ private static boolean sHasAccount = true;
+
+ public void __constructor__(Context context, UserHandle userHandle,
+ AuthenticatorHelper.OnAccountsUpdateListener listener) {
+ }
+
+ public static void setHasAccount(boolean hasAccount) {
+ sHasAccount = hasAccount;
+ }
+
+ @Resetter
+ public static void reset() {
+ sHasAccount = true;
+ }
+
+ @Implementation
+ public String[] getEnabledAccountTypes() {
+ return sHasAccount ? TYPES : null;
+ }
+
+ @Implementation
+ public CharSequence getLabelForType(Context context, final String accountType) {
+ if (TextUtils.equals(accountType, TYPES[0])) {
+ return LABELS[0];
+ } else if (TextUtils.equals(accountType, TYPES[1])) {
+ return LABELS[1];
+ } else if (TextUtils.equals(accountType, TYPES[2])) {
+ return LABELS[2];
+ } else if (TextUtils.equals(accountType, TYPES[3])) {
+ return LABELS[3];
+ }
+ return "no_label";
+ }
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java
deleted file mode 100644
index 8dba2f2..0000000
--- a/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Copyright (C) 2016 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.settings.accounts;
-
-import android.app.Activity;
-import android.content.pm.UserInfo;
-import android.os.UserManager;
-import android.provider.SearchIndexableResource;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settingslib.drawer.CategoryKey;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RobolectricTestRunner;
-import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowApplication;
-
-import java.util.List;
-
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-@RunWith(RobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class UserAndAccountDashboardFragmentTest {
-
- private static final String METADATA_CATEGORY = "com.android.settings.category";
- private static final String METADATA_ACCOUNT_TYPE = "com.android.settings.ia.account";
-
- @Mock
- private UserManager mUserManager;
- private UserAndAccountDashboardFragment mFragment;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mFragment = new UserAndAccountDashboardFragment();
- }
-
- @Test
- public void testCategory_isAccount() {
- assertThat(mFragment.getCategoryKey()).isEqualTo(CategoryKey.CATEGORY_ACCOUNT);
- }
-
- @Test
- public void updateSummary_shouldDisplaySignedInUser() {
- final Activity activity = mock(Activity.class);
- final SummaryLoader loader = mock(SummaryLoader.class);
- final UserInfo userInfo = new UserInfo();
- userInfo.name = "test_name";
-
- when(activity.getSystemService(UserManager.class)).thenReturn(mUserManager);
- when(mUserManager.getUserInfo(anyInt())).thenReturn(userInfo);
-
- final SummaryLoader.SummaryProvider provider = mFragment.SUMMARY_PROVIDER_FACTORY
- .createSummaryProvider(activity, loader);
- provider.setListening(true);
-
- verify(activity).getString(R.string.users_and_accounts_summary,
- userInfo.name);
- }
-
- @Test
- public void testSearchIndexProvider_shouldIndexResource() {
- final List<SearchIndexableResource> indexRes =
- UserAndAccountDashboardFragment.SEARCH_INDEX_DATA_PROVIDER.getXmlResourcesToIndex(
- ShadowApplication.getInstance().getApplicationContext(),
- true /* enabled */);
-
- assertThat(indexRes).isNotNull();
- assertThat(indexRes.get(0).xmlResId).isEqualTo(mFragment.getPreferenceScreenResId());
- }
-}
diff --git a/tests/robotests/src/com/android/settings/applications/InstalledAppDetailsTest.java b/tests/robotests/src/com/android/settings/applications/InstalledAppDetailsTest.java
deleted file mode 100644
index 21e7848..0000000
--- a/tests/robotests/src/com/android/settings/applications/InstalledAppDetailsTest.java
+++ /dev/null
@@ -1,591 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.applications;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.ArgumentMatchers.nullable;
-import static org.mockito.Matchers.anyDouble;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-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.app.AlertDialog;
-import android.app.AppOpsManager;
-import android.app.Fragment;
-import android.app.LoaderManager;
-import android.content.Context;
-import android.content.Intent;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageInfo;
-import android.content.pm.PackageManager;
-import android.content.res.Resources;
-import android.os.BatteryStats;
-import android.os.Bundle;
-import android.os.UserManager;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceManager;
-import android.support.v7.preference.PreferenceScreen;
-import android.view.View;
-
-import com.android.internal.os.BatterySipper;
-import com.android.internal.os.BatteryStatsHelper;
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.TestConfig;
-import com.android.settings.applications.instantapps.InstantAppButtonsController;
-import com.android.settings.applications.instantapps.InstantAppButtonsController.ShowDialogDelegate;
-import com.android.settings.fuelgauge.BatteryUtils;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.widget.ActionButtonPreferenceTest;
-import com.android.settings.wrapper.DevicePolicyManagerWrapper;
-import com.android.settingslib.Utils;
-import com.android.settingslib.applications.AppUtils;
-import com.android.settingslib.applications.ApplicationsState.AppEntry;
-import com.android.settingslib.applications.StorageStatsSource.AppStorageStats;
-import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-import org.robolectric.annotation.Implementation;
-import org.robolectric.annotation.Implements;
-import org.robolectric.util.ReflectionHelpers;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(
- manifest = TestConfig.MANIFEST_PATH,
- sdk = TestConfig.SDK_VERSION,
- shadows = InstalledAppDetailsTest.ShadowUtils.class
-)
-public final class InstalledAppDetailsTest {
-
- private static final String PACKAGE_NAME = "test_package_name";
- private static final int TARGET_UID = 111;
- private static final int OTHER_UID = 222;
- private static final double BATTERY_LEVEL = 60;
- private static final String BATTERY_LEVEL_STRING = "60%";
-
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private Context mContext;
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private UserManager mUserManager;
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private SettingsActivity mActivity;
- @Mock
- private DevicePolicyManagerWrapper mDevicePolicyManager;
- @Mock
- private BatterySipper mBatterySipper;
- @Mock
- private BatterySipper mOtherBatterySipper;
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private BatteryStatsHelper mBatteryStatsHelper;
- @Mock
- private BatteryStats.Uid mUid;
- @Mock
- private PackageManager mPackageManager;
- @Mock
- private BatteryUtils mBatteryUtils;
- @Mock
- private LoaderManager mLoaderManager;
- @Mock
- private AppOpsManager mAppOpsManager;
-
- private FakeFeatureFactory mFeatureFactory;
- private InstalledAppDetails mAppDetail;
- private Context mShadowContext;
- private Preference mBatteryPreference;
-
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mFeatureFactory = FakeFeatureFactory.setupForTest();
- mShadowContext = RuntimeEnvironment.application;
- mAppDetail = spy(new InstalledAppDetails());
- mAppDetail.mBatteryUtils = mBatteryUtils;
-
- mBatteryPreference = new Preference(mShadowContext);
- mAppDetail.mBatteryPreference = mBatteryPreference;
- mAppDetail.mActionButtons = ActionButtonPreferenceTest.createMock();
-
- mBatterySipper.drainType = BatterySipper.DrainType.IDLE;
- mBatterySipper.uidObj = mUid;
- doReturn(TARGET_UID).when(mBatterySipper).getUid();
- doReturn(OTHER_UID).when(mOtherBatterySipper).getUid();
- doReturn(mActivity).when(mAppDetail).getActivity();
- doReturn(mShadowContext).when(mAppDetail).getContext();
- doReturn(mPackageManager).when(mActivity).getPackageManager();
- doReturn(mAppOpsManager).when(mActivity).getSystemService(Context.APP_OPS_SERVICE);
-
- // Default to not considering any apps to be instant (individual tests can override this).
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> false));
- }
-
- @Test
- public void shouldShowUninstallForAll_installForOneOtherUserOnly_shouldReturnTrue() {
- when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
- when(mUserManager.getUsers().size()).thenReturn(2);
- ReflectionHelpers.setField(mAppDetail, "mDpm", mDevicePolicyManager);
- ReflectionHelpers.setField(mAppDetail, "mUserManager", mUserManager);
- final ApplicationInfo info = new ApplicationInfo();
- info.enabled = true;
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- final PackageInfo packageInfo = mock(PackageInfo.class);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- assertThat(mAppDetail.shouldShowUninstallForAll(appEntry)).isTrue();
- }
-
- @Test
- public void shouldShowUninstallForAll_installForSelfOnly_shouldReturnFalse() {
- when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
- when(mUserManager.getUsers().size()).thenReturn(2);
- ReflectionHelpers.setField(mAppDetail, "mDpm", mDevicePolicyManager);
- ReflectionHelpers.setField(mAppDetail, "mUserManager", mUserManager);
- final ApplicationInfo info = new ApplicationInfo();
- info.flags = ApplicationInfo.FLAG_INSTALLED;
- info.enabled = true;
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- final PackageInfo packageInfo = mock(PackageInfo.class);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- assertThat(mAppDetail.shouldShowUninstallForAll(appEntry)).isFalse();
- }
-
- @Test
- public void getStorageSummary_shouldWorkForExternal() {
- Context context = RuntimeEnvironment.application.getApplicationContext();
- AppStorageStats stats = mock(AppStorageStats.class);
- when(stats.getTotalBytes()).thenReturn(1L);
-
- assertThat(InstalledAppDetails.getStorageSummary(context, stats, true))
- .isEqualTo("1 B used in external storage");
- }
-
- @Test
- public void getStorageSummary_shouldWorkForInternal() {
- Context context = RuntimeEnvironment.application.getApplicationContext();
- AppStorageStats stats = mock(AppStorageStats.class);
- when(stats.getTotalBytes()).thenReturn(1L);
-
- assertThat(InstalledAppDetails.getStorageSummary(context, stats, false))
- .isEqualTo("1 B used in internal storage");
- }
-
- @Test
- public void launchFragment_hasNoPackageInfo_shouldFinish() {
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", null);
-
- assertThat(mAppDetail.ensurePackageInfoAvailable(mActivity)).isFalse();
- verify(mActivity).finishAndRemoveTask();
- }
-
- @Test
- public void launchFragment_hasPackageInfo_shouldReturnTrue() {
- final PackageInfo packageInfo = mock(PackageInfo.class);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- assertThat(mAppDetail.ensurePackageInfoAvailable(mActivity)).isTrue();
- verify(mActivity, never()).finishAndRemoveTask();
- }
-
- @Test
- public void packageSizeChange_isOtherPackage_shouldNotRefreshUi() {
- ReflectionHelpers.setField(mAppDetail, "mPackageName", PACKAGE_NAME);
- mAppDetail.onPackageSizeChanged("Not_" + PACKAGE_NAME);
-
- verify(mAppDetail, never()).refreshUi();
- }
-
- @Test
- public void packageSizeChange_isOwnPackage_shouldRefreshUi() {
- doReturn(Boolean.TRUE).when(mAppDetail).refreshUi();
- ReflectionHelpers.setField(mAppDetail, "mPackageName", PACKAGE_NAME);
-
- mAppDetail.onPackageSizeChanged(PACKAGE_NAME);
-
- verify(mAppDetail).refreshUi();
- }
-
- @Test
- public void launchPowerUsageDetailFragment_shouldNotCrash() {
- mAppDetail.mBatteryPreference = mBatteryPreference;
- mAppDetail.mSipper = mBatterySipper;
- mAppDetail.mBatteryHelper = mBatteryStatsHelper;
-
- // Should not crash
- mAppDetail.onPreferenceClick(mBatteryPreference);
- }
-
- // Tests that we don't show the "uninstall for all users" button for instant apps.
- @Test
- public void instantApps_noUninstallForAllButton() {
- // Make this app appear to be instant.
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
- when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
- when(mUserManager.getUsers().size()).thenReturn(2);
-
- final ApplicationInfo info = new ApplicationInfo();
- info.enabled = true;
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- final PackageInfo packageInfo = mock(PackageInfo.class);
-
- ReflectionHelpers.setField(mAppDetail, "mDpm", mDevicePolicyManager);
- ReflectionHelpers.setField(mAppDetail, "mUserManager", mUserManager);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- assertThat(mAppDetail.shouldShowUninstallForAll(appEntry)).isFalse();
- }
-
- // Tests that we don't show the uninstall button for instant apps"
- @Test
- public void instantApps_noUninstallButton() {
- // Make this app appear to be instant.
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
- final ApplicationInfo info = new ApplicationInfo();
- info.flags = ApplicationInfo.FLAG_INSTALLED;
- info.enabled = true;
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- final PackageInfo packageInfo = mock(PackageInfo.class);
- packageInfo.applicationInfo = info;
-
- ReflectionHelpers.setField(mAppDetail, "mUserManager", mUserManager);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- mAppDetail.initUninstallButtonForUserApp();
- verify(mAppDetail.mActionButtons).setButton1Visible(false);
- }
-
- // Tests that we don't show the force stop button for instant apps (they aren't allowed to run
- // when they aren't in the foreground).
- @Test
- public void instantApps_noForceStop() {
- // Make this app appear to be instant.
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
- final PackageInfo packageInfo = mock(PackageInfo.class);
- final AppEntry appEntry = mock(AppEntry.class);
- final ApplicationInfo info = new ApplicationInfo();
- appEntry.info = info;
-
- ReflectionHelpers.setField(mAppDetail, "mDpm", mDevicePolicyManager);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
-
- mAppDetail.checkForceStop();
- verify(mAppDetail.mActionButtons).setButton2Visible(false);
- }
-
- @Test
- public void instantApps_buttonControllerHandlesDialog() {
- InstantAppButtonsController mockController = mock(InstantAppButtonsController.class);
- ReflectionHelpers.setField(
- mAppDetail, "mInstantAppButtonsController", mockController);
- // Make sure first that button controller is not called for supported dialog id
- AlertDialog mockDialog = mock(AlertDialog.class);
- when(mockController.createDialog(InstantAppButtonsController.DLG_CLEAR_APP))
- .thenReturn(mockDialog);
- assertThat(mAppDetail.createDialog(InstantAppButtonsController.DLG_CLEAR_APP, 0))
- .isEqualTo(mockDialog);
- verify(mockController).createDialog(InstantAppButtonsController.DLG_CLEAR_APP);
- }
-
- // A helper class for testing the InstantAppButtonsController - it lets us look up the
- // preference associated with a key for instant app buttons and get back a mock
- // LayoutPreference (to avoid a null pointer exception).
- public static class InstalledAppDetailsWithMockInstantButtons extends InstalledAppDetails {
- @Mock
- private LayoutPreference mInstantButtons;
-
- public InstalledAppDetailsWithMockInstantButtons() {
- super();
- MockitoAnnotations.initMocks(this);
- }
-
- @Override
- public Preference findPreference(CharSequence key) {
- if (key == "instant_app_buttons") {
- return mInstantButtons;
- }
- return super.findPreference(key);
- }
- }
-
- @Test
- public void instantApps_instantSpecificButtons() {
- // Make this app appear to be instant.
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
- final PackageInfo packageInfo = mock(PackageInfo.class);
-
- final InstalledAppDetailsWithMockInstantButtons
- fragment = new InstalledAppDetailsWithMockInstantButtons();
- ReflectionHelpers.setField(fragment, "mPackageInfo", packageInfo);
- ReflectionHelpers.setField(fragment, "mApplicationFeatureProvider",
- mFeatureFactory.applicationFeatureProvider);
-
- final InstantAppButtonsController buttonsController =
- mock(InstantAppButtonsController.class);
- when(buttonsController.setPackageName(nullable(String.class)))
- .thenReturn(buttonsController);
- when(mFeatureFactory.applicationFeatureProvider.newInstantAppButtonsController(
- nullable(Fragment.class), nullable(View.class), nullable(ShowDialogDelegate.class)))
- .thenReturn(buttonsController);
-
- fragment.maybeAddInstantAppButtons();
- verify(buttonsController).setPackageName(nullable(String.class));
- verify(buttonsController).show();
- }
-
- @Test
- public void instantApps_removeCorrectPref() {
- PreferenceScreen mockPreferenceScreen = mock(PreferenceScreen.class);
- PreferenceManager mockPreferenceManager = mock(PreferenceManager.class);
- AppDomainsPreference mockAppDomainsPref = mock(AppDomainsPreference.class);
- Preference mockLaunchPreference = mock(Preference.class);
- PackageInfo mockPackageInfo = mock(PackageInfo.class);
- PackageManager mockPackageManager = mock(PackageManager.class);
- ReflectionHelpers.setField(
- mAppDetail, "mLaunchPreference", mockLaunchPreference);
- ReflectionHelpers.setField(
- mAppDetail, "mInstantAppDomainsPreference", mockAppDomainsPref);
- ReflectionHelpers.setField(
- mAppDetail, "mPreferenceManager", mockPreferenceManager);
- ReflectionHelpers.setField(
- mAppDetail, "mPackageInfo", mockPackageInfo);
- ReflectionHelpers.setField(
- mAppDetail, "mPm", mockPackageManager);
- when(mockPreferenceManager.getPreferenceScreen()).thenReturn(mockPreferenceScreen);
-
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> false));
- mAppDetail.prepareInstantAppPrefs();
-
- // For the non instant case we remove the app domain pref, and leave the launch pref
- verify(mockPreferenceScreen).removePreference(mockAppDomainsPref);
- verify(mockPreferenceScreen, never()).removePreference(mockLaunchPreference);
-
- // For the instant app case we remove the launch preff, and leave the app domain pref
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
-
- mAppDetail.prepareInstantAppPrefs();
- verify(mockPreferenceScreen).removePreference(mockLaunchPreference);
- // Will be 1 still due to above call
- verify(mockPreferenceScreen, times(1))
- .removePreference(mockAppDomainsPref);
- }
-
- @Test
- public void onActivityResult_uninstalledUpdates_shouldInvalidateOptionsMenu() {
- doReturn(true).when(mAppDetail).refreshUi();
-
- mAppDetail.onActivityResult(InstalledAppDetails.REQUEST_UNINSTALL, 0, mock(Intent.class));
-
- verify(mActivity).invalidateOptionsMenu();
- }
-
- @Test
- public void findTargetSipper_findCorrectSipper() {
- List<BatterySipper> usageList = new ArrayList<>();
- usageList.add(mBatterySipper);
- usageList.add(mOtherBatterySipper);
- doReturn(usageList).when(mBatteryStatsHelper).getUsageList();
-
- assertThat(mAppDetail.findTargetSipper(mBatteryStatsHelper, TARGET_UID)).isEqualTo(
- mBatterySipper);
- }
-
- @Test
- public void updateBattery_noBatteryStats_summaryNo() {
- doReturn(mShadowContext.getString(R.string.no_battery_summary)).when(mAppDetail).getString(
- R.string.no_battery_summary);
- mAppDetail.updateBattery();
-
- assertThat(mBatteryPreference.getSummary()).isEqualTo(
- "No battery use since last full charge");
- }
-
- @Test
- public void updateBattery_hasBatteryStats_summaryPercent() {
- mAppDetail.mBatteryHelper = mBatteryStatsHelper;
- mAppDetail.mSipper = mBatterySipper;
- doReturn(BATTERY_LEVEL).when(mBatteryUtils).calculateBatteryPercent(anyDouble(),
- anyDouble(), anyDouble(), anyInt());
- doReturn(mShadowContext.getString(R.string.battery_summary, BATTERY_LEVEL_STRING)).when(
- mAppDetail).getString(R.string.battery_summary, BATTERY_LEVEL_STRING);
- doReturn(new ArrayList<>()).when(mBatteryStatsHelper).getUsageList();
-
- mAppDetail.updateBattery();
-
- assertThat(mBatteryPreference.getSummary()).isEqualTo("60% use since last full charge");
- }
-
- @Test
- public void isBatteryStatsAvailable_hasBatteryStatsHelperAndSipper_returnTrue() {
- mAppDetail.mBatteryHelper = mBatteryStatsHelper;
- mAppDetail.mSipper = mBatterySipper;
-
- assertThat(mAppDetail.isBatteryStatsAvailable()).isTrue();
- }
-
- @Test
- public void isBatteryStatsAvailable_parametersNull_returnFalse() {
- assertThat(mAppDetail.isBatteryStatsAvailable()).isFalse();
- }
-
- @Test
- public void handleDisableable_appIsHomeApp_buttonShouldNotWork() {
- final ApplicationInfo info = new ApplicationInfo();
- info.packageName = "pkg";
- info.enabled = true;
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- final HashSet<String> homePackages = new HashSet<>();
- homePackages.add(info.packageName);
-
- ReflectionHelpers.setField(mAppDetail, "mHomePackages", homePackages);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
-
- assertThat(mAppDetail.handleDisableable()).isFalse();
- verify(mAppDetail.mActionButtons).setButton1Text(R.string.disable_text);
- }
-
- @Test
- public void handleDisableable_appIsEnabled_buttonShouldWork() {
- final ApplicationInfo info = new ApplicationInfo();
- info.packageName = "pkg";
- info.enabled = true;
- info.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
-
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- when(mFeatureFactory.applicationFeatureProvider.getKeepEnabledPackages()).thenReturn(
- new HashSet<>());
-
- ReflectionHelpers.setField(mAppDetail, "mApplicationFeatureProvider",
- mFeatureFactory.applicationFeatureProvider);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
-
- assertThat(mAppDetail.handleDisableable()).isTrue();
- verify(mAppDetail.mActionButtons).setButton1Text(R.string.disable_text);
- }
-
- @Test
- @Config(shadows = ShadowUtils.class)
- public void handleDisableable_appIsDisabled_buttonShouldShowEnable() {
- final ApplicationInfo info = new ApplicationInfo();
- info.packageName = "pkg";
- info.enabled = false;
- info.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
-
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
- when(mFeatureFactory.applicationFeatureProvider.getKeepEnabledPackages()).thenReturn(
- new HashSet<>());
-
- ReflectionHelpers.setField(mAppDetail, "mApplicationFeatureProvider",
- mFeatureFactory.applicationFeatureProvider);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
-
- assertThat(mAppDetail.handleDisableable()).isTrue();
- verify(mAppDetail.mActionButtons).setButton1Text(R.string.enable_text);
- verify(mAppDetail.mActionButtons).setButton1Positive(true);
- }
-
- @Test
- public void handleDisableable_appIsEnabledAndInKeepEnabledWhitelist_buttonShouldNotWork() {
- final ApplicationInfo info = new ApplicationInfo();
- info.packageName = "pkg";
- info.enabled = true;
- info.enabledSetting = PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
-
- final AppEntry appEntry = mock(AppEntry.class);
- appEntry.info = info;
-
- final HashSet<String> packages = new HashSet<>();
- packages.add(info.packageName);
- when(mFeatureFactory.applicationFeatureProvider.getKeepEnabledPackages()).thenReturn(
- packages);
-
- ReflectionHelpers.setField(mAppDetail, "mApplicationFeatureProvider",
- mFeatureFactory.applicationFeatureProvider);
- ReflectionHelpers.setField(mAppDetail, "mAppEntry", appEntry);
-
- assertThat(mAppDetail.handleDisableable()).isFalse();
- verify(mAppDetail.mActionButtons).setButton1Text(R.string.disable_text);
- }
-
- @Test
- public void testRestartBatteryStatsLoader() {
- doReturn(mLoaderManager).when(mAppDetail).getLoaderManager();
-
- mAppDetail.restartBatteryStatsLoader();
-
- verify(mLoaderManager).restartLoader(InstalledAppDetails.LOADER_BATTERY, Bundle.EMPTY,
- mAppDetail.mBatteryCallbacks);
- }
-
- @Test
- public void initUninstallButtonForUserApp_shouldSetNegativeButton() {
- final ApplicationInfo info = new ApplicationInfo();
- info.flags = ApplicationInfo.FLAG_INSTALLED;
- info.enabled = true;
- final PackageInfo packageInfo = mock(PackageInfo.class);
- packageInfo.applicationInfo = info;
- ReflectionHelpers.setField(mAppDetail, "mUserManager", mUserManager);
- ReflectionHelpers.setField(mAppDetail, "mPackageInfo", packageInfo);
-
- mAppDetail.initUninstallButtonForUserApp();
-
- verify(mAppDetail.mActionButtons).setButton1Positive(false);
- }
-
- @Implements(Utils.class)
- public static class ShadowUtils {
- @Implementation
- public static boolean isSystemPackage(Resources resources, PackageManager pm,
- PackageInfo pkg) {
- return false;
- }
- }
-}
diff --git a/tests/robotests/src/com/android/settings/applications/NotificationAppsTest.java b/tests/robotests/src/com/android/settings/applications/NotificationAppsTest.java
deleted file mode 100644
index 11d757f..0000000
--- a/tests/robotests/src/com/android/settings/applications/NotificationAppsTest.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.applications;
-
-import android.content.Context;
-
-import android.content.pm.ApplicationInfo;
-import android.content.pm.UserInfo;
-import android.os.UserManager;
-
-import com.android.settings.R;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.notification.NotificationBackend;
-import com.android.settingslib.wrapper.PackageManagerWrapper;
-
-import java.util.List;
-import java.util.ArrayList;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.util.ReflectionHelpers;
-
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class NotificationAppsTest {
-
- @Mock
- private PackageManagerWrapper mPackageManager;
- @Mock
- private UserManager mUserManager;
- @Mock
- private SummaryLoader mSummaryLoader;
- @Mock
- private NotificationBackend mBackend;
-
- private Context mContext;
- private NotificationApps.SummaryProvider mSummaryProvider;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- ShadowApplication shadowApplication = ShadowApplication.getInstance();
- shadowApplication.setSystemService(Context.USER_SERVICE, mUserManager);
- mContext = shadowApplication.getApplicationContext();
- mSummaryProvider = spy(new NotificationApps.SummaryProvider(mContext, mSummaryLoader));
- ReflectionHelpers.setField(mSummaryProvider, "mNotificationBackend", mBackend);
- ReflectionHelpers.setField(mSummaryProvider, "mPackageManager", mPackageManager);
- }
-
- @Test
- public void setListening_shouldSetSummary() {
- List<UserInfo> userInfos = new ArrayList<>();
- userInfos.add(new UserInfo(1, "user1", 0));
- when(mUserManager.getProfiles(anyInt())).thenReturn(userInfos);
- List<ApplicationInfo> appInfos = new ArrayList<>();
- ApplicationInfo info1 = new ApplicationInfo();
- info1.packageName = "package1";
- appInfos.add(info1);
- ApplicationInfo info2 = new ApplicationInfo();
- info2.packageName = "package2";
- appInfos.add(info2);
- when(mPackageManager.getInstalledApplicationsAsUser(anyInt(), anyInt()))
- .thenReturn(appInfos);
-
- // no notification off
- when(mBackend.getNotificationsBanned(anyString(), anyInt())).thenReturn(false);
- mSummaryProvider.setListening(true);
- ShadowApplication.runBackgroundTasks();
- verify(mSummaryLoader).setSummary(mSummaryProvider,
- mContext.getString(R.string.notification_summary_none));
-
- // some notification off
- when(mBackend.getNotificationsBanned(eq("package1"), anyInt())).thenReturn(true);
- mSummaryProvider.setListening(true);
- ShadowApplication.runBackgroundTasks();
- verify(mSummaryLoader).setSummary(mSummaryProvider,
- mContext.getResources().getQuantityString(R.plurals.notification_summary, 1, 1));
-
- when(mBackend.getNotificationsBanned(eq("package2"), anyInt())).thenReturn(true);
- mSummaryProvider.setListening(true);
- ShadowApplication.runBackgroundTasks();
- verify(mSummaryLoader).setSummary(mSummaryProvider,
- mContext.getResources().getQuantityString(R.plurals.notification_summary, 2, 2));
- }
-
-}
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceControllerTest.java
index 7d5eb31..70b9cc9 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppActionButtonPreferenceControllerTest.java
@@ -18,27 +18,18 @@
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.argThat;
-import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import android.content.BroadcastReceiver;
import android.content.Context;
-import android.content.Intent;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.UserInfo;
import android.content.res.Resources;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.UserHandle;
import android.os.UserManager;
import android.support.v7.preference.PreferenceScreen;
@@ -120,16 +111,14 @@
}
@Test
- public void displayPreference_shouldInitializeForceStopButton() {
+ public void displayPreference_shouldSetButton2Invisible() {
final PreferenceScreen screen = mock(PreferenceScreen.class);
final ActionButtonPreference preference = spy(new ActionButtonPreference(mContext));
when(screen.findPreference(mController.getPreferenceKey())).thenReturn(preference);
mController.displayPreference(screen);
- verify(preference).setButton2Positive(false);
- verify(preference).setButton2Text(R.string.force_stop);
- verify(preference).setButton2Enabled(false);
+ verify(preference).setButton2Visible(false);
}
@Test
@@ -138,14 +127,12 @@
final ApplicationsState.AppEntry appEntry = mock(ApplicationsState.AppEntry.class);
final ApplicationInfo info = new ApplicationInfo();
appEntry.info = info;
- doNothing().when(mController).checkForceStop(appEntry, packageInfo);
doNothing().when(mController).initUninstallButtons(appEntry, packageInfo);
when(mFragment.getAppEntry()).thenReturn(appEntry);
when(mFragment.getPackageInfo()).thenReturn(packageInfo);
mController.refreshUi();
- verify(mController).checkForceStop(appEntry, packageInfo);
verify(mController).initUninstallButtons(appEntry, packageInfo);
}
@@ -198,71 +185,6 @@
assertThat(mController.initUninstallButtonForUserApp()).isFalse();
}
- // Tests that we don't show the force stop button for instant apps (they aren't allowed to run
- // when they aren't in the foreground).
- @Test
- public void checkForceStop_instantApps_shouldNotShowForceStop() {
- // Make this app appear to be instant.
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> true));
- final PackageInfo packageInfo = mock(PackageInfo.class);
- final ApplicationsState.AppEntry appEntry = mock(ApplicationsState.AppEntry.class);
- final ApplicationInfo info = new ApplicationInfo();
- appEntry.info = info;
-
- mController.checkForceStop(appEntry, packageInfo);
-
- verify(mController.mActionButtons).setButton2Visible(false);
- }
-
- @Test
- public void checkForceStop_hasActiveAdmin_shouldDisableForceStop() {
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> false));
- final String packageName = "Package1";
- final PackageInfo packageInfo = new PackageInfo();
- packageInfo.packageName = packageName;
- final ApplicationsState.AppEntry appEntry = mock(ApplicationsState.AppEntry.class);
- when(mDevicePolicyManager.packageHasActiveAdmins(packageName)).thenReturn(true);
-
- mController.checkForceStop(appEntry, packageInfo);
-
- verify(mController.mActionButtons).setButton2Enabled(false);
- }
-
- @Test
- public void checkForceStop_appRunning_shouldEnableForceStop() {
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> false));
- final PackageInfo packageInfo = mock(PackageInfo.class);
- final ApplicationsState.AppEntry appEntry = mock(ApplicationsState.AppEntry.class);
- final ApplicationInfo info = new ApplicationInfo();
- appEntry.info = info;
-
- mController.checkForceStop(appEntry, packageInfo);
-
- verify(mController.mActionButtons).setButton2Enabled(true);
- }
-
- @Test
- public void checkForceStop_appStopped_shouldQueryPackageRestart() {
- ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
- (InstantAppDataProvider) (i -> false));
- final PackageInfo packageInfo = mock(PackageInfo.class);
- final ApplicationsState.AppEntry appEntry = mock(ApplicationsState.AppEntry.class);
- final ApplicationInfo info = new ApplicationInfo();
- appEntry.info = info;
- info.flags = ApplicationInfo.FLAG_STOPPED;
- info.packageName = "com.android.setting";
-
- mController.checkForceStop(appEntry, packageInfo);
-
- verify(mContext).sendOrderedBroadcastAsUser(argThat(intent-> intent != null
- && intent.getAction().equals(Intent.ACTION_QUERY_PACKAGE_RESTART)),
- any(UserHandle.class), nullable(String.class), any(BroadcastReceiver.class),
- nullable(Handler.class), anyInt(), nullable(String.class), nullable(Bundle.class));
- }
-
@Test
public void handleDisableable_appIsHomeApp_buttonShouldNotWork() {
final ApplicationInfo info = new ApplicationInfo();
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
index 91833f5..970b2ec 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppBatteryPreferenceControllerTest.java
@@ -109,8 +109,14 @@
}
@Test
- public void getAvailabilityStatus_shouldAlwaysReturnAvailable() {
- assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.AVAILABLE);
+ public void testAppBattery_byDefault_shouldBeShown() {
+ assertThat(mController.isAvailable()).isTrue();
+ }
+
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void testAppBattery_ifDisabled_shouldNotBeShown() {
+ assertThat(mController.isAvailable()).isFalse();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
index ee870b7..7108ef0 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppHeaderViewPreferenceControllerTest.java
@@ -42,7 +42,9 @@
import com.android.settings.TestConfig;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState;
+import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
@@ -53,6 +55,7 @@
import org.robolectric.Robolectric;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@@ -103,7 +106,8 @@
appEntry.info = info;
when(mFragment.getAppEntry()).thenReturn(appEntry);
when(mFragment.getPackageInfo()).thenReturn(packageInfo);
-
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> false));
final TextView title = mHeader.findViewById(R.id.entity_header_title);
final TextView summary = mHeader.findViewById(R.id.entity_header_summary);
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
index 87b82ad..b7e414c 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java
@@ -18,7 +18,9 @@
import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.nullable;
+import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
@@ -26,6 +28,7 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
@@ -41,6 +44,7 @@
import com.android.settingslib.applications.AppUtils;
import com.android.settingslib.applications.ApplicationsState.AppEntry;
import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
+import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
@@ -191,6 +195,22 @@
}
@Test
+ public void onActivityResult_packageUninstalled_shouldFinishAndRemoveTask() {
+ doReturn(false).when(mFragment).refreshUi();
+
+ mFragment.onActivityResult(mFragment.REQUEST_UNINSTALL, 0, mock(Intent.class));
+
+ verify(mActivity).finishAndRemoveTask();
+ }
+
+ @Test
+ public void getPreferenceControllers_noPackageInfo_shouldReturnNull() {
+ doNothing().when(mFragment).retrieveAppEntry();
+
+ assertThat(mFragment.getPreferenceControllers(mShadowContext)).isNull();
+ }
+
+ @Test
public void getNumberOfUserWithPackageInstalled_twoUsersInstalled_shouldReturnTwo()
throws PackageManager.NameNotFoundException{
final String packageName = "Package1";
@@ -238,4 +258,18 @@
assertThat(mFragment.getNumberOfUserWithPackageInstalled(packageName)).isEqualTo(1);
}
+
+ @Test
+ public void onDestroy_shouldUnregisterReceiver() {
+ final Context context = mock(Context.class);
+ doReturn(context).when(mFragment).getContext();
+ ReflectionHelpers.setField(mFragment, "mLifecycle", mock(Lifecycle.class));
+ ReflectionHelpers.setField(mFragment, "mCheckedForLoaderManager", true);
+ mFragment.startListeningToPackageRemove();
+
+ mFragment.onDestroy();
+
+ verify(context).unregisterReceiver(mFragment.mPackageRemovedReceiver);
+ }
+
}
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
index 47844c5..532522c 100644
--- a/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/AppMemoryPreferenceControllerTest.java
@@ -37,7 +37,9 @@
import com.android.settings.applications.ProcStatsData;
import com.android.settings.applications.ProcessStatsDetail;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.ShadowUserManager;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -48,7 +50,9 @@
import org.robolectric.util.ReflectionHelpers;
@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = {
+ ShadowUserManager.class
+})
public class AppMemoryPreferenceControllerTest {
@Mock
@@ -67,6 +71,7 @@
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
+ ShadowUserManager.getShadow().setIsAdminUser(true);
mController =
spy(new AppMemoryPreferenceController(mContext, mFragment, null /* lifecycle */));
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
@@ -75,6 +80,11 @@
when(mFragment.getActivity()).thenReturn(mActivity);
}
+ @After
+ public void tearDown() {
+ ShadowUserManager.getShadow().reset();
+ }
+
@Test
public void getAvailabilityStatus_developmentSettingsEnabled_shouldReturnAvailable() {
Settings.Global.putInt(mContext.getContentResolver(),
@@ -84,6 +94,24 @@
}
@Test
+ @Config(qualifiers = "mcc999")
+ public void getAvailabilityStatus_devSettingsEnabled_butNotVisible_shouldReturnUnsupported() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1);
+
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.DISABLED_UNSUPPORTED);
+ }
+
+ @Test
+ @Config(qualifiers = "mcc999")
+ public void getAvailabilityStatus_devSettingsDisabled_butNotVisible_shouldReturnUnsupported() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0);
+
+ assertThat(mController.getAvailabilityStatus()).isEqualTo(mController.DISABLED_UNSUPPORTED);
+ }
+
+ @Test
public void getAvailabilityStatus_developmentSettingsDisabled_shouldReturnDisabled() {
Settings.Global.putInt(mContext.getContentResolver(),
Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0);
diff --git a/tests/robotests/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuControllerTest.java b/tests/robotests/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuControllerTest.java
new file mode 100644
index 0000000..4719008
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/applications/appinfo/ForceStopOptionsMenuControllerTest.java
@@ -0,0 +1,215 @@
+/*
+ * Copyright (C) 2018 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.settings.applications.appinfo;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.argThat;
+import static org.mockito.ArgumentMatchers.nullable;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.UserHandle;
+import android.os.UserManager;
+import android.view.Menu;
+import android.view.MenuItem;
+
+import com.android.settings.R;
+import com.android.settings.SettingsActivity;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.wrapper.DevicePolicyManagerWrapper;
+import com.android.settingslib.applications.AppUtils;
+import com.android.settingslib.applications.ApplicationsState.AppEntry;
+import com.android.settingslib.applications.instantapps.InstantAppDataProvider;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Answers;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(
+ manifest = TestConfig.MANIFEST_PATH,
+ sdk = TestConfig.SDK_VERSION
+)
+public final class ForceStopOptionsMenuControllerTest {
+
+ private static final String PACKAGE_NAME = "test_package_name";
+
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private UserManager mUserManager;
+ @Mock
+ private SettingsActivity mActivity;
+ @Mock
+ private DevicePolicyManagerWrapper mDevicePolicyManager;
+ @Mock
+ private PackageManager mPackageManager;
+
+ private AppInfoDashboardFragment mFragment;
+ private ForceStopOptionsMenuController mController;
+ private Context mShadowContext;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mShadowContext = spy(RuntimeEnvironment.application);
+ mFragment = spy(new AppInfoDashboardFragment());
+ ReflectionHelpers.setField(mFragment, "mDpm", mDevicePolicyManager);
+ ReflectionHelpers.setField(mFragment, "mUserManager", mUserManager);
+ doReturn(mActivity).when(mFragment).getActivity();
+ doReturn(mShadowContext).when(mFragment).getContext();
+ doReturn(mPackageManager).when(mActivity).getPackageManager();
+ when(mShadowContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
+ mController = spy(new ForceStopOptionsMenuController(
+ mShadowContext, mFragment, mDevicePolicyManager,
+ null /* metricsFeatureProvider */, null /* lifecycle */));
+
+ // Default to not considering any apps to be instant (individual tests can override this).
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> false));
+ }
+
+ @Test
+ public void onCreateOptionsMenu_shouldAddForceStop() {
+ final Menu menu = mock(Menu.class);
+ when(menu.add(anyInt(), anyInt(), anyInt(), anyInt())).thenReturn(mock(MenuItem.class));
+
+ mController.onCreateOptionsMenu(menu, null /* inflater */);
+
+ verify(menu).add(anyInt(), eq(AppInfoDashboardFragment.FORCE_STOP_MENU), anyInt(),
+ eq(R.string.force_stop));
+ }
+
+ @Test
+ public void onPrepareOptionsMenu_shouldUpdateForceStopMenu() {
+ final Menu menu = mock(Menu.class);
+ doNothing().when(mController).updateForceStopMenu(any(), any());
+ doReturn(mock(AppEntry.class)).when(mFragment).getAppEntry();
+ doReturn(mock(PackageInfo.class)).when(mFragment).getPackageInfo();
+
+ mController.onPrepareOptionsMenu(menu);
+
+ verify(mController).updateForceStopMenu(any(), any());
+ }
+
+ @Test
+ public void onOptionsItemSelected_shouldHandleForceStopMenuClick() {
+ doReturn(mock(AppEntry.class)).when(mFragment).getAppEntry();
+ doNothing().when(mController).handleForceStopMenuClick();
+ final MenuItem menu = mock(MenuItem.class);
+ when(menu.getItemId()).thenReturn(AppInfoDashboardFragment.FORCE_STOP_MENU);
+
+ mController.onOptionsItemSelected(menu);
+
+ verify(mController).handleForceStopMenuClick();
+ }
+
+ // Tests that we don't show the force stop button for instant apps (they aren't allowed to run
+ // when they aren't in the foreground).
+ @Test
+ public void updateForceStopMenu_instantApps_shouldNotShowForceStop() {
+ when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
+ final MenuItem forceStopMenu = mock(MenuItem.class);
+ ReflectionHelpers.setField(mController, "mForceStopMenu", forceStopMenu);
+ // Make this app appear to be instant.
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> true));
+ final PackageInfo packageInfo = mock(PackageInfo.class);
+ final AppEntry appEntry = mock(AppEntry.class);
+ final ApplicationInfo info = new ApplicationInfo();
+ appEntry.info = info;
+
+ mController.updateForceStopMenu(appEntry, packageInfo);
+
+ verify(forceStopMenu).setVisible(false);
+ }
+
+ @Test
+ public void updateForceStopMenu_hasActiveAdmin_shouldDisableForceStop() {
+ when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
+ final MenuItem forceStopMenu = mock(MenuItem.class);
+ ReflectionHelpers.setField(mController, "mForceStopMenu", forceStopMenu);
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> false));
+ final String packageName = "Package1";
+ final PackageInfo packageInfo = new PackageInfo();
+ packageInfo.packageName = packageName;
+ final AppEntry appEntry = mock(AppEntry.class);
+ when(mDevicePolicyManager.packageHasActiveAdmins(packageName)).thenReturn(true);
+
+ mController.updateForceStopMenu(appEntry, packageInfo);
+
+ verify(forceStopMenu).setEnabled(false);
+ }
+
+ @Test
+ public void updateForceStopMenu_appRunning_shouldEnableForceStop() {
+ when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
+ final MenuItem forceStopMenu = mock(MenuItem.class);
+ ReflectionHelpers.setField(mController, "mForceStopMenu", forceStopMenu);
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> false));
+ final PackageInfo packageInfo = mock(PackageInfo.class);
+ final AppEntry appEntry = mock(AppEntry.class);
+ final ApplicationInfo info = new ApplicationInfo();
+ appEntry.info = info;
+
+ mController.updateForceStopMenu(appEntry, packageInfo);
+
+ verify(forceStopMenu).setEnabled(true);
+ }
+
+ @Test
+ public void updateForceStopMenu_appStopped_shouldQueryPackageRestart() {
+ when(mDevicePolicyManager.packageHasActiveAdmins(nullable(String.class))).thenReturn(false);
+ ReflectionHelpers.setStaticField(AppUtils.class, "sInstantAppDataProvider",
+ (InstantAppDataProvider) (i -> false));
+ final PackageInfo packageInfo = mock(PackageInfo.class);
+ final AppEntry appEntry = mock(AppEntry.class);
+ final ApplicationInfo info = new ApplicationInfo();
+ appEntry.info = info;
+ info.flags = ApplicationInfo.FLAG_STOPPED;
+ info.packageName = "com.android.setting";
+
+ mController.updateForceStopMenu(appEntry, packageInfo);
+
+ verify(mShadowContext).sendOrderedBroadcastAsUser(argThat(intent-> intent != null
+ && intent.getAction().equals(Intent.ACTION_QUERY_PACKAGE_RESTART)),
+ any(UserHandle.class), nullable(String.class), any(BroadcastReceiver.class),
+ nullable(Handler.class), anyInt(), nullable(String.class), nullable(Bundle.class));
+ }
+
+}
diff --git a/tests/robotests/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceControllerTest.java
index bc72ee4..4e8a79e 100644
--- a/tests/robotests/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/applications/defaultapps/DefaultAutofillPreferenceControllerTest.java
@@ -104,10 +104,5 @@
final DefaultAppInfo info = mController.getDefaultAppInfo();
assertThat(info).isNotNull();
-
- mController.getSettingIntent(info);
-
- verify(mPackageManager.getPackageManager()).queryIntentServices(
- DefaultAutofillPicker.AUTOFILL_PROBE, PackageManager.GET_META_DATA);
}
}
diff --git a/tests/robotests/src/com/android/settings/backup/BackupSettingsHelperTest.java b/tests/robotests/src/com/android/settings/backup/BackupSettingsHelperTest.java
index 9de0c6a..4e5428c 100644
--- a/tests/robotests/src/com/android/settings/backup/BackupSettingsHelperTest.java
+++ b/tests/robotests/src/com/android/settings/backup/BackupSettingsHelperTest.java
@@ -16,6 +16,14 @@
package com.android.settings.backup;
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.anyInt;
+import static org.mockito.Mockito.anyString;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
import android.app.backup.BackupManager;
import android.app.backup.IBackupManager;
import android.content.ComponentName;
@@ -26,6 +34,10 @@
import android.os.IBinder;
import android.os.RemoteException;
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -36,19 +48,6 @@
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.anyInt;
-import static org.mockito.Mockito.anyString;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import com.android.settings.R;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.TestConfig;
-import com.android.settingslib.drawer.SettingsDrawerActivity;
-
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
shadows = {BackupSettingsHelperTest.ShadowBackupManagerStub.class})
@@ -263,8 +262,6 @@
assertThat(backupIntent.getComponent().getClassName()).isEqualTo(
DEFAULT_SETTINGS_CLASSNAME);
- assertThat(backupIntent.getExtras().getBoolean(
- SettingsDrawerActivity.EXTRA_SHOW_MENU)).isTrue();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
index ab338a1..0129b1c 100644
--- a/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
+++ b/tests/robotests/src/com/android/settings/bluetooth/BluetoothDetailsHeaderControllerTest.java
@@ -80,7 +80,7 @@
*/
@Test
public void testContextMock() {
- assertThat(mContext.getString(R.string.bluetooth_connected)).isEqualTo("Connected");
+ assertThat(mContext.getString(R.string.bluetooth_connected)).isNotNull();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
index 78be742..b478c4e 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceGroupControllerTest.java
@@ -31,6 +31,7 @@
import com.android.settings.TestConfig;
import com.android.settings.bluetooth.ConnectedBluetoothDeviceUpdater;
+import com.android.settings.connecteddevice.usb.ConnectedUsbDeviceUpdater;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdaterTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdaterTest.java
similarity index 79%
rename from tests/robotests/src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdaterTest.java
rename to tests/robotests/src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdaterTest.java
index 16cd3a7..011d620 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedUsbDeviceUpdaterTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/ConnectedUsbDeviceUpdaterTest.java
@@ -13,18 +13,20 @@
* See the License for the specific language governing permissions and
* limitations under the License
*/
-package com.android.settings.connecteddevice;
+package com.android.settings.connecteddevice.usb;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import android.content.Context;
import com.android.settings.R;
import com.android.settings.TestConfig;
-import com.android.settings.deviceinfo.UsbBackend;
+import com.android.settings.connecteddevice.DevicePreferenceCallback;
+import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -42,6 +44,8 @@
private ConnectedUsbDeviceUpdater mDeviceUpdater;
@Mock
+ private DashboardFragment mFragment;
+ @Mock
private UsbConnectionBroadcastReceiver mUsbReceiver;
@Mock
private DevicePreferenceCallback mDevicePreferenceCallback;
@@ -53,7 +57,8 @@
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
- mDeviceUpdater = new ConnectedUsbDeviceUpdater(mContext, mDevicePreferenceCallback,
+ when(mFragment.getContext()).thenReturn(mContext);
+ mDeviceUpdater = new ConnectedUsbDeviceUpdater(mFragment, mDevicePreferenceCallback,
mUsbBackend);
mDeviceUpdater.mUsbReceiver = mUsbReceiver;
}
@@ -70,18 +75,18 @@
@Test
public void testInitUsbPreference_usbConnected_preferenceAdded() {
- doReturn(true).when(mUsbReceiver).isConnected();
-
mDeviceUpdater.initUsbPreference(mContext);
+ mDeviceUpdater.mUsbConnectionListener.onUsbConnectionChanged(true /* connected */,
+ UsbBackend.MODE_DATA_NONE);
verify(mDevicePreferenceCallback).onDeviceAdded(mDeviceUpdater.mUsbPreference);
}
@Test
public void testInitUsbPreference_usbDisconnected_preferenceRemoved() {
- doReturn(false).when(mUsbReceiver).isConnected();
-
mDeviceUpdater.initUsbPreference(mContext);
+ mDeviceUpdater.mUsbConnectionListener.onUsbConnectionChanged(false /* connected */,
+ UsbBackend.MODE_DATA_NONE);
verify(mDevicePreferenceCallback).onDeviceRemoved(mDeviceUpdater.mUsbPreference);
}
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/UsbBackendTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbBackendTest.java
similarity index 81%
rename from tests/robotests/src/com/android/settings/deviceinfo/UsbBackendTest.java
rename to tests/robotests/src/com/android/settings/connecteddevice/usb/UsbBackendTest.java
index ce384a5..40cfd73 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/UsbBackendTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbBackendTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.connecteddevice.usb;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
import static org.mockito.Matchers.argThat;
@@ -25,7 +25,9 @@
import android.content.Context;
import android.content.pm.PackageManager;
import android.hardware.usb.UsbManager;
+import android.net.ConnectivityManager;
+import com.android.settings.connecteddevice.usb.UsbBackend;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
@@ -46,6 +48,8 @@
private UsbManager mUsbManager;
@Mock
private UsbBackend.UserRestrictionUtil mUserRestrictionUtil;
+ @Mock
+ private ConnectivityManager mConnectivityManager;
@Before
public void setUp() {
@@ -53,22 +57,13 @@
when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_MIDI))
.thenReturn(true);
when((Object)mContext.getSystemService(UsbManager.class)).thenReturn(mUsbManager);
+ when(mContext.getSystemService(Context.CONNECTIVITY_SERVICE))
+ .thenReturn((Object) mConnectivityManager);
}
@Test
public void constructor_noUsbPort_shouldNotCrash() {
- UsbBackend usbBackend = new UsbBackend(mContext, mUserRestrictionUtil);
+ UsbBackend usbBackend = new UsbBackend(mContext, mUserRestrictionUtil, null);
// Should not crash
}
-
- @Test
- public void getCurrentMode_shouldRegisterReceiverToGetUsbState() {
- UsbBackend usbBackend = new UsbBackend(mContext, mUserRestrictionUtil);
-
- usbBackend.getCurrentMode();
-
- verify(mContext).registerReceiver(eq(null),
- argThat(intentFilter -> intentFilter != null &&
- UsbManager.ACTION_USB_STATE.equals(intentFilter.getAction(0))));
- }
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiverTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiverTest.java
similarity index 81%
rename from tests/robotests/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiverTest.java
rename to tests/robotests/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiverTest.java
index 06bd5b7..50b47e0 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/UsbConnectionBroadcastReceiverTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbConnectionBroadcastReceiverTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License
*/
-package com.android.settings.connecteddevice;
+package com.android.settings.connecteddevice.usb;
import static com.google.common.truth.Truth.assertThat;
import static com.google.common.truth.Truth.assertWithMessage;
@@ -52,6 +52,8 @@
@Mock
private UsbConnectionBroadcastReceiver.UsbConnectionListener mListener;
+ @Mock
+ private UsbBackend mUsbBackend;
@Before
public void setUp() {
@@ -59,27 +61,42 @@
mShadowApplication = ShadowApplication.getInstance();
mContext = RuntimeEnvironment.application;
- mReceiver = new UsbConnectionBroadcastReceiver(mContext, mListener);
+ mReceiver = new UsbConnectionBroadcastReceiver(mContext, mListener, mUsbBackend);
}
@Test
public void testOnReceive_usbConnected_invokeCallback() {
final Intent intent = new Intent();
+ intent.setAction(UsbManager.ACTION_USB_STATE);
intent.putExtra(UsbManager.USB_CONNECTED, true);
mReceiver.onReceive(mContext, intent);
- verify(mListener).onUsbConnectionChanged(true);
+ verify(mListener).onUsbConnectionChanged(true /* connected */, UsbBackend.MODE_DATA_NONE);
}
@Test
public void testOnReceive_usbDisconnected_invokeCallback() {
final Intent intent = new Intent();
+ intent.setAction(UsbManager.ACTION_USB_STATE);
intent.putExtra(UsbManager.USB_CONNECTED, false);
mReceiver.onReceive(mContext, intent);
- verify(mListener).onUsbConnectionChanged(false);
+ verify(mListener).onUsbConnectionChanged(false /* connected */, UsbBackend.MODE_DATA_NONE);
+ }
+
+ @Test
+ public void testOnReceive_usbConnectedMtpEnabled_invokeCallback() {
+ final Intent intent = new Intent();
+ intent.setAction(UsbManager.ACTION_USB_STATE);
+ intent.putExtra(UsbManager.USB_CONNECTED, true);
+ intent.putExtra(UsbManager.USB_FUNCTION_MTP, true);
+ intent.putExtra(UsbManager.USB_DATA_UNLOCKED, true);
+
+ mReceiver.onReceive(mContext, intent);
+
+ verify(mListener).onUsbConnectionChanged(true /* connected */, UsbBackend.MODE_DATA_MTP);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
new file mode 100644
index 0000000..e1f9078
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsHeaderControllerTest.java
@@ -0,0 +1,122 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.Activity;
+import android.arch.lifecycle.LifecycleOwner;
+import android.content.Context;
+import android.support.v7.preference.PreferenceManager;
+import android.support.v7.preference.PreferenceScreen;
+import android.support.v14.preference.PreferenceFragment;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.applications.LayoutPreference;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
+import com.android.settings.widget.EntityHeaderController;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Answers;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
+ shadows = {ShadowEntityHeaderController.class, SettingsShadowResources.class})
+public class UsbDetailsHeaderControllerTest {
+
+ private UsbDetailsHeaderController mDetailsHeaderController;
+ private Context mContext;
+ private Lifecycle mLifecycle;
+ private LifecycleOwner mLifecycleOwner;
+ private LayoutPreference mPreference;
+ private PreferenceManager mPreferenceManager;
+ private PreferenceScreen mScreen;
+
+ @Mock
+ private UsbBackend mUsbBackend;
+ @Mock
+ private PreferenceFragment mFragment;
+ @Mock
+ private Activity mActivity;
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private EntityHeaderController mHeaderController;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+
+ mContext = RuntimeEnvironment.application;
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ mPreferenceManager = new PreferenceManager(mContext);
+ mScreen = mPreferenceManager.createPreferenceScreen(mContext);
+
+ when(mFragment.getActivity()).thenReturn(mActivity);
+ when(mActivity.getApplicationContext()).thenReturn(mContext);
+ when(mFragment.getContext()).thenReturn(mContext);
+ when(mFragment.getPreferenceManager()).thenReturn(mPreferenceManager);
+ when(mFragment.getPreferenceScreen()).thenReturn(mScreen);
+
+ ShadowEntityHeaderController.setUseMock(mHeaderController);
+ mDetailsHeaderController = new UsbDetailsHeaderController(mContext, mFragment, mUsbBackend);
+ mPreference = new LayoutPreference(mContext, R.layout.settings_entity_header);
+ mPreference.setKey(mDetailsHeaderController.getPreferenceKey());
+ mScreen.addPreference(mPreference);
+ }
+
+ @After
+ public void tearDown() {
+ ShadowEntityHeaderController.reset();
+ }
+
+ @Test
+ public void displayRefresh_charging_shouldSetHeader() {
+ mDetailsHeaderController.displayPreference(mScreen);
+ mDetailsHeaderController.refresh(UsbBackend.MODE_DATA_NONE);
+ verify(mHeaderController).setLabel(mContext.getString(R.string.usb_pref));
+ verify(mHeaderController).setIcon(mContext.getDrawable(R.drawable.ic_usb));
+ verify(mHeaderController).setSummary(
+ mContext.getString(R.string.usb_summary_charging_only));
+ verify(mHeaderController).done(mActivity, true);
+ }
+
+ @Test
+ public void displayRefresh_mtp_shouldSetHeader() {
+ mDetailsHeaderController.displayPreference(mScreen);
+ mDetailsHeaderController.refresh(UsbBackend.MODE_DATA_MTP);
+ verify(mHeaderController).setLabel(mContext.getString(R.string.usb_pref));
+ verify(mHeaderController).setIcon(mContext.getDrawable(R.drawable.ic_usb));
+ verify(mHeaderController).setSummary(
+ mContext.getString(R.string.usb_summary_file_transfers));
+ verify(mHeaderController).done(mActivity, true);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesControllerTest.java
new file mode 100644
index 0000000..557d836
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbDetailsProfilesControllerTest.java
@@ -0,0 +1,238 @@
+/*
+ * Copyright (C) 2018 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.settings.connecteddevice.usb;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.app.Activity;
+import android.content.Context;
+import android.hardware.usb.UsbManager;
+import android.support.v7.preference.PreferenceCategory;
+import android.support.v7.preference.PreferenceManager;
+import android.support.v7.preference.PreferenceScreen;
+import android.support.v14.preference.PreferenceFragment;
+import android.support.v14.preference.SwitchPreference;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import com.google.android.collect.Lists;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Answers;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class UsbDetailsProfilesControllerTest {
+
+ private UsbDetailsProfilesController mDetailsProfilesController;
+ private Context mContext;
+ private Lifecycle mLifecycle;
+ private PreferenceCategory mPreference;
+ private PreferenceManager mPreferenceManager;
+ private PreferenceScreen mScreen;
+ private List<String> mOptions;
+
+ @Mock
+ private UsbBackend mUsbBackend;
+ @Mock
+ private PreferenceFragment mFragment;
+ @Mock
+ private Activity mActivity;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+
+ mContext = RuntimeEnvironment.application;
+ mLifecycle = new Lifecycle(() -> mLifecycle);
+ mPreferenceManager = new PreferenceManager(mContext);
+ mScreen = mPreferenceManager.createPreferenceScreen(mContext);
+
+ when(mFragment.getActivity()).thenReturn(mActivity);
+ when(mActivity.getApplicationContext()).thenReturn(mContext);
+ when(mFragment.getContext()).thenReturn(mContext);
+ when(mFragment.getPreferenceManager()).thenReturn(mPreferenceManager);
+ when(mFragment.getPreferenceScreen()).thenReturn(mScreen);
+
+ mOptions = Lists.newArrayList(UsbManager.USB_FUNCTION_MTP, UsbManager.USB_FUNCTION_PTP,
+ UsbManager.USB_FUNCTION_MIDI, UsbDetailsProfilesController.KEY_POWER);
+ mDetailsProfilesController = new UsbDetailsProfilesController(mContext, mFragment,
+ mUsbBackend, mOptions, "usb_options");
+ mPreference = new PreferenceCategory(mContext);
+ mPreference.setKey(mDetailsProfilesController.getPreferenceKey());
+ mScreen.addPreference(mPreference);
+ }
+
+ @Test
+ public void testDisplayRefresh_allAllowed_shouldCreateSwitches() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_NONE);
+ List<SwitchPreference> switches = getProfileSwitches();
+
+ for (int i = 0; i < switches.size(); i++) {
+ assertThat(switches.get(i).getKey().equals(mOptions.get(i)));
+ }
+ }
+
+ @Test
+ public void testDisplayRefresh_onlyMidiAllowed_shouldCreateOnlyMidiSwitch() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(UsbBackend.MODE_DATA_MIDI)).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(UsbBackend.MODE_DATA_MTP)).thenReturn(true);
+ when(mUsbBackend.isModeDisallowedBySystem(UsbBackend.MODE_DATA_PTP)).thenReturn(true);
+ when(mUsbBackend.isModeDisallowedBySystem(UsbBackend.MODE_POWER_SOURCE)).thenReturn(true);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_NONE);
+ List<SwitchPreference> switches = getProfileSwitches();
+ assertThat(switches.size()).isEqualTo(1);
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MIDI);
+ }
+
+ @Test
+ public void testDisplayRefresh_mtpEnabled_shouldCheckSwitches() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_MTP);
+ List<SwitchPreference> switches = getProfileSwitches();
+
+ assertThat(switches.get(0).getKey().equals(UsbManager.USB_FUNCTION_MTP));
+ assertThat(switches.get(0).isChecked());
+ }
+
+ @Test
+ public void testDisplayRefresh_mtpSupplyPowerEnabled_shouldCheckSwitches() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_MTP | UsbBackend.MODE_POWER_SOURCE);
+ List<SwitchPreference> switches = getProfileSwitches();
+
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MTP);
+ assertThat(switches.get(0).isChecked());
+ assertThat(switches.get(3).getKey()).isEqualTo(UsbDetailsProfilesController.KEY_POWER);
+ assertThat(switches.get(3).isChecked());
+ }
+
+ @Test
+ public void testOnClickMtp_noneEnabled_shouldEnableMtp() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_NONE);
+ List<SwitchPreference> switches = getProfileSwitches();
+ switches.get(0).performClick();
+
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MTP);
+ verify(mUsbBackend).setMode(UsbBackend.MODE_DATA_MTP);
+ assertThat(switches.get(0).isChecked());
+ }
+
+ @Test
+ public void testOnClickMtp_supplyingPowerEnabled_shouldEnableBoth() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_POWER_SOURCE);
+ when(mUsbBackend.getCurrentMode()).thenReturn(UsbBackend.MODE_POWER_SOURCE);
+ List<SwitchPreference> switches = getProfileSwitches();
+ switches.get(0).performClick();
+
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MTP);
+ verify(mUsbBackend).setMode(UsbBackend.MODE_DATA_MTP | UsbBackend.MODE_POWER_SOURCE);
+ assertThat(switches.get(0).isChecked());
+ assertThat(switches.get(3).getKey()).isEqualTo(UsbDetailsProfilesController.KEY_POWER);
+ assertThat(switches.get(3).isChecked());
+ }
+
+ @Test
+ public void testOnClickMtp_ptpEnabled_shouldEnableMtpOnly() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_PTP);
+ when(mUsbBackend.getCurrentMode()).thenReturn(UsbBackend.MODE_DATA_PTP);
+ List<SwitchPreference> switches = getProfileSwitches();
+ switches.get(0).performClick();
+
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MTP);
+ verify(mUsbBackend).setMode(UsbBackend.MODE_DATA_MTP);
+ assertThat(switches.get(0).isChecked());
+ assertThat(switches.get(1).getKey()).isEqualTo(UsbManager.USB_FUNCTION_PTP);
+ assertThat(!switches.get(1).isChecked());
+ }
+
+ @Test
+ public void testOnClickMtp_mtpEnabled_shouldDisableMtp() {
+ when(mUsbBackend.isModeSupported(anyInt())).thenReturn(true);
+ when(mUsbBackend.isModeDisallowed(anyInt())).thenReturn(false);
+ when(mUsbBackend.isModeDisallowedBySystem(anyInt())).thenReturn(false);
+
+ mDetailsProfilesController.displayPreference(mScreen);
+ mDetailsProfilesController.refresh(UsbBackend.MODE_DATA_MTP);
+ when(mUsbBackend.getCurrentMode()).thenReturn(UsbBackend.MODE_DATA_MTP);
+ List<SwitchPreference> switches = getProfileSwitches();
+ switches.get(0).performClick();
+
+ assertThat(switches.get(0).getKey()).isEqualTo(UsbManager.USB_FUNCTION_MTP);
+ verify(mUsbBackend).setMode(UsbBackend.MODE_DATA_NONE);
+ assertThat(!switches.get(0).isChecked());
+ }
+
+ private List<SwitchPreference> getProfileSwitches() {
+ ArrayList<SwitchPreference> result = new ArrayList<>();
+ for (int i = 0; i < mPreference.getPreferenceCount(); i++) {
+ result.add((SwitchPreference) mPreference.getPreference(i));
+ }
+ return result;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/UsbModeChooserActivityTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModeChooserActivityTest.java
similarity index 96%
rename from tests/robotests/src/com/android/settings/deviceinfo/UsbModeChooserActivityTest.java
rename to tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModeChooserActivityTest.java
index 1817bfb..c02212b 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/UsbModeChooserActivityTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModeChooserActivityTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.connecteddevice.usb;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.anyInt;
@@ -22,6 +22,7 @@
import android.widget.TextView;
import com.android.settings.R;
+import com.android.settings.connecteddevice.usb.UsbModeChooserActivity;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/UsbModePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModePreferenceControllerTest.java
similarity index 67%
rename from tests/robotests/src/com/android/settings/connecteddevice/UsbModePreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModePreferenceControllerTest.java
index 7edde6e..d15a57f 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/UsbModePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/usb/UsbModePreferenceControllerTest.java
@@ -1,16 +1,12 @@
-package com.android.settings.connecteddevice;
+package com.android.settings.connecteddevice.usb;
import android.content.Context;
-import android.content.Intent;
-import android.hardware.usb.UsbManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
-import com.android.settings.deviceinfo.UsbBackend;
-import com.android.settings.deviceinfo.UsbModeChooserActivity;
import org.junit.Before;
import org.junit.Test;
@@ -24,6 +20,7 @@
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.verify;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@@ -33,6 +30,8 @@
private UsbBackend mUsbBackend;
@Mock(answer = RETURNS_DEEP_STUBS)
private PreferenceScreen mScreen;
+ @Mock
+ private UsbConnectionBroadcastReceiver mUsbConnectionBroadcastReceiver;
private Context mContext;
private UsbModePreferenceController mController;
@@ -42,61 +41,67 @@
MockitoAnnotations.initMocks(this);
mContext = ShadowApplication.getInstance().getApplicationContext();
mController = new UsbModePreferenceController(mContext, mUsbBackend);
+ mController.mUsbReceiver = mUsbConnectionBroadcastReceiver;
}
@Test
public void testGetSummary_chargeDevice() {
- assertThat(mController.getSummary(UsbModeChooserActivity.DEFAULT_MODES[0]))
+ assertThat(mController.getSummary(0))
.isEqualTo(R.string.usb_summary_charging_only);
}
@Test
public void testGetSummary_supplyPower() {
- assertThat(mController.getSummary(UsbModeChooserActivity.DEFAULT_MODES[1]))
+ assertThat(mController.getSummary(UsbBackend.MODE_POWER_SOURCE))
.isEqualTo(R.string.usb_summary_power_only);
}
@Test
public void testGetSummary_TransferFiles() {
- assertThat(mController.getSummary(UsbModeChooserActivity.DEFAULT_MODES[2]))
+ assertThat(mController.getSummary(UsbBackend.MODE_DATA_MTP))
.isEqualTo(R.string.usb_summary_file_transfers);
}
@Test
public void testGetSummary_TransferPhoto() {
- assertThat(mController.getSummary(UsbModeChooserActivity.DEFAULT_MODES[3]))
+ assertThat(mController.getSummary(UsbBackend.MODE_DATA_PTP))
.isEqualTo(R.string.usb_summary_photo_transfers);
}
@Test
public void testGetSummary_MIDI() {
- assertThat(mController.getSummary(UsbModeChooserActivity.DEFAULT_MODES[4]))
+ assertThat(mController.getSummary(UsbBackend.MODE_DATA_MIDI))
.isEqualTo(R.string.usb_summary_MIDI);
}
@Test
+ public void testGetSummary_Tethering() {
+ assertThat(mController.getSummary(UsbBackend.MODE_DATA_TETHER))
+ .isEqualTo(R.string.usb_summary_tether);
+ }
+
+ @Test
public void testPreferenceSummary_usbDisconnected() {
final Preference preference = new Preference(mContext);
preference.setKey("usb_mode");
preference.setEnabled(true);
+ when(mUsbBackend.getCurrentMode()).thenReturn(UsbBackend.MODE_POWER_SINK);
+ when(mUsbConnectionBroadcastReceiver.isConnected()).thenReturn(false);
mController.updateState(preference);
+
+ assertThat(preference.getKey()).isEqualTo("usb_mode");
assertThat(preference.getSummary()).isEqualTo(
mContext.getString(R.string.disconnected));
}
@Test
- public void testUsbBoradcastReceiver_usbConnected_shouldUpdateSummary() {
+ public void testUsbBroadcastReceiver_usbConnected_shouldUpdateSummary() {
final Preference preference = new Preference(mContext);
preference.setKey("usb_mode");
preference.setEnabled(true);
- when(mUsbBackend.getCurrentMode()).thenReturn(UsbModeChooserActivity.DEFAULT_MODES[0]);
- when(mScreen.findPreference("usb_mode")).thenReturn(preference);
-
- mController.displayPreference(mScreen);
- mController.onResume();
- final Intent intent = new Intent(UsbManager.ACTION_USB_STATE);
- intent.putExtra(UsbManager.USB_CONNECTED, true);
- mContext.sendStickyBroadcast(intent);
+ when(mUsbBackend.getCurrentMode()).thenReturn(UsbBackend.MODE_POWER_SINK);
+ when(mUsbConnectionBroadcastReceiver.isConnected()).thenReturn(true);
+ mController.updateState(preference);
assertThat(preference.getSummary()).isEqualTo(
mContext.getString(R.string.usb_summary_charging_only));
diff --git a/tests/robotests/src/com/android/settings/core/XmlControllerAttributeTest.java b/tests/robotests/src/com/android/settings/core/XmlControllerAttributeTest.java
index e6ca59b..e69b97e 100644
--- a/tests/robotests/src/com/android/settings/core/XmlControllerAttributeTest.java
+++ b/tests/robotests/src/com/android/settings/core/XmlControllerAttributeTest.java
@@ -19,7 +19,6 @@
import com.android.settings.search.SearchFeatureProviderImpl;
import com.android.settings.search.XmlParserUtils;
import com.android.settings.security.SecuritySettings;
-import com.android.settings.security.SecuritySettingsV2;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -32,7 +31,6 @@
import org.xmlpull.v1.XmlPullParser;
import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -47,25 +45,13 @@
// List of classes that are too hard to mock in order to retrieve xml information.
private final List<Class> illegalClasses = new ArrayList<>(
Arrays.asList(
- SecuritySettings.class,
- SecuritySettingsV2.class
+ SecuritySettings.class
));
// List of XML that could be retrieved from the illegalClasses list.
private final List<Integer> whitelistXml = new ArrayList<>(
Arrays.asList(
- R.xml.security_settings_misc,
- R.xml.security_settings_lockscreen_profile,
- R.xml.security_settings_lockscreen,
- R.xml.security_settings_chooser,
- R.xml.security_settings_pattern_profile,
- R.xml.security_settings_pin_profile,
- R.xml.security_settings_password_profile,
- R.xml.security_settings_pattern,
- R.xml.security_settings_pin,
- R.xml.security_settings_password,
- R.xml.security_settings,
- R.xml.security_settings_status
+ R.xml.security_dashboard_settings
));
private static final String NO_VALID_CONSTRUCTOR_ERROR =
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java
index f9ef424..cc25b5d 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2018 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.
@@ -16,10 +16,8 @@
package com.android.settings.dashboard;
import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.any;
-import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.reset;
@@ -30,14 +28,15 @@
import android.app.PendingIntent;
import android.content.Context;
import android.content.res.Resources;
-import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.service.settings.suggestions.Suggestion;
import android.support.v7.widget.RecyclerView;
import android.util.DisplayMetrics;
import android.view.LayoutInflater;
import android.view.View;
-import android.widget.RelativeLayout;
+import android.view.WindowManager;
+import android.widget.TextView;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
@@ -47,7 +46,6 @@
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
-import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
import org.junit.Before;
@@ -58,6 +56,7 @@
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
import java.util.List;
@@ -79,10 +78,10 @@
private Condition mCondition;
@Mock
private Resources mResources;
+ @Mock
+ private WindowManager mWindowManager;
private FakeFeatureFactory mFactory;
private DashboardAdapter mDashboardAdapter;
- private DashboardAdapter.SuggestionAndConditionHeaderHolder mSuggestionHolder;
- private DashboardData.SuggestionConditionHeaderData mSuggestionHeaderData;
private List<Condition> mConditionList;
@Before
@@ -91,6 +90,7 @@
mFactory = FakeFeatureFactory.setupForTest();
when(mFactory.dashboardFeatureProvider.shouldTintIcon()).thenReturn(true);
+ when(mContext.getSystemService(Context.WINDOW_SERVICE)).thenReturn(mWindowManager);
when(mContext.getResources()).thenReturn(mResources);
when(mResources.getQuantityString(any(int.class), any(int.class), any()))
.thenReturn("");
@@ -98,30 +98,17 @@
mConditionList = new ArrayList<>();
mConditionList.add(mCondition);
when(mCondition.shouldShow()).thenReturn(true);
- mDashboardAdapter = new DashboardAdapter(mContext, null, mConditionList, null, null);
- mSuggestionHeaderData = new DashboardData.SuggestionConditionHeaderData(mConditionList, 1);
+ mDashboardAdapter = new DashboardAdapter(mContext, null /* savedInstanceState */,
+ mConditionList, null /* suggestionControllerMixin */, null /* lifecycle */);
when(mView.getTag()).thenReturn(mCondition);
}
@Test
- public void testSuggestionsLogs_nullSuggestionsList_shouldNotCrash() {
- setupSuggestions(makeSuggestionsV2("pkg1", "pkg2", "pkg3", "pkg4", "pkg5"));
- mDashboardAdapter.onBindSuggestionConditionHeader(mSuggestionHolder, mSuggestionHeaderData);
-
- // set suggestions to null
- final DashboardData prevData = mDashboardAdapter.mDashboardData;
- mDashboardAdapter.mDashboardData = new DashboardData.Builder(prevData)
- .setSuggestions(null)
- .build();
-
- mSuggestionHolder.itemView.callOnClick();
- // no crash
- }
-
- @Test
public void testSuggestionDismissed_notOnlySuggestion_updateSuggestionOnly() {
final DashboardAdapter adapter =
- spy(new DashboardAdapter(mContext, null, null, null, null));
+ spy(new DashboardAdapter(mContext, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /*
+ lifecycle */));
final List<Suggestion> suggestions = makeSuggestionsV2("pkg1", "pkg2", "pkg3");
adapter.setSuggestions(suggestions);
@@ -130,18 +117,19 @@
when(data.getContext()).thenReturn(mContext);
when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.data)).thenReturn(data);
- final DashboardAdapter.SuggestionAndConditionContainerHolder holder =
- new DashboardAdapter.SuggestionAndConditionContainerHolder(itemView);
+ when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
+ when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
+ when(itemView.findViewById(android.R.id.title)).thenReturn(mock(TextView.class));
+ final DashboardAdapter.SuggestionContainerHolder holder =
+ new DashboardAdapter.SuggestionContainerHolder(itemView);
- adapter.onBindConditionAndSuggestion(
- holder, DashboardAdapter.SUGGESTION_CONDITION_HEADER_POSITION);
+ adapter.onBindSuggestion(holder, 0);
final DashboardData dashboardData = adapter.mDashboardData;
reset(adapter); // clear interactions tracking
final Suggestion suggestionToRemove = suggestions.get(1);
- adapter.onSuggestionDismissed(suggestionToRemove);
+ adapter.onSuggestionClosed(suggestionToRemove);
assertThat(adapter.mDashboardData).isEqualTo(dashboardData);
assertThat(suggestions.size()).isEqualTo(2);
@@ -150,25 +138,26 @@
}
@Test
- public void testSuggestionDismissed_moreThanTwoSuggestions_defaultMode_shouldNotCrash() {
+ public void testSuggestionDismissed_moreThanTwoSuggestions_shouldNotCrash() {
final RecyclerView data = new RecyclerView(RuntimeEnvironment.application);
final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.data)).thenReturn(data);
- final DashboardAdapter.SuggestionAndConditionContainerHolder holder =
- new DashboardAdapter.SuggestionAndConditionContainerHolder(itemView);
+ when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
+ when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
+ when(itemView.findViewById(android.R.id.title)).thenReturn(mock(TextView.class));
+ final DashboardAdapter.SuggestionContainerHolder holder =
+ new DashboardAdapter.SuggestionContainerHolder(itemView);
final List<Suggestion> suggestions = makeSuggestionsV2("pkg1", "pkg2", "pkg3", "pkg4");
- final DashboardAdapter adapter = spy(new DashboardAdapter(mContext, null /*savedInstance */,
- null /* conditions */,
- null /* suggestionControllerMixin */, null /* callback */));
+ final DashboardAdapter adapter = spy(new DashboardAdapter(mContext,
+ null /*savedInstance */, null /* conditions */,
+ null /* suggestionControllerMixin */,
+ null /* lifecycle */));
adapter.setSuggestions(suggestions);
- adapter.onBindConditionAndSuggestion(
- holder, DashboardAdapter.SUGGESTION_CONDITION_HEADER_POSITION);
- // default mode, only displaying 2 suggestions
+ adapter.onBindSuggestion(holder, 0);
- adapter.onSuggestionDismissed(suggestions.get(1));
+ adapter.onSuggestionClosed(suggestions.get(1));
// verify operations that access the lists will not cause ConcurrentModificationException
- assertThat(holder.data.getAdapter().getItemCount()).isEqualTo(1);
+ assertThat(holder.data.getAdapter().getItemCount()).isEqualTo(3);
adapter.setSuggestions(suggestions);
// should not crash
}
@@ -176,42 +165,25 @@
@Test
public void testSuggestionDismissed_onlySuggestion_updateDashboardData() {
DashboardAdapter adapter =
- spy(new DashboardAdapter(mContext, null, null, null, null));
+ spy(new DashboardAdapter(mContext, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /*
+ lifecycle */));
final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
adapter.setSuggestions(suggestions);
final DashboardData dashboardData = adapter.mDashboardData;
reset(adapter); // clear interactions tracking
- adapter.onSuggestionDismissed(suggestions.get(0));
+ adapter.onSuggestionClosed(suggestions.get(0));
assertThat(adapter.mDashboardData).isNotEqualTo(dashboardData);
verify(adapter).notifyDashboardDataChanged(any());
}
@Test
- public void testSetCategories_iconTinted() {
- TypedArray mockTypedArray = mock(TypedArray.class);
- doReturn(mockTypedArray).when(mContext).obtainStyledAttributes(any(int[].class));
- doReturn(0x89000000).when(mockTypedArray).getColor(anyInt(), anyInt());
-
- final DashboardCategory category = new DashboardCategory();
- final Icon mockIcon = mock(Icon.class);
- final Tile tile = new Tile();
- tile.isIconTintable = true;
- tile.icon = mockIcon;
- category.addTile(tile);
-
- mDashboardAdapter.setCategory(category);
-
- verify(mockIcon).setTint(eq(0x89000000));
- }
-
- @Test
- public void testBindConditionAndSuggestion_v2_shouldSetSuggestionAdapterAndNoCrash() {
- mDashboardAdapter = new DashboardAdapter(mContext, null, null, null, null);
+ public void testBindSuggestion_shouldSetSuggestionAdapterAndNoCrash() {
+ mDashboardAdapter = new DashboardAdapter(mContext, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
- final DashboardCategory category = new DashboardCategory();
- category.addTile(mock(Tile.class));
mDashboardAdapter.setSuggestions(suggestions);
@@ -220,17 +192,90 @@
when(data.getContext()).thenReturn(mContext);
when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.data)).thenReturn(data);
- final DashboardAdapter.SuggestionAndConditionContainerHolder holder =
- new DashboardAdapter.SuggestionAndConditionContainerHolder(itemView);
+ when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
+ when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
+ when(itemView.findViewById(android.R.id.title)).thenReturn(mock(TextView.class));
+ final DashboardAdapter.SuggestionContainerHolder holder =
+ new DashboardAdapter.SuggestionContainerHolder(itemView);
- mDashboardAdapter.onBindConditionAndSuggestion(
- holder, DashboardAdapter.SUGGESTION_CONDITION_HEADER_POSITION);
+ mDashboardAdapter.onBindSuggestion(holder, 0);
verify(data).setAdapter(any(SuggestionAdapter.class));
// should not crash
}
+ @Test
+ public void testBindSuggestion_shouldSetSummary() {
+ mDashboardAdapter = new DashboardAdapter(mContext, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
+ final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
+
+ mDashboardAdapter.setSuggestions(suggestions);
+
+ final RecyclerView data = mock(RecyclerView.class);
+ when(data.getResources()).thenReturn(mResources);
+ when(data.getContext()).thenReturn(mContext);
+ when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
+ final View itemView = mock(View.class);
+ when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
+ final TextView summary = mock(TextView.class);
+ when(itemView.findViewById(android.R.id.summary)).thenReturn(summary);
+ when(itemView.findViewById(android.R.id.title)).thenReturn(mock(TextView.class));
+ final DashboardAdapter.SuggestionContainerHolder holder =
+ new DashboardAdapter.SuggestionContainerHolder(itemView);
+
+ mDashboardAdapter.onBindSuggestion(holder, 0);
+
+ verify(summary).setText("1");
+
+ suggestions.addAll(makeSuggestionsV2("pkg2", "pkg3", "pkg4"));
+ mDashboardAdapter.setSuggestions(suggestions);
+
+ mDashboardAdapter.onBindSuggestion(holder, 0);
+
+ verify(summary).setText("4");
+ }
+
+ @Test
+ public void onBindTile_internalTile_shouldNotUseGenericBackgroundIcon() {
+ final Context context = RuntimeEnvironment.application;
+ final View view = LayoutInflater.from(context).inflate(R.layout.dashboard_tile, null);
+ final DashboardAdapter.DashboardItemHolder holder =
+ new DashboardAdapter.DashboardItemHolder(view);
+ final Tile tile = new Tile();
+ tile.icon = Icon.createWithResource(context, R.drawable.ic_settings);
+ final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class);
+ when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings));
+
+ mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
+ ReflectionHelpers.setField(mDashboardAdapter, "mCache", iconCache);
+ mDashboardAdapter.onBindTile(holder, tile);
+
+ verify(iconCache, never()).updateIcon(any(Icon.class), any(Drawable.class));
+ }
+
+ @Test
+ public void onBindTile_externalTile_shouldNotUseGenericBackgroundIcon() {
+ final Context context = RuntimeEnvironment.application;
+ final View view = LayoutInflater.from(context).inflate(R.layout.dashboard_tile, null);
+ final DashboardAdapter.DashboardItemHolder holder =
+ new DashboardAdapter.DashboardItemHolder(view);
+ final Tile tile = new Tile();
+ tile.icon = mock(Icon.class);
+ when(tile.icon.getResPackage()).thenReturn("another.package");
+
+ final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class);
+ when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings));
+
+ mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */,
+ null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
+ ReflectionHelpers.setField(mDashboardAdapter, "mCache", iconCache);
+ mDashboardAdapter.onBindTile(holder, tile);
+
+ verify(iconCache).updateIcon(eq(tile.icon), any(RoundedHomepageIcon.class));
+ }
+
private List<Suggestion> makeSuggestionsV2(String... pkgNames) {
final List<Suggestion> suggestions = new ArrayList<>();
for (String pkgName : pkgNames) {
@@ -245,8 +290,5 @@
private void setupSuggestions(List<Suggestion> suggestions) {
final Context context = RuntimeEnvironment.application;
mDashboardAdapter.setSuggestions(suggestions);
- mSuggestionHolder = new DashboardAdapter.SuggestionAndConditionHeaderHolder(
- LayoutInflater.from(context).inflate(
- R.layout.suggestion_condition_header, new RelativeLayout(context), true));
}
}
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterV2Test.java b/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterV2Test.java
deleted file mode 100644
index 40150cb..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardAdapterV2Test.java
+++ /dev/null
@@ -1,286 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard;
-
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.reset;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.app.PendingIntent;
-import android.content.Context;
-import android.content.res.Resources;
-import android.graphics.drawable.Drawable;
-import android.graphics.drawable.Icon;
-import android.service.settings.suggestions.Suggestion;
-import android.support.v7.widget.RecyclerView;
-import android.util.DisplayMetrics;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.TextView;
-
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.conditional.Condition;
-import com.android.settings.dashboard.suggestions.SuggestionAdapterV2;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.shadow.SettingsShadowResources;
-import com.android.settingslib.drawer.Tile;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-import org.robolectric.util.ReflectionHelpers;
-
-import java.util.ArrayList;
-import java.util.List;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH,
- sdk = TestConfig.SDK_VERSION,
- shadows = {
- SettingsShadowResources.class,
- SettingsShadowResources.SettingsShadowTheme.class,
- })
-public class DashboardAdapterV2Test {
-
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private SettingsActivity mContext;
- @Mock
- private View mView;
- @Mock
- private Condition mCondition;
- @Mock
- private Resources mResources;
- private FakeFeatureFactory mFactory;
- private DashboardAdapterV2 mDashboardAdapter;
- private List<Condition> mConditionList;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mFactory = FakeFeatureFactory.setupForTest();
- when(mFactory.dashboardFeatureProvider.shouldTintIcon()).thenReturn(true);
-
- when(mContext.getResources()).thenReturn(mResources);
- when(mResources.getQuantityString(any(int.class), any(int.class), any()))
- .thenReturn("");
-
- mConditionList = new ArrayList<>();
- mConditionList.add(mCondition);
- when(mCondition.shouldShow()).thenReturn(true);
- mDashboardAdapter = new DashboardAdapterV2(mContext, null /* savedInstanceState */,
- mConditionList, null /* suggestionControllerMixin */, null /* lifecycle */);
- when(mView.getTag()).thenReturn(mCondition);
- }
-
- @Test
- public void testSuggestionDismissed_notOnlySuggestion_updateSuggestionOnly() {
- final DashboardAdapterV2 adapter =
- spy(new DashboardAdapterV2(mContext, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /*
- lifecycle */));
- final List<Suggestion> suggestions = makeSuggestionsV2("pkg1", "pkg2", "pkg3");
- adapter.setSuggestions(suggestions);
-
- final RecyclerView data = mock(RecyclerView.class);
- when(data.getResources()).thenReturn(mResources);
- when(data.getContext()).thenReturn(mContext);
- when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
- final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
- when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
- final DashboardAdapterV2.SuggestionContainerHolder holder =
- new DashboardAdapterV2.SuggestionContainerHolder(itemView);
-
- adapter.onBindSuggestion(holder, 0);
-
- final DashboardDataV2 dashboardData = adapter.mDashboardData;
- reset(adapter); // clear interactions tracking
-
- final Suggestion suggestionToRemove = suggestions.get(1);
- adapter.onSuggestionClosed(suggestionToRemove);
-
- assertThat(adapter.mDashboardData).isEqualTo(dashboardData);
- assertThat(suggestions.size()).isEqualTo(2);
- assertThat(suggestions.contains(suggestionToRemove)).isFalse();
- verify(adapter, never()).notifyDashboardDataChanged(any());
- }
-
- @Test
- public void testSuggestionDismissed_moreThanTwoSuggestions_shouldNotCrash() {
- final RecyclerView data = new RecyclerView(RuntimeEnvironment.application);
- final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
- when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
- final DashboardAdapterV2.SuggestionContainerHolder holder =
- new DashboardAdapterV2.SuggestionContainerHolder(itemView);
- final List<Suggestion> suggestions = makeSuggestionsV2("pkg1", "pkg2", "pkg3", "pkg4");
- final DashboardAdapterV2 adapter = spy(new DashboardAdapterV2(mContext,
- null /*savedInstance */, null /* conditions */,
- null /* suggestionControllerMixin */,
- null /* lifecycle */));
- adapter.setSuggestions(suggestions);
- adapter.onBindSuggestion(holder, 0);
-
- adapter.onSuggestionClosed(suggestions.get(1));
-
- // verify operations that access the lists will not cause ConcurrentModificationException
- assertThat(holder.data.getAdapter().getItemCount()).isEqualTo(3);
- adapter.setSuggestions(suggestions);
- // should not crash
- }
-
- @Test
- public void testSuggestionDismissed_onlySuggestion_updateDashboardData() {
- DashboardAdapterV2 adapter =
- spy(new DashboardAdapterV2(mContext, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /*
- lifecycle */));
- final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
- adapter.setSuggestions(suggestions);
- final DashboardDataV2 dashboardData = adapter.mDashboardData;
- reset(adapter); // clear interactions tracking
-
- adapter.onSuggestionClosed(suggestions.get(0));
-
- assertThat(adapter.mDashboardData).isNotEqualTo(dashboardData);
- verify(adapter).notifyDashboardDataChanged(any());
- }
-
- @Test
- public void testBindSuggestion_shouldSetSuggestionAdapterAndNoCrash() {
- mDashboardAdapter = new DashboardAdapterV2(mContext, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
- final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
-
- mDashboardAdapter.setSuggestions(suggestions);
-
- final RecyclerView data = mock(RecyclerView.class);
- when(data.getResources()).thenReturn(mResources);
- when(data.getContext()).thenReturn(mContext);
- when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
- final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
- when(itemView.findViewById(android.R.id.summary)).thenReturn(mock(TextView.class));
- final DashboardAdapterV2.SuggestionContainerHolder holder =
- new DashboardAdapterV2.SuggestionContainerHolder(itemView);
-
- mDashboardAdapter.onBindSuggestion(holder, 0);
-
- verify(data).setAdapter(any(SuggestionAdapterV2.class));
- // should not crash
- }
-
- @Test
- public void testBindSuggestion_shouldSetSummary() {
- mDashboardAdapter = new DashboardAdapterV2(mContext, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
- final List<Suggestion> suggestions = makeSuggestionsV2("pkg1");
-
- mDashboardAdapter.setSuggestions(suggestions);
-
- final RecyclerView data = mock(RecyclerView.class);
- when(data.getResources()).thenReturn(mResources);
- when(data.getContext()).thenReturn(mContext);
- when(mResources.getDisplayMetrics()).thenReturn(mock(DisplayMetrics.class));
- final View itemView = mock(View.class);
- when(itemView.findViewById(R.id.suggestion_list)).thenReturn(data);
- final TextView summary = mock(TextView.class);
- when(itemView.findViewById(android.R.id.summary)).thenReturn(summary);
- final DashboardAdapterV2.SuggestionContainerHolder holder =
- new DashboardAdapterV2.SuggestionContainerHolder(itemView);
-
- mDashboardAdapter.onBindSuggestion(holder, 0);
-
- verify(summary).setText("1");
-
- suggestions.addAll(makeSuggestionsV2("pkg2", "pkg3", "pkg4"));
- mDashboardAdapter.setSuggestions(suggestions);
-
- mDashboardAdapter.onBindSuggestion(holder, 0);
-
- verify(summary).setText("4");
- }
-
- @Test
- public void onBindTile_internalTile_shouldNotUseGenericBackgroundIcon() {
- final Context context = RuntimeEnvironment.application;
- final View view = LayoutInflater.from(context).inflate(R.layout.dashboard_tile, null);
- final DashboardAdapterV2.DashboardItemHolder holder =
- new DashboardAdapterV2.DashboardItemHolder(view);
- final Tile tile = new Tile();
- tile.icon = Icon.createWithResource(context, R.drawable.ic_settings);
- final DashboardAdapterV2.IconCache iconCache = mock(DashboardAdapterV2.IconCache.class);
- when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings));
-
- mDashboardAdapter = new DashboardAdapterV2(context, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
- ReflectionHelpers.setField(mDashboardAdapter, "mCache", iconCache);
- mDashboardAdapter.onBindTile(holder, tile);
-
- verify(iconCache, never()).updateIcon(any(Icon.class), any(Drawable.class));
- }
-
- @Test
- public void onBindTile_externalTile_shouldNotUseGenericBackgroundIcon() {
- final Context context = RuntimeEnvironment.application;
- final View view = LayoutInflater.from(context).inflate(R.layout.dashboard_tile, null);
- final DashboardAdapterV2.DashboardItemHolder holder =
- new DashboardAdapterV2.DashboardItemHolder(view);
- final Tile tile = new Tile();
- tile.icon = mock(Icon.class);
- when(tile.icon.getResPackage()).thenReturn("another.package");
-
- final DashboardAdapterV2.IconCache iconCache = mock(DashboardAdapterV2.IconCache.class);
- when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings));
-
- mDashboardAdapter = new DashboardAdapterV2(context, null /* savedInstanceState */,
- null /* conditions */, null /* suggestionControllerMixin */, null /* lifecycle */);
- ReflectionHelpers.setField(mDashboardAdapter, "mCache", iconCache);
- mDashboardAdapter.onBindTile(holder, tile);
-
- verify(iconCache).updateIcon(eq(tile.icon), any(RoundedHomepageIcon.class));
- }
-
- private List<Suggestion> makeSuggestionsV2(String... pkgNames) {
- final List<Suggestion> suggestions = new ArrayList<>();
- for (String pkgName : pkgNames) {
- final Suggestion suggestion = new Suggestion.Builder(pkgName)
- .setPendingIntent(mock(PendingIntent.class))
- .build();
- suggestions.add(suggestion);
- }
- return suggestions;
- }
-
- private void setupSuggestions(List<Suggestion> suggestions) {
- final Context context = RuntimeEnvironment.application;
- mDashboardAdapter.setSuggestions(suggestions);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardDataTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardDataTest.java
index 1116d7d..35f525e 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardDataTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardDataTest.java
@@ -17,8 +17,9 @@
package com.android.settings.dashboard;
import static com.android.settings.dashboard.DashboardData.STABLE_ID_CONDITION_CONTAINER;
-import static com.android.settings.dashboard.DashboardData.STABLE_ID_SUGGESTION_CONDITION_FOOTER;
+import static com.android.settings.dashboard.DashboardData.STABLE_ID_CONDITION_FOOTER;
import static com.android.settings.dashboard.DashboardData.STABLE_ID_SUGGESTION_CONTAINER;
+import static com.android.settings.dashboard.DashboardData.STABLE_ID_SUGGESTION_CONDITION_DIVIDER;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -103,14 +104,14 @@
.setConditions(oneItemConditions)
.setCategory(mDashboardCategory)
.setSuggestions(suggestions)
- .setSuggestionConditionMode(DashboardData.HEADER_MODE_FULLY_EXPANDED)
+ .setConditionExpanded(true)
.build();
mDashboardDataWithTwoConditions = new DashboardData.Builder()
.setConditions(twoItemsConditions)
.setCategory(mDashboardCategory)
.setSuggestions(suggestions)
- .setSuggestionConditionMode(DashboardData.HEADER_MODE_FULLY_EXPANDED)
+ .setConditionExpanded(true)
.build();
mDashboardDataWithNoItems = new DashboardData.Builder()
@@ -124,21 +125,23 @@
public void testBuildItemsData_shouldSetstableId() {
final List<DashboardData.Item> items = mDashboardDataWithOneConditions.getItemList();
- // Header, suggestion, condition, footer, 1 tile
- assertThat(items).hasSize(4);
+ // suggestion, seperator, condition, footer, 1 tile
+ assertThat(items).hasSize(5);
assertThat(items.get(0).id).isEqualTo(STABLE_ID_SUGGESTION_CONTAINER);
- assertThat(items.get(1).id).isEqualTo(STABLE_ID_CONDITION_CONTAINER);
- assertThat(items.get(2).id).isEqualTo(STABLE_ID_SUGGESTION_CONDITION_FOOTER);
- assertThat(items.get(3).id).isEqualTo(Objects.hash(mTestCategoryTile.title));
+ assertThat(items.get(1).id).isEqualTo(STABLE_ID_SUGGESTION_CONDITION_DIVIDER);
+ assertThat(items.get(2).id).isEqualTo(STABLE_ID_CONDITION_CONTAINER);
+ assertThat(items.get(3).id).isEqualTo(STABLE_ID_CONDITION_FOOTER);
+ assertThat(items.get(4).id).isEqualTo(Objects.hash(mTestCategoryTile.title));
}
@Test
public void testBuildItemsData_containsAllData() {
final Object[] expectedObjects = {
mDashboardDataWithOneConditions.getSuggestions(),
+ null /* divider */,
mDashboardDataWithOneConditions.getConditions(),
- null, mTestCategoryTile};
+ null /* footer */, mTestCategoryTile};
final int expectedSize = expectedObjects.length;
assertThat(mDashboardDataWithOneConditions.getItemList()).hasSize(expectedSize);
@@ -147,14 +150,13 @@
final Object item = mDashboardDataWithOneConditions.getItemEntityByPosition(i);
if (item instanceof List) {
assertThat(item).isEqualTo(expectedObjects[i]);
- } else if (item instanceof DashboardData.SuggestionConditionHeaderData) {
- DashboardData.SuggestionConditionHeaderData i1 =
- (DashboardData.SuggestionConditionHeaderData) item;
- DashboardData.SuggestionConditionHeaderData i2 =
- (DashboardData.SuggestionConditionHeaderData) expectedObjects[i];
+ } else if (item instanceof DashboardData.ConditionHeaderData) {
+ DashboardData.ConditionHeaderData i1 =
+ (DashboardData.ConditionHeaderData) item;
+ DashboardData.ConditionHeaderData i2 =
+ (DashboardData.ConditionHeaderData) expectedObjects[i];
assertThat(i1.title).isEqualTo(i2.title);
assertThat(i1.conditionCount).isEqualTo(i2.conditionCount);
- assertThat(i1.hiddenSuggestionCount).isEqualTo(i2.hiddenSuggestionCount);
} else {
assertThat(item).isSameAs(expectedObjects[i]);
}
@@ -209,10 +211,10 @@
public void testDiffUtil_InsertOneCondition_ResultDataOneChanged() {
//Build testResultData
final List<ListUpdateResult.ResultData> testResultData = new ArrayList<>();
- // Item in position 2 is the condition container containing the list of conditions, which
+ // Item in position 3 is the condition container containing the list of conditions, which
// gets 1 more item
testResultData.add(new ListUpdateResult.ResultData(
- ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 1, 1));
+ ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 2, 1));
testDiffUtil(mDashboardDataWithOneConditions,
mDashboardDataWithTwoConditions, testResultData);
@@ -222,10 +224,11 @@
public void testDiffUtil_RemoveOneSuggestion_causeItemRemoveAndChange() {
//Build testResultData
final List<ListUpdateResult.ResultData> testResultData = new ArrayList<>();
+ // removed suggestion and the divider
testResultData.add(new ListUpdateResult.ResultData(
- ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 0, 1));
+ ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 0, 2));
testResultData.add(new ListUpdateResult.ResultData(
- ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 1, 1));
+ ListUpdateResult.ResultData.TYPE_OPERATION_CHANGE, 2, 1));
// Build DashboardData
final List<Condition> oneItemConditions = new ArrayList<>();
when(mTestCondition.shouldShow()).thenReturn(true);
@@ -237,13 +240,13 @@
.setConditions(oneItemConditions)
.setCategory(mDashboardCategory)
.setSuggestions(suggestions)
- .setSuggestionConditionMode(DashboardData.HEADER_MODE_DEFAULT)
+ .setConditionExpanded(false)
.build();
final DashboardData newData = new DashboardData.Builder()
.setConditions(oneItemConditions)
.setSuggestions(null)
.setCategory(mDashboardCategory)
- .setSuggestionConditionMode(DashboardData.HEADER_MODE_DEFAULT)
+ .setConditionExpanded(false)
.build();
testDiffUtil(oldData, newData, testResultData);
@@ -254,7 +257,7 @@
//Build testResultData
final List<ListUpdateResult.ResultData> testResultData = new ArrayList<>();
testResultData.add(new ListUpdateResult.ResultData(
- ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 0, 4));
+ ListUpdateResult.ResultData.TYPE_OPERATION_REMOVE, 0, 5));
testDiffUtil(mDashboardDataWithOneConditions, mDashboardDataWithNoItems, testResultData);
}
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
index 59823ec..d9c709e 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
@@ -16,6 +16,7 @@
package com.android.settings.dashboard;
+import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.doNothing;
@@ -34,9 +35,11 @@
import com.android.settings.TestConfig;
import com.android.settings.dashboard.conditional.ConditionManager;
import com.android.settings.dashboard.conditional.FocusRecyclerView;
+import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.drawer.CategoryKey;
import com.android.settingslib.drawer.DashboardCategory;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import org.junit.Before;
import org.junit.Test;
@@ -64,13 +67,17 @@
private ConditionManager mConditionManager;
@Mock
private SummaryLoader mSummaryLoader;
+ @Mock
+ private SuggestionControllerMixin mSuggestionControllerMixin;
private Context mContext;
private DashboardSummary mSummary;
+ private FakeFeatureFactory mFeatureFactory;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
+ mFeatureFactory = FakeFeatureFactory.setupForTest();
mContext = RuntimeEnvironment.application;
mSummary = spy(new DashboardSummary());
ReflectionHelpers.setField(mSummary, "mAdapter", mAdapter);
@@ -83,13 +90,54 @@
}
@Test
+ public void onAttach_suggestionDisabled_shouldNotStartSuggestionControllerMixin() {
+ when(mFeatureFactory.suggestionsFeatureProvider.isSuggestionEnabled(any(Context.class)))
+ .thenReturn(false);
+
+ mSummary.onAttach(mContext);
+ final SuggestionControllerMixin mixin = ReflectionHelpers
+ .getField(mSummary, "mSuggestionControllerMixin");
+ assertThat(mixin).isNull();
+ }
+
+ @Test
+ public void onAttach_suggestionEnabled_shouldStartSuggestionControllerMixin() {
+ when(mFeatureFactory.suggestionsFeatureProvider.isSuggestionEnabled(any(Context.class)))
+ .thenReturn(true);
+
+ mSummary.onAttach(mContext);
+ final SuggestionControllerMixin mixin = ReflectionHelpers
+ .getField(mSummary, "mSuggestionControllerMixin");
+ assertThat(mixin).isNotNull();
+ }
+
+ @Test
public void updateCategory_shouldGetCategoryFromFeatureProvider() {
+ ReflectionHelpers.setField(mSummary, "mSuggestionControllerMixin",
+ mSuggestionControllerMixin);
+
+ when(mSuggestionControllerMixin.isSuggestionLoaded()).thenReturn(true);
doReturn(mock(Activity.class)).when(mSummary).getActivity();
mSummary.onAttach(mContext);
mSummary.updateCategory();
verify(mSummaryLoader).updateSummaryToCache(nullable(DashboardCategory.class));
verify(mDashboardFeatureProvider).getTilesForCategory(CategoryKey.CATEGORY_HOMEPAGE);
+ verify(mAdapter).setCategory(any());
+ }
+
+ @Test
+ public void updateCategory_shouldGetCategoryFromFeatureProvider_evenIfSuggestionDisabled() {
+ when(mFeatureFactory.suggestionsFeatureProvider.isSuggestionEnabled(any(Context.class)))
+ .thenReturn(false);
+
+ doReturn(mock(Activity.class)).when(mSummary).getActivity();
+ mSummary.onAttach(mContext);
+ mSummary.updateCategory();
+
+ verify(mSummaryLoader).updateSummaryToCache(nullable(DashboardCategory.class));
+ verify(mDashboardFeatureProvider).getTilesForCategory(CategoryKey.CATEGORY_HOMEPAGE);
+ verify(mAdapter).setCategory(any());
}
@Test
@@ -137,10 +185,4 @@
mSummary.onCategoriesChanged();
verify(mSummary).rebuildUI();
}
-
- @Test
- public void onSuggestionDismissed_shouldNotRebuildUI() {
- mSummary.onSuggestionDismissed(mock(Suggestion.class));
- verify(mSummary, never()).rebuildUI();
- }
}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java b/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
index d943fe3..e33db6e 100644
--- a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterTest.java
@@ -15,6 +15,11 @@
*/
package com.android.settings.dashboard.conditional;
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
@@ -22,13 +27,9 @@
import android.widget.LinearLayout;
import com.android.settings.R;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.dashboard.DashboardAdapter;
-import com.android.settings.dashboard.DashboardData;
-
-import java.util.ArrayList;
-import java.util.List;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
import org.junit.Test;
@@ -38,9 +39,8 @@
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
+import java.util.ArrayList;
+import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
@@ -70,35 +70,23 @@
}
@Test
- public void getItemCount_notFullyExpanded_shouldReturn0() {
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_DEFAULT);
- assertThat(mConditionAdapter.getItemCount()).isEqualTo(0);
-
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_SUGGESTION_EXPANDED);
- assertThat(mConditionAdapter.getItemCount()).isEqualTo(0);
-
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_COLLAPSED);
+ public void getItemCount_notExpanded_shouldReturn0() {
+ mConditionAdapter = new ConditionAdapter(mContext, mOneCondition, false);
assertThat(mConditionAdapter.getItemCount()).isEqualTo(0);
}
@Test
- public void getItemCount_fullyExpanded_shouldReturnListSize() {
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_FULLY_EXPANDED);
+ public void getItemCount_expanded_shouldReturnListSize() {
+ mConditionAdapter = new ConditionAdapter(mContext, mOneCondition, true);
assertThat(mConditionAdapter.getItemCount()).isEqualTo(1);
- mConditionAdapter = new ConditionAdapter(
- mContext, mTwoConditions, DashboardData.HEADER_MODE_FULLY_EXPANDED);
+ mConditionAdapter = new ConditionAdapter(mContext, mTwoConditions, true);
assertThat(mConditionAdapter.getItemCount()).isEqualTo(2);
}
@Test
public void getItemViewType_shouldReturnConditionTile() {
- mConditionAdapter = new ConditionAdapter(
- mContext, mTwoConditions, DashboardData.HEADER_MODE_FULLY_EXPANDED);
+ mConditionAdapter = new ConditionAdapter(mContext, mTwoConditions, true);
assertThat(mConditionAdapter.getItemViewType(0)).isEqualTo(R.layout.condition_tile);
}
@@ -108,8 +96,7 @@
R.layout.condition_tile, new LinearLayout(mContext), true);
final DashboardAdapter.DashboardItemHolder viewHolder =
new DashboardAdapter.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_SUGGESTION_EXPANDED);
+ mConditionAdapter = new ConditionAdapter(mContext, mOneCondition, true);
mConditionAdapter.onBindViewHolder(viewHolder, 0);
final View card = view.findViewById(R.id.content);
@@ -122,8 +109,7 @@
R.layout.condition_tile, new LinearLayout(mContext), true);
final DashboardAdapter.DashboardItemHolder viewHolder =
new DashboardAdapter.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_SUGGESTION_EXPANDED);
+ mConditionAdapter = new ConditionAdapter(mContext, mOneCondition, true);
mConditionAdapter.onBindViewHolder(viewHolder, 0);
final View card = view.findViewById(R.id.content);
@@ -137,9 +123,8 @@
final View view = LayoutInflater.from(mContext).inflate(
R.layout.condition_tile, new LinearLayout(mContext), true);
final DashboardAdapter.DashboardItemHolder viewHolder =
- new DashboardAdapter.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapter(
- mContext, mOneCondition, DashboardData.HEADER_MODE_SUGGESTION_EXPANDED);
+ new DashboardAdapter.DashboardItemHolder(view);
+ mConditionAdapter = new ConditionAdapter(mContext, mOneCondition, true);
mConditionAdapter.addDismissHandling(recyclerView);
// do not bind viewholder to simulate the null condition scenario
diff --git a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterV2Test.java b/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterV2Test.java
deleted file mode 100644
index 5e0ecec..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/conditional/ConditionAdapterV2Test.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard.conditional;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.support.v7.widget.RecyclerView;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.LinearLayout;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.DashboardAdapterV2;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-import java.util.ArrayList;
-import java.util.List;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class ConditionAdapterV2Test {
- @Mock
- private Condition mCondition1;
- @Mock
- private Condition mCondition2;
-
- private Context mContext;
- private ConditionAdapterV2 mConditionAdapter;
- private List<Condition> mOneCondition;
- private List<Condition> mTwoConditions;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
- final CharSequence[] actions = new CharSequence[2];
- when(mCondition1.getActions()).thenReturn(actions);
- when(mCondition1.shouldShow()).thenReturn(true);
- mOneCondition = new ArrayList<>();
- mOneCondition.add(mCondition1);
- mTwoConditions = new ArrayList<>();
- mTwoConditions.add(mCondition1);
- mTwoConditions.add(mCondition2);
- }
-
- @Test
- public void getItemCount_notExpanded_shouldReturn0() {
- mConditionAdapter = new ConditionAdapterV2(mContext, mOneCondition, false);
- assertThat(mConditionAdapter.getItemCount()).isEqualTo(0);
- }
-
- @Test
- public void getItemCount_expanded_shouldReturnListSize() {
- mConditionAdapter = new ConditionAdapterV2(mContext, mOneCondition, true);
- assertThat(mConditionAdapter.getItemCount()).isEqualTo(1);
-
- mConditionAdapter = new ConditionAdapterV2(mContext, mTwoConditions, true);
- assertThat(mConditionAdapter.getItemCount()).isEqualTo(2);
- }
-
- @Test
- public void getItemViewType_shouldReturnConditionTile() {
- mConditionAdapter = new ConditionAdapterV2(mContext, mTwoConditions, true);
- assertThat(mConditionAdapter.getItemViewType(0)).isEqualTo(R.layout.condition_tile);
- }
-
- @Test
- public void onBindViewHolder_shouldSetListener() {
- final View view = LayoutInflater.from(mContext).inflate(
- R.layout.condition_tile, new LinearLayout(mContext), true);
- final DashboardAdapterV2.DashboardItemHolder viewHolder =
- new DashboardAdapterV2.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapterV2(mContext, mOneCondition, true);
-
- mConditionAdapter.onBindViewHolder(viewHolder, 0);
- final View card = view.findViewById(R.id.content);
- assertThat(card.hasOnClickListeners()).isTrue();
- }
-
- @Test
- public void viewClick_shouldInvokeConditionPrimaryClick() {
- final View view = LayoutInflater.from(mContext).inflate(
- R.layout.condition_tile, new LinearLayout(mContext), true);
- final DashboardAdapterV2.DashboardItemHolder viewHolder =
- new DashboardAdapterV2.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapterV2(mContext, mOneCondition, true);
-
- mConditionAdapter.onBindViewHolder(viewHolder, 0);
- final View card = view.findViewById(R.id.content);
- card.performClick();
- verify(mCondition1).onPrimaryClick();
- }
-
- @Test
- public void onSwiped_nullCondition_shouldNotCrash() {
- final RecyclerView recyclerView = new RecyclerView(mContext);
- final View view = LayoutInflater.from(mContext).inflate(
- R.layout.condition_tile, new LinearLayout(mContext), true);
- final DashboardAdapterV2.DashboardItemHolder viewHolder =
- new DashboardAdapterV2.DashboardItemHolder(view);
- mConditionAdapter = new ConditionAdapterV2(mContext, mOneCondition, true);
- mConditionAdapter.addDismissHandling(recyclerView);
-
- // do not bind viewholder to simulate the null condition scenario
- mConditionAdapter.mSwipeCallback.onSwiped(viewHolder, 0);
- // no crash
- }
-
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/ShadowSuggestionController.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/ShadowSuggestionController.java
deleted file mode 100644
index b720f83..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/ShadowSuggestionController.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import android.service.settings.suggestions.Suggestion;
-
-import org.robolectric.annotation.Implementation;
-import org.robolectric.annotation.Implements;
-
-import java.util.List;
-
-@Implements(SuggestionController.class)
-public class ShadowSuggestionController {
-
- public static boolean sStartCalled;
- public static boolean sStopCalled;
- public static boolean sGetSuggestionCalled;
-
- public static List<Suggestion> sSuggestions;
-
- public static void reset() {
- sStartCalled = false;
- sStopCalled = false;
- sGetSuggestionCalled = false;
- sSuggestions = null;
- }
-
- @Implementation
- public void start() {
- sStartCalled = true;
- }
-
- @Implementation
- public void stop() {
- sStopCalled = true;
- }
-
- public static void setSuggestion(List<Suggestion> suggestions) {
- sSuggestions = suggestions;
- }
-
- @Implementation
- public List<Suggestion> getSuggestions() {
- sGetSuggestionCalled = true;
- return sSuggestions;
- }
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
index 2ecab8d..bac02d3 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java
@@ -16,16 +16,27 @@
package com.android.settings.dashboard.suggestions;
import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import android.app.PendingIntent;
import android.content.Context;
+import android.content.res.Resources;
+import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
import android.graphics.drawable.Icon;
import android.service.settings.suggestions.Suggestion;
+import android.view.Display;
import android.view.LayoutInflater;
import android.view.View;
+import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
@@ -36,6 +47,7 @@
import com.android.settings.dashboard.DashboardAdapter;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import org.junit.Before;
import org.junit.Test;
@@ -45,6 +57,7 @@
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
import java.util.List;
@@ -57,17 +70,33 @@
private SettingsActivity mActivity;
@Mock
private SuggestionControllerMixin mSuggestionControllerMixin;
+ @Mock
+ private Resources mResources;
+ @Mock
+ private WindowManager mWindowManager;
+
private FakeFeatureFactory mFeatureFactory;
private Context mContext;
private SuggestionAdapter mSuggestionAdapter;
private DashboardAdapter.DashboardItemHolder mSuggestionHolder;
private List<Suggestion> mOneSuggestion;
private List<Suggestion> mTwoSuggestions;
+ private SuggestionAdapter.CardConfig mConfig;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
+ mContext = spy(RuntimeEnvironment.application);
+ when(mActivity.getSystemService(Context.WINDOW_SERVICE)).thenReturn(mWindowManager);
+ when(mActivity.getResources()).thenReturn(mResources);
+ when(mResources.getDimensionPixelOffset(R.dimen.suggestion_card_inner_margin))
+ .thenReturn(10);
+ when(mResources.getDimensionPixelOffset(R.dimen.suggestion_card_outer_margin))
+ .thenReturn(20);
+ when(mResources.getDimensionPixelOffset(R.dimen.suggestion_card_width_multiple_cards))
+ .thenReturn(120);
+ mConfig = spy(SuggestionAdapter.CardConfig.get(mActivity));
+
mFeatureFactory = FakeFeatureFactory.setupForTest();
final Suggestion suggestion1 = new Suggestion.Builder("id1")
@@ -86,20 +115,21 @@
@Test
public void getItemCount_shouldReturnListSize() {
mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- mOneSuggestion, new ArrayList<>());
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(mOneSuggestion);
assertThat(mSuggestionAdapter.getItemCount()).isEqualTo(1);
- mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- mTwoSuggestions, new ArrayList<>());
+ mSuggestionAdapter.setSuggestions(mTwoSuggestions);
assertThat(mSuggestionAdapter.getItemCount()).isEqualTo(2);
}
@Test
public void getItemViewType_shouldReturnSuggestionTile() {
mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- mOneSuggestion, new ArrayList<>());
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(mOneSuggestion);
assertThat(mSuggestionAdapter.getItemViewType(0))
- .isEqualTo(R.layout.suggestion_tile);
+ .isEqualTo(R.layout.suggestion_tile);
}
@Test
@@ -111,19 +141,22 @@
.setSummary("456")
.build());
mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- suggestions, new ArrayList<>());
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
assertThat(mSuggestionAdapter.getItemViewType(0))
- .isEqualTo(R.layout.suggestion_tile_with_button);
+ .isEqualTo(R.layout.suggestion_tile_with_button);
}
@Test
public void onBindViewHolder_shouldLog() {
final View view = spy(LayoutInflater.from(mContext).inflate(
- R.layout.suggestion_tile, new LinearLayout(mContext), true));
+ R.layout.suggestion_tile, new LinearLayout(mContext), true));
mSuggestionHolder = new DashboardAdapter.DashboardItemHolder(view);
mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
- mOneSuggestion, new ArrayList<>());
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(mOneSuggestion);
+ doReturn("sans").when(mContext).getString(anyInt());
// Bind twice
mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
@@ -149,6 +182,32 @@
}
@Test
+ public void onBindViewHolder_hasButton_buttonShouldHandleClick()
+ throws PendingIntent.CanceledException {
+ final List<Suggestion> suggestions = new ArrayList<>();
+ final PendingIntent pendingIntent = mock(PendingIntent.class);
+ suggestions.add(new Suggestion.Builder("id")
+ .setFlags(Suggestion.FLAG_HAS_BUTTON)
+ .setTitle("123")
+ .setSummary("456")
+ .setPendingIntent(pendingIntent)
+ .build());
+ mSuggestionAdapter = new SuggestionAdapter(mContext, mSuggestionControllerMixin,
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
+ mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
+ new FrameLayout(RuntimeEnvironment.application),
+ mSuggestionAdapter.getItemViewType(0));
+ doReturn("sans").when(mContext).getString(anyInt());
+
+ mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
+ mSuggestionHolder.itemView.findViewById(android.R.id.primary).performClick();
+
+ verify(mSuggestionControllerMixin).launchSuggestion(suggestions.get(0));
+ verify(pendingIntent).send();
+ }
+
+ @Test
public void getSuggestions_shouldReturnSuggestionWhenMatch() {
final List<Suggestion> suggestions = makeSuggestions("pkg1");
setupSuggestions(mActivity, suggestions);
@@ -156,9 +215,127 @@
assertThat(mSuggestionAdapter.getSuggestion(0)).isNotNull();
}
+ @Test
+ public void onBindViewHolder_closeButtonShouldHandleClick()
+ throws PendingIntent.CanceledException {
+ final List<Suggestion> suggestions = makeSuggestions("pkg1");
+ final SuggestionAdapter.Callback callback = mock(SuggestionAdapter.Callback.class);
+ mSuggestionAdapter = new SuggestionAdapter(mActivity, mSuggestionControllerMixin,
+ null /* savedInstanceState */, callback, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
+ mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
+ new FrameLayout(RuntimeEnvironment.application),
+ mSuggestionAdapter.getItemViewType(0));
+
+ mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
+ mSuggestionHolder.itemView.findViewById(R.id.close_button).performClick();
+
+ final Suggestion suggestion = suggestions.get(0);
+ verify(mFeatureFactory.suggestionsFeatureProvider).dismissSuggestion(
+ mActivity, mSuggestionControllerMixin, suggestion);
+ verify(callback).onSuggestionClosed(suggestion);
+ }
+
+ @Test
+ public void onBindViewHolder_iconNotTintable_shouldNotTintIcon()
+ throws PendingIntent.CanceledException {
+ final Icon icon = mock(Icon.class);
+ final Suggestion suggestion = new Suggestion.Builder("pkg1")
+ .setPendingIntent(mock(PendingIntent.class))
+ .setIcon(icon)
+ .build();
+ final List<Suggestion> suggestions = new ArrayList<>();
+ suggestions.add(suggestion);
+ mSuggestionAdapter = new SuggestionAdapter(mActivity, mSuggestionControllerMixin,
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
+ mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
+ new FrameLayout(RuntimeEnvironment.application),
+ mSuggestionAdapter.getItemViewType(0));
+ DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class);
+ final Drawable drawable = mock(Drawable.class);
+ when(cache.getIcon(icon)).thenReturn(drawable);
+ ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache);
+
+ mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
+
+ verify(drawable, never()).setTint(anyInt());
+ }
+
+ @Test
+ public void onBindViewHolder_iconTintable_shouldTintIcon()
+ throws PendingIntent.CanceledException {
+ final Icon icon = mock(Icon.class);
+ final int FLAG_ICON_TINTABLE = 1 << 1;
+ final Suggestion suggestion = new Suggestion.Builder("pkg1")
+ .setPendingIntent(mock(PendingIntent.class))
+ .setIcon(icon)
+ .setFlags(FLAG_ICON_TINTABLE)
+ .build();
+ final List<Suggestion> suggestions = new ArrayList<>();
+ suggestions.add(suggestion);
+ mSuggestionAdapter = new SuggestionAdapter(mActivity, mSuggestionControllerMixin,
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
+ mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
+ new FrameLayout(RuntimeEnvironment.application),
+ mSuggestionAdapter.getItemViewType(0));
+ DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class);
+ final Drawable drawable = mock(Drawable.class);
+ when(cache.getIcon(icon)).thenReturn(drawable);
+ ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache);
+ TypedArray typedArray = mock(TypedArray.class);
+ final int colorAccent = 1234;
+ when(mActivity.obtainStyledAttributes(any())).thenReturn(typedArray);
+ when(typedArray.getColor(anyInt(), anyInt())).thenReturn(colorAccent);
+
+ mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
+
+ verify(drawable).setTint(colorAccent);
+ }
+
+ @Test
+ public void setCardLayout_oneCard_shouldSetCardWidthToMatchParent() {
+ final List<Suggestion> suggestions = makeSuggestions("pkg1");
+ setupSuggestions(mContext, suggestions);
+
+ mConfig.setCardLayout(mSuggestionHolder, 1, 0);
+
+ assertThat(mSuggestionHolder.itemView.getLayoutParams().width)
+ .isEqualTo(LinearLayout.LayoutParams.MATCH_PARENT);
+ }
+
+ @Test
+ public void setCardLayout_twoCards_shouldSetCardWidthToHalfScreenMinusPadding() {
+ final List<Suggestion> suggestions = makeSuggestions("pkg1");
+ setupSuggestions(mContext, suggestions);
+ doReturn(200).when(mConfig).getScreenWidth();
+
+ mConfig.setCardLayout(mSuggestionHolder, 2, 0);
+
+ /*
+ * card width = (screen width - left margin - inner margin - right margin) / 2
+ * = (200 - 20 - 10 - 20) / 2
+ * = 75
+ */
+ assertThat(mSuggestionHolder.itemView.getLayoutParams().width).isEqualTo(75);
+ }
+
+
+ @Test
+ public void setCardLayout_multipleCards_shouldSetCardWidthFromResource() {
+ final List<Suggestion> suggestions = makeSuggestions("pkg1");
+ setupSuggestions(mContext, suggestions);
+
+ mConfig.setCardLayout(mSuggestionHolder, 3, 0);
+
+ assertThat(mSuggestionHolder.itemView.getLayoutParams().width).isEqualTo(120);
+ }
+
private void setupSuggestions(Context context, List<Suggestion> suggestions) {
mSuggestionAdapter = new SuggestionAdapter(context, mSuggestionControllerMixin,
- suggestions, new ArrayList<>());
+ null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
+ mSuggestionAdapter.setSuggestions(suggestions);
mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
new FrameLayout(RuntimeEnvironment.application),
mSuggestionAdapter.getItemViewType(0));
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2Test.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2Test.java
deleted file mode 100644
index 2297f07..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterV2Test.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.dashboard.suggestions;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-
-import android.app.PendingIntent;
-import android.content.Context;
-import android.service.settings.suggestions.Suggestion;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-
-import com.android.internal.logging.nano.MetricsProto;
-import com.android.settings.R;
-import com.android.settings.SettingsActivity;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.DashboardAdapterV2;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-import java.util.ArrayList;
-import java.util.List;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class SuggestionAdapterV2Test {
-
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private SettingsActivity mActivity;
- @Mock
- private SuggestionControllerMixin mSuggestionControllerMixin;
- private FakeFeatureFactory mFeatureFactory;
- private Context mContext;
- private SuggestionAdapterV2 mSuggestionAdapter;
- private DashboardAdapterV2.DashboardItemHolder mSuggestionHolder;
- private List<Suggestion> mOneSuggestion;
- private List<Suggestion> mTwoSuggestions;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
- mFeatureFactory = FakeFeatureFactory.setupForTest();
-
- final Suggestion suggestion1 = new Suggestion.Builder("id1")
- .setTitle("Test suggestion 1")
- .build();
- final Suggestion suggestion2 = new Suggestion.Builder("id2")
- .setTitle("Test suggestion 2")
- .build();
- mOneSuggestion = new ArrayList<>();
- mOneSuggestion.add(suggestion1);
- mTwoSuggestions = new ArrayList<>();
- mTwoSuggestions.add(suggestion1);
- mTwoSuggestions.add(suggestion2);
- }
-
- @Test
- public void getItemCount_shouldReturnListSize() {
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(mOneSuggestion);
- assertThat(mSuggestionAdapter.getItemCount()).isEqualTo(1);
-
- mSuggestionAdapter.setSuggestions(mTwoSuggestions);
- assertThat(mSuggestionAdapter.getItemCount()).isEqualTo(2);
- }
-
- @Test
- public void getItemViewType_shouldReturnSuggestionTile() {
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(mOneSuggestion);
- assertThat(mSuggestionAdapter.getItemViewType(0))
- .isEqualTo(R.layout.suggestion_tile_v2);
- }
-
- @Test
- public void getItemType_hasButton_shouldReturnSuggestionWithButton() {
- final List<Suggestion> suggestions = new ArrayList<>();
- suggestions.add(new Suggestion.Builder("id")
- .setFlags(Suggestion.FLAG_HAS_BUTTON)
- .setTitle("123")
- .setSummary("456")
- .build());
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(suggestions);
-
- assertThat(mSuggestionAdapter.getItemViewType(0))
- .isEqualTo(R.layout.suggestion_tile_with_button_v2);
- }
-
- @Test
- public void onBindViewHolder_shouldLog() {
- final View view = spy(LayoutInflater.from(mContext).inflate(
- R.layout.suggestion_tile, new LinearLayout(mContext), true));
- mSuggestionHolder = new DashboardAdapterV2.DashboardItemHolder(view);
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(mOneSuggestion);
-
- // Bind twice
- mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
- mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
-
- // Log once
- verify(mFeatureFactory.metricsFeatureProvider).action(
- mContext, MetricsProto.MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION,
- mOneSuggestion.get(0).getId());
- }
-
- @Test
- public void onBindViewHolder_itemViewShouldHandleClick()
- throws PendingIntent.CanceledException {
- final List<Suggestion> suggestions = makeSuggestions("pkg1");
- setupSuggestions(mActivity, suggestions);
-
- mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
- mSuggestionHolder.itemView.performClick();
-
- verify(mSuggestionControllerMixin).launchSuggestion(suggestions.get(0));
- verify(suggestions.get(0).getPendingIntent()).send();
- }
-
- @Test
- public void onBindViewHolder_hasButton_buttonShouldHandleClick()
- throws PendingIntent.CanceledException {
- final List<Suggestion> suggestions = new ArrayList<>();
- final PendingIntent pendingIntent = mock(PendingIntent.class);
- suggestions.add(new Suggestion.Builder("id")
- .setFlags(Suggestion.FLAG_HAS_BUTTON)
- .setTitle("123")
- .setSummary("456")
- .setPendingIntent(pendingIntent)
- .build());
- mSuggestionAdapter = new SuggestionAdapterV2(mContext, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(suggestions);
- mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
- new FrameLayout(RuntimeEnvironment.application),
- mSuggestionAdapter.getItemViewType(0));
-
- mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
- mSuggestionHolder.itemView.findViewById(android.R.id.primary).performClick();
-
- verify(mSuggestionControllerMixin).launchSuggestion(suggestions.get(0));
- verify(pendingIntent).send();
- }
-
- @Test
- public void getSuggestions_shouldReturnSuggestionWhenMatch() {
- final List<Suggestion> suggestions = makeSuggestions("pkg1");
- setupSuggestions(mActivity, suggestions);
-
- assertThat(mSuggestionAdapter.getSuggestion(0)).isNotNull();
- }
-
- @Test
- public void onBindViewHolder_closeButtonShouldHandleClick()
- throws PendingIntent.CanceledException {
- final List<Suggestion> suggestions = makeSuggestions("pkg1");
- final SuggestionAdapterV2.Callback callback = mock(SuggestionAdapterV2.Callback.class);
- mSuggestionAdapter = new SuggestionAdapterV2(mActivity, mSuggestionControllerMixin,
- null /* savedInstanceState */, callback, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(suggestions);
- mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
- new FrameLayout(RuntimeEnvironment.application),
- mSuggestionAdapter.getItemViewType(0));
-
- mSuggestionAdapter.onBindViewHolder(mSuggestionHolder, 0);
- mSuggestionHolder.itemView.findViewById(R.id.close_button).performClick();
-
- verify(callback).onSuggestionClosed(suggestions.get(0));
- }
-
- private void setupSuggestions(Context context, List<Suggestion> suggestions) {
- mSuggestionAdapter = new SuggestionAdapterV2(context, mSuggestionControllerMixin,
- null /* savedInstanceState */, null /* callback */, null /* lifecycle */);
- mSuggestionAdapter.setSuggestions(suggestions);
- mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder(
- new FrameLayout(RuntimeEnvironment.application),
- mSuggestionAdapter.getItemViewType(0));
- }
-
- private List<Suggestion> makeSuggestions(String... pkgNames) {
- final List<Suggestion> suggestions = new ArrayList<>();
- for (String pkgName : pkgNames) {
- final Suggestion suggestion = new Suggestion.Builder(pkgName)
- .setPendingIntent(mock(PendingIntent.class))
- .build();
- suggestions.add(suggestion);
- }
- return suggestions;
- }
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixinTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixinTest.java
deleted file mode 100644
index 822cb10..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixinTest.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import static android.arch.lifecycle.Lifecycle.Event.ON_START;
-import static android.arch.lifecycle.Lifecycle.Event.ON_STOP;
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.app.LoaderManager;
-import android.arch.lifecycle.LifecycleOwner;
-import android.content.Context;
-
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = {
- ShadowSuggestionController.class
- })
-public class SuggestionControllerMixinTest {
-
- @Mock
- private SuggestionControllerMixin.SuggestionControllerHost mHost;
-
- private Context mContext;
- private LifecycleOwner mLifecycleOwner;
- private Lifecycle mLifecycle;
- private SuggestionControllerMixin mMixin;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
- FakeFeatureFactory.setupForTest();
- mLifecycleOwner = () -> mLifecycle;
- mLifecycle = new Lifecycle(mLifecycleOwner);
- }
-
- @After
- public void tearDown() {
- ShadowSuggestionController.reset();
- }
-
- @Test
- public void goThroughLifecycle_onStartStop_shouldStartStopController() {
- mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
-
- mLifecycle.handleLifecycleEvent(ON_START);
- assertThat(ShadowSuggestionController.sStartCalled).isTrue();
-
- mLifecycle.handleLifecycleEvent(ON_STOP);
- assertThat(ShadowSuggestionController.sStopCalled).isTrue();
- }
-
- @Test
- public void onServiceConnected_shouldGetSuggestion() {
- final LoaderManager loaderManager = mock(LoaderManager.class);
- when(mHost.getLoaderManager()).thenReturn(loaderManager);
-
- mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
- mMixin.onServiceConnected();
-
- verify(loaderManager).restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS,
- null /* args */, mMixin /* callback */);
- }
-
- @Test
- public void onServiceConnected_hostNotAttached_shouldDoNothing() {
- when(mHost.getLoaderManager()).thenReturn(null);
-
- mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
- mMixin.onServiceConnected();
-
- verify(mHost).getLoaderManager();
- }
-
- @Test
- public void onServiceDisconnected_hostNotAttached_shouldDoNothing() {
- when(mHost.getLoaderManager()).thenReturn(null);
-
- mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
- mMixin.onServiceDisconnected();
-
- verify(mHost).getLoaderManager();
- }
-
- @Test
- public void doneLoadingg_shouldSetSuggestionLoaded() {
- mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle);
-
- mMixin.onLoadFinished(mock(SuggestionLoader.class), null);
-
- assertThat(mMixin.isSuggestionLoaded()).isTrue();
-
- mMixin.onLoaderReset(mock(SuggestionLoader.class));
-
- assertThat(mMixin.isSuggestionLoaded()).isFalse();
- }
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java
deleted file mode 100644
index a437cb4..0000000
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionDismissControllerTest.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.dashboard.suggestions;
-
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.ArgumentMatchers.nullable;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.eq;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.service.settings.suggestions.Suggestion;
-import android.support.v7.widget.RecyclerView;
-import android.support.v7.widget.helper.ItemTouchHelper;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class SuggestionDismissControllerTest {
-
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private Context mContext;
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private RecyclerView mRecyclerView;
- @Mock
- private SuggestionControllerMixin mSuggestionControllerMixin;
- @Mock
- private SuggestionDismissController.Callback mCallback;
-
- private FakeFeatureFactory mFactory;
- private SuggestionDismissController mController;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mFactory = FakeFeatureFactory.setupForTest();
-
- when(mRecyclerView.getResources().getDimension(anyInt())).thenReturn(50F);
-
- mController = new SuggestionDismissController(mContext, mRecyclerView,
- mSuggestionControllerMixin, mCallback);
- }
-
- @Test
- public void onMove_alwaysReturnTrue() {
- assertThat(mController.onMove(null, null, null)).isTrue();
- }
-
- @Test
- public void getSwipeDirs_isSuggestionTile_shouldReturnDirection() {
- final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
- when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile);
-
- assertThat(mController.getSwipeDirs(mRecyclerView, vh))
- .isEqualTo(ItemTouchHelper.START | ItemTouchHelper.END);
- }
-
- @Test
- public void getSwipeDirs_isSuggestionTileCard_shouldReturnDirection() {
- final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
- when(vh.getItemViewType()).thenReturn(R.layout.suggestion_tile_with_button);
-
- assertThat(mController.getSwipeDirs(mRecyclerView, vh))
- .isEqualTo(ItemTouchHelper.START | ItemTouchHelper.END);
- }
-
- @Test
- public void getSwipeDirs_isNotSuggestionTile_shouldReturn0() {
- final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
- when(vh.getItemViewType()).thenReturn(R.layout.condition_tile);
-
- assertThat(mController.getSwipeDirs(mRecyclerView, vh))
- .isEqualTo(0);
- }
-
- @Test
- public void onSwiped_shouldTriggerDismissSuggestion() {
- final RecyclerView.ViewHolder vh = mock(RecyclerView.ViewHolder.class);
- when(mCallback.getSuggestionAt(anyInt())).thenReturn(
- new Suggestion.Builder("id").build());
-
- mController.onSwiped(vh, ItemTouchHelper.START);
-
- verify(mFactory.suggestionsFeatureProvider).dismissSuggestion(
- eq(mContext), eq(mSuggestionControllerMixin), nullable(Suggestion.class));
- verify(mCallback).onSuggestionDismissed(nullable(Suggestion.class));
- }
-}
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
index 8ed885f..e9c8805 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
@@ -44,6 +44,7 @@
import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settings.testutils.shadow.ShadowSecureSettings;
import com.android.settingslib.drawer.Tile;
+import com.android.settingslib.suggestions.SuggestionControllerMixin;
import org.junit.After;
import org.junit.Before;
@@ -113,13 +114,13 @@
public void isSuggestionEnabled_isLowMemoryDevice_shouldReturnFalse() {
when(mActivityManager.isLowRamDevice()).thenReturn(true);
- assertThat(mProvider.isSuggestionV2Enabled(mContext)).isFalse();
+ assertThat(mProvider.isSuggestionEnabled(mContext)).isFalse();
}
@Test
public void isSuggestionV2Enabled_isNotLowMemoryDevice_shouldReturnTrue() {
when(mActivityManager.isLowRamDevice()).thenReturn(false);
- assertThat(mProvider.isSuggestionV2Enabled(mContext)).isTrue();
+ assertThat(mProvider.isSuggestionEnabled(mContext)).isTrue();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java b/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
index 7cd09de..58643b6 100644
--- a/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/AppDataUsageTest.java
@@ -29,8 +29,8 @@
import static org.mockito.Mockito.when;
import android.content.pm.PackageManager;
+import android.net.NetworkPolicyManager;
import android.os.Bundle;
-import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.PreferenceManager;
import android.support.v7.preference.PreferenceScreen;
import android.util.ArraySet;
@@ -40,8 +40,11 @@
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowEntityHeaderController;
+import com.android.settings.testutils.shadow.ShadowRestrictedLockUtils;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.AppItem;
+import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.After;
@@ -57,7 +60,10 @@
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = ShadowEntityHeaderController.class)
+ shadows = {
+ ShadowEntityHeaderController.class,
+ ShadowRestrictedLockUtils.class
+ })
public class AppDataUsageTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
@@ -134,7 +140,7 @@
public void changePreference_backgroundData_shouldUpdateUI() {
mFragment = spy(new AppDataUsage());
final AppItem appItem = new AppItem(123456789);
- final SwitchPreference pref = mock(SwitchPreference.class);
+ final RestrictedSwitchPreference pref = mock(RestrictedSwitchPreference.class);
final DataSaverBackend dataSaverBackend = mock(DataSaverBackend.class);
ReflectionHelpers.setField(mFragment, "mAppItem", appItem);
ReflectionHelpers.setField(mFragment, "mRestrictBackground", pref);
@@ -146,4 +152,31 @@
verify(mFragment).updatePrefs();
}
+
+ @Test
+ public void updatePrefs_restrictedByAdmin_shouldDisablePreference() {
+ mFragment = spy(new AppDataUsage());
+ final int testUid = 123123;
+ final AppItem appItem = new AppItem(testUid);
+ final RestrictedSwitchPreference restrictBackgroundPref
+ = mock(RestrictedSwitchPreference.class);
+ final RestrictedSwitchPreference unrestrictedDataPref
+ = mock(RestrictedSwitchPreference.class);
+ final DataSaverBackend dataSaverBackend = mock(DataSaverBackend.class);
+ final NetworkPolicyManager networkPolicyManager = mock(NetworkPolicyManager.class);
+ ReflectionHelpers.setField(mFragment, "mAppItem", appItem);
+ ReflectionHelpers.setField(mFragment, "mRestrictBackground", restrictBackgroundPref);
+ ReflectionHelpers.setField(mFragment, "mUnrestrictedData", unrestrictedDataPref);
+ ReflectionHelpers.setField(mFragment, "mDataSaverBackend", dataSaverBackend);
+ ReflectionHelpers.setField(mFragment.services, "mPolicyManager", networkPolicyManager);
+
+ ShadowRestrictedLockUtils.setRestricted(true);
+ doReturn(NetworkPolicyManager.POLICY_NONE).when(networkPolicyManager)
+ .getUidPolicy(testUid);
+
+ mFragment.updatePrefs();
+
+ verify(restrictBackgroundPref).setDisabledByAdmin(any(EnforcedAdmin.class));
+ verify(unrestrictedDataPref).setDisabledByAdmin(any(EnforcedAdmin.class));
+ }
}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataPlanSummaryPreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/DataPlanSummaryPreferenceTest.java
deleted file mode 100644
index 9ddce53..0000000
--- a/tests/robotests/src/com/android/settings/datausage/DataPlanSummaryPreferenceTest.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.content.Context;
-import android.graphics.Color;
-import android.support.v7.preference.PreferenceViewHolder;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.shadow.SettingsShadowResources;
-import com.android.settings.widget.DonutView;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = {
- SettingsShadowResources.class,
- SettingsShadowResources.SettingsShadowTheme.class
- }
-)
-public final class DataPlanSummaryPreferenceTest {
-
- private static final String TEST_PLAN_USAGE = "Test plan usage";
- private static final String TEST_PLAN_NAME = "Test plan name";
- private static final String TEST_PLAN_DESCRIPTION = "Test plan description";
- private static int sPlanUsageTextColor;
- private static int sMeterBackgroundColor;
- private static int sMeterConsumedColor;
-
- @BeforeClass
- public static void beforeClass() {
- sPlanUsageTextColor = Color.parseColor("#FF5C94F1");
- sMeterBackgroundColor = Color.parseColor("#FFDBDCDC");
- sMeterConsumedColor = Color.parseColor("#FF5C94F1");
- }
-
- private DataPlanSummaryPreference mPreference;
- private PreferenceViewHolder mHolder;
-
- @Before
- public void setUp() {
- SettingsShadowResources.overrideResource(
- com.android.internal.R.string.config_headlineFontFamily, "");
- Context context = RuntimeEnvironment.application;
- mPreference = new DataPlanSummaryPreference(context);
- LayoutInflater inflater = LayoutInflater.from(context);
- View view = inflater.inflate(mPreference.getLayoutResource(),
- new LinearLayout(context), false);
- mHolder = PreferenceViewHolder.createInstanceForTests(view);
- }
-
- @After
- public void tearDown() {
- SettingsShadowResources.reset();
- }
-
- @Test
- public void shouldRender_withoutData() {
- mPreference.onBindViewHolder(mHolder);
-
- TextView planUsageTextView = (TextView) mHolder.findViewById(android.R.id.title);
- assertThat(planUsageTextView.getText().toString()).isEmpty();
- TextView planNameTextView = (TextView) mHolder.findViewById(android.R.id.text1);
- assertThat(planNameTextView.getText().toString()).isEmpty();
- TextView planDescriptionTextView = (TextView) mHolder.findViewById(android.R.id.text2);
- assertThat(planDescriptionTextView.getText().toString()).isEmpty();
- }
-
- @Test
- public void shouldRender_withData() {
- mPreference.setTitle(TEST_PLAN_USAGE);
- mPreference.setUsageTextColor(sPlanUsageTextColor);
- mPreference.setName(TEST_PLAN_NAME);
- mPreference.setDescription(TEST_PLAN_DESCRIPTION);
- mPreference.setPercentageUsage(0.25D);
- mPreference.setMeterBackgroundColor(sMeterBackgroundColor);
- mPreference.setMeterConsumedColor(sMeterConsumedColor);
-
- mPreference.onBindViewHolder(mHolder);
-
- TextView planUsageTextView = (TextView) mHolder.findViewById(android.R.id.title);
- assertThat(planUsageTextView.getTextColors().getDefaultColor())
- .isEqualTo(sPlanUsageTextColor);
- assertThat(planUsageTextView.getText()).isEqualTo(TEST_PLAN_USAGE);
-
- TextView planNameTextView = (TextView) mHolder.findViewById(android.R.id.text1);
- assertThat(planNameTextView.getText()).isEqualTo(TEST_PLAN_NAME);
-
- TextView planDescriptionTextView = (TextView) mHolder.findViewById(android.R.id.text2);
- assertThat(planDescriptionTextView.getText()).isEqualTo(TEST_PLAN_DESCRIPTION);
-
- DonutView donutView = (DonutView) mHolder.findViewById(R.id.donut);
- assertThat(donutView.getMeterBackgroundColor()).isEqualTo(sMeterBackgroundColor);
- assertThat(donutView.getMeterConsumedColor()).isEqualTo(sMeterConsumedColor);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataPlanUsageSummaryTest.java b/tests/robotests/src/com/android/settings/datausage/DataPlanUsageSummaryTest.java
deleted file mode 100644
index 748c317..0000000
--- a/tests/robotests/src/com/android/settings/datausage/DataPlanUsageSummaryTest.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.net.ConnectivityManager;
-import android.net.NetworkPolicy;
-import android.net.wifi.WifiConfiguration;
-import android.net.wifi.WifiManager;
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settingslib.NetworkPolicyEditor;
-import java.util.ArrayList;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.util.ReflectionHelpers;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class DataPlanUsageSummaryTest {
- @Mock
- private ConnectivityManager mManager;
-
- private Context mContext;
- private DataPlanUsageSummary mDataUsageSummary;
- private NetworkPolicyEditor mPolicyEditor;
- private WifiConfiguration mWifiConfiguration;
- private NetworkPolicy mNetworkPolicy;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- ShadowApplication shadowContext = ShadowApplication.getInstance();
- shadowContext.setSystemService(Context.CONNECTIVITY_SERVICE, mManager);
- mContext = shadowContext.getApplicationContext();
- when(mManager.isNetworkSupported(anyInt())).thenReturn(true);
- }
-
- @Test
- public void testUpdateNetworkRestrictionSummary_shouldSetSummary() {
- mDataUsageSummary = spy(new DataPlanUsageSummary());
- NetworkRestrictionsPreference preference = mock(NetworkRestrictionsPreference.class);
- mPolicyEditor = mock(NetworkPolicyEditor.class);
- WifiManager wifiManager = mock(WifiManager.class);
- ReflectionHelpers.setField(mDataUsageSummary, "mPolicyEditor", mPolicyEditor);
- ReflectionHelpers.setField(mDataUsageSummary, "mWifiManager", wifiManager);
- when(wifiManager.getConfiguredNetworks()).thenReturn(new ArrayList<>());
- doReturn(mContext.getResources()).when(mDataUsageSummary).getResources();
-
- mDataUsageSummary.updateNetworkRestrictionSummary(preference);
-
- verify(preference).setSummary(mContext.getResources().getQuantityString(
- R.plurals.network_restrictions_summary, 0, 0));
- }
-
- @Test
- public void testIsMetered_noSsid_shouldReturnFalse() {
- initTest();
-
- assertThat(mDataUsageSummary.isMetered(mWifiConfiguration)).isFalse();
- }
-
- @Test
- public void testIsMetered_noNetworkPolicy_shouldReturnFalse() {
- initTest();
- mWifiConfiguration.SSID = "network1";
- doReturn(null).when(mPolicyEditor).getPolicyMaybeUnquoted(any());
-
- assertThat(mDataUsageSummary.isMetered(mWifiConfiguration)).isFalse();
- }
-
- @Test
- public void testIsMetered_policyHasLimit_shouldReturnTrue() {
- initTest();
- mWifiConfiguration.SSID = "network1";
- mNetworkPolicy = mock(NetworkPolicy.class);
- mNetworkPolicy.limitBytes = 100;
- doReturn(mNetworkPolicy).when(mPolicyEditor).getPolicyMaybeUnquoted(any());
-
- assertThat(mDataUsageSummary.isMetered(mWifiConfiguration)).isTrue();
- }
-
- @Test
- public void testIsMetered_noPolicyLimit_shouldReturnMeteredValue() {
- initTest();
- mWifiConfiguration.SSID = "network1";
- mNetworkPolicy = mock(NetworkPolicy.class);
- mNetworkPolicy.limitBytes = NetworkPolicy.LIMIT_DISABLED;
- doReturn(mNetworkPolicy).when(mPolicyEditor).getPolicyMaybeUnquoted(any());
-
- mNetworkPolicy.metered = true;
- assertThat(mDataUsageSummary.isMetered(mWifiConfiguration)).isTrue();
-
- mNetworkPolicy.metered = false;
- assertThat(mDataUsageSummary.isMetered(mWifiConfiguration)).isFalse();
- }
-
- private void initTest() {
- mDataUsageSummary = new DataPlanUsageSummary();
- mPolicyEditor = mock(NetworkPolicyEditor.class);
- ReflectionHelpers.setField(mDataUsageSummary, "mPolicyEditor", mPolicyEditor);
- mWifiConfiguration = mock(WifiConfiguration.class);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataPlansSyncTimePreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/DataPlansSyncTimePreferenceTest.java
deleted file mode 100644
index ba2d5f1..0000000
--- a/tests/robotests/src/com/android/settings/datausage/DataPlansSyncTimePreferenceTest.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.content.Context;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceViewHolder;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.LinearLayout;
-import android.widget.TextView;
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public final class DataPlansSyncTimePreferenceTest {
- private static final String SYNC_TIME = "Today 12:24pm";
-
- private Preference mPreference;
- private PreferenceViewHolder mHolder;
-
- @Before
- public void setUp() {
- Context context = RuntimeEnvironment.application;
- mPreference = new Preference(context);
- mPreference.setLayoutResource(R.layout.data_plans_sync_time_preference);
-
- LayoutInflater inflater = LayoutInflater.from(context);
- View view = inflater.inflate(mPreference.getLayoutResource(),
- new LinearLayout(context), false);
- mHolder = PreferenceViewHolder.createInstanceForTests(view);
- }
-
- @Test
- public void shouldRender_withData() {
- mPreference.setTitle(SYNC_TIME);
-
- mPreference.onBindViewHolder(mHolder);
-
- TextView syncTimeTextView = (TextView) mHolder.findViewById(android.R.id.title);
- assertThat(syncTimeTextView.getText()).isEqualTo(SYNC_TIME);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryLegacyTest.java b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryLegacyTest.java
new file mode 100644
index 0000000..ad1defb
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryLegacyTest.java
@@ -0,0 +1,85 @@
+/*
+ * Copyright (C) 2016 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.settings.datausage;
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.net.wifi.WifiConfiguration;
+import android.net.wifi.WifiManager;
+import android.text.format.Formatter;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settingslib.NetworkPolicyEditor;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadows.ShadowApplication;
+import org.robolectric.util.ReflectionHelpers;
+
+import java.util.ArrayList;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class DataUsageSummaryLegacyTest {
+ @Mock
+ private ConnectivityManager mManager;
+ private Context mContext;
+
+ /**
+ * This set up is contrived to get a passing test so that the build doesn't block without tests.
+ * These tests should be updated as code gets refactored to improve testability.
+ */
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ ShadowApplication shadowContext = ShadowApplication.getInstance();
+ shadowContext.setSystemService(Context.CONNECTIVITY_SERVICE, mManager);
+ mContext = shadowContext.getApplicationContext();
+ when(mManager.isNetworkSupported(anyInt())).thenReturn(true);
+ }
+
+ @Test
+ @Config(shadows = {
+ SettingsShadowResources.class,
+ SettingsShadowResources.SettingsShadowTheme.class
+ })
+ public void formatUsage_shouldLookLikeFormatFileSize() {
+ SettingsShadowResources.overrideResource(com.android.internal.R.string.fileSizeSuffix,
+ "%1$s %2$s");
+ final long usage = 2147483648L; // 2GB
+ final String formattedUsage =
+ DataUsageSummaryLegacy.formatUsage(mContext, "^1", usage).toString();
+ final String formattedAsFileSize = Formatter.formatFileSize(mContext, usage);
+ assertThat(formattedUsage).isEqualTo(formattedAsFileSize);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceControllerTest.java
new file mode 100644
index 0000000..ea1d29b
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceControllerTest.java
@@ -0,0 +1,175 @@
+/*
+ * Copyright (C) 2018 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.settings.datausage;
+
+import android.content.Context;
+import android.content.Intent;
+import android.net.NetworkTemplate;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.NetworkPolicyEditor;
+import com.android.settingslib.net.DataUsageController;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.concurrent.TimeUnit;
+
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class DataUsageSummaryPreferenceControllerTest {
+ private static final long UPDATE_BACKOFF_MS = TimeUnit.MINUTES.toMillis(13);
+ private static final long CYCLE_BACKOFF_MS = TimeUnit.DAYS.toMillis(6);
+ private static final long CYCLE_LENGTH_MS = TimeUnit.DAYS.toMillis(30);
+ private static final long USAGE1 = 373000000L;
+ private static final long LIMIT1 = 1000000000L;
+ private static final String CARRIER_NAME = "z-mobile";
+ private static final String PERIOD = "Feb";
+
+ @Mock
+ private DataUsageController mDataUsageController;
+ @Mock
+ private DataUsageInfoController mDataInfoController;
+ @Mock
+ private DataUsageSummaryPreference mSummaryPreference;
+ @Mock
+ private NetworkPolicyEditor mPolicyEditor;
+ @Mock
+ private NetworkTemplate mNetworkTemplate;
+
+ private Context mContext;
+ private DataUsageSummaryPreferenceController mController;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = RuntimeEnvironment.application;
+
+ mController = new DataUsageSummaryPreferenceController(
+ mContext,
+ mDataUsageController,
+ mDataInfoController,
+ mNetworkTemplate,
+ mPolicyEditor,
+ R.string.cell_data_template,
+ true,
+ null);
+ }
+
+ @Test
+ public void testSummaryUpdate_onePlan_basic() {
+ final long now = System.currentTimeMillis();
+ final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
+
+ final Intent intent = new Intent();
+
+ when(mDataUsageController.getDataUsageInfo()).thenReturn(info);
+ mController.setPlanValues(1 /* dataPlanCount */, LIMIT1, USAGE1);
+ mController.setCarrierValues(CARRIER_NAME, now - UPDATE_BACKOFF_MS, info.cycleEnd, intent);
+
+ mController.updateState(mSummaryPreference);
+ verify(mSummaryPreference).setLimitInfo(null);
+ verify(mSummaryPreference).setUsageInfo(info.cycleEnd, now - UPDATE_BACKOFF_MS,
+ CARRIER_NAME, 1 /* numPlans */, intent);
+ verify(mSummaryPreference).setChartEnabled(true);
+ }
+
+ @Test
+ public void testSummaryUpdate_noPlan_basic() {
+ final long now = System.currentTimeMillis();
+ final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
+
+ final Intent intent = new Intent();
+
+ when(mDataUsageController.getDataUsageInfo(any())).thenReturn(info);
+ mController.setPlanValues(0 /* dataPlanCount */, LIMIT1, USAGE1);
+ mController.setCarrierValues(CARRIER_NAME, now - UPDATE_BACKOFF_MS, info.cycleEnd, intent);
+
+ mController.updateState(mSummaryPreference);
+ verify(mSummaryPreference).setLimitInfo("500 MB Data warning / 1.00 GB Data limit");
+ verify(mSummaryPreference).setUsageInfo(info.cycleEnd, now - UPDATE_BACKOFF_MS,
+ CARRIER_NAME, 0 /* numPlans */, intent);
+ verify(mSummaryPreference).setChartEnabled(true);
+ }
+
+ @Test
+ public void testSummaryUpdate_noCarrier_basic() {
+ final long now = System.currentTimeMillis();
+ final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
+
+ when(mDataUsageController.getDataUsageInfo(any())).thenReturn(info);
+ mController.setPlanValues(0 /* dataPlanCount */, LIMIT1, USAGE1);
+ mController.setCarrierValues(null /* carrierName */, -1L /* snapshotTime */,
+ info.cycleEnd, null /* intent */);
+ mController.updateState(mSummaryPreference);
+
+ verify(mSummaryPreference).setLimitInfo("500 MB Data warning / 1.00 GB Data limit");
+ verify(mSummaryPreference).setUsageInfo(
+ info.cycleEnd,
+ -1L /* snapshotTime */,
+ null /* carrierName */,
+ 0 /* numPlans */,
+ null /* launchIntent */);
+ verify(mSummaryPreference).setChartEnabled(true);
+ }
+
+ @Test
+ public void testSummaryUpdate_noPlanData_basic() {
+ final long now = System.currentTimeMillis();
+
+ final DataUsageController.DataUsageInfo info = createTestDataUsageInfo(now);
+
+ when(mDataUsageController.getDataUsageInfo(any())).thenReturn(info);
+ mController.setPlanValues(0 /* dataPlanCount */, -1L /* dataPlanSize */, USAGE1);
+ mController.setCarrierValues(null /* carrierName */, -1L /* snapshotTime */,
+ info.cycleEnd, null /* intent */);
+ mController.updateState(mSummaryPreference);
+
+ verify(mSummaryPreference).setLimitInfo("500 MB Data warning / 1.00 GB Data limit");
+ verify(mSummaryPreference).setUsageInfo(
+ info.cycleEnd,
+ -1L /* snapshotTime */,
+ null /* carrierName */,
+ 0 /* numPlans */,
+ null /* launchIntent */);
+ verify(mSummaryPreference).setChartEnabled(false);
+ }
+
+ private DataUsageController.DataUsageInfo createTestDataUsageInfo(long now) {
+ DataUsageController.DataUsageInfo info = new DataUsageController.DataUsageInfo();
+ info.carrier = CARRIER_NAME;
+ info.period = PERIOD;
+ info.startDate = now;
+ info.limitLevel = LIMIT1;
+ info.warningLevel = LIMIT1 >> 1;
+ info.usageLevel = USAGE1;
+ info.cycleStart = now - CYCLE_BACKOFF_MS;
+ info.cycleEnd = info.cycleStart + CYCLE_LENGTH_MS;
+ return info;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java
new file mode 100644
index 0000000..769d9e7
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/datausage/DataUsageSummaryPreferenceTest.java
@@ -0,0 +1,172 @@
+/*
+ * Copyright (C) 2018 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.settings.datausage;
+
+import android.content.Context;
+import android.content.Intent;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.Button;
+import android.widget.TextView;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.SettingsShadowResourcesImpl;
+import com.android.settingslib.utils.StringUtil;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Mockito.spy;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows =
+ SettingsShadowResourcesImpl.class)
+public class DataUsageSummaryPreferenceTest {
+ private static final long CYCLE_DURATION_MILLIS = 1000000000L;
+ private static final long UPDATE_LAG_MILLIS = 10000000L;
+ private static final String DUMMY_CARRIER = "z-mobile";
+
+ private Context mContext;
+ private PreferenceViewHolder mHolder;
+ private DataUsageSummaryPreference mSummaryPreference;
+ private TextView mUsageTitle;
+ private TextView mCycleTime;
+ private TextView mCarrierInfo;
+ private TextView mDataLimits;
+ private Button mLaunchButton;
+
+ private long mCycleEnd;
+ private long mUpdateTime;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = spy(RuntimeEnvironment.application);
+ mSummaryPreference = new DataUsageSummaryPreference(mContext, null /* attrs */);
+ LayoutInflater inflater = LayoutInflater.from(mContext);
+ View view = inflater.inflate(mSummaryPreference.getLayoutResource(), null /* root */,
+ false /* attachToRoot */);
+
+ mHolder = PreferenceViewHolder.createInstanceForTests(view);
+
+ final long now = System.currentTimeMillis();
+ mCycleEnd = now + CYCLE_DURATION_MILLIS;
+ mUpdateTime = now - UPDATE_LAG_MILLIS;
+ }
+
+ @Test
+ public void testSetUsageInfo_withLaunchIntent_launchButtonShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
+ new Intent());
+
+ bindViewHolder();
+ assertThat(mLaunchButton.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void testSetUsageInfo_withoutLaunchIntent_launchButtonNotShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
+ null /* launchIntent */);
+
+ bindViewHolder();
+ assertThat(mLaunchButton.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ @Test
+ public void testSetUsageInfo_withDataPlans_carrierInfoShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 1 /* numPlans */,
+ new Intent());
+
+ bindViewHolder();
+ assertThat(mCarrierInfo.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void testSetUsageInfo_withNoDataPlans_carrierInfoNotShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
+ new Intent());
+
+ bindViewHolder();
+ assertThat(mCarrierInfo.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ @Test
+ public void testSetUsageInfo_withNoDataPlans_usageTitleNotShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
+ new Intent());
+
+ bindViewHolder();
+ assertThat(mUsageTitle.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ @Test
+ public void testSetUsageInfo_withMultipleDataPlans_usageTitleShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 2 /* numPlans */,
+ new Intent());
+
+ bindViewHolder();
+ assertThat(mUsageTitle.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void testSetUsageInfo_cycleRemainingTimeShown() {
+ mSummaryPreference.setUsageInfo(mCycleEnd, mUpdateTime, DUMMY_CARRIER, 0 /* numPlans */,
+ new Intent());
+ String cyclePrefix = StringUtil.formatElapsedTime(mContext, CYCLE_DURATION_MILLIS,
+ false /* withSeconds */).toString();
+ String text = mContext.getString(R.string.cycle_left_time_text, cyclePrefix);
+
+ bindViewHolder();
+ assertThat(mCycleTime.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(mCycleTime.getText()).isEqualTo(text);
+ }
+
+ @Test
+ public void testSetLimitInfo_withLimitInfo_dataLimitsShown() {
+ final String limitText = "test limit text";
+ mSummaryPreference.setLimitInfo(limitText);
+
+ bindViewHolder();
+ assertThat(mDataLimits.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(mDataLimits.getText()).isEqualTo(limitText);
+ }
+
+ @Test
+ public void testSetLimitInfo_withNullLimitInfo_dataLimitsNotShown() {
+ mSummaryPreference.setLimitInfo(null);
+
+ bindViewHolder();
+ assertThat(mDataLimits.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ private void bindViewHolder() {
+ mSummaryPreference.onBindViewHolder(mHolder);
+ mUsageTitle = (TextView) mHolder.findViewById(R.id.usage_title);
+ mCycleTime = (TextView) mHolder.findViewById(R.id.cycle_left_time);
+ mCarrierInfo = (TextView) mHolder.findViewById(R.id.carrier_and_update);
+ mDataLimits = (TextView) mHolder.findViewById(R.id.data_limits);
+ mLaunchButton = (Button) mHolder.findViewById(R.id.launch_mdp_app_button);
+ }
+}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/datausage/ManageDataPlansPreferenceTest.java b/tests/robotests/src/com/android/settings/datausage/ManageDataPlansPreferenceTest.java
deleted file mode 100644
index 6eff393..0000000
--- a/tests/robotests/src/com/android/settings/datausage/ManageDataPlansPreferenceTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.datausage;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.content.Context;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceViewHolder;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.widget.Button;
-import android.widget.LinearLayout;
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public final class ManageDataPlansPreferenceTest {
- private Preference mPreference;
- private PreferenceViewHolder mHolder;
- private Context mContext;
-
- @Before
- public void setUp() {
- mContext = RuntimeEnvironment.application;
- mPreference = new Preference(mContext);
- mPreference.setLayoutResource(R.layout.manage_data_plans_preference);
- LayoutInflater inflater = LayoutInflater.from(mContext);
- View view = inflater.inflate(mPreference.getLayoutResource(),
- new LinearLayout(mContext), false);
- mHolder = PreferenceViewHolder.createInstanceForTests(view);
- }
-
- @Test
- public void shouldRender_withData() {
- mPreference.onBindViewHolder(mHolder);
- Button managePlanButton = (Button) mHolder.findViewById(R.id.manage_data_plans);
- assertThat(managePlanButton.getText())
- .isEqualTo(mContext.getString(R.string.data_plan_usage_manage_plans_button_text));
- }
-}
diff --git a/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessTest.java b/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessTest.java
index 53cb7ed..fff879f 100644
--- a/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessTest.java
+++ b/tests/robotests/src/com/android/settings/datausage/UnrestrictedDataAccessTest.java
@@ -16,41 +16,68 @@
package com.android.settings.datausage;
import static com.google.common.truth.Truth.assertThat;
+
+import static org.junit.Assert.fail;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.nullable;
import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.os.Process;
+import android.support.v7.preference.PreferenceManager;
+import android.support.v7.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
import com.android.settings.TestConfig;
+import com.android.settings.datausage.AppStateDataUsageBridge.DataUsageState;
+import com.android.settings.datausage.UnrestrictedDataAccess.AccessPreference;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settingslib.applications.ApplicationsState;
+import com.android.settings.testutils.shadow.ShadowRestrictedLockUtils;
+import com.android.settingslib.applications.ApplicationsState.AppEntry;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
+
+import java.util.ArrayList;
@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
+ shadows = {
+ ShadowRestrictedLockUtils.class
+ })
public class UnrestrictedDataAccessTest {
@Mock
- private ApplicationsState.AppEntry mAppEntry;
+ private AppEntry mAppEntry;
private UnrestrictedDataAccess mFragment;
private FakeFeatureFactory mFeatureFactory;
+ @Mock
+ private PreferenceScreen mPreferenceScreen;
+ @Mock
+ private PreferenceManager mPreferenceManager;
+ @Mock
+ private DataSaverBackend mDataSaverBackend;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mFeatureFactory = FakeFeatureFactory.setupForTest();
- mFragment = new UnrestrictedDataAccess();
+ mFragment = spy(new UnrestrictedDataAccess());
}
@Test
@@ -80,4 +107,66 @@
eq(MetricsProto.MetricsEvent.APP_SPECIAL_PERMISSION_UNL_DATA_DENY), eq("app"));
}
+ @Test
+ public void testOnRebuildComplete_restricted_shouldBeDisabled() {
+ final Context context = RuntimeEnvironment.application;
+ doReturn(context).when(mFragment).getContext();
+ doReturn(context).when(mPreferenceManager).getContext();
+ doReturn(true).when(mFragment).shouldAddPreference(any(AppEntry.class));
+ doNothing().when(mFragment).setLoading(anyBoolean(), anyBoolean());
+ doReturn(mPreferenceScreen).when(mFragment).getPreferenceScreen();
+ doReturn(mPreferenceManager).when(mFragment).getPreferenceManager();
+ ReflectionHelpers.setField(mFragment, "mDataSaverBackend", mDataSaverBackend);
+
+ final String testPkg1 = "com.example.one";
+ final String testPkg2 = "com.example.two";
+ ShadowRestrictedLockUtils.setRestrictedPkgs(testPkg2);
+
+ doAnswer((invocation) -> {
+ final AccessPreference preference = invocation.getArgument(0);
+ final AppEntry entry = preference.getEntryForTest();
+ // Verify preference is disabled by admin and the summary is changed accordingly.
+ if (testPkg1.equals(entry.info.packageName)) {
+ assertThat(preference.isDisabledByAdmin()).isFalse();
+ assertThat(preference.getSummary()).isEqualTo("");
+ } else if (testPkg2.equals(entry.info.packageName)) {
+ assertThat(preference.isDisabledByAdmin()).isTrue();
+ assertThat(preference.getSummary()).isEqualTo(
+ context.getString(R.string.disabled_by_admin));
+ }
+ assertThat(preference.isChecked()).isFalse();
+ preference.performClick();
+ // Verify that when the preference is clicked, support details intent is launched
+ // if the preference is disabled by admin, otherwise the switch is toggled.
+ if (testPkg1.equals(entry.info.packageName)) {
+ assertThat(preference.isChecked()).isTrue();
+ assertThat(ShadowRestrictedLockUtils.hasAdminSupportDetailsIntentLaunched())
+ .isFalse();
+ } else if (testPkg2.equals(entry.info.packageName)) {
+ assertThat(preference.isChecked()).isFalse();
+ assertThat(ShadowRestrictedLockUtils.hasAdminSupportDetailsIntentLaunched())
+ .isTrue();
+ }
+ ShadowRestrictedLockUtils.clearAdminSupportDetailsIntentLaunch();
+ return null;
+ }).when(mPreferenceScreen).addPreference(any(AccessPreference.class));
+ mFragment.onRebuildComplete(createAppEntries(testPkg1, testPkg2));
+ }
+
+ private ArrayList<AppEntry> createAppEntries(String... packageNames) {
+ final ArrayList<AppEntry> appEntries = new ArrayList<>();
+ for (int i = 0; i < packageNames.length; ++i) {
+ final ApplicationInfo info = new ApplicationInfo();
+ info.packageName = packageNames[i];
+ info.uid = Process.FIRST_APPLICATION_UID + i;
+ info.sourceDir = info.packageName;
+ final AppEntry appEntry = spy(new AppEntry(RuntimeEnvironment.application,
+ info, i));
+ appEntry.extraInfo = new DataUsageState(false, false);
+ doNothing().when(appEntry).ensureLabel(any(Context.class));
+ ReflectionHelpers.setField(appEntry, "info", info);
+ appEntries.add(appEntry);
+ }
+ return appEntries;
+ }
}
diff --git a/tests/robotests/src/com/android/settings/development/BugReportInPowerPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/BugReportInPowerPreferenceControllerTest.java
index 82086dd..9a94a63 100644
--- a/tests/robotests/src/com/android/settings/development/BugReportInPowerPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/BugReportInPowerPreferenceControllerTest.java
@@ -16,7 +16,6 @@
package com.android.settings.development;
-import static com.android.settings.development.BugReportInPowerPreferenceController.COMPONENT_NAME;
import static com.android.settings.development.BugReportInPowerPreferenceController
.SETTING_VALUE_OFF;
import static com.android.settings.development.BugReportInPowerPreferenceController
@@ -30,7 +29,6 @@
import android.content.ContentResolver;
import android.content.Context;
-import android.content.pm.PackageManager;
import android.os.UserManager;
import android.provider.Settings;
import android.support.v14.preference.SwitchPreference;
@@ -38,7 +36,6 @@
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settingslib.wrapper.PackageManagerWrapper;
import org.junit.Before;
import org.junit.Test;
@@ -59,8 +56,6 @@
@Mock
private UserManager mUserManager;
@Mock
- private PackageManagerWrapper mPackageManager;
- @Mock
private Context mContext;
@Mock
private SwitchPreference mPreference;
@@ -76,7 +71,6 @@
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
mController = new BugReportInPowerPreferenceController(mContext);
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
- ReflectionHelpers.setField(mController, "mPackageManager", mPackageManager);
}
@Test
@@ -113,8 +107,6 @@
Settings.Global.BUGREPORT_IN_POWER_MENU, -1 /* default */);
assertThat(mode).isEqualTo(SETTING_VALUE_OFF);
- verify(mPackageManager).setComponentEnabledSetting(COMPONENT_NAME,
- PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, 0 /* flags */);
}
@Test
@@ -127,8 +119,6 @@
Settings.Global.BUGREPORT_IN_POWER_MENU, -1 /* default */);
assertThat(mode).isEqualTo(SETTING_VALUE_ON);
- verify(mPackageManager).setComponentEnabledSetting(COMPONENT_NAME,
- PackageManager.COMPONENT_ENABLED_STATE_ENABLED, 0 /* flags */);
}
@@ -167,7 +157,5 @@
assertThat(mode).isEqualTo(SETTING_VALUE_OFF);
verify(mPreference).setChecked(false);
- verify(mPackageManager).setComponentEnabledSetting(COMPONENT_NAME,
- PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, 0 /* flags */);
}
}
diff --git a/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java
index 881ee84..640e9d5 100644
--- a/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/development/DevelopmentSettingsDashboardFragmentTest.java
@@ -17,7 +17,6 @@
package com.android.settings.development;
import static com.google.common.truth.Truth.assertThat;
-
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
@@ -33,6 +32,7 @@
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowResources;
+import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settings.widget.SwitchBar;
import com.android.settings.widget.ToggleSwitch;
import com.android.settingslib.development.AbstractEnableAdbPreferenceController;
@@ -52,7 +52,9 @@
import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION, shadows = {
+ ShadowUserManager.class
+})
public class DevelopmentSettingsDashboardFragmentTest {
private SwitchBar mSwitchBar;
@@ -68,11 +70,13 @@
mSwitch = mSwitchBar.getSwitch();
mDashboard = spy(new DevelopmentSettingsDashboardFragment());
ReflectionHelpers.setField(mDashboard, "mSwitchBar", mSwitchBar);
+ ShadowUserManager.getShadow().setIsAdminUser(true);
}
@After
public void tearDown() {
ShadowEnableDevelopmentSettingWarningDialog.reset();
+ ShadowUserManager.getShadow().reset();
}
@Test
@@ -101,7 +105,7 @@
SettingsShadowResources.class,
SettingsShadowResources.SettingsShadowTheme.class
})
- public void searchIndex_pageDisabled_shouldAddAllKeysToNonIndexable() {
+ public void searchIndex_pageDisabledBySetting_shouldAddAllKeysToNonIndexable() {
final Context appContext = RuntimeEnvironment.application;
DevelopmentSettingsEnabler.setDevelopmentSettingsEnabled(appContext, false);
@@ -109,7 +113,24 @@
DevelopmentSettingsDashboardFragment.SEARCH_INDEX_DATA_PROVIDER
.getNonIndexableKeys(appContext);
- assertThat(nonIndexableKeys).contains("development_prefs_screen");
+ assertThat(nonIndexableKeys).contains("enable_adb");
+ }
+
+ @Test
+ @Config(shadows = {
+ SettingsShadowResources.class,
+ SettingsShadowResources.SettingsShadowTheme.class
+ })
+ public void searchIndex_pageDisabledForNonAdmin_shouldAddAllKeysToNonIndexable() {
+ final Context appContext = RuntimeEnvironment.application;
+ DevelopmentSettingsEnabler.setDevelopmentSettingsEnabled(appContext, true);
+ ShadowUserManager.getShadow().setIsAdminUser(false);
+
+ final List<String> nonIndexableKeys =
+ DevelopmentSettingsDashboardFragment.SEARCH_INDEX_DATA_PROVIDER
+ .getNonIndexableKeys(appContext);
+
+ assertThat(nonIndexableKeys).contains("enable_adb");
}
@Test
diff --git a/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java b/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java
index a5dfa56..95fd0dd 100644
--- a/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/DevelopmentSwitchBarControllerTest.java
@@ -28,6 +28,7 @@
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settings.widget.SwitchBar;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -47,7 +48,8 @@
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
shadows = {
- ShadowUtils.class
+ ShadowUtils.class,
+ ShadowUserManager.class
})
public class DevelopmentSwitchBarControllerTest {
@@ -63,6 +65,7 @@
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
+ ShadowUserManager.getShadow().setIsAdminUser(true);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
mSwitchBar = new SwitchBar(mContext);
@@ -72,6 +75,7 @@
@After
public void tearDown() {
ShadowUtils.reset();
+ ShadowUserManager.getShadow().reset();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/development/SelectUsbConfigPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/SelectUsbConfigPreferenceControllerTest.java
index 8719bb4..67a6d6b 100644
--- a/tests/robotests/src/com/android/settings/development/SelectUsbConfigPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/SelectUsbConfigPreferenceControllerTest.java
@@ -25,6 +25,7 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
+import static org.mockito.ArgumentMatchers.anyLong;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
@@ -37,11 +38,13 @@
import android.content.Context;
import android.content.pm.PackageManager;
import android.hardware.usb.UsbManager;
+import android.hardware.usb.UsbManagerExtras;
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.TestConfig;
+import com.android.settings.connecteddevice.usb.UsbBackend;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -69,6 +72,8 @@
private UsbManager mUsbManager;
@Mock
private PackageManager mPackageManager;
+ @Mock
+ private UsbBackend.UsbManagerPassThrough mUsbManagerPassThrough;
private Context mContext;
private LifecycleOwner mLifecycleOwner;
@@ -101,6 +106,13 @@
mController = spy(new SelectUsbConfigPreferenceController(mContext, mLifecycle));
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
mController.displayPreference(mScreen);
+ mController.mUsbManagerPassThrough = mUsbManagerPassThrough;
+
+ when(mUsbManagerPassThrough.usbFunctionsFromString("mtp")).thenReturn(UsbManagerExtras.MTP);
+ when(mUsbManagerPassThrough.usbFunctionsFromString("rndis"))
+ .thenReturn(UsbManagerExtras.RNDIS);
+ when(mUsbManagerPassThrough.usbFunctionsFromString("none"))
+ .thenReturn(UsbManagerExtras.NONE);
}
@@ -111,11 +123,13 @@
@Test
public void onPreferenceChange_setCharging_shouldEnableCharging() {
- when(mUsbManager.isFunctionEnabled(mValues[0])).thenReturn(true);
- doNothing().when(mController).setCurrentFunction(anyString(), anyBoolean());
+ when(mUsbManagerPassThrough.getCurrentFunctions()).thenReturn(
+ UsbManagerExtras.usbFunctionsFromString(mValues[0]));
+ doNothing().when(mController).setCurrentFunctions(anyLong());
mController.onPreferenceChange(mPreference, mValues[0]);
- verify(mController).setCurrentFunction(mValues[0], false /* usb data unlock */);
+ verify(mController).setCurrentFunctions(
+ UsbManagerExtras.usbFunctionsFromString(mValues[0]));
}
@Test
@@ -144,28 +158,32 @@
@Test
public void onPreferenceChange_setMtp_shouldEnableMtp() {
- when(mUsbManager.isFunctionEnabled(mValues[1])).thenReturn(true);
- doNothing().when(mController).setCurrentFunction(anyString(), anyBoolean());
+ when(mUsbManagerPassThrough.getCurrentFunctions())
+ .thenReturn(UsbManagerExtras.usbFunctionsFromString(mValues[1]));
+ doNothing().when(mController).setCurrentFunctions(anyLong());
mController.onPreferenceChange(mPreference, mValues[1]);
- verify(mController).setCurrentFunction(mValues[1], true /* usb data unlock */);
+ verify(mController).setCurrentFunctions(
+ UsbManagerExtras.usbFunctionsFromString(mValues[1]));
}
@Test
public void onPreferenceChange_monkeyUser_shouldReturnFalse() {
- when(mUsbManager.isFunctionEnabled(mValues[1])).thenReturn(true);
+ when(mUsbManagerPassThrough.getCurrentFunctions())
+ .thenReturn(UsbManagerExtras.usbFunctionsFromString(mValues[1]));
ShadowUtils.setIsUserAMonkey(true);
- doNothing().when(mController).setCurrentFunction(anyString(), anyBoolean());
+ doNothing().when(mController).setCurrentFunctions(anyLong());
final boolean isHandled = mController.onPreferenceChange(mPreference, mValues[1]);
assertThat(isHandled).isFalse();
- verify(mController, never()).setCurrentFunction(any(), anyBoolean());
+ verify(mController, never()).setCurrentFunctions(anyLong());
}
@Test
public void updateState_chargingEnabled_shouldSetPreferenceToCharging() {
- when(mUsbManager.isFunctionEnabled(mValues[0])).thenReturn(true);
+ when(mUsbManagerPassThrough.getCurrentFunctions())
+ .thenReturn(UsbManagerExtras.usbFunctionsFromString(mValues[0]));
mController.updateState(mPreference);
@@ -175,7 +193,8 @@
@Test
public void updateState_RndisEnabled_shouldEnableRndis() {
- when(mUsbManager.isFunctionEnabled(mValues[3])).thenReturn(true);
+ when(mUsbManagerPassThrough.getCurrentFunctions())
+ .thenReturn(UsbManagerExtras.usbFunctionsFromString(mValues[3]));
mController.updateState(mPreference);
@@ -185,6 +204,7 @@
@Test
public void updateState_noValueSet_shouldEnableChargingAsDefault() {
+ when(mUsbManagerPassThrough.getCurrentFunctions()).thenReturn(UsbManagerExtras.NONE);
mController.updateState(mPreference);
verify(mPreference).setValue(mValues[0]);
diff --git a/tests/robotests/src/com/android/settings/development/SetGpuRendererPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/SetGpuRendererPreferenceControllerTest.java
deleted file mode 100644
index 7b3097b..0000000
--- a/tests/robotests/src/com/android/settings/development/SetGpuRendererPreferenceControllerTest.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.development;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.os.SystemProperties;
-import android.support.v7.preference.ListPreference;
-import android.support.v7.preference.PreferenceScreen;
-import android.view.ThreadedRenderer;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH,
- sdk = TestConfig.SDK_VERSION,
- shadows = {SettingsShadowSystemProperties.class})
-public class SetGpuRendererPreferenceControllerTest {
-
- @Mock
- private ListPreference mPreference;
- @Mock
- private PreferenceScreen mScreen;
-
- /**
- * 0: OpenGl (Default)
- * 1: OpenGl (Skia)
- */
- private String[] mListValues;
- private String[] mListSummaries;
- private Context mContext;
- private SetGpuRendererPreferenceController mController;
-
- @Before
- public void setup() {
- MockitoAnnotations.initMocks(this);
- mContext = RuntimeEnvironment.application;
- mListValues = mContext.getResources().getStringArray(R.array.debug_hw_renderer_values);
- mListSummaries = mContext.getResources().getStringArray(R.array.debug_hw_renderer_entries);
- mController = new SetGpuRendererPreferenceController(mContext);
- when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
- mController.displayPreference(mScreen);
- }
-
- @After
- public void teardown() {
- SettingsShadowSystemProperties.clear();
- }
-
- @Test
- public void onPreferenceChange_noValueSet_shouldSetEmptyString() {
- mController.onPreferenceChange(mPreference, null /* new value */);
-
- String mode = SystemProperties.get(
- ThreadedRenderer.DEBUG_RENDERER_PROPERTY);
- assertThat(mode).isEqualTo("");
- }
-
- @Test
- public void onPreferenceChange_option1Selected_shouldSetOption1() {
- mController.onPreferenceChange(mPreference, mListValues[1]);
-
- String mode = SystemProperties.get(
- ThreadedRenderer.DEBUG_RENDERER_PROPERTY);
- assertThat(mode).isEqualTo(mListValues[1]);
- }
-
- @Test
- public void updateState_option1Set_shouldUpdatePreferenceToOption1() {
- SystemProperties.set(ThreadedRenderer.DEBUG_RENDERER_PROPERTY,
- mListValues[1]);
-
- mController.updateState(mPreference);
-
- verify(mPreference).setValue(mListValues[1]);
- verify(mPreference).setSummary(mListSummaries[1]);
- }
-
- @Test
- public void updateState_option0Set_shouldUpdatePreferenceToOption0() {
- SystemProperties.set(ThreadedRenderer.DEBUG_RENDERER_PROPERTY,
- mListValues[0]);
-
- mController.updateState(mPreference);
-
- verify(mPreference).setValue(mListValues[0]);
- verify(mPreference).setSummary(mListSummaries[0]);
- }
-
- @Test
- public void updateState_noOptionSet_shouldDefaultToOption0() {
- SystemProperties.set(ThreadedRenderer.DEBUG_RENDERER_PROPERTY, null);
-
- mController.updateState(mPreference);
-
- verify(mPreference).setValue(mListValues[0]);
- verify(mPreference).setSummary(mListSummaries[0]);
- }
-
- @Test
- public void onDeveloperOptionsSwitchDisabled_shouldDisablePreference() {
- mController.onDeveloperOptionsSwitchDisabled();
-
- verify(mPreference).setEnabled(false);
- }
-
- @Test
- public void onDeveloperOptionsSwitchEnabled_shouldEnablePreference() {
- mController.onDeveloperOptionsSwitchEnabled();
-
- verify(mPreference).setEnabled(true);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java
index ee5d5d0..17122ae 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/BuildNumberPreferenceControllerTest.java
@@ -43,6 +43,7 @@
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.ShadowUtils;
+import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.development.DevelopmentSettingsEnabler;
@@ -60,7 +61,8 @@
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
shadows = {
- ShadowUtils.class
+ ShadowUtils.class,
+ ShadowUserManager.class,
})
public class BuildNumberPreferenceControllerTest {
@@ -84,6 +86,7 @@
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
+ ShadowUserManager.getShadow().setIsAdminUser(true);
mFactory = FakeFeatureFactory.setupForTest();
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
@@ -98,6 +101,7 @@
@After
public void tearDown() {
ShadowUtils.reset();
+ ShadowUserManager.getShadow().reset();
}
@Test
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/DeviceModelPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/DeviceModelPreferenceControllerTest.java
index 6a5c7fa..47bcf1c 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/DeviceModelPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/DeviceModelPreferenceControllerTest.java
@@ -69,11 +69,17 @@
}
@Test
- public void isAlwaysAvailable() {
+ public void isAvailable_returnTrueIfVisible() {
assertThat(mController.isAvailable()).isTrue();
}
@Test
+ @Config(qualifiers = "mcc999")
+ public void isAvailable_returnFalseIfNotVisible() {
+ assertThat(mController.isAvailable()).isFalse();
+ }
+
+ @Test
public void displayPref_shouldSetSummary() {
mController.displayPreference(mPreferenceScreen);
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/MyDeviceInfoFragmentTest.java b/tests/robotests/src/com/android/settings/deviceinfo/MyDeviceInfoFragmentTest.java
index 36f0662..8b21b74 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/MyDeviceInfoFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/MyDeviceInfoFragmentTest.java
@@ -21,15 +21,18 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.app.Activity;
import android.content.Context;
+import android.content.Intent;
import android.os.Bundle;
import android.support.v7.preference.PreferenceScreen;
import android.telephony.TelephonyManager;
+import android.util.ArrayMap;
import com.android.settings.deviceinfo.aboutphone.MyDeviceInfoFragment;
import com.android.settings.TestConfig;
@@ -39,6 +42,7 @@
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import com.android.settings.testutils.shadow.ShadowConnectivityManager;
import com.android.settings.testutils.shadow.ShadowUserManager;
+import com.android.settingslib.core.AbstractPreferenceController;
import org.junit.Before;
import org.junit.Test;
@@ -48,6 +52,11 @@
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowApplication;
+import org.robolectric.util.ReflectionHelpers;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(
@@ -97,4 +106,23 @@
verify(mScreen).setInitialExpandedChildrenCount(Integer.MAX_VALUE);
}
+
+ @Test
+ public void onActivityResult_shouldCallBuildNumberPreferenceController() {
+ final BuildNumberPreferenceController controller =
+ mock(BuildNumberPreferenceController.class);
+ final Map<Class, List<AbstractPreferenceController>> preferenceControllers =
+ new ArrayMap<>();
+ final List<AbstractPreferenceController> controllerList = new ArrayList<>();
+ controllerList.add(controller);
+ preferenceControllers.put(BuildNumberPreferenceController.class, controllerList);
+ ReflectionHelpers.setField(mSettings, "mPreferenceControllers", preferenceControllers);
+
+ final int requestCode = 1;
+ final int resultCode = 2;
+ final Intent data = new Intent();
+ mSettings.onActivityResult(requestCode, resultCode, data);
+
+ verify(controller).onActivityResult(requestCode, resultCode, data);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java
index f30425b..0b83359 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java
@@ -16,6 +16,9 @@
package com.android.settings.deviceinfo;
+import static junit.framework.Assert.assertFalse;
+import static junit.framework.Assert.assertTrue;
+
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
@@ -74,6 +77,20 @@
}
@Test
+ public void isAvailable_shouldBeTrueIfCallCapable() {
+ when(mTelephonyManager.isVoiceCapable()).thenReturn(true);
+
+ assertTrue(mController.isAvailable());
+ }
+
+ @Test
+ public void isAvailable_shouldBeFalseIfNotCallCapable() {
+ when(mTelephonyManager.isVoiceCapable()).thenReturn(false);
+
+ assertFalse(mController.isAvailable());
+ }
+
+ @Test
public void displayPreference_multiSim_shouldAddSecondPreference() {
when(mTelephonyManager.getPhoneCount()).thenReturn(2);
diff --git a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
index 95144bd..f1cf79e 100644
--- a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java
@@ -90,8 +90,6 @@
controller.onStart();
assertThat(shadowContentResolver.getContentObservers(
- System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isNotEmpty();
- assertThat(shadowContentResolver.getContentObservers(
System.getUriFor(System.SCREEN_BRIGHTNESS))).isNotEmpty();
assertThat(shadowContentResolver.getContentObservers(
System.getUriFor(System.SCREEN_BRIGHTNESS_FOR_VR))).isNotEmpty();
@@ -111,8 +109,6 @@
controller.onStop();
assertThat(shadowContentResolver.getContentObservers(
- System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isEmpty();
- assertThat(shadowContentResolver.getContentObservers(
System.getUriFor(System.SCREEN_BRIGHTNESS))).isEmpty();
assertThat(shadowContentResolver.getContentObservers(
System.getUriFor(System.SCREEN_BRIGHTNESS_FOR_VR))).isEmpty();
@@ -136,11 +132,11 @@
System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE,
System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
- System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, 0.0f);
+ System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, 31);
mController.updateState(mPreference);
- verify(mPreference).setSummary("50%");
+ verify(mPreference).setSummary("31%");
}
@Test
@@ -175,11 +171,11 @@
System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
reset(mPreference);
- System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, 1.5f);
+ System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, 115);
mController.updateState(mPreference);
verify(mPreference).setSummary("100%");
- System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, -1.5f);
+ System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, -10);
mController.updateState(mPreference);
verify(mPreference).setSummary("0%");
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceControllerTest.java
index 30fdccb..0cfe135 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BackgroundActivityPreferenceControllerTest.java
@@ -142,18 +142,17 @@
mController.handlePreferenceTreeClick(mPreference);
- verify(mController).showDialog();
+ verify(mController).showDialog(false /* restrict */);
}
@Test
- public void testHandlePreferenceTreeClick_unRestrictApp_setModeAllowed() {
+ public void testHandlePreferenceTreeClick_unRestrictApp_showDialog() {
doReturn(AppOpsManager.MODE_IGNORED).when(mAppOpsManager).checkOpNoThrow(anyInt(),
anyInt(), anyString());
mController.handlePreferenceTreeClick(mPreference);
- verify(mBatteryUtils).setForceAppStandby(UID_LOW_SDK, LOW_SDK_PACKAGE,
- AppOpsManager.MODE_ALLOWED);
+ verify(mController).showDialog(true /* restrict */);
}
@Test
@@ -211,17 +210,4 @@
public void testIsAvailable_ReturnTrue() {
assertThat(mController.isAvailable()).isTrue();
}
-
- @Test
- public void testWarningDialog() {
- BackgroundActivityPreferenceController.WarningDialogFragment dialogFragment =
- new BackgroundActivityPreferenceController.WarningDialogFragment();
- dialogFragment.setTargetFragment(mFragment, 0);
- FragmentTestUtil.startFragment(dialogFragment);
- final AlertDialog dialog = (AlertDialog) ShadowDialog.getLatestDialog();
- ShadowAlertDialog shadowDialog = shadowOf(dialog);
- final Button okButton = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
- shadowDialog.clickOn(okButton.getId());
- verify(mFragment).onLimitBackgroundActivity();
- }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java
index a814989..cee84de 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryAppListPreferenceControllerTest.java
@@ -220,4 +220,9 @@
assertThat(mPreferenceController.isAvailable()).isFalse();
}
+
+ @Test
+ public void testNeverUseFakeData() {
+ assertThat(BatteryAppListPreferenceController.USE_FAKE_DATA).isFalse();
+ }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
index 70958a9..45edb47 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryInfoTest.java
@@ -43,6 +43,9 @@
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.R;
+import com.android.settingslib.utils.PowerUtil;
+import java.time.Duration;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -72,6 +75,8 @@
public static final long TEST_CHARGE_TIME_REMAINING = TimeUnit.MINUTES.toMicros(1);
public static final String TEST_CHARGE_TIME_REMAINING_STRINGIFIED =
"1m left until fully charged";
+ public static final String TEST_BATTERY_LEVEL_10 = "10%";
+ public static final String FIFTEEN_MIN_FORMATTED = "15m";
private Intent mDisChargingBatteryBroadcast;
private Intent mChargingBatteryBroadcast;
private Context mContext;
@@ -134,13 +139,15 @@
}
@Test
- public void testGetBatteryInfo_basedOnUsageTrue_usesCorrectString() {
+ public void testGetBatteryInfo_basedOnUsageTrueMoreThanFifteenMinutes_usesCorrectString() {
BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
mBatteryStats, SystemClock.elapsedRealtime() * 1000, false /* shortString */,
- 1000, true /* basedOnUsage */);
+ PowerUtil.convertMsToUs(Duration.ofHours(4).toMillis()),
+ true /* basedOnUsage */);
BatteryInfo info2 = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
mBatteryStats, SystemClock.elapsedRealtime() * 1000, true /* shortString */,
- 1000, true /* basedOnUsage */);
+ PowerUtil.convertMsToUs(Duration.ofHours(4).toMillis()),
+ true /* basedOnUsage */);
// We only add special mention for the long string
assertThat(info.remainingLabel.toString()).contains(ENHANCED_STRING_SUFFIX);
@@ -149,6 +156,41 @@
}
@Test
+ public void testGetBatteryInfo_basedOnUsageTrueLessThanSevenMinutes_usesCorrectString() {
+ BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
+ mBatteryStats, SystemClock.elapsedRealtime() * 1000, false /* shortString */,
+ PowerUtil.convertMsToUs(Duration.ofMinutes(7).toMillis()),
+ true /* basedOnUsage */);
+ BatteryInfo info2 = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
+ mBatteryStats, SystemClock.elapsedRealtime() * 1000, true /* shortString */,
+ PowerUtil.convertMsToUs(Duration.ofMinutes(7).toMillis()),
+ true /* basedOnUsage */);
+
+ // These should be identical in either case
+ assertThat(info.remainingLabel.toString()).isEqualTo(
+ mContext.getString(R.string.power_remaining_duration_only_shutdown_imminent));
+ assertThat(info2.remainingLabel.toString()).isEqualTo(
+ mContext.getString(R.string.power_remaining_duration_only_shutdown_imminent));
+ }
+
+ @Test
+ public void testGetBatteryInfo_basedOnUsageTrueBetweenSevenAndFifteenMinutes_usesCorrectString() {
+ BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
+ mBatteryStats, SystemClock.elapsedRealtime() * 1000, false /* shortString */,
+ PowerUtil.convertMsToUs(Duration.ofMinutes(10).toMillis()),
+ true /* basedOnUsage */);
+
+ // Check that strings are showing less than 15 minutes remaining regardless of exact time.
+ assertThat(info.chargeLabel.toString()).isEqualTo(
+ mContext.getString(R.string.power_remaining_less_than_duration,
+ TEST_BATTERY_LEVEL_10, FIFTEEN_MIN_FORMATTED));
+ assertThat(info.remainingLabel.toString()).isEqualTo(
+ mContext.getString(R.string.power_remaining_less_than_duration_only,
+ FIFTEEN_MIN_FORMATTED));
+ }
+
+
+ @Test
public void testGetBatteryInfo_basedOnUsageFalse_usesDefaultString() {
BatteryInfo info = BatteryInfo.getBatteryInfo(mContext, mDisChargingBatteryBroadcast,
mBatteryStats, SystemClock.elapsedRealtime() * 1000, false /* shortString */,
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatterySaverSettingsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatterySaverSettingsTest.java
deleted file mode 100644
index 0e32f6b..0000000
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatterySaverSettingsTest.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.fuelgauge;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.content.Context;
-import android.provider.SearchIndexableResource;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.widget.SwitchBar;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-import java.util.List;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class BatterySaverSettingsTest {
- private Context mContext;
- private BatterySaverSettings mBatterySaverSettings;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
-
- mContext = RuntimeEnvironment.application;
- mBatterySaverSettings = new BatterySaverSettings();
- mBatterySaverSettings.mSwitchBar = new SwitchBar(mContext);
- }
-
- @Test
- public void testOnBatteryChanged_pluggedIn_setDisable() {
- mBatterySaverSettings.onBatteryChanged(true /* pluggedIn */);
-
- assertThat(mBatterySaverSettings.mSwitchBar.isEnabled()).isFalse();
- }
-
- @Test
- public void testOnBatteryChanged_notPluggedIn_setEnable() {
- mBatterySaverSettings.onBatteryChanged(false /* pluggedIn */);
-
- assertThat(mBatterySaverSettings.mSwitchBar.isEnabled()).isTrue();
- }
-
- @Test
- public void searchProvider_shouldIndexDefaultXml() {
- final List<SearchIndexableResource> sir = mBatterySaverSettings.SEARCH_INDEX_DATA_PROVIDER
- .getXmlResourcesToIndex(mContext, true /* enabled */);
-
- assertThat(sir).hasSize(1);
- assertThat(sir.get(0).xmlResId).isEqualTo(R.xml.battery_saver_settings);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java b/tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java
index fe90751..6bc6ee7 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/BatteryUtilsTest.java
@@ -32,6 +32,7 @@
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -523,4 +524,27 @@
public void testIsLegacyApp_SdkLargerOrEqualThanO_ReturnFalse() {
assertThat(mBatteryUtils.isLegacyApp(HIGH_SDK_PACKAGE)).isFalse();
}
+
+ @Test
+ public void testSetForceAppStandby_forcePreOApp_forceTwoRestrictions() {
+ mBatteryUtils.setForceAppStandby(UID, LOW_SDK_PACKAGE, AppOpsManager.MODE_IGNORED);
+
+ // Restrict both OP_RUN_IN_BACKGROUND and OP_RUN_ANY_IN_BACKGROUND
+ verify(mAppOpsManager).setMode(AppOpsManager.OP_RUN_IN_BACKGROUND, UID, LOW_SDK_PACKAGE,
+ AppOpsManager.MODE_IGNORED);
+ verify(mAppOpsManager).setMode(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, UID, LOW_SDK_PACKAGE,
+ AppOpsManager.MODE_IGNORED);
+ }
+
+ @Test
+ public void testSetForceAppStandby_forceOApp_forceOneRestriction() {
+ mBatteryUtils.setForceAppStandby(UID, HIGH_SDK_PACKAGE, AppOpsManager.MODE_IGNORED);
+
+ // Don't restrict OP_RUN_IN_BACKGROUND because it is already been restricted for O app
+ verify(mAppOpsManager, never()).setMode(AppOpsManager.OP_RUN_IN_BACKGROUND, UID,
+ HIGH_SDK_PACKAGE, AppOpsManager.MODE_IGNORED);
+ // Restrict OP_RUN_ANY_IN_BACKGROUND
+ verify(mAppOpsManager).setMode(AppOpsManager.OP_RUN_ANY_IN_BACKGROUND, UID,
+ HIGH_SDK_PACKAGE, AppOpsManager.MODE_IGNORED);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacyTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacyTest.java
index 45448a9..a3786c2 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacyTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryLegacyTest.java
@@ -15,8 +15,8 @@
*/
package com.android.settings.fuelgauge;
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_HIGH_POWER_APPS;
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_TOGGLE_APPS;
+import static com.android.settings.fuelgauge.PowerUsageSummaryLegacy.MENU_HIGH_POWER_APPS;
+import static com.android.settings.fuelgauge.PowerUsageSummaryLegacy.MENU_TOGGLE_APPS;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
@@ -55,7 +55,6 @@
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.TestConfig;
-import com.android.settings.Utils;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.fuelgauge.anomaly.Anomaly;
import com.android.settings.fuelgauge.anomaly.AnomalyDetectionPolicy;
@@ -65,6 +64,7 @@
import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settingslib.core.AbstractPreferenceController;
+import com.android.settingslib.utils.StringUtil;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -367,8 +367,8 @@
public void testUpdateScreenPreference_showCorrectSummary() {
doReturn(mScreenBatterySipper).when(mFragment).findBatterySipperByType(any(), any());
doReturn(mRealContext).when(mFragment).getContext();
- final CharSequence expectedSummary = Utils.formatElapsedTime(mRealContext, USAGE_TIME_MS,
- false);
+ final CharSequence expectedSummary =
+ StringUtil.formatElapsedTime(mRealContext, USAGE_TIME_MS, false);
mFragment.updateScreenPreference();
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
index 6fecf3c..35af8bb 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java
@@ -16,7 +16,6 @@
package com.android.settings.fuelgauge;
import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_HIGH_POWER_APPS;
-import static com.android.settings.fuelgauge.PowerUsageSummary.MENU_TOGGLE_APPS;
import static com.google.common.truth.Truth.assertThat;
@@ -170,7 +169,6 @@
doReturn(mock(LoaderManager.class)).when(mFragment).getLoaderManager();
when(mFragment.getActivity()).thenReturn(mSettingsActivity);
- when(mToggleAppsMenu.getItemId()).thenReturn(MENU_TOGGLE_APPS);
when(mHighPowerMenu.getItemId()).thenReturn(MENU_HIGH_POWER_APPS);
when(mFeatureFactory.powerUsageFeatureProvider.getAdditionalBatteryInfoIntent())
.thenReturn(sAdditionalBatteryInfoIntent);
@@ -215,39 +213,6 @@
}
@Test
- public void testOptionsMenu_menuAppToggle_metricEventInvoked() {
- mFragment.onOptionsItemSelected(mToggleAppsMenu);
- mFragment.mShowAllApps = false;
-
- verify(mFeatureFactory.metricsFeatureProvider).action(mContext,
- MetricsProto.MetricsEvent.ACTION_SETTINGS_MENU_BATTERY_APPS_TOGGLE, true);
- }
-
- @Test
- public void testOptionsMenu_toggleAppsEnabled() {
- when(mFeatureFactory.powerUsageFeatureProvider.isPowerAccountingToggleEnabled())
- .thenReturn(true);
- mFragment.mShowAllApps = false;
-
- mFragment.onCreateOptionsMenu(mMenu, mMenuInflater);
-
- verify(mMenu).add(Menu.NONE, MENU_TOGGLE_APPS, Menu.NONE, R.string.show_all_apps);
- }
-
- @Test
- public void testOptionsMenu_clickToggleAppsMenu_dataChanged() {
- testToggleAllApps(true);
- testToggleAllApps(false);
- }
-
- private void testToggleAllApps(final boolean isShowApps) {
- mFragment.mShowAllApps = isShowApps;
-
- mFragment.onOptionsItemSelected(mToggleAppsMenu);
- assertThat(mFragment.mShowAllApps).isEqualTo(!isShowApps);
- }
-
- @Test
public void testUpdateLastFullChargePreference_showCorrectSummary() {
doReturn(mRealContext).when(mFragment).getContext();
@@ -324,18 +289,6 @@
}
@Test
- public void testSaveInstanceState_showAllAppsRestored() {
- Bundle bundle = new Bundle();
- mFragment.mShowAllApps = true;
- doReturn(mPreferenceScreen).when(mFragment).getPreferenceScreen();
-
- mFragment.onSaveInstanceState(bundle);
- mFragment.restoreSavedInstance(bundle);
-
- assertThat(mFragment.mShowAllApps).isTrue();
- }
-
- @Test
public void testDebugMode() {
doReturn(true).when(mFeatureFactory.powerUsageFeatureProvider).isEstimateDebugEnabled();
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceControllerTest.java
new file mode 100644
index 0000000..cabcdcf
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySaverPreferenceControllerTest.java
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2017 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.settings.fuelgauge.batterysaver;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.content.Context;
+import android.provider.Settings;
+import android.support.v14.preference.SwitchPreference;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class AutoBatterySaverPreferenceControllerTest {
+
+ private AutoBatterySaverPreferenceController mController;
+ private Context mContext;
+ private SwitchPreference mPreference;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+
+ mContext = RuntimeEnvironment.application;
+ mPreference = new SwitchPreference(mContext);
+ mController = new AutoBatterySaverPreferenceController(mContext);
+ }
+
+ @Test
+ public void testUpdateState_lowPowerLevelZero_preferenceNotChecked() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.isChecked()).isFalse();
+ }
+
+ @Test
+ public void testUpdateState_lowPowerLevelZero_preferenceChecked() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 15);
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.isChecked()).isTrue();
+ }
+
+ @Test
+ public void testOnPreferenceChange_turnOn_setValueNotZero() {
+ mController.onPreferenceChange(mPreference, true);
+
+ assertThat(Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isNotEqualTo(0);
+ }
+
+ @Test
+ public void testOnPreferenceChange_turnOff_setValueZero() {
+ mController.onPreferenceChange(mPreference, false);
+
+ assertThat(Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isEqualTo(0);
+ }
+
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java
new file mode 100644
index 0000000..32a4fac
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterysaver;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.arch.lifecycle.LifecycleOwner;
+import android.content.Context;
+import android.provider.Settings;
+import android.support.v14.preference.SwitchPreference;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.widget.SeekBarPreference;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class AutoBatterySeekBarPreferenceControllerTest {
+ private static final int TRIGGER_LEVEL = 15;
+
+ private AutoBatterySeekBarPreferenceController mController;
+ private Context mContext;
+ private SeekBarPreference mPreference;
+ private Lifecycle mLifecycle;
+ private LifecycleOwner mLifecycleOwner;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+
+ mContext = RuntimeEnvironment.application;
+ mPreference = new SeekBarPreference(mContext);
+ mPreference.setMax(100);
+ mController = new AutoBatterySeekBarPreferenceController(mContext, mLifecycle);
+ }
+
+ @Test
+ public void testPreference_lowPowerLevelZero_preferenceInvisible() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
+
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.isVisible()).isFalse();
+ }
+
+ @Test
+ public void testPreference_lowPowerLevelNotZero_updatePreference() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, TRIGGER_LEVEL);
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.isVisible()).isTrue();
+ assertThat(mPreference.getTitle()).isEqualTo("Turn on automatically at 15%");
+ assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL);
+ }
+
+ @Test
+ public void testOnPreferenceChange_updateValue() {
+ Settings.Global.putInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0);
+
+ mController.onPreferenceChange(mPreference, TRIGGER_LEVEL);
+
+ assertThat(Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isEqualTo(TRIGGER_LEVEL);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java
new file mode 100644
index 0000000..29f924f
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceControllerTest.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterysaver;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+import android.arch.lifecycle.LifecycleOwner;
+import android.content.Context;
+import android.os.PowerManager;
+import android.support.v7.preference.PreferenceScreen;
+import android.view.View;
+import android.widget.Button;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settings.widget.TwoStateButtonPreference;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.Shadows;
+import org.robolectric.annotation.Config;
+import org.robolectric.shadows.ShadowPowerManager;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
+ shadows = com.android.settings.testutils.shadow.ShadowPowerManager.class)
+public class BatterySaverButtonPreferenceControllerTest {
+ private BatterySaverButtonPreferenceController mController;
+ private Context mContext;
+ private Lifecycle mLifecycle;
+ private LifecycleOwner mLifecycleOwner;
+ private Button mButtonOn;
+ private Button mButtonOff;
+ private ShadowPowerManager mShadowPowerManager;
+ @Mock
+ private TwoStateButtonPreference mPreference;
+ @Mock
+ private PreferenceScreen mPreferenceScreen;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ mContext = spy(RuntimeEnvironment.application);
+ PowerManager powerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE);
+ mShadowPowerManager = Shadows.shadowOf(powerManager);
+ doReturn(mPreference).when(mPreferenceScreen).findPreference(anyString());
+
+ mButtonOn = new Button(mContext);
+ mButtonOn.setId(R.id.state_on_button);
+ doReturn(mButtonOn).when(mPreference).getStateOnButton();
+ mButtonOff = new Button(mContext);
+ mButtonOff.setId(R.id.state_off_button);
+ doReturn(mButtonOff).when(mPreference).getStateOffButton();
+
+ mController = new BatterySaverButtonPreferenceController(mContext, mLifecycle);
+ mController.displayPreference(mPreferenceScreen);
+ }
+
+ @Test
+ public void testUpdateState_lowPowerOn_displayButtonOff() {
+ mShadowPowerManager.setIsPowerSaveMode(true);
+
+ mController.updateState(mPreference);
+
+ assertThat(mButtonOn.getVisibility()).isEqualTo(View.GONE);
+ assertThat(mButtonOff.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void testUpdateState_lowPowerOff_displayButtonOn() {
+ mShadowPowerManager.setIsPowerSaveMode(false);
+
+ mController.updateState(mPreference);
+
+ assertThat(mButtonOn.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(mButtonOff.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ @Test
+ public void testOnClick_clickButtonOn_setPowerSaveMode() {
+ mController.onClick(mButtonOn);
+
+ assertThat(mShadowPowerManager.isPowerSaveMode()).isTrue();
+ }
+
+ @Test
+ public void testOnClick_clickButtonOff_clearPowerSaveMode() {
+ mController.onClick(mButtonOff);
+
+ assertThat(mShadowPowerManager.isPowerSaveMode()).isFalse();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
index ddee314..ec72384 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipDialogFragmentTest.java
@@ -27,10 +27,13 @@
import com.android.settings.R;
import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
import com.android.settings.fuelgauge.batterytip.tips.HighUsageTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.fuelgauge.batterytip.tips.UnrestrictAppTip;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.shadow.ShadowRuntimePermissionPresenter;
+import com.android.settings.testutils.shadow.ShadowUtils;
import org.junit.Before;
import org.junit.Test;
@@ -47,14 +50,18 @@
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = ShadowRuntimePermissionPresenter.class)
+ shadows = ShadowUtils.class)
public class BatteryTipDialogFragmentTest {
private static final String PACKAGE_NAME = "com.android.app";
+ private static final String DISPLAY_NAME = "app";
private static final long SCREEN_TIME_MS = DateUtils.HOUR_IN_MILLIS;
private BatteryTipDialogFragment mDialogFragment;
private Context mContext;
private HighUsageTip mHighUsageTip;
+ private RestrictAppTip mRestrictedOneAppTip;
+ private RestrictAppTip mRestrictAppsTip;
+ private UnrestrictAppTip mUnrestrictAppTip;
@Before
public void setUp() {
@@ -64,9 +71,22 @@
FakeFeatureFactory.setupForTest();
List<AppInfo> highUsageTips = new ArrayList<>();
- highUsageTips.add(new AppInfo.Builder().setScreenOnTimeMs(SCREEN_TIME_MS).setPackageName(
- PACKAGE_NAME).build());
+ final AppInfo appInfo = new AppInfo.Builder()
+ .setScreenOnTimeMs(SCREEN_TIME_MS)
+ .setPackageName(PACKAGE_NAME)
+ .build();
+ highUsageTips.add(appInfo);
mHighUsageTip = new HighUsageTip(SCREEN_TIME_MS, highUsageTips);
+
+ final List<AppInfo> restrictApps = new ArrayList<>();
+ restrictApps.add(appInfo);
+ mRestrictedOneAppTip = new RestrictAppTip(BatteryTip.StateType.NEW,
+ new ArrayList<>(restrictApps));
+ restrictApps.add(appInfo);
+ mRestrictAppsTip = new RestrictAppTip(BatteryTip.StateType.NEW,
+ new ArrayList<>(restrictApps));
+
+ mUnrestrictAppTip = new UnrestrictAppTip(BatteryTip.StateType.NEW, appInfo);
}
@Test
@@ -82,5 +102,49 @@
mContext.getString(R.string.battery_tip_dialog_message, "1h"));
}
+ @Test
+ public void testOnCreateDialog_restrictOneAppTip_fireRestrictOneAppDialog() {
+ mDialogFragment = BatteryTipDialogFragment.newInstance(mRestrictedOneAppTip);
+
+ FragmentTestUtil.startFragment(mDialogFragment);
+
+ final AlertDialog dialog = (AlertDialog) ShadowDialog.getLatestDialog();
+ ShadowAlertDialog shadowDialog = shadowOf(dialog);
+
+ assertThat(shadowDialog.getTitle()).isEqualTo("Restrict app?");
+ assertThat(shadowDialog.getMessage()).isEqualTo(
+ mContext.getString(R.string.battery_tip_restrict_app_dialog_message));
+ }
+
+ @Test
+ public void testOnCreateDialog_restrictAppsTip_fireRestrictAppsDialog() {
+ mDialogFragment = BatteryTipDialogFragment.newInstance(mRestrictAppsTip);
+
+ FragmentTestUtil.startFragment(mDialogFragment);
+
+ final AlertDialog dialog = (AlertDialog) ShadowDialog.getLatestDialog();
+ ShadowAlertDialog shadowDialog = shadowOf(dialog);
+
+ assertThat(shadowDialog.getTitle()).isEqualTo("Restrict 2 apps?");
+ assertThat(shadowDialog.getMessage()).isEqualTo(
+ mContext.getString(R.string.battery_tip_restrict_app_dialog_message));
+ assertThat(shadowDialog.getView()).isNotNull();
+ }
+
+ @Test
+ public void testOnCreateDialog_unRestrictAppTip_fireUnRestrictDialog() {
+ mDialogFragment = BatteryTipDialogFragment.newInstance(mUnrestrictAppTip);
+ ShadowUtils.setApplicationLabel(PACKAGE_NAME, DISPLAY_NAME);
+
+ FragmentTestUtil.startFragment(mDialogFragment);
+
+ final AlertDialog dialog = (AlertDialog) ShadowDialog.getLatestDialog();
+ ShadowAlertDialog shadowDialog = shadowOf(dialog);
+
+ assertThat(shadowDialog.getTitle()).isEqualTo("Remove restriction for app?");
+ assertThat(shadowDialog.getMessage()).isEqualTo(
+ mContext.getString(R.string.battery_tip_unrestrict_app_dialog_message));
+ }
+
}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoaderTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoaderTest.java
index 83b3225..09e67ed 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoaderTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipLoaderTest.java
@@ -51,6 +51,7 @@
public class BatteryTipLoaderTest {
private static final int[] TIP_ORDER = {
BatteryTip.TipType.SMART_BATTERY_MANAGER,
+ BatteryTip.TipType.APP_RESTRICTION,
BatteryTip.TipType.HIGH_DEVICE_USAGE,
BatteryTip.TipType.BATTERY_SAVER,
BatteryTip.TipType.LOW_BATTERY,
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java
new file mode 100644
index 0000000..47785d5
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/actions/RestrictAppActionTest.java
@@ -0,0 +1,83 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.actions;
+
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Matchers.eq;
+import static org.mockito.Mockito.verify;
+
+import android.app.AppOpsManager;
+import android.content.Context;
+
+import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.BatteryUtils;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.fuelgauge.batterytip.tips.BatteryTip;
+import com.android.settings.fuelgauge.batterytip.tips.RestrictAppTip;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class RestrictAppActionTest {
+ private static final String PACKAGE_NAME_1 = "com.android.app1";
+ private static final String PACKAGE_NAME_2 = "com.android.app2";
+
+ @Mock
+ private BatteryUtils mBatteryUtils;
+ private Context mContext;
+ private RestrictAppAction mRestrictAppAction;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+
+ mContext = RuntimeEnvironment.application;
+ final List<AppInfo> mAppInfos = new ArrayList<>();
+ mAppInfos.add(new AppInfo.Builder()
+ .setPackageName(PACKAGE_NAME_1)
+ .build());
+ mAppInfos.add(new AppInfo.Builder()
+ .setPackageName(PACKAGE_NAME_2)
+ .build());
+
+ mRestrictAppAction = new RestrictAppAction(mContext, new RestrictAppTip(
+ BatteryTip.StateType.NEW, mAppInfos));
+ mRestrictAppAction.mBatteryUtils = mBatteryUtils;
+ }
+
+ @Test
+ public void testHandlePositiveAction() {
+ mRestrictAppAction.handlePositiveAction();
+
+ verify(mBatteryUtils).setForceAppStandby(anyInt(), eq(PACKAGE_NAME_1),
+ eq(AppOpsManager.MODE_IGNORED));
+ verify(mBatteryUtils).setForceAppStandby(anyInt(), eq(PACKAGE_NAME_2),
+ eq(AppOpsManager.MODE_IGNORED));
+ }
+
+
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
new file mode 100644
index 0000000..e1dea17
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/RestrictAppTipTest.java
@@ -0,0 +1,111 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.tips;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+
+import android.content.Context;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.os.Parcel;
+
+import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class RestrictAppTipTest {
+ private static final String PACKAGE_NAME = "com.android.app";
+ private static final String DISPLAY_NAME = "app";
+
+ private Context mContext;
+ private RestrictAppTip mNewBatteryTip;
+ private RestrictAppTip mHandledBatteryTip;
+ private List<AppInfo> mUsageAppList;
+ @Mock
+ private ApplicationInfo mApplicationInfo;
+ @Mock
+ private PackageManager mPackageManager;
+
+ @Before
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+
+ mContext = spy(RuntimeEnvironment.application);
+ doReturn(mPackageManager).when(mContext).getPackageManager();
+ doReturn(mApplicationInfo).when(mPackageManager).getApplicationInfo(PACKAGE_NAME,
+ PackageManager.MATCH_DISABLED_COMPONENTS | PackageManager.MATCH_ANY_USER);
+ doReturn(DISPLAY_NAME).when(mApplicationInfo).loadLabel(mPackageManager);
+
+ mUsageAppList = new ArrayList<>();
+ mUsageAppList.add(new AppInfo.Builder()
+ .setPackageName(PACKAGE_NAME)
+ .build());
+ mNewBatteryTip = new RestrictAppTip(BatteryTip.StateType.NEW, mUsageAppList);
+ mHandledBatteryTip = new RestrictAppTip(BatteryTip.StateType.HANDLED, mUsageAppList);
+ }
+
+ @Test
+ public void testParcelable() {
+ Parcel parcel = Parcel.obtain();
+ mNewBatteryTip.writeToParcel(parcel, mNewBatteryTip.describeContents());
+ parcel.setDataPosition(0);
+
+ final RestrictAppTip parcelTip = new RestrictAppTip(parcel);
+
+ assertThat(parcelTip.getType()).isEqualTo(BatteryTip.TipType.APP_RESTRICTION);
+ assertThat(parcelTip.getState()).isEqualTo(BatteryTip.StateType.NEW);
+ final AppInfo app = parcelTip.getRestrictAppList().get(0);
+ assertThat(app.packageName).isEqualTo(PACKAGE_NAME);
+ }
+
+ @Test
+ public void testGetTitle_stateNew_showRestrictTitle() {
+ assertThat(mNewBatteryTip.getTitle(mContext)).isEqualTo("Restrict 1 app");
+ }
+
+ @Test
+ public void testGetTitle_stateHandled_showHandledTitle() {
+ assertThat(mHandledBatteryTip.getTitle(mContext)).isEqualTo("1 recently restricted");
+ }
+
+ @Test
+ public void testGetSummary_stateNew_showRestrictSummary() {
+ assertThat(mNewBatteryTip.getSummary(mContext)).isEqualTo(
+ "app has high battery usage");
+ }
+
+ @Test
+ public void testGetSummary_stateHandled_showHandledSummary() {
+ assertThat(mHandledBatteryTip.getSummary(mContext)).isEqualTo(
+ "App changes are in progress");
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTipTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTipTest.java
new file mode 100644
index 0000000..a83a158
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/tips/UnrestrictAppTipTest.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2018 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.settings.fuelgauge.batterytip.tips;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.os.Parcel;
+
+import com.android.settings.TestConfig;
+import com.android.settings.fuelgauge.batterytip.AppInfo;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class UnrestrictAppTipTest {
+ private static final String PACKAGE_NAME = "com.android.app";
+
+ private UnrestrictAppTip mBatteryTip;
+
+ @Before
+ public void setUp() throws Exception {
+ MockitoAnnotations.initMocks(this);
+
+ AppInfo appInfo = new AppInfo.Builder()
+ .setPackageName(PACKAGE_NAME)
+ .build();
+ mBatteryTip = new UnrestrictAppTip(BatteryTip.StateType.NEW, appInfo);
+ }
+
+ @Test
+ public void testParcelable() {
+ Parcel parcel = Parcel.obtain();
+ mBatteryTip.writeToParcel(parcel, mBatteryTip.describeContents());
+ parcel.setDataPosition(0);
+
+ final UnrestrictAppTip parcelTip = new UnrestrictAppTip(parcel);
+
+ assertThat(parcelTip.getType()).isEqualTo(BatteryTip.TipType.REMOVE_APP_RESTRICTION);
+ assertThat(parcelTip.getState()).isEqualTo(BatteryTip.StateType.NEW);
+ assertThat(parcelTip.getPackageName()).isEqualTo(PACKAGE_NAME);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/location/LocationEnablerTest.java b/tests/robotests/src/com/android/settings/location/LocationEnablerTest.java
index 1bae729..ca42b3a 100644
--- a/tests/robotests/src/com/android/settings/location/LocationEnablerTest.java
+++ b/tests/robotests/src/com/android/settings/location/LocationEnablerTest.java
@@ -252,7 +252,7 @@
enforcingUsers.add(new UserManager.EnforcingUser(userId,
UserManager.RESTRICTION_SOURCE_PROFILE_OWNER));
when(mUserManager.getUserRestrictionSources(
- UserManager.DISALLOW_CONFIG_LOCATION_MODE, UserHandle.of(userId)))
+ UserManager.DISALLOW_CONFIG_LOCATION, UserHandle.of(userId)))
.thenReturn(enforcingUsers);
assertThat(mEnabler.getShareLocationEnforcedAdmin(userId) != null).isTrue();
diff --git a/tests/robotests/src/com/android/settings/location/LocationFooterPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/location/LocationFooterPreferenceControllerTest.java
new file mode 100644
index 0000000..da00010
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/location/LocationFooterPreferenceControllerTest.java
@@ -0,0 +1,220 @@
+/*
+ * Copyright (C) 2018 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.settings.location;
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyInt;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.never;
+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.arch.lifecycle.LifecycleOwner;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.pm.ResolveInfo;
+import android.content.res.Resources;
+import android.location.LocationManager;
+import android.os.Bundle;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceCategory;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.core.lifecycle.Lifecycle;
+import java.util.ArrayList;
+import java.util.List;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.ArgumentCaptor;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+/** Unit tests for {@link LocationFooterPreferenceController} */
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class LocationFooterPreferenceControllerTest {
+
+ @Mock
+ private PreferenceCategory mPreferenceCategory;
+ @Mock
+ private PackageManager mPackageManager;
+ @Mock
+ private Resources mResources;
+ private Context mContext;
+ private LocationFooterPreferenceController mController;
+ private LifecycleOwner mLifecycleOwner;
+ private Lifecycle mLifecycle;
+ private static final int TEST_RES_ID = 1234;
+ private static final String TEST_TEXT = "text";
+
+ @Before
+ public void setUp() throws NameNotFoundException {
+ MockitoAnnotations.initMocks(this);
+ mContext = spy(RuntimeEnvironment.application);
+ when(mContext.getPackageManager()).thenReturn(mPackageManager);
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ when(mPreferenceCategory.getContext()).thenReturn(mContext);
+ mController = spy(new LocationFooterPreferenceController(mContext, mLifecycle));
+ when(mPackageManager.getResourcesForApplication(any(ApplicationInfo.class)))
+ .thenReturn(mResources);
+ when(mResources.getString(TEST_RES_ID)).thenReturn(TEST_TEXT);
+ doNothing().when(mPreferenceCategory).removeAll();
+ }
+
+ @Test
+ public void isAvailable_hasValidFooter_returnsTrue() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+
+ assertThat(mController.isAvailable()).isTrue();
+ }
+
+ @Test
+ public void isAvailable_noSystemApp_returnsFalse() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ false, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+ assertThat(mController.isAvailable()).isFalse();
+ }
+
+ @Test
+ public void isAvailable_noRequiredMetadata_returnsFalse() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ false));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+ assertThat(mController.isAvailable()).isFalse();
+ }
+
+ @Test
+ public void sendBroadcastFooterInject() {
+ ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
+ final ActivityInfo activityInfo =
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ true).activityInfo;
+ mController.sendBroadcastFooterDisplayed(
+ new ComponentName(activityInfo.packageName, activityInfo.name));
+ verify(mContext).sendBroadcast(intent.capture());
+ assertThat(intent.getValue().getAction())
+ .isEqualTo(LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION);
+ }
+
+ @Test
+ public void updateState_sendBroadcast() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(), anyInt()))
+ .thenReturn(testResolveInfos);
+ mController.updateState(mPreferenceCategory);
+ ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
+ verify(mContext).sendBroadcast(intent.capture());
+ assertThat(intent.getValue().getAction())
+ .isEqualTo(LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION);
+ }
+
+ @Test
+ public void updateState_addPreferences() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+ mController.updateState(mPreferenceCategory);
+ ArgumentCaptor<Preference> pref = ArgumentCaptor.forClass(Preference.class);
+ verify(mPreferenceCategory).addPreference(pref.capture());
+ assertThat(pref.getValue().getTitle()).isEqualTo(TEST_TEXT);
+ }
+
+ @Test
+ public void updateState_notSystemApp_ignore() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ false, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+ mController.updateState(mPreferenceCategory);
+ verify(mPreferenceCategory, never()).addPreference(any(Preference.class));
+ verify(mContext, never()).sendBroadcast(any(Intent.class));
+ }
+
+ @Test
+ public void updateState_thenOnPause_sendBroadcasts() throws NameNotFoundException {
+ final List<ResolveInfo> testResolveInfos = new ArrayList<>();
+ testResolveInfos.add(
+ getTestResolveInfo(/*isSystemApp*/ true, /*hasRequiredMetadata*/ true));
+ when(mPackageManager.queryBroadcastReceivers(any(Intent.class), anyInt()))
+ .thenReturn(testResolveInfos);
+ mController.updateState(mPreferenceCategory);
+ ArgumentCaptor<Intent> intent = ArgumentCaptor.forClass(Intent.class);
+ verify(mContext).sendBroadcast(intent.capture());
+ assertThat(intent.getValue().getAction())
+ .isEqualTo(LocationManager.SETTINGS_FOOTER_DISPLAYED_ACTION);
+
+ mController.onPause();
+ verify(mContext, times(2)).sendBroadcast(intent.capture());
+ assertThat(intent.getValue().getAction())
+ .isEqualTo(LocationManager.SETTINGS_FOOTER_REMOVED_ACTION);
+ }
+
+ @Test
+ public void onPause_doNotSendBroadcast() {
+ mController.onPause();
+ verify(mContext, never()).sendBroadcast(any(Intent.class));
+ }
+
+ /**
+ * Returns a ResolveInfo object for testing
+ * @param isSystemApp If true, the application is a system app.
+ * @param hasRequiredMetaData If true, the broadcast receiver has a valid value for
+ * {@link LocationManager#METADATA_SETTINGS_FOOTER_STRING}
+ */
+ private ResolveInfo getTestResolveInfo(boolean isSystemApp, boolean hasRequiredMetaData) {
+ ResolveInfo testResolveInfo = new ResolveInfo();
+ ApplicationInfo testAppInfo = new ApplicationInfo();
+ if (isSystemApp) {
+ testAppInfo.flags |= ApplicationInfo.FLAG_SYSTEM;
+ }
+ ActivityInfo testActivityInfo = new ActivityInfo();
+ testActivityInfo.name = "TestActivityName";
+ testActivityInfo.packageName = "TestPackageName";
+ testActivityInfo.applicationInfo = testAppInfo;
+ if (hasRequiredMetaData) {
+ testActivityInfo.metaData = new Bundle();
+ testActivityInfo.metaData.putInt(
+ LocationManager.METADATA_SETTINGS_FOOTER_STRING, TEST_RES_ID);
+ }
+ testResolveInfo.activityInfo = testActivityInfo;
+ return testResolveInfo;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/location/RecentLocationRequestPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/location/RecentLocationRequestPreferenceControllerTest.java
index f114ff3..7f495ab 100644
--- a/tests/robotests/src/com/android/settings/location/RecentLocationRequestPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/location/RecentLocationRequestPreferenceControllerTest.java
@@ -33,14 +33,11 @@
import android.support.v7.preference.PreferenceCategory;
import android.support.v7.preference.PreferenceScreen;
import android.text.TextUtils;
-import android.util.FeatureFlagUtils;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.TestConfig;
-import com.android.settings.applications.InstalledAppDetails;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
-import com.android.settings.core.FeatureFlags;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.widget.AppPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -179,15 +176,9 @@
preference.performClick();
- if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.APP_INFO_V2)) {
- verify(activity).startPreferencePanelAsUser(any(),
- eq(AppInfoDashboardFragment.class.getName()),
- any(Bundle.class), anyInt(), any(), any());
- } else {
- verify(activity).startPreferencePanelAsUser(any(),
- eq(InstalledAppDetails.class.getName()),
- any(Bundle.class), anyInt(), any(), any());
- }
+ verify(activity).startPreferencePanelAsUser(any(),
+ eq(AppInfoDashboardFragment.class.getName()),
+ any(Bundle.class), anyInt(), any(), any());
}
private static ArgumentMatcher<Preference> titleMatches(String expected) {
diff --git a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
index d6df612..7327d01 100644
--- a/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/BlockPreferenceControllerTest.java
@@ -29,7 +29,9 @@
import static org.junit.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
+import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
@@ -238,19 +240,26 @@
@Test
public void testOnSwitchChanged_channel_default() throws Exception {
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
+ appRow.pkg = "pkg";
NotificationChannel channel =
new NotificationChannel(DEFAULT_CHANNEL_ID, "a", IMPORTANCE_UNSPECIFIED);
+ when(mBackend.onlyHasDefaultChannel(anyString(), anyInt())).thenReturn(true);
mController.onResume(appRow, channel, null, null);
mController.updateState(mPreference);
mController.onSwitchChanged(null, false);
assertEquals(IMPORTANCE_NONE, channel.getImportance());
+ assertTrue(appRow.banned);
mController.onSwitchChanged(null, true);
assertEquals(IMPORTANCE_UNSPECIFIED, channel.getImportance());
+ assertFalse(appRow.banned);
verify(mBackend, times(2)).updateChannel(any(), anyInt(), any());
+ // 2 calls for onSwitchChanged + once when calling updateState originally
+ verify(mBackend, times(3)).setNotificationsEnabledForPackage(
+ anyString(), anyInt(), anyBoolean());
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java
index fd903f9..0d8b430 100644
--- a/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/DeletedChannelsPreferenceControllerTest.java
@@ -119,7 +119,6 @@
Preference pref = mock(Preference.class);
mController.updateState(pref);
- verify(pref, times(1)).setEnabled(false);
verify(pref, times(1)).setSelectable(false);
verify(mBackend, times(1)).getDeletedChannelCount(any(), anyInt());
ArgumentCaptor<CharSequence> argumentCaptor = ArgumentCaptor.forClass(CharSequence.class);
diff --git a/tests/robotests/src/com/android/settings/notification/EnableZenModeDialogTest.java b/tests/robotests/src/com/android/settings/notification/EnableZenModeDialogTest.java
deleted file mode 100644
index 8b5ef79..0000000
--- a/tests/robotests/src/com/android/settings/notification/EnableZenModeDialogTest.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.notification;
-
-import static junit.framework.Assert.assertFalse;
-import static junit.framework.Assert.assertTrue;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.doNothing;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.when;
-
-import android.app.Activity;
-import android.app.Fragment;
-import android.content.Context;
-import android.net.Uri;
-import android.service.notification.Condition;
-import android.view.LayoutInflater;
-
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class EnableZenModeDialogTest {
- private EnableZenModeDialog mController;
-
- @Mock
- private Context mContext;
- @Mock
- private Activity mActivity;
- @Mock
- private Fragment mFragment;
-
- private Context mShadowContext;
- private LayoutInflater mLayoutInflater;
- private Condition mCountdownCondition;
- private Condition mAlarmCondition;
-
- @Before
- public void setup() {
- MockitoAnnotations.initMocks(this);
- mShadowContext = RuntimeEnvironment.application;
- when(mActivity.getApplicationContext()).thenReturn(mShadowContext);
- when(mContext.getApplicationContext()).thenReturn(mContext);
- when(mFragment.getContext()).thenReturn(mShadowContext);
- mLayoutInflater = LayoutInflater.from(mShadowContext);
- when(mActivity.getLayoutInflater()).thenReturn(mLayoutInflater);
-
- mController = spy(new EnableZenModeDialog());
- mController.mContext = mContext;
- mController.mActivity = mActivity;
- mController.mForeverId = Condition.newId(mContext).appendPath("forever").build();
- when(mContext.getString(com.android.internal.R.string.zen_mode_forever))
- .thenReturn("testSummary");
- mController.getContentView();
-
- // these methods use static calls to ZenModeConfig which would normally fail in robotests,
- // so instead do nothing:
- doNothing().when(mController).bindGenericCountdown();
- doReturn(null).when(mController).getTimeUntilNextAlarmCondition();
- doNothing().when(mController).bindNextAlarm(any());
-
- // as a result of doing nothing above, must bind manually:
- Uri alarm = Condition.newId(mContext).appendPath("alarm").build();
- mAlarmCondition = new Condition(alarm, "alarm", "", "", 0, 0, 0);
- Uri countdown = Condition.newId(mContext).appendPath("countdown").build();
- mCountdownCondition = new Condition(countdown, "countdown", "", "", 0, 0, 0);
- mController.bind(mCountdownCondition,
- mController.mZenRadioGroupContent.getChildAt(
- EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX),
- EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX);
- mController.bind(mAlarmCondition,
- mController.mZenRadioGroupContent.getChildAt(
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX),
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX);
- }
-
- @Test
- public void testForeverChecked() {
- mController.bindConditions(mController.forever());
-
- assertTrue(mController.getConditionTagAt(EnableZenModeDialog.FOREVER_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX).rb.isChecked());
- }
-
- @Test
- public void testNoneChecked() {
- mController.bindConditions(null);
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.FOREVER_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX).rb.isChecked());
- }
-
- @Test
- public void testAlarmChecked() {
- doReturn(false).when(mController).isCountdown(mAlarmCondition);
- doReturn(true).when(mController).isAlarm(mAlarmCondition);
-
- mController.bindConditions(mAlarmCondition);
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.FOREVER_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX).rb
- .isChecked());
- assertTrue(mController.getConditionTagAt(
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX).rb.isChecked());
- }
-
- @Test
- public void testCountdownChecked() {
- doReturn(false).when(mController).isAlarm(mCountdownCondition);
- doReturn(true).when(mController).isCountdown(mCountdownCondition);
-
- mController.bindConditions(mCountdownCondition);
- assertFalse(mController.getConditionTagAt(EnableZenModeDialog.FOREVER_CONDITION_INDEX).rb
- .isChecked());
- assertTrue(mController.getConditionTagAt(EnableZenModeDialog.COUNTDOWN_CONDITION_INDEX).rb
- .isChecked());
- assertFalse(mController.getConditionTagAt(
- EnableZenModeDialog.COUNTDOWN_ALARM_CONDITION_INDEX).rb.isChecked());
- }
-}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/notification/ImportancePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/ImportancePreferenceControllerTest.java
index 0065e30..229a212 100644
--- a/tests/robotests/src/com/android/settings/notification/ImportancePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/ImportancePreferenceControllerTest.java
@@ -21,6 +21,7 @@
import static android.app.NotificationManager.IMPORTANCE_LOW;
import static android.app.NotificationManager.IMPORTANCE_NONE;
+import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertNull;
import static junit.framework.Assert.assertTrue;
@@ -30,13 +31,16 @@
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
+import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.content.Context;
import android.os.UserManager;
import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceScreen;
import android.text.TextUtils;
+import com.android.settings.RestrictedListPreference;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.RestrictedLockUtils;
@@ -44,6 +48,7 @@
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
@@ -58,7 +63,13 @@
@Mock
private NotificationManager mNm;
@Mock
+ private NotificationBackend mBackend;
+ @Mock
+ NotificationSettingsBase.ImportanceListener mImportanceListener;
+ @Mock
private UserManager mUm;
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+ private PreferenceScreen mScreen;
private ImportancePreferenceController mController;
@@ -69,7 +80,8 @@
shadowApplication.setSystemService(Context.NOTIFICATION_SERVICE, mNm);
shadowApplication.setSystemService(Context.USER_SERVICE, mUm);
mContext = shadowApplication.getApplicationContext();
- mController = spy(new ImportancePreferenceController(mContext));
+ mController = spy(new ImportancePreferenceController(
+ mContext, mImportanceListener, mBackend));
}
@Test
@@ -123,14 +135,15 @@
@Test
public void testUpdateState_disabledByAdmin() throws Exception {
NotificationChannel channel = mock(NotificationChannel.class);
+ when(channel.getImportance()).thenReturn(IMPORTANCE_HIGH);
mController.onResume(new NotificationBackend.AppRow(), channel, null, mock(
RestrictedLockUtils.EnforcedAdmin.class));
- Preference pref = new Preference(RuntimeEnvironment.application);
+ Preference pref = new RestrictedListPreference(RuntimeEnvironment.application, null);
mController.updateState(pref);
assertFalse(pref.isEnabled());
- assertNull(pref.getIntent());
+ assertFalse(TextUtils.isEmpty(pref.getSummary()));
}
@Test
@@ -140,13 +153,14 @@
appRow.lockedChannelId = lockedId;
NotificationChannel channel = mock(NotificationChannel.class);
when(channel.getId()).thenReturn(lockedId);
+ when(channel.getImportance()).thenReturn(IMPORTANCE_HIGH);
mController.onResume(appRow, channel, null, null);
- Preference pref = new Preference(RuntimeEnvironment.application);
+ Preference pref = new RestrictedListPreference(RuntimeEnvironment.application, null);
mController.updateState(pref);
assertFalse(pref.isEnabled());
- assertNull(pref.getIntent());
+ assertFalse(TextUtils.isEmpty(pref.getSummary()));
}
@Test
@@ -155,11 +169,50 @@
NotificationChannel channel = new NotificationChannel("", "", IMPORTANCE_HIGH);
mController.onResume(appRow, channel, null, null);
- Preference pref = new Preference(RuntimeEnvironment.application);
+ Preference pref = new RestrictedListPreference(RuntimeEnvironment.application, null);
mController.updateState(pref);
assertTrue(pref.isEnabled());
- assertNotNull(pref.getIntent());
assertFalse(TextUtils.isEmpty(pref.getSummary()));
}
+
+ @Test
+ public void testImportanceLowToHigh() {
+ NotificationChannel channel =
+ new NotificationChannel(DEFAULT_CHANNEL_ID, "a", IMPORTANCE_LOW);
+ channel.setSound(null, Notification.AUDIO_ATTRIBUTES_DEFAULT);
+ mController.onResume(new NotificationBackend.AppRow(), channel, null, null);
+
+ RestrictedListPreference pref =
+ new RestrictedListPreference(RuntimeEnvironment.application, null);
+ when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(pref);
+ mController.displayPreference(mScreen);
+ mController.updateState(pref);
+
+ pref.setValue(String.valueOf(IMPORTANCE_HIGH));
+ mController.onPreferenceChange(pref, pref.getValue());
+
+ assertEquals(IMPORTANCE_HIGH, channel.getImportance());
+ assertNotNull(channel.getSound());
+ }
+
+ @Test
+ public void testImportanceHightToLow() {
+ NotificationChannel channel =
+ new NotificationChannel(DEFAULT_CHANNEL_ID, "a", IMPORTANCE_HIGH);
+ channel.setSound(null, Notification.AUDIO_ATTRIBUTES_DEFAULT);
+ mController.onResume(new NotificationBackend.AppRow(), channel, null, null);
+
+ RestrictedListPreference pref =
+ new RestrictedListPreference(RuntimeEnvironment.application, null);
+ when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(pref);
+ mController.displayPreference(mScreen);
+ mController.updateState(pref);
+
+ pref.setValue(String.valueOf(IMPORTANCE_LOW));
+ mController.onPreferenceChange(pref, pref.getValue());
+
+ assertEquals(IMPORTANCE_LOW, channel.getImportance());
+ assertNull(channel.getSound());
+ }
}
diff --git a/tests/robotests/src/com/android/settings/notification/NotificationAppPreferenceTest.java b/tests/robotests/src/com/android/settings/notification/NotificationAppPreferenceTest.java
new file mode 100644
index 0000000..dc8ee13
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/notification/NotificationAppPreferenceTest.java
@@ -0,0 +1,239 @@
+/*
+ * Copyright (C) 2018 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.settings.notification;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+import android.content.Context;
+import android.support.v7.preference.Preference;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.LinearLayout;
+import android.widget.Switch;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.RestrictedLockUtils;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class NotificationAppPreferenceTest {
+
+ private Context mContext;
+
+ @Before
+ public void setUp() {
+ mContext = RuntimeEnvironment.application;
+ }
+
+ @Test
+ public void createNewPreference_shouldSetLayout() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ assertThat(preference.getWidgetLayoutResource()).isEqualTo(
+ R.layout.preference_widget_master_switch);
+ }
+
+ @Test
+ public void setChecked_shouldUpdateButtonCheckedState() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ preference.onBindViewHolder(holder);
+
+ preference.setChecked(true);
+ assertThat(toggle.isChecked()).isTrue();
+
+ preference.setChecked(false);
+ assertThat(toggle.isChecked()).isFalse();
+ }
+
+ @Test
+ public void setSwitchEnabled_shouldUpdateButtonEnabledState() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ preference.onBindViewHolder(holder);
+
+ preference.setSwitchEnabled(true);
+ assertThat(toggle.isEnabled()).isTrue();
+
+ preference.setSwitchEnabled(false);
+ assertThat(toggle.isEnabled()).isFalse();
+ }
+
+ @Test
+ public void setSwitchEnabled_shouldUpdateButtonEnabledState_beforeViewBound() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+
+ preference.setSwitchEnabled(false);
+ preference.onBindViewHolder(holder);
+ assertThat(toggle.isEnabled()).isFalse();
+ }
+
+ @Test
+ public void clickWidgetView_shouldToggleButton() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ preference.onBindViewHolder(holder);
+
+ widgetView.performClick();
+ assertThat(toggle.isChecked()).isTrue();
+
+ widgetView.performClick();
+ assertThat(toggle.isChecked()).isFalse();
+ }
+
+ @Test
+ public void clickWidgetView_shouldNotToggleButtonIfDisabled() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ preference.onBindViewHolder(holder);
+ toggle.setEnabled(false);
+
+ widgetView.performClick();
+ assertThat(toggle.isChecked()).isFalse();
+ }
+
+ @Test
+ public void clickWidgetView_shouldNotifyPreferenceChanged() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ LayoutInflater.from(mContext).inflate(R.layout.preference_app, null));
+ final View widgetView = holder.findViewById(android.R.id.widget_frame);
+ final Preference.OnPreferenceChangeListener
+ listener = mock(Preference.OnPreferenceChangeListener.class);
+ preference.setOnPreferenceChangeListener(listener);
+ preference.onBindViewHolder(holder);
+
+ preference.setChecked(false);
+ widgetView.performClick();
+ verify(listener).onPreferenceChange(preference, true);
+
+ preference.setChecked(true);
+ widgetView.performClick();
+ verify(listener).onPreferenceChange(preference, false);
+ }
+
+ @Test
+ public void setDisabledByAdmin_hasEnforcedAdmin_shouldDisableButton() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ toggle.setEnabled(true);
+ preference.onBindViewHolder(holder);
+
+ preference.setDisabledByAdmin(mock(RestrictedLockUtils.EnforcedAdmin.class));
+ assertThat(toggle.isEnabled()).isFalse();
+ }
+
+ @Test
+ public void setDisabledByAdmin_noEnforcedAdmin_shouldEnableButton() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ toggle.setEnabled(false);
+ preference.onBindViewHolder(holder);
+
+ preference.setDisabledByAdmin(null);
+ assertThat(toggle.isEnabled()).isTrue();
+ }
+
+ @Test
+ public void onBindViewHolder_toggleButtonShouldHaveContentDescription() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ final LayoutInflater inflater = LayoutInflater.from(mContext);
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ inflater.inflate(R.layout.preference_app, null));
+ final LinearLayout widgetView = holder.itemView.findViewById(android.R.id.widget_frame);
+ inflater.inflate(R.layout.preference_widget_master_switch, widgetView, true);
+ final Switch toggle = (Switch) holder.findViewById(R.id.switchWidget);
+ final String label = "TestButton";
+ preference.setTitle(label);
+
+ preference.onBindViewHolder(holder);
+
+ assertThat(toggle.getContentDescription()).isEqualTo(label);
+ }
+
+ @Test
+ public void setSummary_showSummaryContainer() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ View rootView = View.inflate(mContext, R.layout.preference_app, null /* parent */);
+ PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(rootView);
+ preference.setSummary("test");
+ preference.onBindViewHolder(holder);
+
+ assertThat(holder.findViewById(R.id.summary_container).getVisibility())
+ .isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void noSummary_hideSummaryContainer() {
+ final NotificationAppPreference preference = new NotificationAppPreference(mContext);
+ View rootView = View.inflate(mContext, R.layout.preference_app, null /* parent */);
+ PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(rootView);
+ preference.setSummary(null);
+ preference.onBindViewHolder(holder);
+
+ assertThat(holder.findViewById(R.id.summary_container).getVisibility())
+ .isEqualTo(View.GONE);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java
index 654d90c..82ef6fd 100644
--- a/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/NotificationsOffPreferenceControllerTest.java
@@ -110,7 +110,6 @@
mController.updateState(pref);
assertTrue(pref.getTitle().toString().contains("category"));
- assertFalse(pref.isEnabled());
assertFalse(pref.isSelectable());
}
@@ -125,7 +124,6 @@
mController.updateState(pref);
assertTrue(pref.getTitle().toString().contains("group"));
- assertFalse(pref.isEnabled());
assertFalse(pref.isSelectable());
}
@@ -139,7 +137,6 @@
mController.updateState(pref);
assertTrue(pref.getTitle().toString().contains("app"));
- assertFalse(pref.isEnabled());
assertFalse(pref.isSelectable());
}
}
diff --git a/tests/robotests/src/com/android/settings/notification/RecentNotifyingAppsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/RecentNotifyingAppsPreferenceControllerTest.java
index a25bb00..1aa963d 100644
--- a/tests/robotests/src/com/android/settings/notification/RecentNotifyingAppsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/RecentNotifyingAppsPreferenceControllerTest.java
@@ -31,7 +31,9 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.app.Activity;
import android.app.Application;
+import android.app.Fragment;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
@@ -90,6 +92,10 @@
private ApplicationInfo mApplicationInfo;
@Mock
private NotificationBackend mBackend;
+ @Mock
+ private Fragment mHost;
+ @Mock
+ private Activity mActivity;
private Context mContext;
private RecentNotifyingAppsPreferenceController mController;
@@ -102,7 +108,7 @@
doReturn(mPackageManager).when(mContext).getPackageManager();
mController = new RecentNotifyingAppsPreferenceController(
- mContext, mBackend, mAppState, null);
+ mContext, mBackend, mAppState, mHost);
when(mScreen.findPreference(anyString())).thenReturn(mCategory);
when(mScreen.findPreference(RecentNotifyingAppsPreferenceController.KEY_SEE_ALL))
@@ -110,6 +116,7 @@
when(mScreen.findPreference(RecentNotifyingAppsPreferenceController.KEY_DIVIDER))
.thenReturn(mDivider);
when(mCategory.getContext()).thenReturn(mContext);
+ when(mHost.getActivity()).thenReturn(mActivity);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/notification/VisibilityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/VisibilityPreferenceControllerTest.java
index 25dba80..d3863db 100644
--- a/tests/robotests/src/com/android/settings/notification/VisibilityPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/VisibilityPreferenceControllerTest.java
@@ -16,6 +16,7 @@
package com.android.settings.notification;
+import static android.app.Notification.VISIBILITY_PRIVATE;
import static android.app.NotificationChannel.DEFAULT_CHANNEL_ID;
import static android.app.NotificationManager.IMPORTANCE_DEFAULT;
import static android.app.NotificationManager.IMPORTANCE_MIN;
@@ -114,14 +115,14 @@
}
@Test
- public void testNoCrashIfNoOnResume() throws Exception {
+ public void testNoCrashIfNoOnResume() {
mController.isAvailable();
mController.updateState(mock(RestrictedListPreference.class));
mController.onPreferenceChange(mock(RestrictedListPreference.class), true);
}
@Test
- public void testIsAvailable_notSecure() throws Exception {
+ public void testIsAvailable_notSecure() {
when(mLockUtils.isSecure(anyInt())).thenReturn(false);
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
NotificationChannel channel = new NotificationChannel("", "", IMPORTANCE_DEFAULT);
@@ -130,7 +131,7 @@
}
@Test
- public void testIsAvailable_notIfNotImportant() throws Exception {
+ public void testIsAvailable_notIfNotImportant() {
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
NotificationChannel channel = new NotificationChannel("", "", IMPORTANCE_MIN);
mController.onResume(appRow, channel, null, null);
@@ -138,7 +139,7 @@
}
@Test
- public void testIsAvailable() throws Exception {
+ public void testIsAvailable() {
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
NotificationChannel channel =
new NotificationChannel(DEFAULT_CHANNEL_ID, "", IMPORTANCE_DEFAULT);
@@ -151,7 +152,7 @@
}
@Test
- public void testUpdateState_disabledByAdmin_disableSecure() throws Exception {
+ public void testUpdateState_disabledByAdmin_disableSecure() {
ShadowRestrictionUtils.setRestricted(true);
UserInfo userInfo = new UserInfo(2, "user 2", UserInfo.FLAG_MANAGED_PROFILE);
when(mUm.getUserInfo(anyInt())).thenReturn(userInfo);
@@ -173,7 +174,7 @@
}
@Test
- public void testUpdateState_disabledByAdmin_disableUnredacted() throws Exception {
+ public void testUpdateState_disabledByAdmin_disableUnredacted() {
ShadowRestrictionUtils.setRestricted(true);
UserInfo userInfo = new UserInfo(2, "user 2", UserInfo.FLAG_MANAGED_PROFILE);
when(mUm.getUserInfo(anyInt())).thenReturn(userInfo);
@@ -195,7 +196,7 @@
}
@Test
- public void testUpdateState_noLockScreenNotificationsGlobally() throws Exception {
+ public void testUpdateState_noLockScreenNotificationsGlobally() {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0);
@@ -211,10 +212,14 @@
verify(pref, times(1)).setEntryValues(argumentCaptor.capture());
assertFalse(toStringList(argumentCaptor.getValue())
.contains(String.valueOf(VISIBILITY_NO_OVERRIDE)));
+ assertFalse(toStringList(argumentCaptor.getValue())
+ .contains(String.valueOf(VISIBILITY_PRIVATE)));
}
@Test
- public void testUpdateState_noPrivateLockScreenNotificationsGlobally() throws Exception {
+ public void testUpdateState_noPrivateLockScreenNotificationsGlobally() {
+ Settings.Secure.putInt(mContext.getContentResolver(),
+ Settings.Secure.LOCK_SCREEN_SHOW_NOTIFICATIONS, 1);
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0);
@@ -228,12 +233,13 @@
ArgumentCaptor<CharSequence[]> argumentCaptor =
ArgumentCaptor.forClass(CharSequence[].class);
verify(pref, times(1)).setEntryValues(argumentCaptor.capture());
+ assertEquals(2, toStringList(argumentCaptor.getValue()).size());
assertFalse(toStringList(argumentCaptor.getValue())
.contains(String.valueOf(VISIBILITY_NO_OVERRIDE)));
}
@Test
- public void testUpdateState_noGlobalRestriction() throws Exception {
+ public void testUpdateState_noGlobalRestriction() {
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
NotificationChannel channel = mock(NotificationChannel.class);
mController.onResume(appRow, channel, null, null);
@@ -247,7 +253,7 @@
List<String> values = toStringList(argumentCaptor.getValue());
assertEquals(3, values.size());
assertTrue(values.contains(String.valueOf(VISIBILITY_NO_OVERRIDE)));
- assertTrue(values.contains(String.valueOf(Notification.VISIBILITY_PRIVATE)));
+ assertTrue(values.contains(String.valueOf(VISIBILITY_PRIVATE)));
assertTrue(values.contains(String.valueOf(Notification.VISIBILITY_SECRET)));
}
@@ -260,7 +266,7 @@
}
@Test
- public void testUpdateState_noChannelOverride() throws Exception {
+ public void testUpdateState_noChannelOverride() {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0);
@@ -275,11 +281,11 @@
ArgumentCaptor<String> argumentCaptor = ArgumentCaptor.forClass(String.class);
verify(pref, times(1)).setValue(argumentCaptor.capture());
- assertEquals(String.valueOf(Notification.VISIBILITY_PRIVATE), argumentCaptor.getValue());
+ assertEquals(String.valueOf(VISIBILITY_PRIVATE), argumentCaptor.getValue());
}
@Test
- public void testUpdateState_channelOverride() throws Exception {
+ public void testUpdateState_channelOverride() {
Settings.Secure.putInt(mContext.getContentResolver(),
Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0);
@@ -310,7 +316,7 @@
RestrictedListPreference pref = mock(RestrictedListPreference.class);
mController.updateState(pref);
- mController.onPreferenceChange(pref, String.valueOf(Notification.VISIBILITY_PRIVATE));
+ mController.onPreferenceChange(pref, String.valueOf(VISIBILITY_PRIVATE));
assertEquals(VISIBILITY_NO_OVERRIDE, channel.getLockscreenVisibility());
verify(mBackend, times(1)).updateChannel(any(), anyInt(), any());
diff --git a/tests/robotests/src/com/android/settings/notification/ZenModePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/ZenModePreferenceControllerTest.java
index 1d71a8a..86f0f2d 100644
--- a/tests/robotests/src/com/android/settings/notification/ZenModePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/ZenModePreferenceControllerTest.java
@@ -19,6 +19,7 @@
import android.app.NotificationManager;
import android.app.NotificationManager.Policy;
import android.content.Context;
+import android.provider.Settings;
import android.support.v7.preference.Preference;
import com.android.settings.R;
@@ -63,7 +64,7 @@
ShadowApplication shadowApplication = ShadowApplication.getInstance();
shadowApplication.setSystemService(Context.NOTIFICATION_SERVICE, mNotificationManager);
mContext = shadowApplication.getApplicationContext();
- mController = new ZenModePreferenceController(mContext);
+ mController = new ZenModePreferenceController(mContext, null);
when(mNotificationManager.getNotificationPolicy()).thenReturn(mPolicy);
mSummaryBuilder = spy(new ZenModeSettings.SummaryBuilder(mContext));
ReflectionHelpers.setField(mController, "mSummaryBuilder", mSummaryBuilder);
@@ -76,16 +77,16 @@
}
@Test
- public void updateState_preferenceEnabled_shouldSetSummary() {
+ public void updateState_automaticRuleEnabled_shouldSetSummary() {
when(mPreference.isEnabled()).thenReturn(true);
mController.updateState(mPreference);
- verify(mPreference).setSummary(mContext.getString(R.string.zen_mode_settings_summary_off));
+ verify(mPreference).setSummary(mContext.getResources().getString(
+ R.string.zen_mode_sound_summary_off));
doReturn(1).when(mSummaryBuilder).getEnabledAutomaticRulesCount();
mController.updateState(mPreference);
- verify(mPreference).setSummary(mContext.getResources().getQuantityString(
- R.plurals.zen_mode_settings_summary_on, 1, 1));
+ verify(mPreference).setSummary(mSummaryBuilder.getSoundSummary());
}
@Test
diff --git a/tests/robotests/src/com/android/settings/search/BaseSearchIndexProviderTest.java b/tests/robotests/src/com/android/settings/search/BaseSearchIndexProviderTest.java
index 6c6d7ab..260e3ae 100644
--- a/tests/robotests/src/com/android/settings/search/BaseSearchIndexProviderTest.java
+++ b/tests/robotests/src/com/android/settings/search/BaseSearchIndexProviderTest.java
@@ -137,7 +137,6 @@
final List<String> nonIndexableKeys = provider
.getNonIndexableKeys(RuntimeEnvironment.application);
- assertThat(nonIndexableKeys).containsAllOf("status_header", "limit_summary",
- "restrict_background");
+ assertThat(nonIndexableKeys).contains("status_header");
}
}
diff --git a/tests/robotests/src/com/android/settings/search/CursorToSearchResultConverterTest.java b/tests/robotests/src/com/android/settings/search/CursorToSearchResultConverterTest.java
deleted file mode 100644
index a1cafc5..0000000
--- a/tests/robotests/src/com/android/settings/search/CursorToSearchResultConverterTest.java
+++ /dev/null
@@ -1,347 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.search;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.app.Activity;
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-import android.database.MatrixCursor;
-import android.graphics.drawable.Drawable;
-
-import com.android.settings.DisplaySettings;
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.gestures.SwipeToNotificationSettings;
-import com.android.settings.search.ResultPayload.Availability;
-import com.android.settings.search.ResultPayload.PayloadType;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.wifi.WifiSettings;
-
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.Robolectric;
-import org.robolectric.annotation.Config;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Set;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class CursorToSearchResultConverterTest {
-
- private static final List<String> TITLES = Arrays.asList("title1", "title2", "title3");
- private static final String SUMMARY = "summary";
- private static final String TARGET_PACKAGE = "a.b.c";
- private static final String TARGET_CLASS = "a.b.c.class";
- private static final String KEY = "key";
- private static final int ICON = R.drawable.ic_search_24dp;
- private static final int BASE_RANK = 1;
- private static Intent sIntent;
-
- @BeforeClass
- public static void beforeClass() {
- sIntent = new Intent("com.android.settings");
- }
-
- private Drawable mDrawable;
- private CursorToSearchResultConverter mConverter;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- Context context = Robolectric.buildActivity(Activity.class).get();
- mDrawable = context.getDrawable(ICON);
- mConverter = new CursorToSearchResultConverter(context);
- }
-
- @Test
- public void testParseCursor_MatchesIcon() {
- final MatrixCursor cursor = new MatrixCursor(DatabaseResultLoader.SELECT_COLUMNS);
- final byte[] payload = ResultPayloadUtils.marshall(new ResultPayload(sIntent));
- final String BLANK = "";
- cursor.addRow(new Object[] {
- KEY.hashCode(), // Doc ID
- "Longer than 20 characters", // Title
- SUMMARY, // Summary on
- SUMMARY, // summary off
- DisplaySettings.class.getName(),
- BLANK, // screen title
- ICON, // icon
- BLANK, // action
- null, // target package
- BLANK, // target class
- KEY, // Key
- PayloadType.INTENT, // Payload Type
- payload // Payload
- });
-
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- Drawable resultDrawable = result.icon;
- assertThat(resultDrawable).isNotNull();
- assertThat(resultDrawable.toString()).isEqualTo(mDrawable.toString());
- }
- }
-
- @Test
- public void testParseCursor_NoIcon() {
- final Set<SearchResult> results = mConverter.convertCursor(
- getDummyCursor("noIcon" /* key */, "" /* className */), BASE_RANK);
- for (SearchResult result : results) {
- assertThat(result.icon).isNull();
- }
- }
-
- @Test
- public void testParseCursor_MatchesPayloadType() {
- final Set<SearchResult> results = mConverter.convertCursor(getDummyCursor(), BASE_RANK);
- ResultPayload payload;
- for (SearchResult result : results) {
- payload = result.payload;
- assertThat(payload.getType()).isEqualTo(PayloadType.INTENT);
- }
- }
-
- @Test
- public void testLongTitle_PenalizedInRank() {
- final MatrixCursor cursor = new MatrixCursor(DatabaseResultLoader.SELECT_COLUMNS);
- final byte[] payload = ResultPayloadUtils.marshall(new ResultPayload(sIntent));
- final String BLANK = "";
- cursor.addRow(new Object[] {
- KEY.hashCode(), // Doc ID
- "Longer than 20 characters", // Title
- SUMMARY, // Summary on
- SUMMARY, // summary off
- DisplaySettings.class.getName(),
- BLANK, // screen title
- null, // icon
- BLANK, // action
- null, // target package
- BLANK, // target class
- KEY, // Key
- PayloadType.INTENT, // Payload Type
- payload // Payload
- });
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(BASE_RANK + 1);
- }
- }
-
- @Test
- public void testParseCursor_MatchesResultPayload() {
- final Set<SearchResult> results = mConverter.convertCursor(getDummyCursor(), BASE_RANK);
- ResultPayload payload;
- for (SearchResult result : results) {
- payload = result.payload;
- Intent intent = payload.getIntent();
- assertThat(intent.getAction()).isEqualTo(sIntent.getAction());
- }
- }
-
-
- @Test
- public void testParseCursor_MatchesInlineSwitchPayload() {
- MatrixCursor cursor = new MatrixCursor(DatabaseResultLoader.SELECT_COLUMNS);
- final String BLANK = "";
- final String uri = "test.com";
- final int type = ResultPayload.PayloadType.INLINE_SWITCH;
- final int source = ResultPayload.SettingsSource.SECURE;
- final String intentKey = "key";
- final String intentVal = "value";
- final Intent intent = new Intent();
- intent.putExtra(intentKey, intentVal);
- final InlineSwitchPayload payload = new InlineSwitchPayload(uri, source, 1 /* onValue */,
- intent, true /* isDeviceSupported */, 0 /* defautValue */);
-
- cursor.addRow(new Object[] {
- KEY.hashCode(), // Doc ID
- TITLES.get(0), // Title
- SUMMARY, // Summary on
- SUMMARY, // summary off
- SwipeToNotificationSettings.class.getName(),
- BLANK, // screen title
- null, // icon
- BLANK, // action
- null, // target package
- BLANK, // target class
- KEY, // Key
- type, // Payload Type
- ResultPayloadUtils.marshall(payload) // Payload
- });
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- final InlineSwitchPayload newPayload = (InlineSwitchPayload) result.payload;
- final Intent rebuiltIntent = newPayload.getIntent();
- assertThat(newPayload.getKey()).isEqualTo(uri);
- assertThat(newPayload.getType()).isEqualTo(type);
- assertThat(newPayload.mSettingSource).isEqualTo(source);
- assertThat(newPayload.isStandard()).isTrue();
- assertThat(newPayload.getAvailability()).isEqualTo(Availability.AVAILABLE);
- assertThat(rebuiltIntent.getStringExtra(intentKey)).isEqualTo(intentVal);
- }
- }
-
- // The following tests are temporary, and should be removed when we replace the Search
- // White-list solution for elevating ranking.
-
- @Test
- public void testWifiKey_PrioritizedResult() {
- final String key = "main_toggle_wifi";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testBluetoothKey_PrioritizedResult() {
- final String key = "main_toggle_bluetooth";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testAirplaneKey_PrioritizedResult() {
- final String key = "toggle_airplane";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testHotspotKey_PrioritizedResult() {
- final String key = "tether_settings";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testBatterySaverKey_PrioritizedResult() {
- final String key = "battery_saver";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testNFCKey_PrioritizedResult() {
- final String key = "toggle_nfc";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testDataSaverKey_PrioritizedResult() {
- final String key = "restrict_background";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testDataUsageKey_PrioritizedResult() {
- final String key = "data_usage_enable";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- @Test
- public void testRoamingKey_PrioritizedResult() {
- final String key = "button_roaming_key";
- final Cursor cursor = getDummyCursor(key, WifiSettings.class.getName());
- final Set<SearchResult> results = mConverter.convertCursor(cursor, BASE_RANK);
-
- for (SearchResult result : results) {
- assertThat(result.rank).isEqualTo(SearchResult.TOP_RANK);
- }
- }
-
- // End of temporary tests
-
- private MatrixCursor getDummyCursor() {
- String[] keys = new String[] {KEY + "1", KEY + "2", KEY + "3"};
- return getDummyCursor(keys, "" /* className */);
- }
-
- private MatrixCursor getDummyCursor(String key, String className) {
- String[] keys = new String[] {key};
- return getDummyCursor(keys, className);
- }
-
- private MatrixCursor getDummyCursor(String[] keys, String className) {
- MatrixCursor cursor = new MatrixCursor(DatabaseResultLoader.SELECT_COLUMNS);
- final String BLANK = "";
- final byte[] payload = ResultPayloadUtils.marshall(new ResultPayload(sIntent));
-
- for (int i = 0; i < keys.length; i++) {
- ArrayList<Object> item = new ArrayList<>(DatabaseResultLoader.SELECT_COLUMNS.length);
- item.add(keys[i].hashCode()); // Doc ID
- item.add(TITLES.get(i)); // Title
- item.add(SUMMARY); // Summary on
- item.add(BLANK); // summary off
- item.add(className); // classname
- item.add(BLANK); // screen title
- item.add(null); // Icon
- item.add(sIntent.getAction()); // Intent action
- item.add(TARGET_PACKAGE); // target package
- item.add(TARGET_CLASS); // target class
- item.add(keys[i]); // Key
- item.add(Integer.toString(0)); // Payload Type
- item.add(payload); // Payload
-
- cursor.addRow(item);
- }
- return cursor;
- }
-}
diff --git a/tests/robotests/src/com/android/settings/search/SearchResultBuilderTest.java b/tests/robotests/src/com/android/settings/search/SearchResultBuilderTest.java
deleted file mode 100644
index cd77b25..0000000
--- a/tests/robotests/src/com/android/settings/search/SearchResultBuilderTest.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2016 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.settings.search;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.content.Context;
-import android.content.Intent;
-import android.graphics.drawable.Drawable;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.search.SearchResult.Builder;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowApplication;
-
-import java.util.ArrayList;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class SearchResultBuilderTest {
-
- private static final String TITLE = "title";
- private static final String SUMMARY = "summary";
-
- private Builder mBuilder;
- private ArrayList<String> mBreadcrumbs;
- private int mRank;
- private ResultPayload mResultPayload;
- private Drawable mIcon;
-
- @Before
- public void setUp() {
- mBuilder = new Builder();
- mBreadcrumbs = new ArrayList<>();
- mRank = 3;
- mResultPayload = new ResultPayload(new Intent());
-
- final Context context = ShadowApplication.getInstance().getApplicationContext();
- mIcon = context.getDrawable(R.drawable.ic_search_24dp);
- }
-
- @Test
- public void testAllInfo_BuildSearchResult() {
- mBuilder.setTitle(TITLE)
- .setSummary(SUMMARY)
- .setRank(mRank)
- .addBreadcrumbs(mBreadcrumbs)
- .setIcon(mIcon)
- .setPayload(mResultPayload)
- .setStableId(1);
- SearchResult result = mBuilder.build();
-
- assertThat(result).isNotNull();
- assertThat(result.title).isEqualTo(TITLE);
- assertThat(result.summary).isEqualTo(SUMMARY);
- assertThat(result.rank).isEqualTo(mRank);
- assertThat(result.breadcrumbs).isEqualTo(mBreadcrumbs);
- assertThat(result.icon).isEqualTo(mIcon);
- assertThat(result.payload).isEqualTo(mResultPayload);
- }
-
- @Test(expected = IllegalStateException.class)
- public void testNoStableId_BuildSearchResultException() {
- mBuilder.setTitle(TITLE)
- .setSummary(SUMMARY)
- .setRank(mRank)
- .addBreadcrumbs(mBreadcrumbs)
- .setIcon(mIcon)
- .setPayload(mResultPayload);
-
- mBuilder.build();
- }
-
- @Test(expected = IllegalStateException.class)
- public void testNoTitle_BuildSearchResultException() {
- mBuilder.setSummary(SUMMARY)
- .setRank(mRank)
- .addBreadcrumbs(mBreadcrumbs)
- .setIcon(mIcon)
- .setPayload(mResultPayload)
- .setStableId(1);
-
- mBuilder.build();
- }
-
- @Test
- public void testNoRank_BuildSearchResult_pass() {
- mBuilder.setTitle(TITLE)
- .setSummary(SUMMARY)
- .addBreadcrumbs(mBreadcrumbs)
- .setIcon(mIcon)
- .setPayload(mResultPayload)
- .setStableId(1);
-
- assertThat(mBuilder.build()).isNotNull();
- }
-
- @Test
- public void testNoIcon_BuildSearchResult_pass() {
- mBuilder.setTitle(TITLE)
- .setSummary(SUMMARY)
- .setRank(mRank)
- .addBreadcrumbs(mBreadcrumbs)
- .setPayload(mResultPayload)
- .setStableId(1);
-
- assertThat(mBuilder.build()).isNotNull();
- }
-
- @Test(expected = IllegalStateException.class)
- public void testNoPayload_BuildSearchResultException() {
- mBuilder.setTitle(TITLE)
- .setSummary(SUMMARY)
- .setRank(mRank)
- .addBreadcrumbs(mBreadcrumbs)
- .setIcon(mIcon)
- .setStableId(1);
-
- mBuilder.build();
- }
-}
-
-
diff --git a/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java b/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
index e1c77cd..d6e8c63 100644
--- a/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
+++ b/tests/robotests/src/com/android/settings/search/actionbar/SearchMenuControllerTest.java
@@ -18,6 +18,7 @@
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
import static org.mockito.Mockito.when;
import android.os.Bundle;
@@ -27,6 +28,7 @@
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
+import com.android.settingslib.core.lifecycle.ObservableFragment;
import com.android.settingslib.core.lifecycle.ObservablePreferenceFragment;
import org.junit.Before;
@@ -42,26 +44,47 @@
@Mock
private Menu mMenu;
- private TestFragment mHost;
+ private TestPreferenceFragment mPreferenceHost;
+ private ObservableFragment mHost;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- mHost = new TestFragment();
+ mHost = new ObservableFragment();
+ mPreferenceHost = new TestPreferenceFragment();
+
+ when(mMenu.add(Menu.NONE, Menu.NONE, 0 /* order */, R.string.search_menu))
+ .thenReturn(mock(MenuItem.class));
}
@Test
- public void init_shouldAddMenu() {
- when(mMenu.add(Menu.NONE, Menu.NONE, 0 /* order */, R.string.search_menu))
- .thenReturn(mock(MenuItem.class));
+ public void init_prefFragment_shouldAddMenu() {
+ SearchMenuController.init(mPreferenceHost);
+ mPreferenceHost.getLifecycle().onCreateOptionsMenu(mMenu, null /* inflater */);
+ verify(mMenu).add(Menu.NONE, Menu.NONE, 0 /* order */, R.string.search_menu);
+ }
+
+ @Test
+ public void init_observableFragment_shouldAddMenu() {
SearchMenuController.init(mHost);
mHost.getLifecycle().onCreateOptionsMenu(mMenu, null /* inflater */);
verify(mMenu).add(Menu.NONE, Menu.NONE, 0 /* order */, R.string.search_menu);
}
- public static class TestFragment extends ObservablePreferenceFragment {
+ @Test
+ public void init_doNotNeedSearchIcon_shouldNotAddMenu() {
+ final Bundle args = new Bundle();
+ args.putBoolean(SearchMenuController.NEED_SEARCH_ICON_IN_ACTION_BAR, false);
+ mHost.setArguments(args);
+
+ SearchMenuController.init(mHost);
+ mHost.getLifecycle().onCreateOptionsMenu(mMenu, null /* inflater */);
+ verifyZeroInteractions(mMenu);
+ }
+
+ public static class TestPreferenceFragment extends ObservablePreferenceFragment {
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
diff --git a/tests/robotests/src/com/android/settings/security/LockUnificationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/security/LockUnificationPreferenceControllerTest.java
index 7a5a9fa..2b612e1 100644
--- a/tests/robotests/src/com/android/settings/security/LockUnificationPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/security/LockUnificationPreferenceControllerTest.java
@@ -55,7 +55,7 @@
@Mock
private PreferenceScreen mScreen;
@Mock
- private SecuritySettingsV2 mHost;
+ private SecuritySettings mHost;
private FakeFeatureFactory mFeatureFactory;
private Context mContext;
diff --git a/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java
index 627ecf5..86ba40f 100644
--- a/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java
@@ -16,192 +16,51 @@
package com.android.settings.security;
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.verifyNoMoreInteractions;
-import static org.mockito.Mockito.when;
+import static com.google.common.truth.Truth.assertThat;
import android.content.Context;
-import android.content.Intent;
import android.content.pm.PackageManager;
-import android.content.res.Resources;
-import android.graphics.drawable.Drawable;
-import android.os.Bundle;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-import com.android.settings.R;
+import com.android.internal.widget.LockPatternUtils;
import com.android.settings.TestConfig;
+import com.android.settings.security.trustagent.TrustAgentManager;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.shadow.ShadowTileUtils;
-import com.android.settingslib.drawer.DashboardCategory;
-import com.android.settingslib.drawer.Tile;
-import com.android.settingslib.drawer.TileUtils;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowLooper;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class SecurityFeatureProviderImplTest {
- private static final String MOCK_KEY = "key";
- private static final String MOCK_SUMMARY = "summary";
- private static final String URI_GET_SUMMARY = "content://package/text/summary";
- private static final String URI_GET_ICON = "content://package/icon/my_icon";
-
- @Mock
- private Drawable mMockDrawable;
- @Mock
private Context mContext;
- @Mock
- private PackageManager mPackageManager;
- @Mock
- private Resources mResources;
-
private SecurityFeatureProviderImpl mImpl;
@Before
public void setUp() throws PackageManager.NameNotFoundException {
MockitoAnnotations.initMocks(this);
- mContext = spy(RuntimeEnvironment.application);
+ mContext = RuntimeEnvironment.application;
mImpl = new SecurityFeatureProviderImpl();
- when(mContext.getPackageManager()).thenReturn(mPackageManager);
- when(mPackageManager.getResourcesForApplication(anyString())).thenReturn(mResources);
- when(mResources.getDrawable(anyInt(), any())).thenReturn(mMockDrawable);
}
@Test
- public void updateTilesData_shouldNotProcessEmptyScreenOrTiles() {
- mImpl.updatePreferencesToRunOnWorkerThread(mContext, null, null);
- ShadowLooper.runUiThreadTasks();
- mImpl.updatePreferencesToRunOnWorkerThread(
- mContext, new PreferenceScreen(mContext, null), null);
- ShadowLooper.runUiThreadTasks();
- verifyNoMoreInteractions(mPackageManager);
+ public void getTrustAgentManager_shouldReturnCache() {
+ final TrustAgentManager m1 = mImpl.getTrustAgentManager();
+ final TrustAgentManager m2 = mImpl.getTrustAgentManager();
+
+ assertThat(m1).isSameAs(m2);
}
@Test
- public void updateTilesData_shouldNotProcessNonMatchingPreference() {
- DashboardCategory dashboardCategory = new DashboardCategory();
- dashboardCategory.addTile(new Tile());
- mImpl.updatePreferencesToRunOnWorkerThread(
- mContext, getPreferenceScreen(), dashboardCategory);
- ShadowLooper.runUiThreadTasks();
- verifyNoMoreInteractions(mPackageManager);
+ public void getLockPatternUtils_shouldReturnCache() {
+ final LockPatternUtils l1 = mImpl.getLockPatternUtils(mContext);
+ final LockPatternUtils l2 = mImpl.getLockPatternUtils(mContext);
+
+ assertThat(l1).isSameAs(l2);
}
- @Test
- public void updateTilesData_shouldNotProcessMatchingPreferenceWithNoData() {
- mImpl.updatePreferencesToRunOnWorkerThread(
- mContext, getPreferenceScreen(), getDashboardCategory());
- ShadowLooper.runUiThreadTasks();
- verifyNoMoreInteractions(mPackageManager);
- }
-
- @Test
- @Config(shadows = {
- ShadowTileUtils.class,
- })
- public void updateTilesData_shouldUpdateMatchingPreference() {
- Bundle bundle = new Bundle();
- bundle.putString(TileUtils.META_DATA_PREFERENCE_ICON_URI, URI_GET_ICON);
- bundle.putString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, URI_GET_SUMMARY);
-
- PreferenceScreen screen = getPreferenceScreen();
- DashboardCategory dashboardCategory = getDashboardCategory();
- dashboardCategory.getTile(0).intent = new Intent().setPackage("package");
- dashboardCategory.getTile(0).metaData = bundle;
-
- mImpl.updatePreferencesToRunOnWorkerThread(mContext, screen, dashboardCategory);
- ShadowLooper.runUiThreadTasks();
- verify(screen.findPreference(MOCK_KEY)).setIcon(mMockDrawable);
- verify(screen.findPreference(MOCK_KEY)).setSummary(MOCK_SUMMARY);
- }
-
- @Test
- @Config(shadows = {
- ShadowTileUtils.class,
- })
- public void updateTilesData_shouldNotUpdateAlreadyUpdatedPreference() {
- Bundle bundle = new Bundle();
- bundle.putString(TileUtils.META_DATA_PREFERENCE_ICON_URI, URI_GET_ICON);
- bundle.putString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, URI_GET_SUMMARY);
-
- PreferenceScreen screen = getPreferenceScreen();
- when(screen.findPreference(MOCK_KEY).getSummary()).thenReturn(MOCK_SUMMARY);
- when(screen.findPreference(MOCK_KEY).getIcon()).thenReturn(mMockDrawable);
-
- DashboardCategory dashboardCategory = getDashboardCategory();
- dashboardCategory.getTile(0).intent = new Intent().setPackage("package");
- dashboardCategory.getTile(0).metaData = bundle;
-
- mImpl.updatePreferencesToRunOnWorkerThread(mContext, screen, dashboardCategory);
- ShadowLooper.runUiThreadTasks();
- verify(screen.findPreference(MOCK_KEY), never()).setSummary(anyString());
- }
-
- @Test
- public void initPreferences_shouldLoadDefaults() {
- PreferenceScreen screen = getPreferenceScreen();
- DashboardCategory dashboardCategory = getDashboardCategory();
- dashboardCategory.getTile(0).metaData = new Bundle();
-
- mImpl.initPreferences(mContext, screen, dashboardCategory);
- verify(screen.findPreference(MOCK_KEY)).setIcon(SecurityFeatureProviderImpl.DEFAULT_ICON);
- verify(screen.findPreference(MOCK_KEY))
- .setSummary(mContext.getString(R.string.summary_placeholder));
- }
-
- @Test
- @Config(shadows = {
- ShadowTileUtils.class,
- })
- public void initPreferences_shouldLoadCached() {
- Bundle bundle = new Bundle();
- bundle.putString(TileUtils.META_DATA_PREFERENCE_ICON_URI, URI_GET_ICON);
- bundle.putString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, URI_GET_SUMMARY);
-
- PreferenceScreen screen = getPreferenceScreen();
- DashboardCategory dashboardCategory = getDashboardCategory();
- dashboardCategory.getTile(0).metaData = bundle;
-
- SecurityFeatureProviderImpl.sIconCache.put(
- URI_GET_ICON,
- ShadowTileUtils.getIconFromUri(null, null, null, null));
- SecurityFeatureProviderImpl.sSummaryCache.put(
- URI_GET_SUMMARY,
- MOCK_SUMMARY);
-
- mImpl.initPreferences(mContext, screen, dashboardCategory);
- verify(screen.findPreference(MOCK_KEY)).setIcon(mMockDrawable);
- verify(screen.findPreference(MOCK_KEY)).setSummary(MOCK_SUMMARY);
- }
-
- private PreferenceScreen getPreferenceScreen() {
- final PreferenceScreen screen = mock(PreferenceScreen.class);
- final Preference pref = mock(Preference.class);
- when(screen.findPreference(MOCK_KEY)).thenReturn(pref);
- when(pref.getKey()).thenReturn(MOCK_KEY);
- return screen;
- }
-
- private static DashboardCategory getDashboardCategory() {
- DashboardCategory dashboardCategory = new DashboardCategory();
- Tile tile = new Tile();
- tile.key = MOCK_KEY;
- dashboardCategory.addTile(tile);
- return dashboardCategory;
- }
}
diff --git a/tests/robotests/src/com/android/settings/security/SecuritySettingsTest.java b/tests/robotests/src/com/android/settings/security/SecuritySettingsTest.java
index 3171c3d..421efe8 100644
--- a/tests/robotests/src/com/android/settings/security/SecuritySettingsTest.java
+++ b/tests/robotests/src/com/android/settings/security/SecuritySettingsTest.java
@@ -16,34 +16,18 @@
package com.android.settings.security;
-import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Matchers.anyInt;
-import static org.mockito.Mockito.doReturn;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.reset;
-import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
-import android.app.Activity;
import android.content.Context;
-import android.os.UserHandle;
-import android.os.UserManager;
-import android.os.UserManager.EnforcingUser;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
+import android.content.pm.PackageManager;
+import android.hardware.fingerprint.FingerprintManager;
-import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settings.testutils.XmlTestUtils;
-import com.android.settings.testutils.shadow.ShadowLockPatternUtils;
-import com.android.settings.testutils.shadow.ShadowUserManager;
-import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
-import com.android.settingslib.RestrictedSwitchPreference;
import org.junit.Before;
import org.junit.Test;
@@ -51,123 +35,65 @@
import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
-import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
-import org.robolectric.shadows.ShadowApplication;
-import org.robolectric.util.ReflectionHelpers;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = {
- ShadowLockPatternUtils.class,
- ShadowUserManager.class,
- })
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class SecuritySettingsTest {
-
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Context mContext;
@Mock
private SummaryLoader mSummaryLoader;
-
+ @Mock
+ private FingerprintManager mFingerprintManager;
private SecuritySettings.SummaryProvider mSummaryProvider;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
- FakeFeatureFactory.setupForTest();
+ when(mContext.getSystemService(Context.FINGERPRINT_SERVICE))
+ .thenReturn(mFingerprintManager);
+
mSummaryProvider = new SecuritySettings.SummaryProvider(mContext, mSummaryLoader);
}
@Test
- public void testInitTrustAgentPreference_secure_shouldSetSummaryToNumberOfTrustAgent() {
- final Preference preference = mock(Preference.class);
- final PreferenceScreen screen = mock(PreferenceScreen.class);
- when(screen.findPreference(SecuritySettings.KEY_MANAGE_TRUST_AGENTS))
- .thenReturn(preference);
- final LockPatternUtils utils = mock(LockPatternUtils.class);
- when(utils.isSecure(anyInt())).thenReturn(true);
- final Context context = ShadowApplication.getInstance().getApplicationContext();
- final Activity activity = mock(Activity.class);
- when(activity.getResources()).thenReturn(context.getResources());
- final SecuritySettings securitySettings = spy(new SecuritySettings());
- when(securitySettings.getActivity()).thenReturn(activity);
+ public void testSummaryProvider_notListening() {
+ mSummaryProvider.setListening(false);
- ReflectionHelpers.setField(securitySettings, "mLockPatternUtils", utils);
-
- securitySettings.initTrustAgentPreference(screen, 0);
- verify(preference).setSummary(R.string.manage_trust_agents_summary);
-
- securitySettings.initTrustAgentPreference(screen, 2);
- verify(preference).setSummary(context.getResources().getQuantityString(
- R.plurals.manage_trust_agents_summary_on, 2, 2));
+ verifyNoMoreInteractions(mSummaryLoader);
}
@Test
- public void testNonIndexableKeys_existInXmlLayout() {
- final Context context = spy(RuntimeEnvironment.application);
- UserManager manager = mock(UserManager.class);
- when(manager.isAdminUser()).thenReturn(false);
- doReturn(manager).when(context).getSystemService(Context.USER_SERVICE);
- final List<String> niks = SecuritySettings.SEARCH_INDEX_DATA_PROVIDER
- .getNonIndexableKeys(context);
+ public void testSummaryProvider_hasFingerPrint_hasStaticSummary() {
+ when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
+ .thenReturn(true);
+ when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
- final List<String> keys = XmlTestUtils.getKeysFromPreferenceXml(context,
- R.xml.security_settings_misc);
- keys.addAll(XmlTestUtils.getKeysFromPreferenceXml(context,
- R.xml.location_settings));
- keys.addAll(XmlTestUtils.getKeysFromPreferenceXml(context,
- R.xml.encryption_and_credential));
+ mSummaryProvider.setListening(true);
- assertThat(keys).containsAllIn(niks);
+ verify(mContext).getString(R.string.security_dashboard_summary);
}
@Test
- public void testUnifyLockRestriction() {
- // Set up instance under test.
- final Context context = spy(RuntimeEnvironment.application);
- final SecuritySettings securitySettings = spy(new SecuritySettings());
- when(securitySettings.getContext()).thenReturn(context);
+ public void testSummaryProvider_noFpFeature_shouldSetSummaryWithNoFingerprint() {
+ when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
+ .thenReturn(false);
- final int userId = 123;
- ReflectionHelpers.setField(securitySettings, "mProfileChallengeUserId", userId);
+ mSummaryProvider.setListening(true);
- final LockPatternUtils utils = mock(LockPatternUtils.class);
- when(utils.isSeparateProfileChallengeEnabled(userId)).thenReturn(true);
- ReflectionHelpers.setField(securitySettings, "mLockPatternUtils", utils);
+ verify(mContext).getString(R.string.security_dashboard_summary_no_fingerprint);
+ }
- final RestrictedSwitchPreference unifyProfile = mock(RestrictedSwitchPreference.class);
- ReflectionHelpers.setField(securitySettings, "mUnifyProfile", unifyProfile);
+ @Test
+ public void testSummaryProvider_noFpHardware_shouldSetSummaryWithNoFingerprint() {
+ when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
+ .thenReturn(true);
+ when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
- // Pretend that no admins enforce the restriction.
- ShadowUserManager.getShadow().setUserRestrictionSources(
- UserManager.DISALLOW_UNIFIED_PASSWORD,
- UserHandle.of(userId),
- Collections.emptyList());
+ mSummaryProvider.setListening(true);
- securitySettings.updateUnificationPreference();
-
- verify(unifyProfile).setDisabledByAdmin(null);
-
- reset(unifyProfile);
-
- // Pretend that the restriction is enforced by several admins. Having just one would
- // require more mocking of implementation details.
- final EnforcingUser enforcer1 = new EnforcingUser(
- userId, UserManager.RESTRICTION_SOURCE_PROFILE_OWNER);
- final EnforcingUser enforcer2 = new EnforcingUser(
- UserHandle.USER_SYSTEM, UserManager.RESTRICTION_SOURCE_DEVICE_OWNER);
- ShadowUserManager.getShadow().setUserRestrictionSources(
- UserManager.DISALLOW_UNIFIED_PASSWORD,
- UserHandle.of(userId),
- Arrays.asList(enforcer1, enforcer2));
-
- securitySettings.updateUnificationPreference();
-
- verify(unifyProfile).setDisabledByAdmin(EnforcedAdmin.MULTIPLE_ENFORCED_ADMIN);
+ verify(mContext).getString(R.string.security_dashboard_summary_no_fingerprint);
}
}
diff --git a/tests/robotests/src/com/android/settings/security/SecuritySettingsV2Test.java b/tests/robotests/src/com/android/settings/security/SecuritySettingsV2Test.java
deleted file mode 100644
index f77903b..0000000
--- a/tests/robotests/src/com/android/settings/security/SecuritySettingsV2Test.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright (C) 2018 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.settings.security;
-
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.verifyNoMoreInteractions;
-import static org.mockito.Mockito.when;
-
-import android.content.Context;
-import android.content.pm.PackageManager;
-import android.hardware.fingerprint.FingerprintManager;
-
-import com.android.settings.R;
-import com.android.settings.TestConfig;
-import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class SecuritySettingsV2Test {
-
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private Context mContext;
- @Mock
- private SummaryLoader mSummaryLoader;
- @Mock
- private FingerprintManager mFingerprintManager;
- private SecuritySettings.SummaryProvider mSummaryProvider;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- when(mContext.getSystemService(Context.FINGERPRINT_SERVICE))
- .thenReturn(mFingerprintManager);
-
- mSummaryProvider = new SecuritySettings.SummaryProvider(mContext, mSummaryLoader);
- }
-
- @Test
- public void testSummaryProvider_notListening() {
- mSummaryProvider.setListening(false);
-
- verifyNoMoreInteractions(mSummaryLoader);
- }
-
- @Test
- public void testSummaryProvider_hasFingerPrint_hasStaticSummary() {
- when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
- .thenReturn(true);
- when(mFingerprintManager.isHardwareDetected()).thenReturn(true);
-
- mSummaryProvider.setListening(true);
-
- verify(mContext).getString(R.string.security_dashboard_summary);
- }
-
- @Test
- public void testSummaryProvider_noFpFeature_shouldSetSummaryWithNoFingerprint() {
- when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
- .thenReturn(false);
-
- mSummaryProvider.setListening(true);
-
- verify(mContext).getString(R.string.security_dashboard_summary_no_fingerprint);
- }
-
- @Test
- public void testSummaryProvider_noFpHardware_shouldSetSummaryWithNoFingerprint() {
- when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FINGERPRINT))
- .thenReturn(true);
- when(mFingerprintManager.isHardwareDetected()).thenReturn(false);
-
- mSummaryProvider.setListening(true);
-
- verify(mContext).getString(R.string.security_dashboard_summary_no_fingerprint);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceControllerTest.java
index 42d640a..64a0cea 100644
--- a/tests/robotests/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/security/trustagent/ManageTrustAgentsPreferenceControllerTest.java
@@ -16,14 +16,12 @@
package com.android.settings.security.trustagent;
-import static com.android.settings.core.BasePreferenceController.AVAILABLE;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
@@ -50,8 +48,6 @@
private TrustAgentManager mTrustAgentManager;
@Mock
private LockPatternUtils mLockPatternUtils;
- @Mock
- private PreferenceScreen mScreen;
private FakeFeatureFactory mFeatureFactory;
private Context mContext;
@@ -70,8 +66,6 @@
mController = new ManageTrustAgentsPreferenceController(mContext);
mPreference = new Preference(mContext);
mPreference.setKey(mController.getPreferenceKey());
- when(mScreen.findPreference(mController.getPreferenceKey()))
- .thenReturn(mPreference);
}
@Test
@@ -86,10 +80,10 @@
}
@Test
- public void displayPreference_isNotSecure_shouldDisablePreference() {
+ public void updateState_isNotSecure_shouldDisablePreference() {
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(false);
- mController.displayPreference(mScreen);
+ mController.updateState(mPreference);
assertThat(mPreference.isEnabled()).isFalse();
assertThat(mPreference.getSummary())
@@ -97,12 +91,12 @@
}
@Test
- public void displayPreference_isSecure_noTrustAgent_shouldShowGenericSummary() {
+ public void updateState_isSecure_noTrustAgent_shouldShowGenericSummary() {
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(true);
when(mTrustAgentManager.getActiveTrustAgents(mContext, mLockPatternUtils))
.thenReturn(new ArrayList<>());
- mController.displayPreference(mScreen);
+ mController.updateState(mPreference);
assertThat(mPreference.isEnabled()).isTrue();
assertThat(mPreference.getSummary())
@@ -110,12 +104,12 @@
}
@Test
- public void displayPreference_isSecure_hasTrustAgent_shouldShowDetailedSummary() {
+ public void updateState_isSecure_hasTrustAgent_shouldShowDetailedSummary() {
when(mLockPatternUtils.isSecure(anyInt())).thenReturn(true);
when(mTrustAgentManager.getActiveTrustAgents(mContext, mLockPatternUtils))
.thenReturn(Arrays.asList(new TrustAgentManager.TrustAgentComponentInfo()));
- mController.displayPreference(mScreen);
+ mController.updateState(mPreference);
assertThat(mPreference.isEnabled()).isTrue();
assertThat(mPreference.getSummary())
diff --git a/tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java
index 7dd04c6..258833e 100644
--- a/tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/security/trustagent/TrustAgentListPreferenceControllerTest.java
@@ -40,7 +40,7 @@
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.TestConfig;
import com.android.settings.core.PreferenceControllerMixin;
-import com.android.settings.security.SecuritySettingsV2;
+import com.android.settings.security.SecuritySettings;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -69,7 +69,7 @@
@Mock
private PreferenceCategory mCategory;
@Mock
- private SecuritySettingsV2 mFragment;
+ private SecuritySettings mFragment;
private Lifecycle mLifecycle;
private LifecycleOwner mLifecycleOwner;
diff --git a/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java b/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
index 340d04b..3512ded 100644
--- a/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
+++ b/tests/robotests/src/com/android/settings/slices/SettingsSliceProviderTest.java
@@ -31,6 +31,7 @@
import com.android.settings.TestConfig;
import com.android.settings.testutils.DatabaseTestUtils;
+import com.android.settings.testutils.FakeToggleController;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.After;
diff --git a/tests/robotests/src/com/android/settings/slices/SliceBroadcastReceiverTest.java b/tests/robotests/src/com/android/settings/slices/SliceBroadcastReceiverTest.java
index f5d5ff0..1c5899d 100644
--- a/tests/robotests/src/com/android/settings/slices/SliceBroadcastReceiverTest.java
+++ b/tests/robotests/src/com/android/settings/slices/SliceBroadcastReceiverTest.java
@@ -31,6 +31,7 @@
import com.android.settings.search.SearchFeatureProvider;
import com.android.settings.search.SearchFeatureProviderImpl;
import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.FakeToggleController;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.After;
diff --git a/tests/robotests/src/com/android/settings/slices/SliceBuilderUtilsTest.java b/tests/robotests/src/com/android/settings/slices/SliceBuilderUtilsTest.java
index 0923571..88e4695 100644
--- a/tests/robotests/src/com/android/settings/slices/SliceBuilderUtilsTest.java
+++ b/tests/robotests/src/com/android/settings/slices/SliceBuilderUtilsTest.java
@@ -29,6 +29,7 @@
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.core.BasePreferenceController;
+import com.android.settings.testutils.FakeToggleController;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
diff --git a/tests/robotests/src/com/android/settings/slices/SliceControllerInXmlTest.java b/tests/robotests/src/com/android/settings/slices/SliceControllerInXmlTest.java
new file mode 100644
index 0000000..66ed459
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/slices/SliceControllerInXmlTest.java
@@ -0,0 +1,201 @@
+/*
+ * Copyright (C) 2018 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.settings.slices;
+
+import static com.android.settings.TestConfig.SDK_VERSION;
+
+import static com.google.common.truth.Truth.assertWithMessage;
+
+import static org.mockito.Mockito.spy;
+
+import android.content.Context;
+import android.content.res.XmlResourceParser;
+import android.provider.SearchIndexableResource;
+import android.text.TextUtils;
+import android.util.AttributeSet;
+import android.util.Xml;
+
+import com.android.settings.TestConfig;
+import com.android.settings.core.TogglePreferenceController;
+import com.android.settings.core.codeinspection.ClassScanner;
+import com.android.settings.core.codeinspection.CodeInspector;
+import com.android.settings.overlay.FeatureFactory;
+import com.android.settings.search.DatabaseIndexingUtils;
+import com.android.settings.search.Indexable;
+import com.android.settings.search.SearchFeatureProvider;
+import com.android.settings.search.SearchFeatureProviderImpl;
+import com.android.settings.search.XmlParserUtils;
+import com.android.settings.testutils.FakeFeatureFactory;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+import org.xmlpull.v1.XmlPullParser;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = SDK_VERSION)
+public class SliceControllerInXmlTest {
+
+ private static final List<Class> mSliceControllerClasses = new ArrayList<>(Arrays.asList(
+ TogglePreferenceController.class
+ ));
+
+ private final List<String> mXmlDeclaredControllers = new ArrayList<>();
+ private final List<String> mGrandfatheredClasses = new ArrayList<>();
+
+ private final String ERROR_MISSING_CONTROLLER =
+ "The following controllers were expected to be declared by "
+ + "'settings:controller=Controller_Class_Name' in their corresponding Xml. "
+ + "If it should not appear in XML, add the controller's classname to "
+ + "grandfather_slice_controller_not_in_xml. Controllers:\n";
+
+ private Context mContext;
+
+ SearchFeatureProvider mSearchProvider;
+ private FakeFeatureFactory mFakeFeatureFactory;
+
+ @Before
+ public void setUp() {
+ mContext = spy(RuntimeEnvironment.application);
+
+ mSearchProvider = new SearchFeatureProviderImpl();
+ mFakeFeatureFactory = FakeFeatureFactory.setupForTest();
+ mFakeFeatureFactory.searchFeatureProvider = mSearchProvider;
+
+ CodeInspector.initializeGrandfatherList(mGrandfatheredClasses,
+ "grandfather_slice_controller_not_in_xml");
+ initDeclaredControllers();
+ }
+
+ private void initDeclaredControllers() {
+ final List<Integer> xmlResources = getIndexableXml();
+ XmlResourceParser parser;
+
+ for (int xmlResId : xmlResources) {
+ try {
+ parser = mContext.getResources().getXml(xmlResId);
+
+ int type;
+ while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
+ && type != XmlPullParser.START_TAG) {
+ // Parse next until start tag is found
+ }
+
+ final int outerDepth = parser.getDepth();
+ final AttributeSet attrs = Xml.asAttributeSet(parser);
+ String controllerClassName;
+ while ((type = parser.next()) != XmlPullParser.END_DOCUMENT
+ && (type != XmlPullParser.END_TAG || parser.getDepth() > outerDepth)) {
+ if (type == XmlPullParser.END_TAG || type == XmlPullParser.TEXT) {
+ continue;
+ }
+ controllerClassName = XmlParserUtils.getController(mContext, attrs);
+
+ if (!TextUtils.isEmpty(controllerClassName)) {
+ mXmlDeclaredControllers.add(controllerClassName);
+ }
+ }
+ } catch (Exception e) {
+ // Assume an issue with robolectric resources
+ }
+ }
+ }
+
+ @Test
+ public void testAllControllersDeclaredInXml() throws Exception {
+ final List<Class<?>> classes = new ClassScanner().getClassesForPackage(
+ mContext.getPackageName());
+ final List<String> missingControllersInXml = new ArrayList<>();
+
+ for (Class<?> clazz : classes) {
+ if (!isInlineSliceClass(clazz)) {
+ // Only care about inline-slice controller classes.
+ continue;
+ }
+
+ if (!mXmlDeclaredControllers.contains(clazz.getName())) {
+ // Class clazz should have been declared in XML (unless whitelisted).
+ missingControllersInXml.add(clazz.getName());
+ }
+ }
+
+ // Removed whitelisted classes
+ missingControllersInXml.removeAll(mGrandfatheredClasses);
+
+ final String missingControllerError = buildErrorMessage(ERROR_MISSING_CONTROLLER,
+ missingControllersInXml);
+
+ assertWithMessage(missingControllerError).that(missingControllersInXml).isEmpty();
+ }
+
+ private boolean isInlineSliceClass(Class clazz) {
+ while (clazz != null) {
+ clazz = clazz.getSuperclass();
+ if (mSliceControllerClasses.contains(clazz)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private String buildErrorMessage(String errorSummary, List<String> errorClasses) {
+ final StringBuilder error = new StringBuilder(errorSummary);
+ for (String c : errorClasses) {
+ error.append(c).append("\n");
+ }
+ return error.toString();
+ }
+
+ private List<Integer> getIndexableXml() {
+ final List<Integer> xmlResSet = new ArrayList<>();
+
+ final Collection<Class> indexableClasses = FeatureFactory.getFactory(
+ mContext).getSearchFeatureProvider().getSearchIndexableResources()
+ .getProviderValues();
+
+ for (Class clazz : indexableClasses) {
+
+ Indexable.SearchIndexProvider provider = DatabaseIndexingUtils.getSearchIndexProvider(
+ clazz);
+
+ if (provider == null) {
+ continue;
+ }
+
+ List<SearchIndexableResource> resources = provider.getXmlResourcesToIndex(mContext,
+ true);
+
+ if (resources == null) {
+ continue;
+ }
+
+ for (SearchIndexableResource resource : resources) {
+ // Add '0's anyway. It won't break the test.
+ xmlResSet.add(resource.xmlResId);
+ }
+ }
+ return xmlResSet;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/suggestions/SettingsSuggestionsTest.java b/tests/robotests/src/com/android/settings/suggestions/SettingsSuggestionsTest.java
index 677bf41..9dff925 100644
--- a/tests/robotests/src/com/android/settings/suggestions/SettingsSuggestionsTest.java
+++ b/tests/robotests/src/com/android/settings/suggestions/SettingsSuggestionsTest.java
@@ -68,7 +68,7 @@
@Test
public void wifiCallingSuggestion_isValid() {
- assertSuggestionEquals("com.android.settings.wifi.WifiCallingSuggestionActivity",
+ assertSuggestionEquals("com.android.settings.wifi.calling.WifiCallingSuggestionActivity",
CATEGORY_FIRST_IMPRESSION,
R.string.wifi_calling_suggestion_title, R.string.wifi_calling_suggestion_summary);
}
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/system/AdditionalSystemUpdatePreferenceControllerTest.java
similarity index 94%
rename from tests/robotests/src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/system/AdditionalSystemUpdatePreferenceControllerTest.java
index e5708ba..43f48c0 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/AdditionalSystemUpdatePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/system/AdditionalSystemUpdatePreferenceControllerTest.java
@@ -13,20 +13,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.system;
import static com.google.common.truth.Truth.assertThat;
import android.content.Context;
-import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/SystemUpdatePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/system/SystemUpdatePreferenceControllerTest.java
similarity index 64%
rename from tests/robotests/src/com/android/settings/deviceinfo/SystemUpdatePreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/system/SystemUpdatePreferenceControllerTest.java
index b5b84da..95a18a1 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/SystemUpdatePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/system/SystemUpdatePreferenceControllerTest.java
@@ -13,17 +13,20 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.deviceinfo;
+package com.android.settings.system;
+import static android.os.SystemUpdateManager.KEY_STATUS;
+import static android.os.SystemUpdateManager.KEY_TITLE;
+import static android.os.SystemUpdateManager.STATUS_IDLE;
+import static android.os.SystemUpdateManager.STATUS_UNKNOWN;
+import static android.os.SystemUpdateManager.STATUS_WAITING_DOWNLOAD;
import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Answers.RETURNS_DEEP_STUBS;
-import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.Build;
-import android.os.UserManager;
+import android.os.Bundle;
+import android.os.SystemUpdateManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
@@ -55,6 +58,8 @@
@Mock
private PreferenceScreen mScreen;
+ @Mock
+ private SystemUpdateManager mSystemUpdateManager;
private Context mContext;
private SystemUpdatePreferenceController mController;
@@ -64,7 +69,8 @@
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
-
+ ShadowApplication.getInstance().setSystemService(Context.SYSTEM_UPDATE_SERVICE,
+ mSystemUpdateManager);
mController = new SystemUpdatePreferenceController(mContext);
mPreference = new Preference(RuntimeEnvironment.application);
mPreference.setKey(mController.getPreferenceKey());
@@ -118,11 +124,41 @@
}
@Test
- public void updateState_shouldSetToAndroidVersion() {
+ public void updateState_systemUpdateStatusUnknown_shouldSetToAndroidVersion() {
+ final Bundle bundle = new Bundle();
+ bundle.putInt(KEY_STATUS, STATUS_UNKNOWN);
+ when(mSystemUpdateManager.retrieveSystemUpdateInfo()).thenReturn(bundle);
+
mController.updateState(mPreference);
- assertThat(mPreference.getSummary())
- .isEqualTo(RuntimeEnvironment.application.getString(R.string.about_summary,
- Build.VERSION.RELEASE));
+ assertThat(mPreference.getSummary()).isEqualTo(
+ mContext.getString(R.string.android_version_summary, Build.VERSION.RELEASE));
+ }
+
+ @Test
+ public void updateState_systemUpdateStatusIdle_shouldSetToAndroidVersion() {
+ final String testReleaseName = "ANDROID TEST VERSION";
+
+ final Bundle bundle = new Bundle();
+ bundle.putInt(KEY_STATUS, STATUS_IDLE);
+ bundle.putString(KEY_TITLE, testReleaseName);
+ when(mSystemUpdateManager.retrieveSystemUpdateInfo()).thenReturn(bundle);
+
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.getSummary()).isEqualTo(
+ mContext.getString(R.string.android_version_summary, testReleaseName));
+ }
+
+ @Test
+ public void updateState_systemUpdateInProgress_shouldSetToUpdatePending() {
+ final Bundle bundle = new Bundle();
+ bundle.putInt(KEY_STATUS, STATUS_WAITING_DOWNLOAD);
+ when(mSystemUpdateManager.retrieveSystemUpdateInfo()).thenReturn(bundle);
+
+ mController.updateState(mPreference);
+
+ assertThat(mPreference.getSummary()).isEqualTo(
+ mContext.getString(R.string.android_version_pending_update_summary));
}
}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java b/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
index ad72e6b..57244c1 100644
--- a/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
+++ b/tests/robotests/src/com/android/settings/testutils/FakeFeatureFactory.java
@@ -27,7 +27,6 @@
import com.android.settings.connecteddevice.SmsMirroringFeatureProvider;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.dashboard.suggestions.SuggestionFeatureProvider;
-import com.android.settings.datausage.DataPlanFeatureProvider;
import com.android.settings.enterprise.EnterprisePrivacyFeatureProvider;
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
import com.android.settings.gestures.AssistGestureFeatureProvider;
@@ -62,7 +61,6 @@
public final UserFeatureProvider userFeatureProvider;
public final AssistGestureFeatureProvider assistGestureFeatureProvider;
public final BluetoothFeatureProvider bluetoothFeatureProvider;
- public final DataPlanFeatureProvider dataPlanFeatureProvider;
public final SmsMirroringFeatureProvider smsMirroringFeatureProvider;
public final SlicesFeatureProvider slicesFeatureProvider;
public SearchFeatureProvider searchFeatureProvider;
@@ -103,7 +101,6 @@
userFeatureProvider = mock(UserFeatureProvider.class);
assistGestureFeatureProvider = mock(AssistGestureFeatureProvider.class);
bluetoothFeatureProvider = mock(BluetoothFeatureProvider.class);
- dataPlanFeatureProvider = mock(DataPlanFeatureProvider.class);
smsMirroringFeatureProvider = mock(SmsMirroringFeatureProvider.class);
slicesFeatureProvider = mock(SlicesFeatureProvider.class);
mAccountFeatureProvider = mock(AccountFeatureProvider.class);
@@ -175,11 +172,6 @@
}
@Override
- public DataPlanFeatureProvider getDataPlanFeatureProvider() {
- return dataPlanFeatureProvider;
- }
-
- @Override
public AssistGestureFeatureProvider getAssistGestureFeatureProvider() {
return assistGestureFeatureProvider;
}
diff --git a/tests/robotests/src/com/android/settings/slices/FakeToggleController.java b/tests/robotests/src/com/android/settings/testutils/FakeToggleController.java
similarity index 97%
rename from tests/robotests/src/com/android/settings/slices/FakeToggleController.java
rename to tests/robotests/src/com/android/settings/testutils/FakeToggleController.java
index 1b08e35..c984c6c 100644
--- a/tests/robotests/src/com/android/settings/slices/FakeToggleController.java
+++ b/tests/robotests/src/com/android/settings/testutils/FakeToggleController.java
@@ -15,7 +15,7 @@
*
*/
-package com.android.settings.slices;
+package com.android.settings.testutils;
import android.content.Context;
import android.provider.Settings;
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java
index 742fbf8..fc19b44 100644
--- a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowConnectivityManager.java
@@ -26,6 +26,7 @@
public class ShadowConnectivityManager extends org.robolectric.shadows.ShadowConnectivityManager {
private final SparseBooleanArray mSupportedNetworkTypes = new SparseBooleanArray();
+ private boolean mTetheringSupported = false;
public void setNetworkSupported(int networkType, boolean supported) {
mSupportedNetworkTypes.put(networkType, supported);
@@ -35,4 +36,13 @@
public boolean isNetworkSupported(int networkType) {
return mSupportedNetworkTypes.get(networkType);
}
+
+ public void setTetheringSupported(boolean supported) {
+ mTetheringSupported = supported;
+ }
+
+ @Implementation
+ public boolean isTetheringSupported() {
+ return mTetheringSupported;
+ }
}
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowPowerManager.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowPowerManager.java
new file mode 100644
index 0000000..3bc807a
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowPowerManager.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2018 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.settings.testutils.shadow;
+
+import android.os.PowerManager;
+
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+
+@Implements(PowerManager.class)
+public class ShadowPowerManager extends org.robolectric.shadows.ShadowPowerManager {
+ @Implementation
+ public boolean setPowerSaveMode(boolean mode) {
+ setIsPowerSaveMode(mode);
+ return true;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowRestrictedLockUtils.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowRestrictedLockUtils.java
new file mode 100644
index 0000000..afede1a
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowRestrictedLockUtils.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2018 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.settings.testutils.shadow;
+
+import android.content.Context;
+
+import com.android.internal.util.ArrayUtils;
+import com.android.settingslib.RestrictedLockUtils;
+import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
+
+import org.robolectric.annotation.Implementation;
+import org.robolectric.annotation.Implements;
+
+@Implements(RestrictedLockUtils.class)
+public class ShadowRestrictedLockUtils {
+ private static boolean isRestricted;
+ private static String[] restrictedPkgs;
+ private static boolean adminSupportDetailsIntentLaunched;
+
+ @Implementation
+ public static RestrictedLockUtils.EnforcedAdmin checkIfMeteredDataRestricted(Context context,
+ String packageName, int userId) {
+ if (isRestricted) {
+ return new EnforcedAdmin();
+ }
+ if (ArrayUtils.contains(restrictedPkgs, packageName)) {
+ return new EnforcedAdmin();
+ }
+ return null;
+ }
+
+ @Implementation
+ public static void sendShowAdminSupportDetailsIntent(Context context, EnforcedAdmin admin) {
+ adminSupportDetailsIntentLaunched = true;
+ }
+
+ public static boolean hasAdminSupportDetailsIntentLaunched() {
+ return adminSupportDetailsIntentLaunched;
+ }
+
+ public static void clearAdminSupportDetailsIntentLaunch() {
+ adminSupportDetailsIntentLaunched = false;
+ }
+
+ public static void setRestricted(boolean restricted) {
+ isRestricted = restricted;
+ }
+
+ public static void setRestrictedPkgs(String... pkgs) {
+ restrictedPkgs = pkgs;
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
index 0691086..b416991 100644
--- a/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
+++ b/tests/robotests/src/com/android/settings/testutils/shadow/ShadowUtils.java
@@ -27,6 +27,9 @@
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
+import java.util.HashMap;
+import java.util.Map;
+
@Implements(Utils.class)
public class ShadowUtils {
@@ -34,6 +37,7 @@
private static boolean sIsUserAMonkey;
private static boolean sIsDemoUser;
private static ComponentName sDeviceOwnerComponentName;
+ private static Map<String, String> sAppNameMap;
@Implementation
public static int enforceSameOwner(Context context, int userId) {
@@ -89,4 +93,19 @@
public static int getManagedProfileId(UserManager um, int parentUserId) {
return UserHandle.USER_NULL;
}
+
+ @Implementation
+ public static CharSequence getApplicationLabel(Context context, String packageName) {
+ if (sAppNameMap != null) {
+ return sAppNameMap.get(packageName);
+ }
+ return null;
+ }
+
+ public static void setApplicationLabel(String packageName, String appLabel) {
+ if (sAppNameMap == null) {
+ sAppNameMap = new HashMap<>();
+ }
+ sAppNameMap.put(packageName, appLabel);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/accounts/AddUserWhenLockedPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/users/AddUserWhenLockedPreferenceControllerTest.java
similarity index 92%
rename from tests/robotests/src/com/android/settings/accounts/AddUserWhenLockedPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/users/AddUserWhenLockedPreferenceControllerTest.java
index faaf7db..3882d92 100644
--- a/tests/robotests/src/com/android/settings/accounts/AddUserWhenLockedPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/users/AddUserWhenLockedPreferenceControllerTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
@@ -22,6 +22,7 @@
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
+import android.arch.lifecycle.LifecycleOwner;
import android.content.Context;
import android.content.pm.UserInfo;
import android.os.UserManager;
@@ -31,6 +32,7 @@
import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settingslib.RestrictedSwitchPreference;
+import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Test;
@@ -51,6 +53,8 @@
@Mock(answer = RETURNS_DEEP_STUBS)
private UserManager mUserManager;
+ private LifecycleOwner mLifecycleOwner;
+ private Lifecycle mLifecycle;
private Context mContext;
private AddUserWhenLockedPreferenceController mController;
@@ -60,7 +64,9 @@
ShadowApplication shadowContext = ShadowApplication.getInstance();
shadowContext.setSystemService(Context.USER_SERVICE, mUserManager);
mContext = shadowContext.getApplicationContext();
- mController = new AddUserWhenLockedPreferenceController(mContext, "fake_key");
+ mLifecycleOwner = () -> mLifecycle;
+ mLifecycle = new Lifecycle(mLifecycleOwner);
+ mController = new AddUserWhenLockedPreferenceController(mContext, "fake_key", mLifecycle);
}
@Test
diff --git a/tests/robotests/src/com/android/settings/accounts/AutoSyncDataPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/users/AutoSyncDataPreferenceControllerTest.java
similarity index 98%
rename from tests/robotests/src/com/android/settings/accounts/AutoSyncDataPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/users/AutoSyncDataPreferenceControllerTest.java
index 7aa339f..680f080 100644
--- a/tests/robotests/src/com/android/settings/accounts/AutoSyncDataPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/users/AutoSyncDataPreferenceControllerTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
diff --git a/tests/robotests/src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/users/AutoSyncPersonalDataPreferenceControllerTest.java
similarity index 98%
rename from tests/robotests/src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/users/AutoSyncPersonalDataPreferenceControllerTest.java
index 597fbd4..50b4ec3 100644
--- a/tests/robotests/src/com/android/settings/accounts/AutoSyncPersonalDataPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/users/AutoSyncPersonalDataPreferenceControllerTest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
diff --git a/tests/robotests/src/com/android/settings/accounts/AutoSyncWorkDataPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/users/AutoSyncWorkDataPreferenceControllerTest.java
similarity index 82%
rename from tests/robotests/src/com/android/settings/accounts/AutoSyncWorkDataPreferenceControllerTest.java
rename to tests/robotests/src/com/android/settings/users/AutoSyncWorkDataPreferenceControllerTest.java
index a25aa28..22dae37 100644
--- a/tests/robotests/src/com/android/settings/accounts/AutoSyncWorkDataPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/users/AutoSyncWorkDataPreferenceControllerTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2017 The Android Open Source Project
+ * Copyright (C) 2016 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.
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.android.settings.accounts;
+package com.android.settings.users;
import static com.google.common.truth.Truth.assertThat;
@@ -28,8 +28,8 @@
import android.os.UserHandle;
import android.os.UserManager;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
import org.junit.Test;
@@ -92,6 +92,21 @@
}
@Test
+ public void checkIsAvailable_null_workProfileUserHandle_shouldNotDisplay() {
+ when(mUserManager.isManagedProfile()).thenReturn(false);
+ when(mUserManager.isLinkedUser()).thenReturn(false);
+
+ final List<UserInfo> infos = new ArrayList<>();
+ infos.add(new UserInfo(UserHandle.USER_SYSTEM, "user 1", 0 /* flags */));
+ infos.add(new UserInfo(999, "xspace", 800010));
+ when(mUserManager.getProfiles(eq(UserHandle.USER_SYSTEM))).thenReturn(infos);
+ mController = new AutoSyncWorkDataPreferenceController(mContext, mFragment);
+
+ assertThat(mController.mUserHandle).isEqualTo(null);
+ assertThat(mController.isAvailable()).isFalse();
+ }
+
+ @Test
public void multipleProfile_shouldInitWithWorkProfileUserHandle() {
when(mUserManager.isManagedProfile()).thenReturn(false);
when(mUserManager.isLinkedUser()).thenReturn(false);
diff --git a/tests/robotests/src/com/android/settings/users/UserCapabilitiesTest.java b/tests/robotests/src/com/android/settings/users/UserCapabilitiesTest.java
new file mode 100644
index 0000000..4228ca0
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/users/UserCapabilitiesTest.java
@@ -0,0 +1,70 @@
+/*
+ * Copyright (C) 2018 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.settings.users;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.os.UserManager;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class UserCapabilitiesTest {
+
+ @Mock
+ private Context mContext;
+ @Mock
+ private UserManager mUserManager;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUserManager);
+ }
+
+ @Test
+ public void disallowUserSwitchWhenRestrictionIsSet() {
+ when(mUserManager.hasUserRestriction(UserManager.DISALLOW_USER_SWITCH)).thenReturn(true);
+
+ UserCapabilities userCapabilities = UserCapabilities.create(mContext);
+ userCapabilities.updateAddUserCapabilities(mContext);
+
+ assertThat(userCapabilities.mDisallowSwitchUser).isTrue();
+ }
+
+ @Test
+ public void allowUserSwitchWhenRestrictionIsNotSet() {
+ when(mUserManager.hasUserRestriction(UserManager.DISALLOW_USER_SWITCH)).thenReturn(false);
+
+ UserCapabilities userCapabilities = UserCapabilities.create(mContext);
+ userCapabilities.updateAddUserCapabilities(mContext);
+
+ assertThat(userCapabilities.mDisallowSwitchUser).isFalse();
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/wallpaper/WallpaperSuggestionActivityTest.java b/tests/robotests/src/com/android/settings/wallpaper/WallpaperSuggestionActivityTest.java
index ced4b0a..daaf4b3 100644
--- a/tests/robotests/src/com/android/settings/wallpaper/WallpaperSuggestionActivityTest.java
+++ b/tests/robotests/src/com/android/settings/wallpaper/WallpaperSuggestionActivityTest.java
@@ -17,12 +17,14 @@
package com.android.settings.wallpaper;
import static com.google.common.truth.Truth.assertThat;
+
import static org.mockito.Mockito.when;
import static org.robolectric.Shadows.shadowOf;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
+import android.content.res.Resources;
import com.android.settings.SubSettings;
import com.android.settings.TestConfig;
@@ -42,16 +44,16 @@
import org.robolectric.shadows.ShadowActivity;
@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION,
- shadows = {
- WallpaperSuggestionActivityTest.ShadowWallpaperManagerWrapper.class
- })
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class WallpaperSuggestionActivityTest {
@Mock
private Context mContext;
@Mock
private PackageManager mPackageManager;
+ @Mock
+ private Resources mResources;
+
private ActivityController<WallpaperSuggestionActivity> mController;
@Before
@@ -72,6 +74,17 @@
}
@Test
+ public void wallpaperServiceEnabled_no_shouldReturnFalse() {
+ when(mContext.getResources()).thenReturn(mResources);
+ when(mResources.getBoolean(
+ com.android.internal.R.bool.config_enableWallpaperService)).thenReturn(false);
+
+ assertThat(WallpaperSuggestionActivity.isSuggestionComplete(mContext))
+ .isFalse();
+ }
+
+ @Test
+ @Config(shadows = WallpaperSuggestionActivityTest.ShadowWallpaperManagerWrapper.class)
public void hasWallpaperSet_no_shouldReturnFalse() {
ShadowWallpaperManagerWrapper.setWallpaperId(0);
@@ -80,6 +93,7 @@
}
@Test
+ @Config(shadows = WallpaperSuggestionActivityTest.ShadowWallpaperManagerWrapper.class)
public void hasWallpaperSet_yes_shouldReturnTrue() {
ShadowWallpaperManagerWrapper.setWallpaperId(100);
@@ -100,6 +114,15 @@
sWallpaperId = 0;
}
+ public void __constructor__(Context context) {
+
+ }
+
+ @Implementation
+ public boolean isWallpaperServiceEnabled() {
+ return true;
+ }
+
@Implementation
public int getWallpaperId(int which) {
return sWallpaperId;
diff --git a/tests/robotests/src/com/android/settings/widget/AppPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/AppPreferenceTest.java
index d489094..6556f1c 100644
--- a/tests/robotests/src/com/android/settings/widget/AppPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/AppPreferenceTest.java
@@ -36,6 +36,8 @@
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
public class AppPreferenceTest {
+ private static final int EXPECTED_APP_ICON_SIZE_DP = 32;
+
private Context mContext;
private View mRootView;
private AppPreference mPref;
@@ -75,4 +77,12 @@
assertThat(mHolder.findViewById(R.id.summary_container).getVisibility())
.isEqualTo(View.GONE);
}
+
+ @Test
+ public void foobar_testName() {
+ // Can't use isEquals() to compare float. Use isWithIn().of() instead.
+ assertThat(mContext.getResources().getDimension(R.dimen.secondary_app_icon_size))
+ .isWithin(0.01f)
+ .of(EXPECTED_APP_ICON_SIZE_DP);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/widget/HighlightablePreferenceGroupAdapterTest.java b/tests/robotests/src/com/android/settings/widget/HighlightablePreferenceGroupAdapterTest.java
new file mode 100644
index 0000000..e2fb6c1
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/widget/HighlightablePreferenceGroupAdapterTest.java
@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+
+import static com.google.common.truth.Truth.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.verifyZeroInteractions;
+import static org.mockito.Mockito.when;
+
+import android.content.Context;
+import android.graphics.drawable.ColorDrawable;
+import android.support.v7.preference.PreferenceCategory;
+import android.support.v7.preference.PreferenceViewHolder;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+
+import com.android.settings.R;
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+import org.robolectric.util.ReflectionHelpers;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class HighlightablePreferenceGroupAdapterTest {
+
+ private static final String TEST_KEY = "key";
+
+ @Mock
+ private View mRoot;
+ @Mock
+ private PreferenceCategory mPreferenceCatetory;
+ private Context mContext;
+ private HighlightablePreferenceGroupAdapter mAdapter;
+ private PreferenceViewHolder mViewHolder;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = RuntimeEnvironment.application;
+ when(mPreferenceCatetory.getContext()).thenReturn(mContext);
+ mAdapter = new HighlightablePreferenceGroupAdapter(mPreferenceCatetory, TEST_KEY,
+ false /* highlighted*/);
+ mViewHolder = PreferenceViewHolder.createInstanceForTests(
+ View.inflate(mContext, R.layout.app_preference_item, null));
+ }
+
+ @Test
+ public void requestHighlight_hasKey_notHighlightedBefore_shouldRequest() {
+ mAdapter.requestHighlight(mRoot, mock(RecyclerView.class));
+
+ verify(mRoot).postDelayed(any(),
+ eq(HighlightablePreferenceGroupAdapter.DELAY_HIGHLIGHT_DURATION_MILLIS));
+ }
+
+ @Test
+ public void requestHighlight_noKey_highlightedBefore_noRecyclerView_shouldNotRequest() {
+ ReflectionHelpers.setField(mAdapter, "mHighlightKey", null);
+ ReflectionHelpers.setField(mAdapter, "mHighlightRequested", false);
+ mAdapter.requestHighlight(mRoot, mock(RecyclerView.class));
+
+ ReflectionHelpers.setField(mAdapter, "mHighlightKey", TEST_KEY);
+ ReflectionHelpers.setField(mAdapter, "mHighlightRequested", true);
+ mAdapter.requestHighlight(mRoot, mock(RecyclerView.class));
+
+ ReflectionHelpers.setField(mAdapter, "mHighlightKey", TEST_KEY);
+ ReflectionHelpers.setField(mAdapter, "mHighlightRequested", false);
+ mAdapter.requestHighlight(mRoot, null /* recyclerView */);
+
+ verifyZeroInteractions(mRoot);
+ }
+
+ @Test
+ public void updateBackground_notHighlightedRow_shouldNotSetHighlightedTag() {
+ ReflectionHelpers.setField(mAdapter, "mHighlightPosition", 10);
+
+ mAdapter.updateBackground(mViewHolder, 0);
+
+ assertThat(mViewHolder.itemView.getTag(R.id.preference_highlighted)).isNull();
+ }
+
+ @Test
+ public void updateBackground_highlight_shouldChangeBackgroundAndSetHighlightedTag() {
+ ReflectionHelpers.setField(mAdapter, "mHighlightPosition", 10);
+
+ mAdapter.updateBackground(mViewHolder, 10);
+ assertThat(mViewHolder.itemView.getBackground()).isInstanceOf(ColorDrawable.class);
+ assertThat(mViewHolder.itemView.getTag(R.id.preference_highlighted)).isEqualTo(true);
+ }
+
+ @Test
+ public void updateBackground_reuseHightlightedRowForNormalRow_shouldResetBackgroundAndTag() {
+ ReflectionHelpers.setField(mAdapter, "mHighlightPosition", 10);
+ mViewHolder.itemView.setTag(R.id.preference_highlighted, true);
+
+ mAdapter.updateBackground(mViewHolder, 0);
+
+ assertThat(mViewHolder.itemView.getBackground()).isNotInstanceOf(ColorDrawable.class);
+ assertThat(mViewHolder.itemView.getTag(R.id.preference_highlighted)).isEqualTo(false);
+ }
+
+}
diff --git a/tests/robotests/src/com/android/settings/widget/MasterCheckBoxPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/MasterCheckBoxPreferenceTest.java
index ac3e0b6..55ce27f 100644
--- a/tests/robotests/src/com/android/settings/widget/MasterCheckBoxPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/widget/MasterCheckBoxPreferenceTest.java
@@ -106,6 +106,24 @@
}
@Test
+ public void onBindViewHolder_shouldSetCheckboxEnabledState() {
+ final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
+ LayoutInflater.from(mContext).inflate(
+ R.layout.preference_widget_master_checkbox, null));
+ final CheckBox checkBox = (CheckBox) holder.findViewById(R.id.checkboxWidget);
+
+ mPreference.setCheckBoxEnabled(false);
+ mPreference.onBindViewHolder(holder);
+
+ assertThat(mPreference.isEnabled()).isTrue();
+ assertThat(checkBox.isEnabled()).isFalse();
+
+ mPreference.setCheckBoxEnabled(true);
+ assertThat(mPreference.isEnabled()).isTrue();
+ assertThat(checkBox.isEnabled()).isTrue();
+ }
+
+ @Test
public void clickWidgetView_shouldToggleCheckBox() {
final LayoutInflater inflater = LayoutInflater.from(mContext);
final PreferenceViewHolder holder = PreferenceViewHolder.createInstanceForTests(
diff --git a/tests/robotests/src/com/android/settings/widget/SeekBarPreferenceTest.java b/tests/robotests/src/com/android/settings/widget/SeekBarPreferenceTest.java
new file mode 100644
index 0000000..7a042a0
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/widget/SeekBarPreferenceTest.java
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.content.Context;
+import android.os.Parcelable;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class SeekBarPreferenceTest {
+ private static final int MAX = 75;
+ private static final int MIN = 5;
+ private static final int PROGRESS = 16;
+
+ private Context mContext;
+ private SeekBarPreference mSeekBarPreference;
+
+ @Before
+ public void setUp() {
+ mContext = RuntimeEnvironment.application;
+
+ mSeekBarPreference = new SeekBarPreference(mContext);
+ mSeekBarPreference.setMax(MAX);
+ mSeekBarPreference.setMin(MIN);
+ mSeekBarPreference.setProgress(PROGRESS);
+ mSeekBarPreference.setPersistent(false);
+ }
+
+ @Test
+ public void testSaveAndRestoreInstanceState() {
+ final Parcelable parcelable = mSeekBarPreference.onSaveInstanceState();
+
+ final SeekBarPreference preference = new SeekBarPreference(mContext);
+ preference.onRestoreInstanceState(parcelable);
+
+ assertThat(preference.getMax()).isEqualTo(MAX);
+ assertThat(preference.getMin()).isEqualTo(MIN);
+ assertThat(preference.getProgress()).isEqualTo(PROGRESS);
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/widget/TwoStateButtonPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/widget/TwoStateButtonPreferenceControllerTest.java
new file mode 100644
index 0000000..a289815
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/widget/TwoStateButtonPreferenceControllerTest.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2018 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.settings.widget;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.spy;
+
+import android.content.Context;
+import android.support.v7.preference.PreferenceScreen;
+import android.view.View;
+import android.widget.Button;
+
+import com.android.settings.TestConfig;
+import com.android.settings.testutils.SettingsRobolectricTestRunner;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.robolectric.RuntimeEnvironment;
+import org.robolectric.annotation.Config;
+
+@RunWith(SettingsRobolectricTestRunner.class)
+@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
+public class TwoStateButtonPreferenceControllerTest {
+ private static final String KEY = "pref_key";
+
+ @Mock
+ private PreferenceScreen mPreferenceScreen;
+ @Mock
+ private TwoStateButtonPreference mPreference;
+ private TwoStateButtonPreferenceController mController;
+ private Context mContext;
+ private Button mButtonOn;
+ private Button mButtonOff;
+
+ @Before
+ public void setUp() {
+ MockitoAnnotations.initMocks(this);
+ mContext = spy(RuntimeEnvironment.application);
+ doReturn(mPreference).when(mPreferenceScreen).findPreference(anyString());
+ mButtonOn = new Button(mContext);
+ doReturn(mButtonOn).when(mPreference).getStateOnButton();
+ mButtonOff = new Button(mContext);
+ doReturn(mButtonOff).when(mPreference).getStateOffButton();
+
+ mController = new TestButtonsPreferenceController(mContext, KEY);
+ mController.displayPreference(mPreferenceScreen);
+ }
+
+ @Test
+ public void testSetButtonVisibility_stateOn_onlyShowButtonOn() {
+ mController.setButtonVisibility(true /* stateOn */);
+
+ assertThat(mButtonOn.getVisibility()).isEqualTo(View.VISIBLE);
+ assertThat(mButtonOff.getVisibility()).isEqualTo(View.GONE);
+ }
+
+ @Test
+ public void testSetButtonVisibility_stateOff_onlyShowButtonOff() {
+ mController.setButtonVisibility(false /* stateOn */);
+
+ assertThat(mButtonOn.getVisibility()).isEqualTo(View.GONE);
+ assertThat(mButtonOff.getVisibility()).isEqualTo(View.VISIBLE);
+ }
+
+ @Test
+ public void testSetButtonEnabled_enabled_buttonEnabled() {
+ mController.setButtonEnabled(true /* enabled */);
+
+ assertThat(mButtonOn.isEnabled()).isTrue();
+ assertThat(mButtonOff.isEnabled()).isTrue();
+ }
+
+ @Test
+ public void testSetButtonEnabled_disabled_buttonDisabled() {
+ mController.setButtonEnabled(false /* enabled */);
+
+ assertThat(mButtonOn.isEnabled()).isFalse();
+ assertThat(mButtonOff.isEnabled()).isFalse();
+ }
+
+ /**
+ * Controller to test methods in {@link TwoStateButtonPreferenceController}
+ */
+ public static class TestButtonsPreferenceController extends
+ TwoStateButtonPreferenceController {
+
+ TestButtonsPreferenceController(Context context, String key) {
+ super(context, key);
+ }
+
+ @Override
+ public void onButtonClicked(boolean stateOn) {
+ //do nothing
+ }
+
+ @Override
+ public int getAvailabilityStatus() {
+ return AVAILABLE;
+ }
+ }
+}
diff --git a/tests/robotests/src/com/android/settings/wifi/ConnectedAccessPointPreferenceTest.java b/tests/robotests/src/com/android/settings/wifi/ConnectedAccessPointPreferenceTest.java
index 2eaa587..c122a65 100644
--- a/tests/robotests/src/com/android/settings/wifi/ConnectedAccessPointPreferenceTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/ConnectedAccessPointPreferenceTest.java
@@ -16,6 +16,8 @@
package com.android.settings.wifi;
+import static com.google.common.truth.Truth.assertThat;
+
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
@@ -75,4 +77,9 @@
verify(mOnGearClickListener, never()).onGearClick(mConnectedAccessPointPreference);
}
+ @Test
+ public void testWidgetLayoutPreference() {
+ assertThat(mConnectedAccessPointPreference.getWidgetLayoutResource()).isEqualTo(
+ R.layout.preference_widget_gear_no_bg);
+ }
}
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiWakeupPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/WifiWakeupPreferenceControllerTest.java
index 29df539..28ab166 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiWakeupPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiWakeupPreferenceControllerTest.java
@@ -16,9 +16,7 @@
package com.android.settings.wifi;
-import static android.provider.Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED;
import static android.provider.Settings.Global.WIFI_SCAN_ALWAYS_AVAILABLE;
-import static android.provider.Settings.Global.WIFI_WAKEUP_AVAILABLE;
import static android.provider.Settings.Global.WIFI_WAKEUP_ENABLED;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.mock;
@@ -33,7 +31,6 @@
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.testutils.shadow.SettingsShadowResources;
-import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.After;
import org.junit.Before;
@@ -59,12 +56,8 @@
public void setUp() {
MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
- mController = new WifiWakeupPreferenceController(
- mContext, mock(Lifecycle.class));
+ mController = new WifiWakeupPreferenceController(mContext);
Settings.System.putInt(mContext.getContentResolver(), WIFI_SCAN_ALWAYS_AVAILABLE, 1);
- Settings.System.putInt(mContext.getContentResolver(), NETWORK_RECOMMENDATIONS_ENABLED, 1);
- SettingsShadowResources.overrideResource(
- com.android.internal.R.integer.config_wifi_wakeup_available, 0);
}
@After
@@ -73,18 +66,6 @@
}
@Test
- public void testIsAvailable_returnsFalseWhenSettingIsNotAvailable() {
- Settings.System.putInt(mContext.getContentResolver(), WIFI_WAKEUP_AVAILABLE, 0);
- assertThat(mController.isAvailable()).isFalse();
- }
-
- @Test
- public void testIsAvailable_returnsTrueWhenSettingIsAvailable() {
- Settings.System.putInt(mContext.getContentResolver(), WIFI_WAKEUP_AVAILABLE, 1);
- assertThat(mController.isAvailable()).isTrue();
- }
-
- @Test
public void handlePreferenceTreeClick_nonMatchingKey_shouldDoNothing() {
final SwitchPreference pref = new SwitchPreference(mContext);
@@ -146,17 +127,4 @@
verify(preference).setEnabled(false);
verify(preference).setSummary(R.string.wifi_wakeup_summary_scanning_disabled);
}
-
- @Test
- public void updateState_preferenceSetUncheckedAndSetDisabledWhenScoringDisabled() {
- final SwitchPreference preference = mock(SwitchPreference.class);
- Settings.System.putInt(mContext.getContentResolver(), WIFI_WAKEUP_ENABLED, 1);
- Settings.System.putInt(mContext.getContentResolver(), NETWORK_RECOMMENDATIONS_ENABLED, 0);
-
- mController.updateState(preference);
-
- verify(preference).setChecked(true);
- verify(preference).setEnabled(false);
- verify(preference).setSummary(R.string.wifi_wakeup_summary_scoring_disabled);
- }
}
diff --git a/tests/robotests/src/com/android/settings/wifi/WpsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/WpsPreferenceControllerTest.java
deleted file mode 100644
index e4dfea4..0000000
--- a/tests/robotests/src/com/android/settings/wifi/WpsPreferenceControllerTest.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * Copyright (C) 2017 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.settings.wifi;
-
-import static android.arch.lifecycle.Lifecycle.Event.ON_PAUSE;
-import static android.arch.lifecycle.Lifecycle.Event.ON_RESUME;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import static org.mockito.Matchers.any;
-import static org.mockito.Matchers.anyString;
-import static org.mockito.Mockito.times;
-import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
-
-import android.app.FragmentManager;
-import android.arch.lifecycle.LifecycleOwner;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.IntentFilter;
-import android.net.wifi.WifiManager;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceScreen;
-
-import com.android.settings.TestConfig;
-import com.android.settings.testutils.SettingsRobolectricTestRunner;
-import com.android.settingslib.core.lifecycle.Lifecycle;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-import org.robolectric.annotation.Config;
-
-@RunWith(SettingsRobolectricTestRunner.class)
-@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
-public class WpsPreferenceControllerTest {
-
- @Mock
- private Context mContext;
- @Mock(answer = Answers.RETURNS_DEEP_STUBS)
- private WifiManager mWifiManager;
- @Mock
- private FragmentManager mFragmentManager;
- @Mock
- private PreferenceScreen mScreen;
- @Mock
- private Preference mWpsPushPref;
- @Mock
- private Preference mWpsPinPref;
-
- private Lifecycle mLifecycle;
- private LifecycleOwner mLifecycleOwner;
- private WpsPreferenceController mController;
-
- @Before
- public void setUp() {
- MockitoAnnotations.initMocks(this);
- mLifecycleOwner = () -> mLifecycle;
- mLifecycle = new Lifecycle(mLifecycleOwner);
- when(mContext.getSystemService(WifiManager.class))
- .thenReturn(mWifiManager);
- when(mScreen.findPreference(anyString()))
- .thenReturn(mWpsPushPref)
- .thenReturn(mWpsPinPref);
- mController = new WpsPreferenceController(
- mContext, mLifecycle, mWifiManager, mFragmentManager);
- }
-
- @Test
- public void testIsAvailable_shouldAlwaysReturnTrue() {
- assertThat(mController.isAvailable()).isTrue();
- }
-
- @Test
- public void testOnResume_shouldRegisterListener() {
- mLifecycle.handleLifecycleEvent(ON_RESUME);
- verify(mContext).registerReceiver(any(BroadcastReceiver.class), any(IntentFilter.class));
- }
- @Test
- public void testOnPause_shouldUnregisterListener() {
- mLifecycle.handleLifecycleEvent(ON_RESUME);
- mLifecycle.handleLifecycleEvent(ON_PAUSE);
- verify(mContext).unregisterReceiver(any(BroadcastReceiver.class));
- }
-
- @Test
- public void testWifiStateChange_shouldToggleEnabledState() {
- when(mWifiManager.isWifiEnabled()).thenReturn(true);
-
- //Sets the preferences.
- mController.displayPreference(mScreen);
- verify(mWpsPushPref).setEnabled(true);
- verify(mWpsPinPref).setEnabled(true);
-
- Intent dummyIntent = new Intent();
- mController.mReceiver.onReceive(mContext, dummyIntent);
- verify(mWpsPushPref, times(2)).setEnabled(true);
- verify(mWpsPinPref, times(2)).setEnabled(true);
-
- when(mWifiManager.isWifiEnabled()).thenReturn(false);
- mController.mReceiver.onReceive(mContext, dummyIntent);
- verify(mWpsPushPref).setEnabled(false);
- verify(mWpsPinPref).setEnabled(false);
- }
-
- @Test
- public void testDisplayPreference_shouldSetPreferenceClickListenerAndToggleEnabledState() {
- when(mWifiManager.isWifiEnabled()).thenReturn(true);
- mController.displayPreference(mScreen);
- verify(mWpsPushPref).setOnPreferenceClickListener(any());
- verify(mWpsPinPref).setOnPreferenceClickListener(any());
- verify(mWpsPushPref).setEnabled(true);
- verify(mWpsPinPref).setEnabled(true);
- }
-
- @Test
- public void testDisplayPreference_shouldDisablePreferenceWhenWifiDisabled() {
- when(mWifiManager.isWifiEnabled()).thenReturn(false);
- mController.displayPreference(mScreen);
- verify(mWpsPushPref).setEnabled(false);
- verify(mWpsPinPref).setEnabled(false);
- }
-}
diff --git a/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
index dca6974..4b18fcf 100644
--- a/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/tether/WifiTetherPreferenceControllerTest.java
@@ -73,7 +73,8 @@
})
public class WifiTetherPreferenceControllerTest {
- @Mock
+ private static final String SSID = "Pixel";
+
private Context mContext;
@Mock
private ConnectivityManager mConnectivityManager;
@@ -81,6 +82,8 @@
private WifiManager mWifiManager;
@Mock
private PreferenceScreen mScreen;
+ @Mock
+ private WifiConfiguration mWifiConfiguration;
private WifiTetherPreferenceController mController;
private Lifecycle mLifecycle;
@@ -90,6 +93,8 @@
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
+
+ mContext = spy(RuntimeEnvironment.application);
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
FakeFeatureFactory.setupForTest();
@@ -98,10 +103,13 @@
.thenReturn(mConnectivityManager);
when(mContext.getSystemService(Context.WIFI_SERVICE)).thenReturn(mWifiManager);
when(mScreen.findPreference(anyString())).thenReturn(mPreference);
+ when(mWifiManager.getWifiApConfiguration()).thenReturn(mWifiConfiguration);
+ mWifiConfiguration.SSID = SSID;
when(mConnectivityManager.getTetherableWifiRegexs()).thenReturn(new String[]{"1", "2"});
mController = new WifiTetherPreferenceController(mContext, mLifecycle,
false /* initSoftApManager */);
+ mController.displayPreference(mScreen);
}
@After
@@ -127,7 +135,6 @@
public void startAndStop_shouldRegisterUnregisterReceiver() {
final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
- mController.displayPreference(mScreen);
mLifecycle.handleLifecycleEvent(ON_START);
mLifecycle.handleLifecycleEvent(ON_STOP);
@@ -167,48 +174,6 @@
}
@Test
- public void testReceiver_apStateChangedToDisabled_shouldUpdatePreferenceSummary() {
- mController.displayPreference(mScreen);
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_DISABLED);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_hotspot_off_subtext));
- }
-
- @Test
- public void testReceiver_apStateChangedToDisabling_shouldUpdatePreferenceSummary() {
- mController.displayPreference(mScreen);
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_DISABLING);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_tether_stopping));
- }
-
- @Test
- public void testReceiver_apStateChangedToEnabling_shouldUpdatePreferenceSummary() {
- mController.displayPreference(mScreen);
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_ENABLING);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_tether_starting));
- }
-
- @Test
- public void testReceiver_apStateChangedToEnabled_shouldNotUpdatePreferenceSummary() {
- mController.displayPreference(mScreen);
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_DISABLED);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_hotspot_off_subtext));
-
- // When turning on the hotspot, we receive STATE_ENABLING followed by STATE_ENABLED. The
- // first should change the status to wifi_tether_starting, and the second should not change
- // this.
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_ENABLING);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_tether_starting));
- receiveApStateChangedBroadcast(WifiManager.WIFI_AP_STATE_ENABLED);
- assertThat(mPreference.getSummary().toString()).isEqualTo(
- RuntimeEnvironment.application.getString(R.string.wifi_tether_starting));
- }
-
- @Test
public void testReceiver_goingToAirplaneMode_shouldClearPreferenceSummary() {
final ContentResolver cr = mock(ContentResolver.class);
when(mContext.getContentResolver()).thenReturn(cr);
@@ -224,22 +189,32 @@
}
@Test
- public void testReceiver_tetherEnabled_shouldUpdatePreferenceSummary() {
- mController.displayPreference(mScreen);
- final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
- final Intent broadcast = new Intent(ConnectivityManager.ACTION_TETHER_STATE_CHANGED);
- final ArrayList<String> activeTethers = new ArrayList<>();
- activeTethers.add("1");
- broadcast.putStringArrayListExtra(ConnectivityManager.EXTRA_ACTIVE_TETHER, activeTethers);
- broadcast.putStringArrayListExtra(ConnectivityManager.EXTRA_ERRORED_TETHER,
- new ArrayList<>());
- final WifiConfiguration configuration = new WifiConfiguration();
- configuration.SSID = "test-ap";
- when(mWifiManager.getWifiApConfiguration()).thenReturn(configuration);
+ public void testHandleWifiApStateChanged_stateEnabling_showEnablingSummary() {
+ mController.handleWifiApStateChanged(WifiManager.WIFI_AP_STATE_ENABLING, 0 /* reason */);
- receiver.onReceive(RuntimeEnvironment.application, broadcast);
+ assertThat(mPreference.getSummary()).isEqualTo("Turning hotspot on\u2026");
+ }
- verify(mContext).getString(eq(R.string.wifi_tether_enabled_subtext), any());
+ @Test
+ public void testHandleWifiApStateChanged_stateEnabled_showEnabledSummary() {
+ mController.handleWifiApStateChanged(WifiManager.WIFI_AP_STATE_ENABLED, 0 /* reason */);
+
+ assertThat(mPreference.getSummary()).isEqualTo("Pixel is active");
+ }
+
+ @Test
+ public void testHandleWifiApStateChanged_stateDisabling_showDisablingSummary() {
+ mController.handleWifiApStateChanged(WifiManager.WIFI_AP_STATE_DISABLING, 0 /* reason */);
+
+ assertThat(mPreference.getSummary()).isEqualTo("Turning off hotspot\u2026");
+ }
+
+ @Test
+ public void testHandleWifiApStateChanged_stateDisabled_showDisabledSummary() {
+ mController.handleWifiApStateChanged(WifiManager.WIFI_AP_STATE_DISABLED, 0 /* reason */);
+
+ assertThat(mPreference.getSummary()).isEqualTo(
+ "Not sharing internet or content with other devices");
}
@Implements(WifiTetherSettings.class)
@@ -285,17 +260,4 @@
onStopCalled = true;
}
}
-
- /**
- * Helper to cause the controller to receive a WIFI_AP_STATE_CHANGED_ACTION with a specific
- * state.
- *
- * @param state - the state, as specified by one of the WifiManager.WIFI_AP_STATE_* values
- */
- private void receiveApStateChangedBroadcast(int state) {
- final BroadcastReceiver receiver = ReflectionHelpers.getField(mController, "mReceiver");
- final Intent broadcast = new Intent(WifiManager.WIFI_AP_STATE_CHANGED_ACTION);
- broadcast.putExtra(WifiManager.EXTRA_WIFI_AP_STATE, state);
- receiver.onReceive(RuntimeEnvironment.application, broadcast);
- }
}
diff --git a/tests/uitests/Android.mk b/tests/uitests/Android.mk
index 870f59c..d52911d 100644
--- a/tests/uitests/Android.mk
+++ b/tests/uitests/Android.mk
@@ -19,16 +19,22 @@
LOCAL_COMPATIBILITY_SUITE := device-tests
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_MODULE_TAGS := tests
-LOCAL_JAVA_LIBRARIES := android.test.runner android.test.base
+
+LOCAL_JAVA_LIBRARIES := \
+ android.test.runner \
+ android.test.base
+
LOCAL_STATIC_JAVA_LIBRARIES := \
+ android-support-test \
app-helpers-core \
launcher-helper-lib \
- settings-helper \
- timeresult-helper-lib \
- ub-uiautomator \
- sysui-helper \
metrics-helper-lib \
platform-test-annotations \
+ settings-helper \
+ sysui-helper \
+ timeresult-helper-lib \
+ truth-prebuilt \
+ ub-uiautomator \
#LOCAL_SDK_VERSION := current
diff --git a/tests/uitests/src/com/android/settings/ui/AboutPhoneSettingsTests.java b/tests/uitests/src/com/android/settings/ui/AboutPhoneSettingsTests.java
index 57f9bc2..b92a707 100644
--- a/tests/uitests/src/com/android/settings/ui/AboutPhoneSettingsTests.java
+++ b/tests/uitests/src/com/android/settings/ui/AboutPhoneSettingsTests.java
@@ -16,57 +16,55 @@
package com.android.settings.ui;
+import static com.android.settings.ui.testutils.SettingsTestUtils.SETTINGS_PACKAGE;
+import static com.google.common.truth.Truth.assertThat;
+import static com.google.common.truth.Truth.assertWithMessage;
+
+import android.app.Instrumentation;
import android.content.Intent;
import android.os.RemoteException;
import android.provider.Settings;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.filters.SmallTest;
+import android.support.test.runner.AndroidJUnit4;
import android.support.test.uiautomator.By;
import android.support.test.uiautomator.Direction;
import android.support.test.uiautomator.UiDevice;
import android.support.test.uiautomator.UiObject2;
import android.support.test.uiautomator.Until;
-import android.test.InstrumentationTestCase;
-import android.test.suitebuilder.annotation.MediumTest;
-import android.test.suitebuilder.annotation.Suppress;
import android.text.TextUtils;
-import android.util.Log;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
/** Verifies basic functionality of the About Phone screen */
-public class AboutPhoneSettingsTests extends InstrumentationTestCase {
- private static final boolean LOCAL_LOGV = false;
- private static final String TAG = "AboutPhoneSettingsTest";
+@RunWith(AndroidJUnit4.class)
+@SmallTest
+public class AboutPhoneSettingsTests {
private static final int TIMEOUT = 2000;
- private static final String SETTINGS_PACKAGE = "com.android.settings";
-
- private UiDevice mDevice;
// TODO: retrieve using name/ids from com.android.settings package
private static final String[] sResourceTexts = {
- "Status",
- "Legal information",
- "Regulatory labels",
- "Model",
- "Android version",
- "Android security patch level",
- "Baseband version",
- "Kernel version",
- "Build number"
+ "Phone number",
+ "SIM status",
+ "Model & hardware",
+ "MEID",
+ "Android version"
};
- private static final String[] sClickableResourceTexts = {
- "Status", "Legal information", "Regulatory labels",
- };
+ private UiDevice mDevice;
+ private Instrumentation mInstrumentation;
- @Override
+ @Before
public void setUp() throws Exception {
- if (LOCAL_LOGV) {
- Log.d(TAG, "-------");
- }
- super.setUp();
- mDevice = UiDevice.getInstance(getInstrumentation());
+ mInstrumentation = InstrumentationRegistry.getInstrumentation();
+ mDevice = UiDevice.getInstance(mInstrumentation);
try {
mDevice.setOrientationNatural();
} catch (RemoteException e) {
@@ -82,84 +80,40 @@
UiObject2 view =
mDevice.wait(
Until.findObject(By.res(SETTINGS_PACKAGE + ":id/main_content")), TIMEOUT);
- assertNotNull("Could not find main About Phone screen", view);
+ assertThat(view).isNotNull();
view.scroll(Direction.UP, 1.0f);
}
- @Override
- protected void tearDown() throws Exception {
+ @After
+ public void tearDown() throws Exception {
// Adding an extra pressBack so we exit About Phone Settings
// and finish the test cleanly
mDevice.pressBack();
mDevice.pressHome(); // finish settings activity
mDevice.waitForIdle(TIMEOUT * 2); // give UI time to finish animating
- super.tearDown();
+ }
+
+ @Test
+ public void testAllMenuEntriesExist() throws Exception {
+ searchForItemsAndTakeAction(mDevice, sResourceTexts);
}
private void launchAboutPhoneSettings(String aboutSetting) throws Exception {
Intent aboutIntent = new Intent(aboutSetting);
aboutIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- getInstrumentation().getContext().startActivity(aboutIntent);
- }
-
- /**
- * Callable actions that can be taken when a UIObject2 is found
- *
- * @param device The current UiDevice
- * @param item The UiObject2 that was found and can be acted on
- *
- * @return {@code true} if the call was successful, and {@code false} otherwise
- */
- public interface UIObject2Callback {
- boolean call(UiDevice device, UiObject2 item) throws Exception;
- }
-
- /**
- * Clicks the given item and then presses the Back button
- *
- * <p>Used to test whether a given UiObject2 can be successfully clicked.
- * Presses Back to restore state to the previous screen.
- *
- * @param device The device that can be used to press Back
- * @param item The item to click
- *
- * @return {@code true} if clicking the item succeeded, and {@code false} otherwise
- */
- public class UiObject2Clicker implements UIObject2Callback {
- public boolean call(UiDevice device, UiObject2 item) throws Exception {
- item.click();
- Thread.sleep(TIMEOUT * 2); // give UI time to finish animating
- boolean pressWorked = device.pressBack();
- Thread.sleep(TIMEOUT * 2);
- return pressWorked;
- }
+ InstrumentationRegistry.getTargetContext().startActivity(aboutIntent);
}
/**
* Removes items found in the view and optionally takes some action.
- *
- * @param device The current UiDevice
- * @param itemsLeftToFind The items to search for in the current view
- * @param action Action to call on each item that is found; pass {@code null} to take no action
*/
- private void removeItemsAndTakeAction(
- UiDevice device, ArrayList<String> itemsLeftToFind, UIObject2Callback action) throws Exception {
+ private void removeItemsAndTakeAction(UiDevice device, ArrayList<String> itemsLeftToFind)
+ throws Exception {
for (Iterator<String> iterator = itemsLeftToFind.iterator(); iterator.hasNext(); ) {
String itemText = iterator.next();
UiObject2 item = device.wait(Until.findObject(By.text(itemText)), TIMEOUT);
if (item != null) {
- if (LOCAL_LOGV) {
- Log.d(TAG, itemText + " is present");
- }
iterator.remove();
- if (action != null) {
- boolean success = action.call(device, item);
- assertTrue("Calling action after " + itemText + " did not work", success);
- }
- } else {
- if (LOCAL_LOGV) {
- Log.d(TAG, "Could not find " + itemText);
- }
}
}
}
@@ -169,25 +123,18 @@
*
* <p>Will scroll down the screen until it has found all elements or reached the bottom.
* This allows elements to be found and acted on even if they change order.
- *
- * @param device The current UiDevice
- * @param itemsToFind The items to search for in the current view
- * @param action Action to call on each item that is found; pass {@code null} to take no action
*/
- public void searchForItemsAndTakeAction(UiDevice device, String[] itemsToFind, UIObject2Callback action)
+ private void searchForItemsAndTakeAction(UiDevice device, String[] itemsToFind)
throws Exception {
- ArrayList<String> itemsLeftToFind = new ArrayList<String>(Arrays.asList(itemsToFind));
- assertFalse(
- "There must be at least one item to search for on the screen!",
- itemsLeftToFind.isEmpty());
+ ArrayList<String> itemsLeftToFind = new ArrayList<>(Arrays.asList(itemsToFind));
+ assertWithMessage("There must be at least one item to search for on the screen!")
+ .that(itemsLeftToFind)
+ .isNotEmpty();
- if (LOCAL_LOGV) {
- Log.d(TAG, "items: " + TextUtils.join(", ", itemsLeftToFind));
- }
boolean canScrollDown = true;
while (canScrollDown && !itemsLeftToFind.isEmpty()) {
- removeItemsAndTakeAction(device, itemsLeftToFind, action);
+ removeItemsAndTakeAction(device, itemsLeftToFind);
// when we've finished searching the current view, scroll down
UiObject2 view =
@@ -201,24 +148,11 @@
}
}
// check the last items once we have reached the bottom of the view
- removeItemsAndTakeAction(device, itemsLeftToFind, action);
+ removeItemsAndTakeAction(device, itemsLeftToFind);
- assertTrue(
- "The following items were not found on the screen: "
- + TextUtils.join(", ", itemsLeftToFind),
- itemsLeftToFind.isEmpty());
- }
-
- @MediumTest // UI interaction
- public void testAllMenuEntriesExist() throws Exception {
- searchForItemsAndTakeAction(mDevice, sResourceTexts, null);
- }
-
- // Suppressing this test as it might be causing other test failures
- // Will verify that this test is the cause before proceeding with solution
- @Suppress
- @MediumTest // UI interaction
- public void testClickableEntriesCanBeClicked() throws Exception {
- searchForItemsAndTakeAction(mDevice, sClickableResourceTexts, new UiObject2Clicker());
+ assertWithMessage("The following items were not found on the screen: "
+ + TextUtils.join(", ", itemsLeftToFind))
+ .that(itemsLeftToFind)
+ .isEmpty();
}
}
diff --git a/tests/uitests/src/com/android/settings/ui/BatterySettingsUITest.java b/tests/uitests/src/com/android/settings/ui/BatterySettingsUITest.java
new file mode 100644
index 0000000..8b34fff
--- /dev/null
+++ b/tests/uitests/src/com/android/settings/ui/BatterySettingsUITest.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2018 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.settings.ui;
+
+import android.content.Intent;
+import android.os.RemoteException;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.filters.MediumTest;
+import android.support.test.runner.AndroidJUnit4;
+import android.support.test.uiautomator.UiDevice;
+import android.system.helpers.SettingsHelper;
+
+import com.android.settings.ui.testutils.SettingsTestUtils;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@MediumTest
+@RunWith(AndroidJUnit4.class)
+public class BatterySettingsUITest {
+ // Items we really want to always show
+ private static final String[] CATEGORIES = new String[] {
+ "Battery Saver",
+ "Battery percentage",
+ "Battery usage data is approximate and can change based on usage",
+ };
+
+ private UiDevice mDevice;
+ private SettingsHelper mHelper;
+
+ @Before
+ public void setUp() throws Exception {
+ mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
+ mHelper = SettingsHelper.getInstance();
+ try {
+ mDevice.setOrientationNatural();
+ } catch (RemoteException e) {
+ throw new RuntimeException("failed to freeze device orientaion", e);
+ }
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ // Go back to home for next test.
+ mDevice.pressHome();
+ }
+
+ @Test
+ public void launchSecuritySettings() throws Exception {
+ // Launch Settings
+ SettingsHelper.launchSettingsPage(
+ InstrumentationRegistry.getTargetContext(), Intent.ACTION_POWER_USAGE_SUMMARY);
+ mHelper.scrollVert(false);
+ for (String category : CATEGORIES) {
+ SettingsTestUtils.assertTitleMatch(mDevice, category);
+ }
+ }
+}
diff --git a/tests/uitests/src/com/android/settings/ui/HomepageDisplayTests.java b/tests/uitests/src/com/android/settings/ui/HomepageDisplayTests.java
index 7931d30..3b7b006 100644
--- a/tests/uitests/src/com/android/settings/ui/HomepageDisplayTests.java
+++ b/tests/uitests/src/com/android/settings/ui/HomepageDisplayTests.java
@@ -16,6 +16,9 @@
package com.android.settings.ui;
+import static com.android.settings.ui.testutils.SettingsTestUtils.SETTINGS_PACKAGE;
+import static com.android.settings.ui.testutils.SettingsTestUtils.TIMEOUT;
+
import android.os.RemoteException;
import android.platform.test.annotations.Presubmit;
import android.provider.Settings;
@@ -36,9 +39,6 @@
import org.junit.Test;
import org.junit.runner.RunWith;
-import static com.android.settings.ui.testutils.SettingsTestUtils.SETTINGS_PACKAGE;
-import static com.android.settings.ui.testutils.SettingsTestUtils.TIMEOUT;
-
@MediumTest
@RunWith(AndroidJUnit4.class)
public class HomepageDisplayTests {
@@ -52,19 +52,17 @@
"Sound",
"Storage",
"Security & location",
- "Users & accounts",
+ "Accounts",
"Accessibility",
"System",
"Support & tips"
};
private UiDevice mDevice;
- private SettingsHelper mSettingsHelper;
@Before
public void setUp() throws Exception {
mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
- mSettingsHelper = new SettingsHelper();
try {
mDevice.setOrientationNatural();
} catch (RemoteException e) {
diff --git a/tests/uitests/src/com/android/settings/ui/MoreWirelessSettingsTest2.java b/tests/uitests/src/com/android/settings/ui/MoreWirelessSettingsTest2.java
new file mode 100644
index 0000000..971c7d7
--- /dev/null
+++ b/tests/uitests/src/com/android/settings/ui/MoreWirelessSettingsTest2.java
@@ -0,0 +1,766 @@
+/*
+ * Copyright (C) 2018 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.settings.ui;
+
+import android.content.Context;
+import android.net.wifi.WifiManager;
+import android.os.RemoteException;
+import android.platform.test.annotations.Presubmit;
+import android.provider.Settings;
+import android.support.test.uiautomator.By;
+import android.support.test.uiautomator.BySelector;
+import android.support.test.uiautomator.Direction;
+import android.support.test.uiautomator.StaleObjectException;
+import android.support.test.uiautomator.UiDevice;
+import android.support.test.uiautomator.UiObject2;
+import android.support.test.uiautomator.Until;
+import android.system.helpers.CommandsHelper;
+import android.system.helpers.SettingsHelper;
+import android.test.InstrumentationTestCase;
+import android.test.suitebuilder.annotation.MediumTest;
+import android.test.suitebuilder.annotation.Suppress;
+import android.util.Log;
+
+/**
+ * Additional tests for Wifi Settings.
+ */
+public class MoreWirelessSettingsTest2 extends InstrumentationTestCase {
+ // These back button presses are performed in tearDown() to exit Wifi
+ // Settings sub-menus that a test might finish in. This number should be
+ // high enough to account for the deepest sub-menu a test might enter.
+ private static final int NUM_BACK_BUTTON_PRESSES = 5;
+ private static final int TIMEOUT = 2000;
+ private static final int SLEEP_TIME = 500;
+ private static final String AIRPLANE_MODE_BROADCAST =
+ "am broadcast -a android.intent.action.AIRPLANE_MODE";
+ private static final String TAG="WirelessNetworkSettingsTests";
+
+ // Note: The values of these variables might affect flakiness in tests that involve
+ // scrolling. Adjust where necessary.
+ private static final float SCROLL_UP_PERCENT = 10.0f;
+ private static final float SCROLL_DOWN_PERCENT = 0.5f;
+ private static final int MAX_SCROLL_ATTEMPTS = 10;
+ private static final int MAX_ADD_NETWORK_BUTTON_ATTEMPTS = 3;
+ private static final int SCROLL_SPEED = 2000;
+
+ private static final String TEST_SSID = "testSsid";
+ private static final String TEST_PW_GE_8_CHAR = "testPasswordGreaterThan8Char";
+ private static final String TEST_PW_LT_8_CHAR = "lt8Char";
+ private static final String TEST_DOMAIN = "testDomain.com";
+
+ private static final String SETTINGS_PACKAGE = "com.android.settings";
+
+ private static final String CHECKBOX_CLASS = "android.widget.CheckBox";
+ private static final String SPINNER_CLASS = "android.widget.Spinner";
+ private static final String EDIT_TEXT_CLASS = "android.widget.EditText";
+ private static final String SCROLLVIEW_CLASS = "android.widget.ScrollView";
+ private static final String LISTVIEW_CLASS = "android.widget.ListView";
+
+ private static final String ADD_NETWORK_MENU_CANCEL_BUTTON_TEXT = "CANCEL";
+ private static final String ADD_NETWORK_MENU_SAVE_BUTTON_TEXT = "SAVE";
+ private static final String ADD_NETWORK_PREFERENCE_TEXT = "Add network";
+ private static final String CONFIGURE_WIFI_PREFERENCE_TEXT = "Wi‑Fi preferences";
+ private static final String CONFIGURE_WIFI_ADVANCED_PREFERENCE_TEXT = "Advanced";
+ private static final String CACERT_MENU_PLEASE_SELECT_TEXT = "Please select";
+ private static final String CACERT_MENU_USE_SYSTEM_CERTS_TEXT = "Use system certificates";
+ private static final String CACERT_MENU_DO_NOT_VALIDATE_TEXT = "Do not validate";
+ private static final String USERCERT_MENU_PLEASE_SELECT_TEXT = "Please select";
+ private static final String USERCERT_MENU_DO_NOT_PROVIDE_TEXT = "Do not provide";
+ private static final String SECURITY_OPTION_NONE_TEXT = "None";
+ private static final String SECURITY_OPTION_WEP_TEXT = "WEP";
+ private static final String SECURITY_OPTION_PSK_TEXT = "WPA/WPA2 PSK";
+ private static final String SECURITY_OPTION_EAP_TEXT = "802.1x EAP";
+ private static final String EAP_METHOD_PEAP_TEXT = "PEAP";
+ private static final String EAP_METHOD_TLS_TEXT = "TLS";
+ private static final String EAP_METHOD_TTLS_TEXT = "TTLS";
+ private static final String EAP_METHOD_PWD_TEXT = "PWD";
+ private static final String EAP_METHOD_SIM_TEXT = "SIM";
+ private static final String EAP_METHOD_AKA_TEXT = "AKA";
+ private static final String EAP_METHOD_AKA_PRIME_TEXT = "AKA'";
+ private static final String PHASE2_MENU_NONE_TEXT = "None";
+ private static final String PHASE2_MENU_MSCHAPV2_TEXT = "MSCHAPV2";
+ private static final String PHASE2_MENU_GTC_TEXT = "GTC";
+
+ private static final String ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID = "wifi_advanced_togglebox";
+ private static final String ADD_NETWORK_MENU_IP_SETTINGS_RES_ID = "ip_settings";
+ private static final String ADD_NETWORK_MENU_PROXY_SETTINGS_RES_ID = "proxy_settings";
+ private static final String ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID = "security";
+ private static final String ADD_NETWORK_MENU_EAP_METHOD_RES_ID = "method";
+ private static final String ADD_NETWORK_MENU_SSID_RES_ID = "ssid";
+ private static final String ADD_NETWORK_MENU_PHASE2_RES_ID = "phase2";
+ private static final String ADD_NETWORK_MENU_CACERT_RES_ID = "ca_cert";
+ private static final String ADD_NETWORK_MENU_USERCERT_RES_ID = "user_cert";
+ private static final String ADD_NETWORK_MENU_NO_DOMAIN_WARNING_RES_ID = "no_domain_warning";
+ private static final String ADD_NETWORK_MENU_NO_CACERT_WARNING_RES_ID = "no_ca_cert_warning";
+ private static final String ADD_NETWORK_MENU_DOMAIN_LAYOUT_RES_ID = "l_domain";
+ private static final String ADD_NETWORK_MENU_DOMAIN_RES_ID = "domain";
+ private static final String ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID = "l_identity";
+ private static final String ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID = "l_anonymous";
+ private static final String ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID = "password_layout";
+ private static final String ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID =
+ "show_password_layout";
+ private static final String ADD_NETWORK_MENU_PASSWORD_RES_ID = "password";
+
+ private static final BySelector ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR =
+ By.scrollable(true).clazz(SCROLLVIEW_CLASS);
+ private static final BySelector SPINNER_OPTIONS_SCROLLABLE_BY_SELECTOR =
+ By.scrollable(true).clazz(LISTVIEW_CLASS);
+
+ private UiDevice mDevice;
+ private CommandsHelper mCommandsHelper;
+
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
+ mDevice = UiDevice.getInstance(getInstrumentation());
+ try {
+ mDevice.setOrientationNatural();
+ } catch (RemoteException e) {
+ throw new RuntimeException("failed to freeze device orientation", e);
+ }
+ // Ensure airplane mode is OFF so that wifi can be enabled using WiFiManager.
+ Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.AIRPLANE_MODE_ON, "0");
+ Log.d(TAG, "sending airplane mode broadcast to device");
+ mCommandsHelper = CommandsHelper.getInstance();
+ mCommandsHelper.executeShellCommand(AIRPLANE_MODE_BROADCAST);
+ }
+
+ @Override
+ protected void tearDown() throws Exception {
+ // Exit all settings sub-menus.
+ for (int i = 0; i < NUM_BACK_BUTTON_PRESSES; ++i) {
+ mDevice.pressBack();
+ }
+ mDevice.pressHome();
+ super.tearDown();
+ }
+
+ @MediumTest
+ public void testWifiMenuLoadConfigure() throws Exception {
+ loadWiFiConfigureMenu();
+ Thread.sleep(SLEEP_TIME);
+ UiObject2 configureWiFiHeading = mDevice.wait(Until.findObject
+ (By.text(CONFIGURE_WIFI_PREFERENCE_TEXT)), TIMEOUT);
+ assertNotNull("Configure WiFi menu has not loaded correctly", configureWiFiHeading);
+ }
+
+ @MediumTest
+ public void testNetworkNotificationsOn() throws Exception {
+ verifyNetworkNotificationsOnOrOff(true);
+ }
+
+ @MediumTest
+ public void testNetworkNotificationsOff() throws Exception {
+ verifyNetworkNotificationsOnOrOff(false);
+ }
+
+ @MediumTest
+ public void testAddNetworkMenu_Default() throws Exception {
+ loadAddNetworkMenu();
+
+ // Submit button should be disabled by default, while cancel button should be enabled.
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_CANCEL_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Check that the SSID field is defaults to the hint.
+ assertEquals("Enter the SSID", mDevice.wait(Until.findObject(By
+ .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SSID_RES_ID)
+ .clazz(EDIT_TEXT_CLASS)), TIMEOUT*2)
+ .getText());
+
+ // Check Security defaults to None.
+ assertEquals("None", mDevice.wait(Until.findObject(By
+ .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID)
+ .clazz(SPINNER_CLASS)), TIMEOUT)
+ .getChildren().get(0).getText());
+
+ // Check advanced options are collapsed by default.
+ assertFalse(mDevice.wait(Until.findObject(By
+ .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
+ .clazz(CHECKBOX_CLASS)), TIMEOUT).isChecked());
+
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetworkMenu_Proxy() throws Exception {
+ loadAddNetworkMenu();
+
+ // Toggle advanced options.
+ mDevice.wait(Until.findObject(By
+ .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
+ .clazz(CHECKBOX_CLASS)), TIMEOUT).click();
+
+ // Verify Proxy defaults to None.
+ BySelector proxySettingsBySelector =
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PROXY_SETTINGS_RES_ID)
+ .clazz(SPINNER_CLASS);
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
+ assertEquals("None", mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT)
+ .getChildren().get(0).getText());
+
+ // Verify that Proxy Manual fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
+ mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT).click();
+ mDevice.wait(Until.findObject(By.text("Manual")), TIMEOUT).click();
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "proxy_warning_limited_support"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "proxy_hostname"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "proxy_exclusionlist"));
+
+ // Verify that Proxy Auto-Config options appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
+ mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT).click();
+ mDevice.wait(Until.findObject(By.text("Proxy Auto-Config")), TIMEOUT).click();
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "proxy_pac"));
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetworkMenu_IpSettings() throws Exception {
+ loadAddNetworkMenu();
+
+ // Toggle advanced options.
+ mDevice.wait(Until.findObject(By
+ .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
+ .clazz(CHECKBOX_CLASS)), TIMEOUT).click();
+
+ // Verify IP settings defaults to DHCP.
+ BySelector ipSettingsBySelector =
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IP_SETTINGS_RES_ID).clazz(SPINNER_CLASS);
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, ipSettingsBySelector);
+ assertEquals("DHCP", mDevice.wait(Until.findObject(ipSettingsBySelector), TIMEOUT)
+ .getChildren().get(0).getText());
+
+ // Verify that Static IP settings options appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, ipSettingsBySelector).click();
+ mDevice.wait(Until.findObject(By.text("Static")), TIMEOUT).click();
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "ipaddress"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "gateway"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "network_prefix_length"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "dns1"));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, "dns2"));
+ }
+
+ @Suppress
+ @MediumTest
+ public void testPhase2Settings() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+
+ BySelector phase2SettingsBySelector =
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID).clazz(SPINNER_CLASS);
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, phase2SettingsBySelector);
+ assertEquals(PHASE2_MENU_NONE_TEXT, mDevice.wait(Until
+ .findObject(phase2SettingsBySelector), TIMEOUT).getChildren().get(0).getText());
+ mDevice.wait(Until.findObject(phase2SettingsBySelector), TIMEOUT).click();
+ Thread.sleep(SLEEP_TIME);
+
+ // Verify Phase 2 authentication spinner options.
+ assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_NONE_TEXT)), TIMEOUT));
+ assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_MSCHAPV2_TEXT)), TIMEOUT));
+ assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_GTC_TEXT)), TIMEOUT));
+ }
+
+ @Suppress
+ @MediumTest
+ public void testCaCertSettings() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+
+ BySelector caCertSettingsBySelector =
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID).clazz(SPINNER_CLASS);
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, caCertSettingsBySelector);
+ assertEquals(CACERT_MENU_PLEASE_SELECT_TEXT, mDevice.wait(Until
+ .findObject(caCertSettingsBySelector), TIMEOUT).getChildren().get(0).getText());
+ mDevice.wait(Until.findObject(caCertSettingsBySelector), TIMEOUT).click();
+ Thread.sleep(SLEEP_TIME);
+
+ // Verify CA certificate spinner options.
+ assertNotNull(mDevice.wait(Until.findObject(
+ By.text(CACERT_MENU_PLEASE_SELECT_TEXT)), TIMEOUT));
+ assertNotNull(mDevice.wait(Until.findObject(
+ By.text(CACERT_MENU_USE_SYSTEM_CERTS_TEXT)), TIMEOUT));
+ assertNotNull(mDevice.wait(Until.findObject(
+ By.text(CACERT_MENU_DO_NOT_VALIDATE_TEXT)), TIMEOUT));
+
+ // Verify that a domain field and warning appear when the user selects the
+ // "Use system certificates" option.
+ mDevice.wait(Until.findObject(By.text(CACERT_MENU_USE_SYSTEM_CERTS_TEXT)), TIMEOUT).click();
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_DOMAIN_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_NO_DOMAIN_WARNING_RES_ID));
+
+ // Verify that a warning appears when the user chooses the "Do Not Validate" option.
+ mDevice.wait(Until.findObject(caCertSettingsBySelector), TIMEOUT).click();
+ mDevice.wait(Until.findObject(By.text(CACERT_MENU_DO_NOT_VALIDATE_TEXT)), TIMEOUT).click();
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_NO_CACERT_WARNING_RES_ID));
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_NoSecurity() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_NONE_TEXT);
+
+ // Entering an SSID is enough to enable the submit button. // TODO THIS GUY
+ enterSSID(TEST_SSID);
+ assertTrue(mDevice.wait(Until
+ .findObject(By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_WEP() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_WEP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Verify that WEP fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
+
+ // Entering an SSID alone does not enable the submit button.
+ enterSSID(TEST_SSID);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Submit button is only enabled after a password is entered.
+ enterPassword(TEST_PW_GE_8_CHAR);
+ assertTrue(mDevice.wait(Until
+ .findObject(By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_PSK() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_PSK_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Verify that PSK fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
+
+ // Entering an SSID alone does not enable the submit button.
+ enterSSID(TEST_SSID);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Entering an password that is too short does not enable submit button.
+ enterPassword(TEST_PW_LT_8_CHAR);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Submit button is only enabled after a password of valid length is entered.
+ enterPassword(TEST_PW_GE_8_CHAR);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_PEAP() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_PEAP_TEXT);
+
+ // Verify that EAP-PEAP fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
+
+ // Entering an SSID alone does not enable the submit button.
+ enterSSID(TEST_SSID);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ verifyCaCertificateSubmitConditions();
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_TLS() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_TLS_TEXT);
+
+ // Verify that EAP-TLS fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_USERCERT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
+
+ // Entering an SSID alone does not enable the submit button.
+ enterSSID(TEST_SSID);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Selecting the User certificate "Do not provide" option alone does not enable the submit
+ // button.
+ selectUserCertificateOption(USERCERT_MENU_DO_NOT_PROVIDE_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ verifyCaCertificateSubmitConditions();
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_TTLS() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_TTLS_TEXT);
+
+ // Verify that EAP-TLS fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
+
+ // Entering an SSID alone does not enable the submit button.
+ enterSSID(TEST_SSID);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ verifyCaCertificateSubmitConditions();
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_PWD() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_PWD_TEXT);
+
+ // Verify that EAP-TLS fields appear.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
+
+ // Entering an SSID alone enables the submit button.
+ enterSSID(TEST_SSID);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_SIM() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_SIM_TEXT);
+
+ // Entering an SSID alone enables the submit button.
+ enterSSID(TEST_SSID);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_AKA() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_AKA_TEXT);
+
+ // Entering an SSID alone enables the submit button.
+ enterSSID(TEST_SSID);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ @Suppress
+ @MediumTest
+ public void testAddNetwork_EAP_AKA_PRIME() throws Exception {
+ loadAddNetworkMenu();
+ selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ selectEAPMethod(EAP_METHOD_AKA_PRIME_TEXT);
+
+ // Entering an SSID alone enables the submit button.
+ enterSSID(TEST_SSID);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ private void verifyKeepWiFiOnDuringSleep(String settingToBeVerified, int settingValue)
+ throws Exception {
+ loadWiFiConfigureMenu();
+ mDevice.wait(Until.findObject(By.text("Keep Wi‑Fi on during sleep")), TIMEOUT)
+ .click();
+ mDevice.wait(Until.findObject(By.clazz("android.widget.CheckedTextView")
+ .text(settingToBeVerified)), TIMEOUT).click();
+ Thread.sleep(SLEEP_TIME);
+ int keepWiFiOnSetting =
+ Settings.Global.getInt(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.WIFI_SLEEP_POLICY);
+ assertEquals(settingValue, keepWiFiOnSetting);
+ }
+
+ private void verifyNetworkNotificationsOnOrOff(boolean verifyOn)
+ throws Exception {
+ // Enable network recommendations to enable the toggle switch for Network
+ // notifications
+ Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED, "1");
+ if (verifyOn) {
+ Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, "0");
+ }
+ else {
+ Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, "1");
+ }
+ loadWiFiConfigureMenu();
+ mDevice.wait(Until.findObject(By.text("Open network notification")), TIMEOUT)
+ .click();
+ Thread.sleep(SLEEP_TIME);
+ String wifiNotificationValue =
+ Settings.Global.getString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON);
+ if (verifyOn) {
+ assertEquals("1", wifiNotificationValue);
+ }
+ else {
+ assertEquals("0", wifiNotificationValue);
+ }
+ }
+
+ private void verifyWiFiOnOrOff(boolean verifyOn) throws Exception {
+ String switchText = "On";
+ if (verifyOn) {
+ switchText = "Off";
+ }
+ loadWiFiSettingsPage(!verifyOn);
+ mDevice.wait(Until
+ .findObject(By.res(SETTINGS_PACKAGE, "switch_bar").text(switchText)), TIMEOUT)
+ .click();
+ Thread.sleep(SLEEP_TIME);
+ String wifiValue =
+ Settings.Global.getString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.WIFI_ON);
+ if (verifyOn) {
+ // 1 is Enabled, 2 is Enabled while airplane mode is ON.
+ assertTrue(wifiValue.equals("1") || wifiValue.equals("2"));
+ }
+ else {
+ assertEquals("0", wifiValue);
+ }
+ }
+
+ private void verifyCaCertificateSubmitConditions() throws Exception {
+ // Selecting the CA certificate "Do not validate" option enables the submit button.
+ selectCaCertificateOption(CACERT_MENU_DO_NOT_VALIDATE_TEXT);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // However, selecting the CA certificate "Use system certificates option" is not enough to
+ // enable the submit button.
+ selectCaCertificateOption(CACERT_MENU_USE_SYSTEM_CERTS_TEXT);
+ assertFalse(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+
+ // Submit button is only enabled after a domain is entered as well.
+ enterDomain(TEST_DOMAIN);
+ assertTrue(mDevice.wait(Until.findObject(
+ By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ }
+
+ private void loadWiFiSettingsPage(boolean wifiEnabled) throws Exception {
+ WifiManager wifiManager = (WifiManager)getInstrumentation().getContext()
+ .getSystemService(Context.WIFI_SERVICE);
+ wifiManager.setWifiEnabled(wifiEnabled);
+ SettingsHelper.launchSettingsPage(getInstrumentation().getContext(),
+ Settings.ACTION_WIFI_SETTINGS);
+ }
+
+ private void loadWiFiConfigureMenu() throws Exception {
+ loadWiFiSettingsPage(false);
+ Thread.sleep(TIMEOUT);
+ mDevice.wait(Until.findObject(By.text(CONFIGURE_WIFI_PREFERENCE_TEXT)), TIMEOUT).click();
+ mDevice.wait(Until.findObject(
+ By.text(CONFIGURE_WIFI_ADVANCED_PREFERENCE_TEXT)), TIMEOUT).click();
+ }
+
+ private void loadAddNetworkMenu() throws Exception {
+ loadWiFiSettingsPage(true);
+ for (int attempts = 0; attempts < MAX_ADD_NETWORK_BUTTON_ATTEMPTS; ++attempts) {
+ try {
+ findOrScrollToObject(By.scrollable(true), By.text(ADD_NETWORK_PREFERENCE_TEXT))
+ .click();
+ } catch (StaleObjectException e) {
+ // The network list might have been updated between when the Add network button was
+ // found, and when it UI automator attempted to click on it. Retry.
+ continue;
+ }
+ // If we get here, we successfully clicked on the Add network button, so we are done.
+ Thread.sleep(SLEEP_TIME*5);
+ return;
+ }
+
+ fail("Failed to load Add Network Menu after " + MAX_ADD_NETWORK_BUTTON_ATTEMPTS
+ + " retries");
+ }
+
+ private void selectSecurityOption(String securityOption) throws Exception {
+ // We might not need to scroll to the security options if not enough add network menu
+ // options are visible.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID)
+ .clazz(SPINNER_CLASS)).click();
+ Thread.sleep(SLEEP_TIME);
+ mDevice.wait(Until.findObject(By.text(securityOption)), TIMEOUT).click();
+ }
+
+ private void selectEAPMethod(String eapMethod) throws Exception {
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_EAP_METHOD_RES_ID).clazz(SPINNER_CLASS))
+ .click();
+ Thread.sleep(SLEEP_TIME);
+ findOrScrollToObject(SPINNER_OPTIONS_SCROLLABLE_BY_SELECTOR, By.text(eapMethod)).click();
+ }
+
+ private void selectUserCertificateOption(String userCertificateOption) throws Exception {
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_USERCERT_RES_ID).clazz(SPINNER_CLASS))
+ .click();
+ mDevice.wait(Until.findObject(By.text(userCertificateOption)), TIMEOUT).click();
+ }
+
+ private void selectCaCertificateOption(String caCertificateOption) throws Exception {
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID).clazz(SPINNER_CLASS))
+ .click();
+ mDevice.wait(Until.findObject(By.text(caCertificateOption)), TIMEOUT).click();
+ }
+
+ private void enterSSID(String ssid) throws Exception {
+ // We might not need to scroll to the SSID option if not enough add network menu options
+ // are visible.
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SSID_RES_ID).clazz(EDIT_TEXT_CLASS))
+ .setText(ssid);
+ }
+
+ private void enterPassword(String password) throws Exception {
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_RES_ID).clazz(EDIT_TEXT_CLASS))
+ .setText(password);
+ }
+
+ private void enterDomain(String domain) throws Exception {
+ findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
+ By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_DOMAIN_RES_ID)).setText(domain);
+ }
+
+ // Use this if the UI object might or might not need to be scrolled to.
+ private UiObject2 findOrScrollToObject(BySelector scrollableSelector, BySelector objectSelector)
+ throws Exception {
+ UiObject2 object = mDevice.wait(Until.findObject(objectSelector), TIMEOUT);
+ if (object == null) {
+ object = scrollToObject(scrollableSelector, objectSelector);
+ }
+ return object;
+ }
+
+ private UiObject2 scrollToObject(BySelector scrollableSelector, BySelector objectSelector)
+ throws Exception {
+ UiObject2 scrollable = mDevice.wait(Until.findObject(scrollableSelector), TIMEOUT);
+ if (scrollable == null) {
+ fail("Could not find scrollable UI object identified by " + scrollableSelector);
+ }
+ UiObject2 found = null;
+ // Scroll all the way up first, then all the way down.
+ while (true) {
+ // Optimization: terminate if we find the object while scrolling up to reset, so
+ // we save the time spent scrolling down again.
+ boolean canScrollAgain = scrollable.scroll(Direction.UP, SCROLL_UP_PERCENT,
+ SCROLL_SPEED);
+ found = mDevice.findObject(objectSelector);
+ if (found != null) return found;
+ if (!canScrollAgain) break;
+ }
+ for (int attempts = 0; found == null && attempts < MAX_SCROLL_ATTEMPTS; ++attempts) {
+ // Return value of UiObject2.scroll() is not reliable, so do not use it in loop
+ // condition, in case it causes this loop to terminate prematurely.
+ scrollable.scroll(Direction.DOWN, SCROLL_DOWN_PERCENT, SCROLL_SPEED);
+ found = mDevice.findObject(objectSelector);
+ }
+ if (found == null) {
+ fail("Could not scroll to UI object identified by " + objectSelector);
+ }
+ return found;
+ }
+}
diff --git a/tests/uitests/src/com/android/settings/ui/SecuritySettingsLaunchTest.java b/tests/uitests/src/com/android/settings/ui/SecuritySettingsLaunchTest.java
index b730690..6803c7e 100644
--- a/tests/uitests/src/com/android/settings/ui/SecuritySettingsLaunchTest.java
+++ b/tests/uitests/src/com/android/settings/ui/SecuritySettingsLaunchTest.java
@@ -66,7 +66,7 @@
public void launchSecuritySettings() throws Exception {
// Launch Settings
SettingsHelper.launchSettingsPage(
- InstrumentationRegistry.getContext(), Settings.ACTION_SECURITY_SETTINGS);
+ InstrumentationRegistry.getTargetContext(), Settings.ACTION_SECURITY_SETTINGS);
mHelper.scrollVert(false);
for (String category : CATEGORIES) {
SettingsTestUtils.assertTitleMatch(mDevice, category);
diff --git a/tests/uitests/src/com/android/settings/ui/StorageSettingsUITest.java b/tests/uitests/src/com/android/settings/ui/StorageSettingsUITest.java
new file mode 100644
index 0000000..a301cc3
--- /dev/null
+++ b/tests/uitests/src/com/android/settings/ui/StorageSettingsUITest.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (C) 2018 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.settings.ui;
+
+import android.os.RemoteException;
+import android.provider.Settings;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.runner.AndroidJUnit4;
+import android.support.test.uiautomator.UiDevice;
+import android.system.helpers.SettingsHelper;
+import android.test.suitebuilder.annotation.MediumTest;
+
+import com.android.settings.ui.testutils.SettingsTestUtils;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+@MediumTest
+public class StorageSettingsUITest {
+
+ private static final String[] TITLES = {
+ "Photos & videos",
+ "Music & audio",
+ "Games",
+ "Movie & TV apps",
+ "Other apps",
+ "Files",
+ "System",
+ };
+ private UiDevice mDevice;
+ private SettingsHelper mHelper;
+
+
+ @Before
+ public void setUp() throws Exception {
+ mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
+ mHelper = SettingsHelper.getInstance();
+
+ try {
+ mDevice.setOrientationNatural();
+ } catch (RemoteException e) {
+ throw new RuntimeException("failed to freeze device orientation", e);
+ }
+ }
+
+ @After
+ public void tearDown() {
+ mDevice.pressHome();
+ }
+
+ @Test
+ public void launchStorageSettings() throws Exception {
+ // Launch Settings
+ SettingsHelper.launchSettingsPage(
+ InstrumentationRegistry.getTargetContext(),
+ Settings.ACTION_INTERNAL_STORAGE_SETTINGS);
+ mHelper.scrollVert(false);
+ for (String category : TITLES) {
+ SettingsTestUtils.assertTitleMatch(mDevice, category);
+ }
+ }
+}
diff --git a/tests/uitests/src/com/android/settings/ui/WirelessNetworkSettingsTests.java b/tests/uitests/src/com/android/settings/ui/WirelessNetworkSettingsTests.java
index 1e3b978..dd700ac 100644
--- a/tests/uitests/src/com/android/settings/ui/WirelessNetworkSettingsTests.java
+++ b/tests/uitests/src/com/android/settings/ui/WirelessNetworkSettingsTests.java
@@ -16,762 +16,108 @@
package com.android.settings.ui;
+import static com.android.settings.ui.testutils.SettingsTestUtils.SETTINGS_PACKAGE;
+import static com.google.common.truth.Truth.assertThat;
+
import android.content.Context;
-import android.content.Intent;
import android.net.wifi.WifiManager;
import android.os.RemoteException;
import android.platform.test.annotations.Presubmit;
import android.provider.Settings;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.runner.AndroidJUnit4;
+import android.support.test.uiautomator.By;
+import android.support.test.uiautomator.UiDevice;
+import android.support.test.uiautomator.Until;
import android.system.helpers.CommandsHelper;
import android.system.helpers.SettingsHelper;
-import android.support.test.uiautomator.By;
-import android.support.test.uiautomator.BySelector;
-import android.support.test.uiautomator.Direction;
-import android.support.test.uiautomator.StaleObjectException;
-import android.support.test.uiautomator.UiDevice;
-import android.support.test.uiautomator.UiObject2;
-import android.support.test.uiautomator.Until;
-import android.test.InstrumentationTestCase;
import android.test.suitebuilder.annotation.MediumTest;
-import android.test.suitebuilder.annotation.Suppress;
import android.util.Log;
-import junit.framework.AssertionFailedError;
-public class WirelessNetworkSettingsTests extends InstrumentationTestCase {
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+/**
+ * Core tests for Wifi Settings.
+ */
+@RunWith(AndroidJUnit4.class)
+@MediumTest
+public class WirelessNetworkSettingsTests {
// These back button presses are performed in tearDown() to exit Wifi
// Settings sub-menus that a test might finish in. This number should be
// high enough to account for the deepest sub-menu a test might enter.
private static final int NUM_BACK_BUTTON_PRESSES = 5;
- private static final int TIMEOUT = 2000;
+ private static final int TIMEOUT = 20000;
private static final int SLEEP_TIME = 500;
private static final String AIRPLANE_MODE_BROADCAST =
"am broadcast -a android.intent.action.AIRPLANE_MODE";
- private static final String TAG="WirelessNetworkSettingsTests";
+ private static final String TAG = "WirelessNetworkTests";
- // Note: The values of these variables might affect flakiness in tests that involve
- // scrolling. Adjust where necessary.
- private static final float SCROLL_UP_PERCENT = 10.0f;
- private static final float SCROLL_DOWN_PERCENT = 0.5f;
- private static final int MAX_SCROLL_ATTEMPTS = 10;
- private static final int MAX_ADD_NETWORK_BUTTON_ATTEMPTS = 3;
- private static final int SCROLL_SPEED = 2000;
-
- private static final String TEST_SSID = "testSsid";
- private static final String TEST_PW_GE_8_CHAR = "testPasswordGreaterThan8Char";
- private static final String TEST_PW_LT_8_CHAR = "lt8Char";
- private static final String TEST_DOMAIN = "testDomain.com";
-
- private static final String SETTINGS_PACKAGE = "com.android.settings";
-
- private static final String CHECKBOX_CLASS = "android.widget.CheckBox";
- private static final String SPINNER_CLASS = "android.widget.Spinner";
- private static final String EDIT_TEXT_CLASS = "android.widget.EditText";
- private static final String SCROLLVIEW_CLASS = "android.widget.ScrollView";
- private static final String LISTVIEW_CLASS = "android.widget.ListView";
-
- private static final String ADD_NETWORK_MENU_CANCEL_BUTTON_TEXT = "CANCEL";
- private static final String ADD_NETWORK_MENU_SAVE_BUTTON_TEXT = "SAVE";
- private static final String ADD_NETWORK_PREFERENCE_TEXT = "Add network";
- private static final String CONFIGURE_WIFI_PREFERENCE_TEXT = "Wi‑Fi preferences";
- private static final String CONFIGURE_WIFI_ADVANCED_PREFERENCE_TEXT = "Advanced";
- private static final String CACERT_MENU_PLEASE_SELECT_TEXT = "Please select";
- private static final String CACERT_MENU_USE_SYSTEM_CERTS_TEXT = "Use system certificates";
- private static final String CACERT_MENU_DO_NOT_VALIDATE_TEXT = "Do not validate";
- private static final String USERCERT_MENU_PLEASE_SELECT_TEXT = "Please select";
- private static final String USERCERT_MENU_DO_NOT_PROVIDE_TEXT = "Do not provide";
- private static final String SECURITY_OPTION_NONE_TEXT = "None";
- private static final String SECURITY_OPTION_WEP_TEXT = "WEP";
- private static final String SECURITY_OPTION_PSK_TEXT = "WPA/WPA2 PSK";
- private static final String SECURITY_OPTION_EAP_TEXT = "802.1x EAP";
- private static final String EAP_METHOD_PEAP_TEXT = "PEAP";
- private static final String EAP_METHOD_TLS_TEXT = "TLS";
- private static final String EAP_METHOD_TTLS_TEXT = "TTLS";
- private static final String EAP_METHOD_PWD_TEXT = "PWD";
- private static final String EAP_METHOD_SIM_TEXT = "SIM";
- private static final String EAP_METHOD_AKA_TEXT = "AKA";
- private static final String EAP_METHOD_AKA_PRIME_TEXT = "AKA'";
- private static final String PHASE2_MENU_NONE_TEXT = "None";
- private static final String PHASE2_MENU_MSCHAPV2_TEXT = "MSCHAPV2";
- private static final String PHASE2_MENU_GTC_TEXT = "GTC";
-
- private static final String ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID = "wifi_advanced_togglebox";
- private static final String ADD_NETWORK_MENU_IP_SETTINGS_RES_ID = "ip_settings";
- private static final String ADD_NETWORK_MENU_PROXY_SETTINGS_RES_ID = "proxy_settings";
- private static final String ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID = "security";
- private static final String ADD_NETWORK_MENU_EAP_METHOD_RES_ID = "method";
- private static final String ADD_NETWORK_MENU_SSID_RES_ID = "ssid";
- private static final String ADD_NETWORK_MENU_PHASE2_RES_ID = "phase2";
- private static final String ADD_NETWORK_MENU_CACERT_RES_ID = "ca_cert";
- private static final String ADD_NETWORK_MENU_USERCERT_RES_ID = "user_cert";
- private static final String ADD_NETWORK_MENU_NO_DOMAIN_WARNING_RES_ID = "no_domain_warning";
- private static final String ADD_NETWORK_MENU_NO_CACERT_WARNING_RES_ID = "no_ca_cert_warning";
- private static final String ADD_NETWORK_MENU_DOMAIN_LAYOUT_RES_ID = "l_domain";
- private static final String ADD_NETWORK_MENU_DOMAIN_RES_ID = "domain";
- private static final String ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID = "l_identity";
- private static final String ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID = "l_anonymous";
- private static final String ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID = "password_layout";
- private static final String ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID =
- "show_password_layout";
- private static final String ADD_NETWORK_MENU_PASSWORD_RES_ID = "password";
-
- private static final BySelector ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR =
- By.scrollable(true).clazz(SCROLLVIEW_CLASS);
- private static final BySelector SPINNER_OPTIONS_SCROLLABLE_BY_SELECTOR =
- By.scrollable(true).clazz(LISTVIEW_CLASS);
private UiDevice mDevice;
private CommandsHelper mCommandsHelper;
- @Override
+ @Before
public void setUp() throws Exception {
- super.setUp();
- mDevice = UiDevice.getInstance(getInstrumentation());
+ mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
try {
mDevice.setOrientationNatural();
} catch (RemoteException e) {
throw new RuntimeException("failed to freeze device orientation", e);
}
// Ensure airplane mode is OFF so that wifi can be enabled using WiFiManager.
- Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
+ Settings.Global.putString(InstrumentationRegistry.getTargetContext().getContentResolver(),
Settings.Global.AIRPLANE_MODE_ON, "0");
+
Log.d(TAG, "sending airplane mode broadcast to device");
- mCommandsHelper = CommandsHelper.getInstance();
+ mCommandsHelper = CommandsHelper.getInstance(InstrumentationRegistry.getInstrumentation());
mCommandsHelper.executeShellCommand(AIRPLANE_MODE_BROADCAST);
}
- @Override
- protected void tearDown() throws Exception {
+ @After
+ public void tearDown() {
// Exit all settings sub-menus.
for (int i = 0; i < NUM_BACK_BUTTON_PRESSES; ++i) {
mDevice.pressBack();
}
mDevice.pressHome();
- super.tearDown();
}
@Presubmit
- @MediumTest
+ @Test
public void testWiFiEnabled() throws Exception {
verifyWiFiOnOrOff(true);
}
@Presubmit
- @MediumTest
+ @Test
public void testWiFiDisabled() throws Exception {
verifyWiFiOnOrOff(false);
}
- @MediumTest
- public void testWifiMenuLoadConfigure() throws Exception {
- loadWiFiConfigureMenu();
- Thread.sleep(SLEEP_TIME);
- UiObject2 configureWiFiHeading = mDevice.wait(Until.findObject
- (By.text(CONFIGURE_WIFI_PREFERENCE_TEXT)), TIMEOUT);
- assertNotNull("Configure WiFi menu has not loaded correctly", configureWiFiHeading);
- }
-
- @MediumTest
- public void testNetworkNotificationsOn() throws Exception {
- verifyNetworkNotificationsOnOrOff(true);
- }
-
- @MediumTest
- public void testNetworkNotificationsOff() throws Exception {
- verifyNetworkNotificationsOnOrOff(false);
- }
-
- @MediumTest
- public void testAddNetworkMenu_Default() throws Exception {
- loadAddNetworkMenu();
-
- // Submit button should be disabled by default, while cancel button should be enabled.
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_CANCEL_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Check that the SSID field is defaults to the hint.
- assertEquals("Enter the SSID", mDevice.wait(Until.findObject(By
- .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SSID_RES_ID)
- .clazz(EDIT_TEXT_CLASS)), TIMEOUT*2)
- .getText());
-
- // Check Security defaults to None.
- assertEquals("None", mDevice.wait(Until.findObject(By
- .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID)
- .clazz(SPINNER_CLASS)), TIMEOUT)
- .getChildren().get(0).getText());
-
- // Check advanced options are collapsed by default.
- assertFalse(mDevice.wait(Until.findObject(By
- .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
- .clazz(CHECKBOX_CLASS)), TIMEOUT).isChecked());
-
- }
-
- @Suppress
- @MediumTest
- public void testAddNetworkMenu_Proxy() throws Exception {
- loadAddNetworkMenu();
-
- // Toggle advanced options.
- mDevice.wait(Until.findObject(By
- .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
- .clazz(CHECKBOX_CLASS)), TIMEOUT).click();
-
- // Verify Proxy defaults to None.
- BySelector proxySettingsBySelector =
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PROXY_SETTINGS_RES_ID)
- .clazz(SPINNER_CLASS);
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
- assertEquals("None", mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT)
- .getChildren().get(0).getText());
-
- // Verify that Proxy Manual fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
- mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT).click();
- mDevice.wait(Until.findObject(By.text("Manual")), TIMEOUT).click();
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "proxy_warning_limited_support"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "proxy_hostname"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "proxy_exclusionlist"));
-
- // Verify that Proxy Auto-Config options appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, proxySettingsBySelector);
- mDevice.wait(Until.findObject(proxySettingsBySelector), TIMEOUT).click();
- mDevice.wait(Until.findObject(By.text("Proxy Auto-Config")), TIMEOUT).click();
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "proxy_pac"));
- }
-
- @Suppress
- @MediumTest
- public void testAddNetworkMenu_IpSettings() throws Exception {
- loadAddNetworkMenu();
-
- // Toggle advanced options.
- mDevice.wait(Until.findObject(By
- .res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ADV_TOGGLE_RES_ID)
- .clazz(CHECKBOX_CLASS)), TIMEOUT).click();
-
- // Verify IP settings defaults to DHCP.
- BySelector ipSettingsBySelector =
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IP_SETTINGS_RES_ID).clazz(SPINNER_CLASS);
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, ipSettingsBySelector);
- assertEquals("DHCP", mDevice.wait(Until.findObject(ipSettingsBySelector), TIMEOUT)
- .getChildren().get(0).getText());
-
- // Verify that Static IP settings options appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, ipSettingsBySelector).click();
- mDevice.wait(Until.findObject(By.text("Static")), TIMEOUT).click();
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "ipaddress"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "gateway"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "network_prefix_length"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "dns1"));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, "dns2"));
- }
-
- @Suppress
- @MediumTest
- public void testPhase2Settings() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
-
- BySelector phase2SettingsBySelector =
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID).clazz(SPINNER_CLASS);
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, phase2SettingsBySelector);
- assertEquals(PHASE2_MENU_NONE_TEXT, mDevice.wait(Until
- .findObject(phase2SettingsBySelector), TIMEOUT).getChildren().get(0).getText());
- mDevice.wait(Until.findObject(phase2SettingsBySelector), TIMEOUT).click();
- Thread.sleep(SLEEP_TIME);
-
- // Verify Phase 2 authentication spinner options.
- assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_NONE_TEXT)), TIMEOUT));
- assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_MSCHAPV2_TEXT)), TIMEOUT));
- assertNotNull(mDevice.wait(Until.findObject(By.text(PHASE2_MENU_GTC_TEXT)), TIMEOUT));
- }
-
- @Suppress
- @MediumTest
- public void testCaCertSettings() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
-
- BySelector caCertSettingsBySelector =
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID).clazz(SPINNER_CLASS);
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR, caCertSettingsBySelector);
- assertEquals(CACERT_MENU_PLEASE_SELECT_TEXT, mDevice.wait(Until
- .findObject(caCertSettingsBySelector), TIMEOUT).getChildren().get(0).getText());
- mDevice.wait(Until.findObject(caCertSettingsBySelector), TIMEOUT).click();
- Thread.sleep(SLEEP_TIME);
-
- // Verify CA certificate spinner options.
- assertNotNull(mDevice.wait(Until.findObject(
- By.text(CACERT_MENU_PLEASE_SELECT_TEXT)), TIMEOUT));
- assertNotNull(mDevice.wait(Until.findObject(
- By.text(CACERT_MENU_USE_SYSTEM_CERTS_TEXT)), TIMEOUT));
- assertNotNull(mDevice.wait(Until.findObject(
- By.text(CACERT_MENU_DO_NOT_VALIDATE_TEXT)), TIMEOUT));
-
- // Verify that a domain field and warning appear when the user selects the
- // "Use system certificates" option.
- mDevice.wait(Until.findObject(By.text(CACERT_MENU_USE_SYSTEM_CERTS_TEXT)), TIMEOUT).click();
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_DOMAIN_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_NO_DOMAIN_WARNING_RES_ID));
-
- // Verify that a warning appears when the user chooses the "Do Not Validate" option.
- mDevice.wait(Until.findObject(caCertSettingsBySelector), TIMEOUT).click();
- mDevice.wait(Until.findObject(By.text(CACERT_MENU_DO_NOT_VALIDATE_TEXT)), TIMEOUT).click();
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_NO_CACERT_WARNING_RES_ID));
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_NoSecurity() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_NONE_TEXT);
-
- // Entering an SSID is enough to enable the submit button. // TODO THIS GUY
- enterSSID(TEST_SSID);
- assertTrue(mDevice.wait(Until
- .findObject(By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_WEP() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_WEP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Verify that WEP fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
-
- // Entering an SSID alone does not enable the submit button.
- enterSSID(TEST_SSID);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Submit button is only enabled after a password is entered.
- enterPassword(TEST_PW_GE_8_CHAR);
- assertTrue(mDevice.wait(Until
- .findObject(By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_PSK() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_PSK_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Verify that PSK fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
-
- // Entering an SSID alone does not enable the submit button.
- enterSSID(TEST_SSID);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Entering an password that is too short does not enable submit button.
- enterPassword(TEST_PW_LT_8_CHAR);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Submit button is only enabled after a password of valid length is entered.
- enterPassword(TEST_PW_GE_8_CHAR);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_PEAP() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_PEAP_TEXT);
-
- // Verify that EAP-PEAP fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SHOW_PASSWORD_LAYOUT_RES_ID));
-
- // Entering an SSID alone does not enable the submit button.
- enterSSID(TEST_SSID);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- verifyCaCertificateSubmitConditions();
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_TLS() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_TLS_TEXT);
-
- // Verify that EAP-TLS fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_USERCERT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
-
- // Entering an SSID alone does not enable the submit button.
- enterSSID(TEST_SSID);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Selecting the User certificate "Do not provide" option alone does not enable the submit
- // button.
- selectUserCertificateOption(USERCERT_MENU_DO_NOT_PROVIDE_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- verifyCaCertificateSubmitConditions();
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_TTLS() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_TTLS_TEXT);
-
- // Verify that EAP-TLS fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PHASE2_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_ANONYMOUS_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
-
- // Entering an SSID alone does not enable the submit button.
- enterSSID(TEST_SSID);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- verifyCaCertificateSubmitConditions();
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_PWD() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_PWD_TEXT);
-
- // Verify that EAP-TLS fields appear.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_IDENTITY_LAYOUT_RES_ID));
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_LAYOUT_RES_ID));
-
- // Entering an SSID alone enables the submit button.
- enterSSID(TEST_SSID);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_SIM() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_SIM_TEXT);
-
- // Entering an SSID alone enables the submit button.
- enterSSID(TEST_SSID);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_AKA() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_AKA_TEXT);
-
- // Entering an SSID alone enables the submit button.
- enterSSID(TEST_SSID);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- @Suppress
- @MediumTest
- public void testAddNetwork_EAP_AKA_PRIME() throws Exception {
- loadAddNetworkMenu();
- selectSecurityOption(SECURITY_OPTION_EAP_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- selectEAPMethod(EAP_METHOD_AKA_PRIME_TEXT);
-
- // Entering an SSID alone enables the submit button.
- enterSSID(TEST_SSID);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
- }
-
- private void verifyKeepWiFiOnDuringSleep(String settingToBeVerified, int settingValue)
- throws Exception {
- loadWiFiConfigureMenu();
- mDevice.wait(Until.findObject(By.text("Keep Wi‑Fi on during sleep")), TIMEOUT)
- .click();
- mDevice.wait(Until.findObject(By.clazz("android.widget.CheckedTextView")
- .text(settingToBeVerified)), TIMEOUT).click();
- Thread.sleep(SLEEP_TIME);
- int keepWiFiOnSetting =
- Settings.Global.getInt(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.WIFI_SLEEP_POLICY);
- assertEquals(settingValue, keepWiFiOnSetting);
- }
-
- private void verifyNetworkNotificationsOnOrOff(boolean verifyOn)
- throws Exception {
- // Enable network recommendations to enable the toggle switch for Network
- // notifications
- Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED, "1");
- if (verifyOn) {
- Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, "0");
- }
- else {
- Settings.Global.putString(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON, "1");
- }
- loadWiFiConfigureMenu();
- mDevice.wait(Until.findObject(By.text("Open network notification")), TIMEOUT)
- .click();
- Thread.sleep(SLEEP_TIME);
- String wifiNotificationValue =
- Settings.Global.getString(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.WIFI_NETWORKS_AVAILABLE_NOTIFICATION_ON);
- if (verifyOn) {
- assertEquals("1", wifiNotificationValue);
- }
- else {
- assertEquals("0", wifiNotificationValue);
- }
- }
-
private void verifyWiFiOnOrOff(boolean verifyOn) throws Exception {
- String switchText = "On";
- if (verifyOn) {
- switchText = "Off";
- }
- loadWiFiSettingsPage(!verifyOn);
- mDevice.wait(Until
- .findObject(By.res(SETTINGS_PACKAGE, "switch_bar").text(switchText)), TIMEOUT)
- .click();
- Thread.sleep(SLEEP_TIME);
- String wifiValue =
- Settings.Global.getString(getInstrumentation().getContext().getContentResolver(),
- Settings.Global.WIFI_ON);
- if (verifyOn) {
- // 1 is Enabled, 2 is Enabled while airplane mode is ON.
- assertTrue(wifiValue.equals("1") || wifiValue.equals("2"));
- }
- else {
- assertEquals("0", wifiValue);
- }
- }
-
- private void verifyCaCertificateSubmitConditions() throws Exception {
- // Selecting the CA certificate "Do not validate" option enables the submit button.
- selectCaCertificateOption(CACERT_MENU_DO_NOT_VALIDATE_TEXT);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // However, selecting the CA certificate "Use system certificates option" is not enough to
- // enable the submit button.
- selectCaCertificateOption(CACERT_MENU_USE_SYSTEM_CERTS_TEXT);
- assertFalse(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
-
- // Submit button is only enabled after a domain is entered as well.
- enterDomain(TEST_DOMAIN);
- assertTrue(mDevice.wait(Until.findObject(
- By.text(ADD_NETWORK_MENU_SAVE_BUTTON_TEXT)), TIMEOUT).isEnabled());
+ loadWiFiSettingsPage(!verifyOn);
+ mDevice.wait(Until.findObject(By.res(SETTINGS_PACKAGE, "switch_widget")), TIMEOUT)
+ .click();
+ Thread.sleep(SLEEP_TIME);
+ final String wifiValue = Settings.Global.getString(
+ InstrumentationRegistry.getTargetContext().getContentResolver(),
+ Settings.Global.WIFI_ON);
+ if (verifyOn) {
+ // 1 is Enabled, 2 is Enabled while airplane mode is ON.
+ assertThat(wifiValue).isAnyOf("1", "2");
+ } else {
+ assertThat(wifiValue).isEqualTo("0");
+ }
}
private void loadWiFiSettingsPage(boolean wifiEnabled) throws Exception {
- WifiManager wifiManager = (WifiManager)getInstrumentation().getContext()
+ WifiManager wifiManager = (WifiManager) InstrumentationRegistry.getTargetContext()
.getSystemService(Context.WIFI_SERVICE);
wifiManager.setWifiEnabled(wifiEnabled);
- SettingsHelper.launchSettingsPage(getInstrumentation().getContext(),
+ SettingsHelper.launchSettingsPage(InstrumentationRegistry.getTargetContext(),
Settings.ACTION_WIFI_SETTINGS);
}
-
- private void loadWiFiConfigureMenu() throws Exception {
- loadWiFiSettingsPage(false);
- Thread.sleep(TIMEOUT);
- mDevice.wait(Until.findObject(By.text(CONFIGURE_WIFI_PREFERENCE_TEXT)), TIMEOUT).click();
- mDevice.wait(Until.findObject(
- By.text(CONFIGURE_WIFI_ADVANCED_PREFERENCE_TEXT)), TIMEOUT).click();
- }
-
- private void loadAddNetworkMenu() throws Exception {
- loadWiFiSettingsPage(true);
- for (int attempts = 0; attempts < MAX_ADD_NETWORK_BUTTON_ATTEMPTS; ++attempts) {
- try {
- findOrScrollToObject(By.scrollable(true), By.text(ADD_NETWORK_PREFERENCE_TEXT))
- .click();
- } catch (StaleObjectException e) {
- // The network list might have been updated between when the Add network button was
- // found, and when it UI automator attempted to click on it. Retry.
- continue;
- }
- // If we get here, we successfully clicked on the Add network button, so we are done.
- Thread.sleep(SLEEP_TIME*5);
- return;
- }
-
- fail("Failed to load Add Network Menu after " + MAX_ADD_NETWORK_BUTTON_ATTEMPTS
- + " retries");
- }
-
- private void selectSecurityOption(String securityOption) throws Exception {
- // We might not need to scroll to the security options if not enough add network menu
- // options are visible.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SECURITY_OPTION_RES_ID)
- .clazz(SPINNER_CLASS)).click();
- Thread.sleep(SLEEP_TIME);
- mDevice.wait(Until.findObject(By.text(securityOption)), TIMEOUT).click();
- }
-
- private void selectEAPMethod(String eapMethod) throws Exception {
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_EAP_METHOD_RES_ID).clazz(SPINNER_CLASS))
- .click();
- Thread.sleep(SLEEP_TIME);
- findOrScrollToObject(SPINNER_OPTIONS_SCROLLABLE_BY_SELECTOR, By.text(eapMethod)).click();
- }
-
- private void selectUserCertificateOption(String userCertificateOption) throws Exception {
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_USERCERT_RES_ID).clazz(SPINNER_CLASS))
- .click();
- mDevice.wait(Until.findObject(By.text(userCertificateOption)), TIMEOUT).click();
- }
-
- private void selectCaCertificateOption(String caCertificateOption) throws Exception {
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_CACERT_RES_ID).clazz(SPINNER_CLASS))
- .click();
- mDevice.wait(Until.findObject(By.text(caCertificateOption)), TIMEOUT).click();
- }
-
- private void enterSSID(String ssid) throws Exception {
- // We might not need to scroll to the SSID option if not enough add network menu options
- // are visible.
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_SSID_RES_ID).clazz(EDIT_TEXT_CLASS))
- .setText(ssid);
- }
-
- private void enterPassword(String password) throws Exception {
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_PASSWORD_RES_ID).clazz(EDIT_TEXT_CLASS))
- .setText(password);
- }
-
- private void enterDomain(String domain) throws Exception {
- findOrScrollToObject(ADD_NETWORK_MENU_SCROLLABLE_BY_SELECTOR,
- By.res(SETTINGS_PACKAGE, ADD_NETWORK_MENU_DOMAIN_RES_ID)).setText(domain);
- }
-
- // Use this if the UI object might or might not need to be scrolled to.
- private UiObject2 findOrScrollToObject(BySelector scrollableSelector, BySelector objectSelector)
- throws Exception {
- UiObject2 object = mDevice.wait(Until.findObject(objectSelector), TIMEOUT);
- if (object == null) {
- object = scrollToObject(scrollableSelector, objectSelector);
- }
- return object;
- }
-
- private UiObject2 scrollToObject(BySelector scrollableSelector, BySelector objectSelector)
- throws Exception {
- UiObject2 scrollable = mDevice.wait(Until.findObject(scrollableSelector), TIMEOUT);
- if (scrollable == null) {
- fail("Could not find scrollable UI object identified by " + scrollableSelector);
- }
- UiObject2 found = null;
- // Scroll all the way up first, then all the way down.
- while (true) {
- // Optimization: terminate if we find the object while scrolling up to reset, so
- // we save the time spent scrolling down again.
- boolean canScrollAgain = scrollable.scroll(Direction.UP, SCROLL_UP_PERCENT,
- SCROLL_SPEED);
- found = mDevice.findObject(objectSelector);
- if (found != null) return found;
- if (!canScrollAgain) break;
- }
- for (int attempts = 0; found == null && attempts < MAX_SCROLL_ATTEMPTS; ++attempts) {
- // Return value of UiObject2.scroll() is not reliable, so do not use it in loop
- // condition, in case it causes this loop to terminate prematurely.
- scrollable.scroll(Direction.DOWN, SCROLL_DOWN_PERCENT, SCROLL_SPEED);
- found = mDevice.findObject(objectSelector);
- }
- if (found == null) {
- fail("Could not scroll to UI object identified by " + objectSelector);
- }
- return found;
- }
}
diff --git a/tests/unit/AndroidManifest.xml b/tests/unit/AndroidManifest.xml
index b22c01b..eccbac3 100644
--- a/tests/unit/AndroidManifest.xml
+++ b/tests/unit/AndroidManifest.xml
@@ -53,6 +53,15 @@
<meta-data android:name="com.android.settings.summary" android:resource="@string/manufacturer_settings_summary" />
<meta-data android:name="com.android.settings.icon" android:resource="@drawable/ic_settings_applications" />
</activity>
+
+ <service android:name="com.android.settings.accounts.TestAuthService">
+ <intent-filter>
+ <action android:name="android.accounts.AccountAuthenticator" />
+ </intent-filter>
+ <meta-data android:name="android.accounts.AccountAuthenticator"
+ android:resource="@xml/authenticator" />
+ </service>
+
</application>
<instrumentation android:name="android.support.test.runner.AndroidJUnitRunner"
diff --git a/tests/unit/res/values/strings.xml b/tests/unit/res/values/strings.xml
index 35e201a..620bb04 100644
--- a/tests/unit/res/values/strings.xml
+++ b/tests/unit/res/values/strings.xml
@@ -28,4 +28,7 @@
<string name="manufacturer_hello" translatable="false">Hello Manufacturer!</string>
<string name="manufacturer_settings_title" translatable="false">Manufacturer</string>
<string name="manufacturer_settings_summary" translatable="false">Manufacturer hook that can be used to start activity of choice</string>
+ <string name="account_auth_label" translatable="false">Settings Test Account</string>
+ <string name="account_type" translatable="false">com.settingstest.account-prefs</string>
+ <string name="account_pref_title" translatable="false">Test preference for external account</string>
</resources>
diff --git a/res/xml/security_settings_status.xml b/tests/unit/res/xml/account_preferences.xml
similarity index 72%
rename from res/xml/security_settings_status.xml
rename to tests/unit/res/xml/account_preferences.xml
index 06930f9..b391759 100644
--- a/res/xml/security_settings_status.xml
+++ b/tests/unit/res/xml/account_preferences.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
+<!-- Copyright (C) 2018 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.
@@ -13,12 +13,11 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
- android:title="@string/security_settings_title">
-
- <PreferenceCategory
- android:key="security_status"
- android:title="@string/security_status_title"/>
+ <SwitchPreference
+ android:key="account_test_switch"
+ android:title="@string/account_pref_title" />
</PreferenceScreen>
+
diff --git a/res/xml/security_settings.xml b/tests/unit/res/xml/authenticator.xml
similarity index 69%
copy from res/xml/security_settings.xml
copy to tests/unit/res/xml/authenticator.xml
index 31f2334..92bf774 100644
--- a/res/xml/security_settings.xml
+++ b/tests/unit/res/xml/authenticator.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2008 The Android Open Source Project
+<!-- Copyright (C) 2018 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.
@@ -13,12 +13,10 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-<PreferenceScreen
+<account-authenticator
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:settings="http://schemas.android.com/apk/res-auto"
- android:key="security_dashboard_page"
- android:title="@string/security_settings_title"
- settings:initialExpandedChildrenCount="9">
+ android:label="@string/account_auth_label"
+ android:icon="@drawable/ic_settings_applications"
+ android:accountType="@string/account_type"
+ android:accountPreferences="@xml/account_preferences" />
-</PreferenceScreen>
diff --git a/tests/unit/src/com/android/settings/SettingsPreferenceFragmentTest.java b/tests/unit/src/com/android/settings/SettingsPreferenceFragmentTest.java
deleted file mode 100644
index 0e12e79..0000000
--- a/tests/unit/src/com/android/settings/SettingsPreferenceFragmentTest.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.android.settings;
-
-import static com.google.common.truth.Truth.assertThat;
-
-import android.app.Instrumentation;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.support.test.InstrumentationRegistry;
-import android.support.test.filters.SmallTest;
-import android.support.test.runner.AndroidJUnit4;
-import android.support.v7.preference.Preference;
-import android.support.v7.preference.PreferenceGroupAdapter;
-
-import com.android.settings.accessibility.AccessibilitySettings;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-@RunWith(AndroidJUnit4.class)
-@SmallTest
-public class SettingsPreferenceFragmentTest {
-
- private Instrumentation mInstrumentation;
- private Context mTargetContext;
-
- @Before
- public void setUp() throws Exception {
- mInstrumentation = InstrumentationRegistry.getInstrumentation();
- mTargetContext = mInstrumentation.getTargetContext();
- }
-
- @Test
- public void testHighlightCaptions() throws InterruptedException {
- final String prefKey = "captioning_preference_screen";
- Bundle args = new Bundle();
- args.putString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY, prefKey);
-
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.setClass(mTargetContext, SubSettings.class);
- intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT,
- "com.android.settings.accessibility.AccessibilitySettings");
- intent.putExtra(SettingsActivity.EXTRA_SHOW_FRAGMENT_ARGUMENTS, args);
-
- SettingsActivity activity = (SettingsActivity) mInstrumentation.startActivitySync(intent);
- AccessibilitySettings fragment = (AccessibilitySettings)
- activity.getFragmentManager().getFragments().get(0);
-
- // Allow time for highlight from post-delay.
- Thread.sleep(SettingsPreferenceFragment.DELAY_HIGHLIGHT_DURATION_MILLIS);
- if (!fragment.mPreferenceHighlighted) {
- Thread.sleep(SettingsPreferenceFragment.DELAY_HIGHLIGHT_DURATION_MILLIS);
- }
-
- int prefPosition = -1;
- PreferenceGroupAdapter adapter = (PreferenceGroupAdapter)
- fragment.getListView().getAdapter();
- for (int n = 0, count = adapter.getItemCount(); n < count; n++) {
- final Preference preference = adapter.getItem(n);
- final String preferenceKey = preference.getKey();
- if (preferenceKey.equals(prefKey)) {
- prefPosition = n;
- break;
- }
- }
-
- assertThat(fragment.mAdapter.initialHighlightedPosition).isEqualTo(prefPosition);
- }
-}
diff --git a/tests/unit/src/com/android/settings/accounts/AccountsSettingsTest.java b/tests/unit/src/com/android/settings/accounts/AccountsSettingsTest.java
new file mode 100644
index 0000000..7218efe
--- /dev/null
+++ b/tests/unit/src/com/android/settings/accounts/AccountsSettingsTest.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (C) 2018 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.settings.accounts;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import android.accounts.Account;
+import android.accounts.AccountManager;
+import android.content.Context;
+import android.content.Intent;
+import android.support.test.InstrumentationRegistry;
+import android.support.test.filters.SmallTest;
+import android.support.test.runner.AndroidJUnit4;
+import android.support.test.uiautomator.UiDevice;
+import android.support.test.uiautomator.UiObject;
+import android.support.test.uiautomator.UiSelector;
+import android.support.test.uiautomator.UiScrollable;
+import android.support.test.uiautomator.UiObjectNotFoundException;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+@SmallTest
+public class AccountsSettingsTest {
+
+ private static final String ACCOUNTS = "Accounts";
+ private static final String ACCOUNT_TYPE = "com.settingstest.account-prefs";
+ private static final String PREF_TITLE = "Test preference for external account";
+
+ private UiDevice mDevice;
+ private Context mContext;
+ private String mTargetPackage;
+
+ @Before
+ public void setUp() {
+ mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
+ mContext = InstrumentationRegistry.getTargetContext();
+ mTargetPackage = mContext.getPackageName();
+ }
+
+ @Test
+ public void testExternalAccountInfoExists() throws UiObjectNotFoundException {
+ // add a test account
+ final String testAccountName = "Test Account";
+ final Account account = new Account(testAccountName, ACCOUNT_TYPE);
+ final AccountManager accountManager = AccountManager.get(mContext);
+ final boolean accountAdded =
+ accountManager.addAccountExplicitly(account, null /* password */, null /* userdata */);
+ assertThat(accountAdded).isTrue();
+
+ // launch Accounts Settings and select the test account
+ launchAccountsSettings();
+ mDevice.findObject(new UiSelector().text(testAccountName)).click();
+ final UiObject testPreference = mDevice.findObject(new UiSelector().text(PREF_TITLE));
+ // remove test account
+ accountManager.removeAccountExplicitly(account);
+
+ assertThat(testPreference.exists()).isTrue();
+ }
+
+ private void launchAccountsSettings() throws UiObjectNotFoundException {
+ // launch settings
+ Intent settingsIntent = new Intent(Intent.ACTION_MAIN)
+ .addCategory(Intent.CATEGORY_LAUNCHER)
+ .setPackage(mTargetPackage)
+ .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ mContext.startActivity(settingsIntent);
+ // selects Accounts
+ final UiScrollable settings = new UiScrollable(
+ new UiSelector().packageName(mTargetPackage).scrollable(true));
+ final String titleAccounts = ACCOUNTS;
+ settings.scrollTextIntoView(titleAccounts);
+ mDevice.findObject(new UiSelector().text(titleAccounts)).click();
+ }
+}
diff --git a/tests/unit/src/com/android/settings/accounts/Authenticator.java b/tests/unit/src/com/android/settings/accounts/Authenticator.java
new file mode 100644
index 0000000..a2413dc
--- /dev/null
+++ b/tests/unit/src/com/android/settings/accounts/Authenticator.java
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2018 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.settings.accounts;
+
+import android.accounts.AbstractAccountAuthenticator;
+import android.accounts.Account;
+import android.accounts.AccountAuthenticatorResponse;
+import android.accounts.AccountManager;
+import android.accounts.NetworkErrorException;
+import android.content.Context;
+import android.os.Bundle;
+
+public class Authenticator extends AbstractAccountAuthenticator {
+
+ public Authenticator(Context context) {
+ super(context);
+ }
+
+ @Override
+ public Bundle editProperties(AccountAuthenticatorResponse r, String s) {
+ return null;
+ }
+
+ @Override
+ public Bundle addAccount(AccountAuthenticatorResponse r, String s, String s2, String[] strings,
+ Bundle bundle) throws NetworkErrorException {
+ final Bundle result = new Bundle();
+ result.putString(AccountManager.KEY_ACCOUNT_NAME, "Test Account");
+ result.putString(AccountManager.KEY_ACCOUNT_TYPE, s);
+ return result;
+ }
+
+ @Override
+ public Bundle confirmCredentials(AccountAuthenticatorResponse r, Account account, Bundle bundle)
+ throws NetworkErrorException {
+ return null;
+ }
+
+ @Override
+ public Bundle getAuthToken(AccountAuthenticatorResponse r, Account account, String s,
+ Bundle bundle) throws NetworkErrorException {
+ return null;
+ }
+
+ @Override
+ public String getAuthTokenLabel(String s) {
+ return s;
+ }
+
+ @Override
+ public Bundle updateCredentials(AccountAuthenticatorResponse r, Account account, String s,
+ Bundle bundle) throws NetworkErrorException {
+ return null;
+ }
+
+ @Override
+ public Bundle hasFeatures(AccountAuthenticatorResponse r, Account account, String[] strings)
+ throws NetworkErrorException {
+ return null;
+ }
+}
diff --git a/tests/unit/src/com/android/settings/accounts/TestAuthService.java b/tests/unit/src/com/android/settings/accounts/TestAuthService.java
new file mode 100644
index 0000000..574e9b5
--- /dev/null
+++ b/tests/unit/src/com/android/settings/accounts/TestAuthService.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2018 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.settings.accounts;
+
+import android.app.Service;
+import android.content.Intent;
+import android.os.IBinder;
+
+public class TestAuthService extends Service {
+
+ private Authenticator mAuthenticator;
+
+ @Override
+ public void onCreate() {
+ mAuthenticator = new Authenticator(this);
+ }
+
+ @Override
+ public IBinder onBind(Intent intent) {
+ return mAuthenticator.getIBinder();
+ }
+
+}
diff --git a/tests/unit/src/com/android/settings/applications/PackageUtilTest.java b/tests/unit/src/com/android/settings/applications/PackageUtilTest.java
deleted file mode 100644
index 0e3c402..0000000
--- a/tests/unit/src/com/android/settings/applications/PackageUtilTest.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2016 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.settings.applications;
-
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageManager;
-import android.content.pm.UserInfo;
-import android.os.UserManager;
-import android.support.test.filters.SmallTest;
-import android.support.test.runner.AndroidJUnit4;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import static junit.framework.Assert.assertEquals;
-import static org.mockito.Mockito.when;
-
-@RunWith(AndroidJUnit4.class)
-@SmallTest
-@Deprecated
-public class PackageUtilTest {
- private static final String ALL_USERS_APP_NAME = "com.google.allusers.app";
- private static final String ONE_USER_APP_NAME = "com.google.oneuser.app";
- private static final int USER1_ID = 1;
- private static final int USER2_ID = 11;
-
- @Mock
- private PackageManager mMockPackageManager;
- @Mock
- private UserManager mMockUserManager;
-
- private InstalledAppDetails.PackageUtil mPackageUtil;
- private List<UserInfo> mUserInfos;
-
- @Before
- public void setUp() throws PackageManager.NameNotFoundException {
- MockitoAnnotations.initMocks(this);
-
- mUserInfos = new ArrayList<>();
- mUserInfos.add(new UserInfo(USER1_ID, "lei", 0));
- mUserInfos.add(new UserInfo(USER2_ID, "yue", 0));
- when(mMockUserManager.getUsers(true)).thenReturn(mUserInfos);
-
- ApplicationInfo usersApp = new ApplicationInfo();
- usersApp.flags = ApplicationInfo.FLAG_INSTALLED;
-
- when(mMockPackageManager.getApplicationInfoAsUser(
- ALL_USERS_APP_NAME, PackageManager.GET_META_DATA, USER1_ID))
- .thenReturn(usersApp);
- when(mMockPackageManager.getApplicationInfoAsUser(
- ALL_USERS_APP_NAME, PackageManager.GET_META_DATA, USER2_ID))
- .thenReturn(usersApp);
-
- when(mMockPackageManager.getApplicationInfoAsUser(
- ONE_USER_APP_NAME, PackageManager.GET_META_DATA, USER1_ID))
- .thenReturn(usersApp);
-
- when(mMockPackageManager.getApplicationInfoAsUser(
- ONE_USER_APP_NAME, PackageManager.GET_META_DATA, USER2_ID))
- .thenThrow(new PackageManager.NameNotFoundException());
-
- mPackageUtil = new InstalledAppDetails.PackageUtil();
- }
-
- @Test
- public void testCountPackageInUsers_twoUsersInstalled_returnTwo() {
- assertEquals(2, mPackageUtil.countPackageInUsers(
- mMockPackageManager, mMockUserManager, ALL_USERS_APP_NAME));
- }
-
- @Test
- public void testCountPackageInUsers_oneUsersInstalled_returnOne() {
- assertEquals(1, mPackageUtil.countPackageInUsers(
- mMockPackageManager, mMockUserManager, ONE_USER_APP_NAME));
- }
-}
diff --git a/tests/unit/src/com/android/settings/CreateShortcutTest.java b/tests/unit/src/com/android/settings/shortcut/CreateShortcutTest.java
similarity index 90%
rename from tests/unit/src/com/android/settings/CreateShortcutTest.java
rename to tests/unit/src/com/android/settings/shortcut/CreateShortcutTest.java
index 4ae9bd7..5ec008b 100644
--- a/tests/unit/src/com/android/settings/CreateShortcutTest.java
+++ b/tests/unit/src/com/android/settings/shortcut/CreateShortcutTest.java
@@ -14,12 +14,10 @@
* limitations under the License.
*/
-package com.android.settings;
+package com.android.settings.shortcut;
import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.assertion.ViewAssertions.doesNotExist;
-import static android.support.test.espresso.matcher.ViewMatchers.withText;
-
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.mockito.Mockito.any;
@@ -39,9 +37,13 @@
import android.content.pm.ShortcutInfo;
import android.content.pm.ShortcutManager;
import android.support.test.InstrumentationRegistry;
+import android.support.test.espresso.matcher.ViewMatchers;
import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
+import com.android.settings.R;
+import com.android.settings.Settings;
+
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -55,12 +57,6 @@
/**
* Tests for {@link CreateShortcutTest}
- *
- m SettingsTests &&
- adb install \
- -r -g ${ANDROID_PRODUCT_OUT}/data/app/SettingsTests/SettingsTests.apk &&
- adb shell am instrument -e class com.android.settings.CreateShortcutTest \
- -w com.android.settings.tests/android.support.test.runner.AndroidJUnitRunner
*/
@RunWith(AndroidJUnit4.class)
@SmallTest
@@ -71,8 +67,10 @@
private Instrumentation mInstrumentation;
private Context mContext;
- @Mock ShortcutManager mShortcutManager;
- @Captor ArgumentCaptor<List<ShortcutInfo>> mListCaptor;
+ @Mock
+ ShortcutManager mShortcutManager;
+ @Captor
+ ArgumentCaptor<List<ShortcutInfo>> mListCaptor;
@Before
public void setup() {
@@ -84,15 +82,17 @@
@Test
public void test_layoutDoesNotHaveCancelButton() {
mInstrumentation.startActivitySync(new Intent(Intent.ACTION_CREATE_SHORTCUT)
- .setClassName(mContext, CreateShortcut.class.getName()));
- onView(withText(R.string.cancel)).check(doesNotExist());
+ .setClassName(mContext, CreateShortcut.class.getName())
+ .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
+ onView(ViewMatchers.withText(R.string.cancel)).check(doesNotExist());
}
@Test
public void createResultIntent() {
CreateShortcut orgActivity = (CreateShortcut) mInstrumentation.startActivitySync(
new Intent(Intent.ACTION_CREATE_SHORTCUT)
- .setClassName(mContext, CreateShortcut.class.getName()));
+ .setClassName(mContext, CreateShortcut.class.getName())
+ .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
CreateShortcut activity = spy(orgActivity);
doReturn(mShortcutManager).when(activity).getSystemService(eq(Context.SHORTCUT_SERVICE));
diff --git a/tests/unit/src/com/android/settings/users/UserSettingsTest.java b/tests/unit/src/com/android/settings/users/UserSettingsTest.java
index 213183a..2ecf161 100644
--- a/tests/unit/src/com/android/settings/users/UserSettingsTest.java
+++ b/tests/unit/src/com/android/settings/users/UserSettingsTest.java
@@ -15,34 +15,47 @@
*/
package com.android.settings.users;
+import static com.google.common.truth.Truth.assertThat;
+
import android.content.Context;
import android.content.Intent;
+import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
+import android.support.test.runner.AndroidJUnit4;
import android.support.test.uiautomator.UiDevice;
import android.support.test.uiautomator.UiObject;
import android.support.test.uiautomator.UiSelector;
import android.support.test.uiautomator.UiScrollable;
-import android.test.InstrumentationTestCase;
+import android.support.test.uiautomator.UiObjectNotFoundException;
+import org.junit.Before;
import org.junit.Test;
+import org.junit.runner.RunWith;
+@RunWith(AndroidJUnit4.class)
@SmallTest
-public class UserSettingsTest extends InstrumentationTestCase {
+public class UserSettingsTest {
- private static final String USER_AND_ACCOUNTS = "Users & accounts";
- private static final String USERS = "Users";
+ private static final String SYSTEM = "System";
+ private static final String ADVANCED = "Advanced";
+ private static final String USERS = "Multiple users";
private static final String EMERGNENCY_INFO = "Emergency information";
private static final String ADD_USERS_WHEN_LOCKED = "Add users";
+ private static final String SWITCH_USER_BUTTON = "com.android.systemui:id/multi_user_switch";
+ private static final String SETTINGS_BUTTON = "com.android.systemui:id/settings_button";
+ private static final String PRIMARY_USER = "Owner";
+ private static final String GUEST_USER = "Guest";
+ private static final String ADD_GUEST = "Add guest";
+ private static final String CONTINUE = "Yes, continue";
private UiDevice mDevice;
private Context mContext;
private String mTargetPackage;
- @Override
- protected void setUp() throws Exception {
- super.setUp();
- mDevice = UiDevice.getInstance(getInstrumentation());
- mContext = getInstrumentation().getTargetContext();
+ @Before
+ public void setUp() {
+ mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
+ mContext = InstrumentationRegistry.getTargetContext();
mTargetPackage = mContext.getPackageName();
}
@@ -51,7 +64,8 @@
launchUserSettings();
UiObject emergencyInfoPreference =
mDevice.findObject(new UiSelector().text(EMERGNENCY_INFO));
- assertFalse(emergencyInfoPreference.exists());
+
+ assertThat(emergencyInfoPreference.exists()).isFalse();
}
@Test
@@ -59,7 +73,32 @@
launchUserSettings();
UiObject addUsersPreference =
mDevice.findObject(new UiSelector().text(ADD_USERS_WHEN_LOCKED));
- assertFalse(addUsersPreference.exists());
+ assertThat(addUsersPreference.exists()).isFalse();
+ }
+
+ @Test
+ public void testUsersExistsOnSecondaryUser() throws Exception {
+ // switch to guest user
+ switchToOrCreateGuest();
+ // launch settings (launch from intent doesn't work, hence launch from quick settings)
+ mDevice.openQuickSettings();
+ mDevice.findObject(new UiSelector().resourceId(SETTINGS_BUTTON)).click();
+ // launch system settings and expand whole screen
+ final UiScrollable settings = new UiScrollable(
+ new UiSelector().packageName(mTargetPackage).scrollable(true));
+ final String titleSystem = SYSTEM;
+ settings.scrollTextIntoView(titleSystem);
+ mDevice.findObject(new UiSelector().text(titleSystem)).click();
+ mDevice.findObject(new UiSelector().text(ADVANCED)).click();
+
+ final boolean hasUsersSettings = mDevice.findObject(new UiSelector().text(USERS)).exists();
+
+ // switch back to primary user
+ mDevice.openQuickSettings();
+ mDevice.findObject(new UiSelector().resourceId(SWITCH_USER_BUTTON)).click();
+ mDevice.findObject(new UiSelector().text(PRIMARY_USER)).click();
+
+ assertThat(hasUsersSettings).isTrue();
}
private void launchSettings() {
@@ -67,17 +106,34 @@
.addCategory(Intent.CATEGORY_LAUNCHER)
.setPackage(mTargetPackage)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- getInstrumentation().getContext().startActivity(settingsIntent);
+ mContext.startActivity(settingsIntent);
}
private void launchUserSettings() throws Exception {
launchSettings();
final UiScrollable settings = new UiScrollable(
new UiSelector().packageName(mTargetPackage).scrollable(true));
- final String titleUsersAndAccounts = USER_AND_ACCOUNTS;
- settings.scrollTextIntoView(titleUsersAndAccounts);
- mDevice.findObject(new UiSelector().text(titleUsersAndAccounts)).click();
+ final String titleSystem = SYSTEM;
+ settings.scrollTextIntoView(titleSystem);
+ mDevice.findObject(new UiSelector().text(titleSystem)).click();
+ mDevice.findObject(new UiSelector().text(ADVANCED)).click();
mDevice.findObject(new UiSelector().text(USERS)).click();
}
+ private void switchToOrCreateGuest() throws UiObjectNotFoundException {
+ mDevice.openQuickSettings();
+ mDevice.findObject(new UiSelector().resourceId(SWITCH_USER_BUTTON)).click();
+ // if no existing guest user, select "Add guest", otherwise select "Guest"
+ final UiObject addGuest = mDevice.findObject(new UiSelector().text(ADD_GUEST));
+ if (addGuest.exists()) {
+ addGuest.click();
+ mDevice.waitForIdle();
+ mDevice.pressBack();
+ } else {
+ mDevice.findObject(new UiSelector().text(GUEST_USER)).click();
+ mDevice.waitForIdle();
+ mDevice.findObject(new UiSelector().text(CONTINUE)).click();
+ mDevice.waitForIdle();
+ }
+ }
}