Attivare o disattivare il Centro per la sicurezza online
Per attivare o disattivare il Centro per la sicurezza online, utilizza l'overlay
config_enableSafetyCenter
nel campo booleano
frameworks/base/core/res/res/values/config.xml
.
Sulla maggior parte dei dispositivi, il Centro per la sicurezza online è supportato per impostazione predefinita, ad esempio sui telefoni e tablet. Su alcuni fattori di forma, il Centro per la sicurezza online è disattivato per impostazione predefinita ad esempio su Auto, TV e Wear.
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- ... -->
<!-- Determines whether SafetyCenter feature is enabled. -->
<bool name="config_enableSafetyCenter">true</bool>
<!-- ... -->
</resources>
Per supportare il Centro per la sicurezza online, imposta config_enableSafetyCenter
su true
. Se
non vuoi supportare il Centro per la sicurezza online, imposta questo valore su false
per disattivarlo.
Quando il Centro per la sicurezza online è disattivato, qualsiasi tentativo di reindirizzamento alla sezione Sicurezza e La pagina della privacy apre invece l'app Impostazioni. Qualsiasi tentativo di interazione Le API vengono ignorate automaticamente o restituiscono un valore predefinito. L'elemento rapido associato Anche il riquadro Impostazioni e la voce Impostazioni sono visibili o nascoste, a seconda che Il Centro per la sicurezza online è attivo.
Flag DeviceConfig
Oltre ad attivare il Centro per la sicurezza online tramite config_enableSafetyCenter
una configurazione automatica,
DeviceConfig
(safety_center_is_enabled
) viene utilizzato per attivare o disattivare la sicurezza da remoto
al centro.
In Android 14 e versioni successive non sono necessarie ulteriori azioni
poiché questo flag è true
per impostazione predefinita.
In Android 13, il Centro per la sicurezza online è disattivato per impostazione predefinita
lato server e abilitato mediante lista consentita utilizzando questo flag. Invia il tuo dispositivo
fingerprint e contatta il TAM per farti aggiungere alla lista consentita. Tieni presente che
Per aggiungere alla lista consentita è richiesta la versione principale M-2022-11
o successiva.
Per lo sviluppo e i test locali, il flag può essere attivato o disattivato localmente
(fino al riavvio) con un comando adb
. Ad esempio, per abilitare il flag:
adb root
adb shell device_config set_sync_disabled_for_tests until_reboot
adb shell device_config put privacy safety_center_is_enabled true
Per verificare se il Centro per la sicurezza online è attivo:
adb root
adb shell cmd safety_center enabled
L'output restituirà se il Centro per la sicurezza online è correttamente attivato sul dispositivo.
Aggiorna il file di configurazione
Utilizza il file di configurazione safety_center_config.xml
per modificare i contenuti di
nella schermata Centro per la sicurezza online. Puoi sovrapporre questo file supponendo di soddisfare i requisiti
Requisiti di personalizzazione.
Sovrapporre il file di configurazione
Per sovrapporre il file safety_center_config.xml
, consulta l'articolo Modificare il valore di un
dell'app in fase di runtime
per informazioni sulla modifica degli overlay delle risorse di runtime.
In Android 14, assicurati di sovrapporre
res/raw-v34/safety_center_config.xml
e non il file
res/raw/safety_center_config.xml
ha la precedenza (anche questo
si applica ad altri file nell'ambito di v34
, ad esempio
res/values-v34/strings.xml
). Il pacchetto di overlay deve avere un SDK minimo inferiore
rispetto a 34
, altrimenti il qualificatore v34
potrebbe essere rimosso durante l'ottimizzazione.
Assicurati inoltre di utilizzare un overlay statico, poiché questo valore viene caricato intorno all'avvio
nel tempo.
Per i dispositivi Android Open Source Project (AOSP), scegli il pacchetto come target
com.android.safetycenter.resources
. Non esiste una configurazione overlay in
target. Tutte le risorse sono sovrapponibili senza limitazioni ai contenuti.
Per i dispositivi GMS configurati per ricevere aggiornamenti Mainline, scegli come target
pacchetto com.google.android.safetycenter.resources
. Scegli come target la configurazione
SafetyCenterConfig
. Questa configurazione richiede che il pacchetto overlay sia
la partizione product
, system
o vendor
. Gli OEM GMS devono copiare
Google ha fornito safety_center_config.xml
file e limite
modifiche a quelle consentite dal GTS
test. Definizione dell'overlay
dovrebbe essere simile a questo:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="your.overlay.package"
android:versionCode="1"
android:versionName="1.0">
<application android:hasCode="false" />
<overlay
android:targetPackage="com.google.android.safetycenter.resources"
android:targetName="SafetyCenterConfig"
android:isStatic="true"
android:priority="0"/>
</manifest>
Per i dispositivi GMS che non sono configurati per ricevere aggiornamenti Mainline, scegli come target
pacchetto com.android.safetycenter.resources
. Non è presente una configurazione overlay
scegliere come target. Il pacchetto di overlay deve utilizzare il nome del pacchetto
com.google.android.safetycenter.resources
.
Gli OEM GMS devono copiare il file safety_center_config.xml
fornito da Google e
limitare le modifiche a quelle consentite dai test GTS. Gli OEM GMS devono inoltre definire
le stringhe utilizzate nella configurazione XML.
Struttura del file
A livello generale, il file safety_center_config.xml
è un elenco di misure di sicurezza
fonti. Queste fonti di sicurezza sono organizzate in gruppi per gestire gli indicatori su
schermata Centro per la sicurezza online, ad esempio Sicurezza app o Blocco schermo. L'ordine di
questo elenco definisce l'ordine di visualizzazione:
<safety-center-config> <!-- Wrapper for the Safety Center configuration -->
<safety-sources-config>< !-- Wrapper for the safety sources groups -->
<safety-sources-group> <!-- Contains information about a safety sources group -->
<dynamic-safety-source /> <!-- Contains information about a safety source -->
<!-- More safety sources in the group -->
</safety-sources-group> <!-- More safety sources groups -->
</safety-sources-config>
</safety-center-config>
File di configurazione Google
Il file di configurazione AOSP si trova in
packages/modules/Permission/SafetyCenter/Resources/res/raw/safety_center_config.xml
In Android 13, il file di configurazione di Google è:
<safety-center-config>
<safety-sources-config>
<safety-sources-group
id="GoogleAppSecuritySources"
title="@com.google.android.safetycenter.resources:string/google_app_security_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_app_security_sources_summary">
<dynamic-safety-source
id="GooglePlayProtect"
packageName="com.android.vending"
profile="all_profiles"
intentAction="com.google.android.finsky.PLAY_PROTECT"
title="@com.google.android.safetycenter.resources:string/google_play_protect_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_play_protect_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_play_protect_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_play_protect_search_terms"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="GoogleAppProtectionService"
packageName="com.google.android.odad"
profile="primary_profile_only"
initialDisplayState="hidden"
loggingAllowed="false"/>
</safety-sources-group>
<safety-sources-group
id="AndroidLockScreenSources"
title="@com.google.android.safetycenter.resources:string/google_lock_screen_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_lock_screen_sources_summary">
<dynamic-safety-source
id="AndroidLockScreen"
packageName="com.android.settings"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_lock_screen_title"
summary="@com.google.android.safetycenter.resources:string/google_lock_screen_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_lock_screen_search_terms"
initialDisplayState="disabled"
maxSeverityLevel="300"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="AndroidBiometrics"
packageName="com.android.settings"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_biometrics_title"
summary="@com.google.android.safetycenter.resources:string/google_biometrics_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_biometrics_search_terms"
initialDisplayState="@com.google.android.safetycenter.resources:string/google_biometrics_initial_display_state"
maxSeverityLevel="0"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="GoogleAccountsSources"
title="@com.google.android.safetycenter.resources:string/google_accounts_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_accounts_sources_summary">
<dynamic-safety-source
id="GoogleSecurityCheckup"
packageName="com.google.android.gms"
profile="all_profiles"
intentAction="com.google.android.gms.accountsettings.action.SAFETY_CENTER_SECURITY_CHECKUP"
title="@com.google.android.safetycenter.resources:string/google_security_checkup_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_security_checkup_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_security_checkup_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_security_checkup_search_terms"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="GoogleDeviceFinderSources"
title="@com.google.android.safetycenter.resources:string/google_device_finder_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_device_finder_sources_summary">
<dynamic-safety-source
id="GoogleFindMyDevice"
packageName="com.google.android.gms"
profile="primary_profile_only"
intentAction="com.google.android.gms.settings.FIND_MY_DEVICE_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_find_my_device_title"
summary="@com.google.android.safetycenter.resources:string/google_find_my_device_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_find_my_device_search_terms"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="GoogleRogueTag"
packageName="com.google.android.gms"
profile="primary_profile_only"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="GoogleUpdateSources"
title="@com.google.android.safetycenter.resources:string/google_updates_title"
summary="@com.google.android.safetycenter.resources:string/google_updates_summary">
<dynamic-safety-source
id="GoogleSecurityUpdates"
packageName="com.google.android.gms"
profile="primary_profile_only"
intentAction="@com.google.android.safetycenter.resources:string/google_security_updates_intent"
title="@com.google.android.safetycenter.resources:string/google_security_updates_title"
summary="@com.google.android.safetycenter.resources:string/google_security_updates_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_security_updates_search_terms"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="GooglePlaySystemUpdate"
packageName="com.android.vending"
profile="primary_profile_only"
intentAction="android.settings.MODULE_UPDATE_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_play_system_update_title"
summary="@com.google.android.safetycenter.resources:string/google_play_system_update_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_play_system_update_search_terms"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="AndroidPrivacySources"
title="@com.google.android.safetycenter.resources:string/google_privacy_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_sources_summary"
statelessIconType="privacy">
<static-safety-source
id="AndroidPermissionUsage"
profile="primary_profile_only"
intentAction="android.intent.action.REVIEW_PERMISSION_USAGE"
title="@com.google.android.safetycenter.resources:string/google_permission_usage_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_usage_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_usage_search_terms"/>
<static-safety-source
id="AndroidPermissionManager"
profile="primary_profile_only"
intentAction="android.intent.action.MANAGE_PERMISSIONS"
title="@com.google.android.safetycenter.resources:string/google_permission_manager_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_manager_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_manager_search_terms"/>
<static-safety-source
id="AndroidPrivacyControls"
profile="primary_profile_only"
intentAction="android.settings.PRIVACY_CONTROLS"
title="@com.google.android.safetycenter.resources:string/google_privacy_controls_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_controls_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_privacy_controls_search_terms"/>
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidNotificationListener"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidBackgroundLocation"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidPermissionAutoRevoke"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="AndroidAdvancedSources"
title="@com.google.android.safetycenter.resources:string/google_advanced_title">
<dynamic-safety-source
id="AndroidWorkPolicyInfo"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="true"/>
<static-safety-source
id="AndroidAdvancedSecurity"
profile="primary_profile_only"
intentAction="com.android.settings.security.SECURITY_ADVANCED_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_advanced_security_title"
summary="@com.google.android.safetycenter.resources:string/google_advanced_security_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_advanced_security_search_terms"/>
<static-safety-source
id="AndroidAdvancedPrivacy"
profile="primary_profile_only"
intentAction="android.settings.PRIVACY_ADVANCED_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_advanced_privacy_title"
summary="@com.google.android.safetycenter.resources:string/google_advanced_privacy_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_advanced_privacy_search_terms"/>
</safety-sources-group>
</safety-sources-config>
</safety-center-config>
In Android 14, il file di configurazione di Google è:
<safety-center-config>
<safety-sources-config>
<safety-sources-group
id="GoogleAppSecuritySources"
title="@com.google.android.safetycenter.resources:string/google_app_security_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_app_security_sources_summary">
<dynamic-safety-source
id="GooglePlayProtect"
packageName="com.android.vending"
profile="all_profiles"
intentAction="com.google.android.finsky.PLAY_PROTECT"
title="@com.google.android.safetycenter.resources:string/google_play_protect_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_play_protect_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_play_protect_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_play_protect_search_terms"
notificationsAllowed="true"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
deduplicationGroup="AppSecurity"/>
<issue-only-safety-source
id="GoogleAppProtectionService"
packageName="com.google.android.odad"
profile="primary_profile_only"
loggingAllowed="false"
deduplicationGroup="AppSecurity"/>
</safety-sources-group>
<safety-sources-group
id="AndroidLockScreenSources"
title="@com.google.android.safetycenter.resources:string/google_lock_screen_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_lock_screen_sources_summary">
<dynamic-safety-source
id="AndroidLockScreen"
packageName="com.android.settings"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_lock_screen_title"
summary="@com.google.android.safetycenter.resources:string/google_lock_screen_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_lock_screen_search_terms"
initialDisplayState="disabled"
notificationsAllowed="true"
maxSeverityLevel="300"/>
<dynamic-safety-source
id="AndroidBiometrics"
packageName="com.android.settings"
profile="all_profiles"
title="@com.google.android.safetycenter.resources:string/google_biometrics_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_biometrics_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_biometrics_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_biometrics_search_terms"
initialDisplayState="@com.google.android.safetycenter.resources:string/google_biometrics_initial_display_state"
maxSeverityLevel="0"/>
</safety-sources-group>
<safety-sources-group
id="GoogleAccountsSources"
title="@com.google.android.safetycenter.resources:string/google_accounts_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_accounts_sources_summary">
<dynamic-safety-source
id="GoogleSecurityCheckup"
packageName="com.google.android.gms"
profile="all_profiles"
intentAction="com.google.android.gms.accountsettings.action.SAFETY_CENTER_SECURITY_CHECKUP"
title="@com.google.android.safetycenter.resources:string/google_security_checkup_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_security_checkup_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_security_checkup_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_security_checkup_search_terms"
deduplicationGroup="AccountRequired"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="GooglePasswordCheckup"
packageName="com.google.android.gms"
profile="all_profiles"
title="@com.google.android.safetycenter.resources:string/google_password_checkup_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_password_checkup_title_for_work"
searchTerms="@com.google.android.safetycenter.resources:string/google_password_checkup_search_terms"
initialDisplayState="hidden"
notificationsAllowed="true"
deduplicationGroup="AccountRequired"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
refreshOnPageOpenAllowed="false"/>
</safety-sources-group>
<safety-sources-group
id="GoogleDeviceFinderSources"
title="@com.google.android.safetycenter.resources:string/google_device_finder_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_device_finder_sources_summary">
<dynamic-safety-source
id="GoogleFindMyDevice"
packageName="com.google.android.gms"
profile="primary_profile_only"
intentAction="com.google.android.gms.settings.FIND_MY_DEVICE_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_find_my_device_title"
summary="@com.google.android.safetycenter.resources:string/google_find_my_device_summary"
notificationsAllowed="true"
deduplicationGroup="AccountRequired"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
searchTerms="@com.google.android.safetycenter.resources:string/google_find_my_device_search_terms"/>
<dynamic-safety-source
id="GoogleRogueTag"
packageName="com.google.android.gms"
profile="primary_profile_only"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
initialDisplayState="hidden"/>
</safety-sources-group>
<safety-sources-group
id="GoogleUpdateSources"
title="@com.google.android.safetycenter.resources:string/google_updates_title"
summary="@com.google.android.safetycenter.resources:string/google_updates_summary">
<dynamic-safety-source
id="GoogleSecurityUpdates"
packageName="com.google.android.gms"
profile="primary_profile_only"
intentAction="@com.google.android.safetycenter.resources:string/google_security_updates_intent"
title="@com.google.android.safetycenter.resources:string/google_security_updates_title"
summary="@com.google.android.safetycenter.resources:string/google_security_updates_summary"
notificationsAllowed="true"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
searchTerms="@com.google.android.safetycenter.resources:string/google_security_updates_search_terms"/>
<dynamic-safety-source
id="GooglePlaySystemUpdate"
packageName="com.android.vending"
profile="primary_profile_only"
intentAction="android.settings.MODULE_UPDATE_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_play_system_update_title"
summary="@com.google.android.safetycenter.resources:string/google_play_system_update_summary"
notificationsAllowed="true"
deduplicationGroup="AccountRequired"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
searchTerms="@com.google.android.safetycenter.resources:string/google_play_system_update_search_terms"/>
<dynamic-safety-source
id="GoogleBackupAndRestore"
packageName="com.google.android.gms"
profile="primary_profile_only"
initialDisplayState="hidden"
title="@com.google.android.safetycenter.resources:string/google_backup_title"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"
searchTerms="@com.google.android.safetycenter.resources:string/google_backup_search_terms"/>
</safety-sources-group>
<safety-sources-group
id="AndroidPrivacySources"
title="@com.google.android.safetycenter.resources:string/google_privacy_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_sources_summary"
statelessIconType="privacy">
<static-safety-source
id="AndroidPermissionManager"
profile="primary_profile_only"
intentAction="android.intent.action.MANAGE_PERMISSIONS"
title="@com.google.android.safetycenter.resources:string/google_permission_manager_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_manager_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_manager_search_terms"/>
<static-safety-source
id="AndroidPermissionUsage"
profile="primary_profile_only"
intentAction="android.intent.action.REVIEW_PERMISSION_USAGE"
title="@com.google.android.safetycenter.resources:string/google_permission_usage_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_usage_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_usage_search_terms"/>
<static-safety-source
id="GoogleAdsIdentity"
profile="all_profiles"
packageName="com.google.android.gms"
intentAction="com.google.android.gms.adsidentity.ACTION_ADS_IDENTITY_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_ads_identity_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_ads_identity_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_ads_identity_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_ads_identity_search_terms"/>
<dynamic-safety-source
id="AndroidHealthConnect"
profile="primary_profile_only"
packageName="com.google.android.healthconnect.controller"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="false"
title="@com.google.android.safetycenter.resources:string/google_health_connect_title"
searchTerms="@com.google.android.safetycenter.resources:string/google_health_connect_search_terms"/>
<dynamic-safety-source
id="AndroidPrivacyAppDataSharingUpdates"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="true"
title="@com.google.android.safetycenter.resources:string/google_app_data_sharing_updates_title"
searchTerms="@com.google.android.safetycenter.resources:string/google_app_data_sharing_updates_search_terms"/>
<static-safety-source
id="AndroidPrivacyControls"
profile="primary_profile_only"
intentAction="android.settings.PRIVACY_CONTROLS"
title="@com.google.android.safetycenter.resources:string/google_privacy_controls_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_controls_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_privacy_controls_search_terms"/>
<static-safety-source
id="GoogleActivityControls"
profile="all_profiles"
packageName="com.google.android.gms"
intentAction="com.google.android.gms.accountsettings.action.ACTIVITY_CONTROLS"
title="@com.google.android.safetycenter.resources:string/google_activity_controls_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_activity_controls_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_activity_controls_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_activity_controls_search_terms"/>
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
notificationsAllowed="true"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidNotificationListener"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
notificationsAllowed="true"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidBackgroundLocation"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
notificationsAllowed="true"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidPermissionAutoRevoke"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
notificationsAllowed="true"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
<safety-sources-group
id="AndroidAdvancedSources"
title="@com.google.android.safetycenter.resources:string/google_advanced_title">
<dynamic-safety-source
id="AndroidWorkPolicyInfo"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_work_policy_title"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="true"/>
<static-safety-source
id="AndroidMoreSettings"
profile="primary_profile_only"
intentAction="com.android.settings.MORE_SECURITY_PRIVACY_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_more_settings_title"
summary="@com.google.android.safetycenter.resources:string/google_more_settings_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_more_settings_search_terms"/>
</safety-sources-group>
</safety-sources-config>
</safety-center-config>
Personalizza le fonti del Centro per la sicurezza online
Tipi di origine del Centro per la sicurezza online
Le origini possono essere dinamiche, solo problematiche o statiche, a seconda del tipo di dati che fornire al Centro per la sicurezza online.
Origini dinamiche
Contrassegna la fonte di sicurezza come dynamic-safety-source
se può fornire dati dinamici
al Centro per la sicurezza online per le schede di ingresso e potenziali avvisi:
<dynamic-safety-source
id="AndroidLockScreen"
packageName="com.android.settings"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_lock_screen_title"
summary="@com.google.android.safetycenter.resources:string/google_lock_screen_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_lock_screen_search_terms"
initialDisplayState="disabled"
maxSeverityLevel="300"
refreshOnPageOpenAllowed="true"/>
Fonti esclusivamente problematiche
Contrassegna la fonte come issue-only-safety-source
, se sono presenti nessuna impostazione associata
ma vengono comunque forniti avvisi. Puoi fornire solo avvisi; fornendo
una voce di impostazioni genera un errore:
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
Origini statiche
Contrassegna l'origine come static-safety-source
se si tratta di una voce di reindirizzamento senza
dati dinamici:
<static-safety-source
id="AndroidAdvancedSecurity"
profile="primary_profile_only"
intentAction="com.google.android.settings.security.SECURITY_ADVANCED_SETTINGS"
title="@com.google.android.safetycenter.resources:string/google_advanced_security_title"
summary="@com.google.android.safetycenter.resources:string/google_advanced_security_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_advanced_security_search_terms"/>
Configurazione dell'origine Centro per la sicurezza online
A seconda del tipo di origine del Centro per la sicurezza online e di altri elementi invarianti, I campi del file sono facoltativi, obbligatori o vietati e possono essere personalizzati:
id
- L'identificatore univoco della fonte di sicurezza, deve essere univoco in tutta e deve essere composto solo da caratteri alfabetici (a-z, A-Z) e fa distinzione tra maiuscole e minuscole
- Tipo di stringa
- Obbligatorio per tutti i tipi di fonti di sicurezza
packageName
- Nome del pacchetto proprietario di questa origine di sicurezza, ad esempio:
com.google.android.permissioncontroller
- Tipo di stringa
- Obbligatorio per le fonti di sicurezza dinamiche e solo per problemi
- Vietato per fonti di sicurezza statiche in Android
13; in Android 14
può essere impostato facoltativamente per avere come target la
intentAction
dell'origine esplicitamente anziché implicitamente (consulta la risoluzione dell'intento documentazione per ulteriori dettagli).
- Nome del pacchetto proprietario di questa origine di sicurezza, ad esempio:
initialDisplayState
- Come viene visualizzata la voce UI quando non vengono forniti dati dalla sicurezza fonte
- Tipo di enum rappresentato come stringa, che deve essere uno dei seguenti:
enabled
(valore predefinito, viene visualizzato normalmente)disabled
(visualizzato in grigio, non è possibile fare clic)hidden
(non viene visualizzata)
- Facoltativo per le fonti di sicurezza dinamiche (il valore predefinito è
enabled
) - Vietato per fonti di sicurezza statiche e solo per problemi
profile
- Se questa fonte di sicurezza interagisce con il profilo gestito dell'utente
- Tipo di enum rappresentato come stringa, che deve essere uno dei seguenti:
primary_profile_only
(interagisce solo con il genitore del profilo)all_profiles
(può anche interagire con i profili gestiti)
- Il giorno
all_profiles
, vengono generate diverse voci della UI (una per il profilo principale e una per ogni profilo gestito); la fonte di sicurezza può fornire dati diversi per ogni profilo. - Obbligatorio per tutte le fonti di sicurezza
searchTerms
- Elenco di termini di ricerca associati alla voce del Centro per la sicurezza online durante l'utilizzo cerca nell'app Impostazioni
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_search_terms
- Facoltativa per le origini di sicurezza dinamiche e statiche (l'impostazione predefinita è nessuna ricerca termini)
- Vietato per fonti di sicurezza solo per problemi
title
- Titolo predefinito della voce dell'interfaccia utente, utilizzato quando non vengono forniti dati in modo dinamico. dalla fonte
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_title
- Obbligatorio per le fonti di sicurezza dinamiche e statiche (a meno che
initialDisplayState="hidden"
senzasearchTerms
) - Vietato per fonti di sicurezza solo per problemi
titleForWork
- Titolo predefinito della voce dell'interfaccia utente per il profilo gestito utilizzato quando i dati non vengono forniti dinamicamente dall'origine
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_title_for_work
- Obbligatorio per le fonti di sicurezza dinamiche e statiche che hanno specificato
profile="all_profiles"
(a meno cheinitialDisplayState="hidden"
senzasearchTerms
) - Vietato per fonti di sicurezza solo per problemi o fonti con
profile="primary_profile_only"
summary
- Riepilogo predefinito della voce dell'interfaccia utente (questa è una descrizione testuale più lunga) visualizzata sotto il titolo), utilizzata quando i dati non sono forniti in modo dinamico la fonte
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_summary
- Facoltativo per le origini di sicurezza statiche (l'impostazione predefinita non è un riepilogo)
- Obbligatorio per le fonti di sicurezza dinamiche (a meno che
initialDisplayState
non siahidden
) - Vietato per fonti di sicurezza solo per problemi
intentAction
- Azione da attivare quando l'utente fa clic sulla voce dell'interfaccia utente
- Tipo di stringa, ad esempio
com.google.android.settings.security.SECURITY_ADVANCED_SETTINGS
, oppure ID risorsa rappresentato da un nome risorsa completo, ad esempio@package:string/my_intent_action
- Se l'azione di intent non si risolve per il valore
packageName
specificato (se qualsiasi), la voce dell'interfaccia utente si comporta allo stesso modo di avereinitialDisplayState="disabled"
- Obbligatorio per le fonti di sicurezza statiche e per
dynamic
fonti di sicurezza che hannoinitialDisplayState="enabled"
- Vietato per fonti di sicurezza solo per problemi
maxSeverityLevel
- Livello di gravità massimo che può fornire questa fonte del Centro per la sicurezza online
- Numero intero rappresentato come stringa, ad esempio
300
- Facoltativa per le fonti di sicurezza dinamiche e solo per problemi (l'impostazione predefinita è no massimo)
- Vietato per fonti di sicurezza statiche
loggingAllowed
- Se il Centro per la sicurezza online può registrare interazioni o dati correlati fonte
- Valore booleano rappresentato come una stringa, ad esempio
false
- Facoltativo per le fonti di sicurezza dinamiche e solo con problemi (il valore predefinito è
true
) - Vietato per fonti di sicurezza statiche
refreshOnPageOpenAllowed
- Indica se deve essere inviato un segnale alla fonte di sicurezza per aggiornare i suoi dati Quando si apre la schermata Centro per la sicurezza online
- Valore booleano rappresentato come una stringa, ad esempio
true
- Facoltativo per le fonti di sicurezza dinamiche e solo con problemi (il valore predefinito è
false
) - Vietato per fonti di sicurezza statiche
notificationsAllowed
(a partire da Android 14)- Indica se la fonte di sicurezza può o meno fornire una notifica quando segnalazione di un problema
- Valore booleano rappresentato come una stringa, ad esempio
true
- Facoltativo per le fonti di sicurezza dinamiche e solo con problemi (il valore predefinito è
false
) - Vietato per fonti di sicurezza statiche
deduplicationGroup
(a partire da Android 14)- Un potenziale identificatore univoco che può essere utilizzato per deduplicare i problemi provenienti da diverse fonti. Origini all'interno della stessa deduplicazione Il gruppo può inviare problemi con un ID di deduplicazione facoltativo. Problemi relativi lo stesso ID di deduplicazione verrà mostrato una sola volta nella UI, anche se più fonti li inviano.
- Tipo di stringa
- Facoltativa per le fonti di sicurezza dinamiche e solo per problemi (l'impostazione predefinita è no deduplicazione)
- Vietato per fonti di sicurezza statiche
packageCertificateHashes
(a partire da Android 14)- Un elenco separato da virgole di hash dei certificati per il
packageName
. Se questa impostazione è impostata, viene eseguito un certificato verifica verrà eseguita rispetto alpackageCertificateHashes
specificato per datopackageName
durante l'interazione con la fonte di sicurezza, per per motivi di sicurezza. - Tipo di stringa
- Facoltativa per le fonti di sicurezza dinamiche e solo per problemi (l'impostazione predefinita è no controlli dei certificati)
- Vietato per fonti di sicurezza statiche
- Un elenco separato da virgole di hash dei certificati per il
Personalizza i gruppi di origini del Centro per la sicurezza online
Le origini del Centro per la sicurezza online devono essere contenute all'interno di un gruppo di origini del Centro per la sicurezza online. Ogni gruppo di origine viene visualizzato nella UI nell'ordine in cui sono i gruppi di origine. elencato nel file. Ogni origine viene visualizzata all'interno del gruppo nell'ordine Le origini sono elencate nel file. Se il gruppo contiene una sola fonte di sicurezza, viene visualizzato come singola voce anziché come gruppo.
Configurazione del gruppo di origini del Centro per la sicurezza online
Utilizza le seguenti variabili per personalizzare i gruppi di origine del Centro per la sicurezza online:
id
- Identificatore univoco del gruppo delle fonti di sicurezza; devono essere univoci intero file
- Tipo di stringa
- Obbligatorio
title
- Titolo del gruppo nell'interfaccia utente
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_title
- Obbligatorio se è presente almeno una fonte di sicurezza dinamica o statica all'interno
Il gruppo (ad esempio, il gruppo non fa parte di
type="hidden"
)
summary
- Breve descrizione del gruppo nell'interfaccia utente, visualizzata sotto il titolo. Visualizzati in condizioni specifiche, in genere quando non vengono forniti dati. altrimenti il riepilogo viene calcolato in base ai dati forniti all'interno del gruppo.
- ID risorsa rappresentato da un nome risorsa completo, ad esempio
@package:string/my_summary
- Facoltativo (il valore predefinito non è un riepilogo)
statelessIconType
- Tipo di icona visualizzata per il gruppo quando non è fornito nessuno stato fonti di sicurezza, ad esempio voci statiche
- Tipo di enum rappresentato come una stringa che deve essere
none
oprivacy
(il tipo di icona della privacy) - Facoltativo (il valore predefinito è
none
)
type
(a partire da Android 14)- Un tipo esplicito per qualificare le modalità di interazione di questo gruppo con il Centro per la sicurezza online
- Tipo di enum rappresentato come stringa, che deve essere uno dei seguenti:
stateful
(visualizza e contribuisce al Centro per la sicurezza online in generale) )stateless
(viene visualizzato e non contribuisce alla sicurezza generale) Center)hidden
(non viene visualizzata, tutte le origini devono essere incentrate esclusivamente sul problema)
- Facoltativo, dedotto per impostazione predefinita utilizzando le fonti di sicurezza contenute in
il gruppo, così come
summary
estatelessIconType
. Setype
è stato specificato e vengono applicati alcuni valori invarianti aggiuntivi per garantire in modo che corrisponda alle origini trovate nel gruppo (ad esempio, il gruppo non può esserehidden
se contiene voci visibili all'utente)
Tipi di gruppi di origini del Centro per la sicurezza online
I gruppi di origine del Centro per la sicurezza online sono classificati come stateful, stateless o nascosti, in base allo stato di alcuni campi.
Gruppo stateful
Un gruppo che ha sia un titolo che un riepilogo, oppure stateLessIconType="privacy"
La versione stateful contribuisce allo stato generale del Centro per la sicurezza online:
<safety-sources-group
id="GoogleAppSecuritySources"
title="@com.google.android.safetycenter.resources:string/google_app_security_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_app_security_sources_summary">
<dynamic-safety-source
id="GooglePlayProtect"
packageName="com.android.vending"
profile="all_profiles"
intentAction="com.google.android.finsky.PLAY_PROTECT"
title="@com.google.android.safetycenter.resources:string/google_play_protect_title"
titleForWork="@com.google.android.safetycenter.resources:string/google_play_protect_title_for_work"
summary="@com.google.android.safetycenter.resources:string/google_play_protect_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_play_protect_search_terms"
refreshOnPageOpenAllowed="true"/>
<dynamic-safety-source
id="GoogleAppProtectionService"
packageName="com.google.android.odad"
profile="primary_profile_only"
initialDisplayState="hidden"
loggingAllowed="false"/>
</safety-sources-group>
In Android 13, un gruppo di questo tipo verrà visualizzato come comprimibile nell'interfaccia utente. In Android 14, viene visualizzata come con un proprio stato che reindirizza alla pagina secondaria.
Gruppo stateless
Un gruppo che ha un titolo ma non un riepilogo e stateLessIconType="none"
è
considerati stateless e non contribuiscono allo stato generale del Centro per la sicurezza online:
<safety-sources-group
id="AndroidPrivacySources"
title="@com.google.android.safetycenter.resources:string/google_privacy_sources_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_sources_summary"
statelessIconType="privacy">
<static-safety-source
id="AndroidPermissionUsage"
profile="primary_profile_only"
intentAction="android.intent.action.REVIEW_PERMISSION_USAGE"
title="@com.google.android.safetycenter.resources:string/google_permission_usage_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_usage_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_usage_search_terms"/>
<static-safety-source
id="AndroidPermissionManager"
profile="primary_profile_only"
intentAction="android.intent.action.MANAGE_PERMISSIONS"
title="@com.google.android.safetycenter.resources:string/google_permission_manager_title"
summary="@com.google.android.safetycenter.resources:string/google_permission_manager_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_permission_manager_search_terms"/>
<static-safety-source
id="AndroidPrivacyControls"
profile="primary_profile_only"
intentAction="android.settings.PRIVACY_CONTROLS"
title="@com.google.android.safetycenter.resources:string/google_privacy_controls_title"
summary="@com.google.android.safetycenter.resources:string/google_privacy_controls_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_privacy_controls_search_terms"/>
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidNotificationListener"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidBackgroundLocation"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
<issue-only-safety-source
id="AndroidPermissionAutoRevoke"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
Un gruppo di questo tipo verrà visualizzato come un elenco rigido di voci nella UI.
Gruppo nascosto
Un gruppo nascosto contiene solo fonti di sicurezza esclusivamente relative al problema e non ha un titolo. I gruppi nascosti non vengono visualizzati nell'interfaccia utente:
<safety-sources-group
id="HiddenGroup">
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
Dati dinamici per una voce statica
Puoi visualizzare la sorgente dinamica del Centro per la sicurezza online come voce statica, il che consente il push delle voci di reindirizzamento in base ad alcune condizioni e consente la i propri contenuti in fase di runtime. Definisci l'origine dinamica all'interno di un gruppo stateless, per ad esempio, a seconda delle informazioni immesse sulle norme di lavoro.
Questo esempio mostra una sorgente di sicurezza dinamica che non fornisce un segnale di sicurezza. perché è in un gruppo stateless:
<safety-sources-group
id="AndroidAdvancedSources"
title="@com.google.android.safetycenter.resources:string/google_advanced_title">
<dynamic-safety-source
id="AndroidWorkPolicyInfo"
packageName="com.google.android.permissioncontroller"
profile="primary_profile_only"
initialDisplayState="hidden"
refreshOnPageOpenAllowed="true"/>
<!-- … -->
</safety-sources-group>
In questo esempio, la fonte può inviare solo schede di avviso verdi e fornire una non specificato. Per poter fornire altri dati, l'origine deve trovarsi all'interno di un gruppo stateful,
Personalizza stringhe e campi in overlay
Per i dispositivi GMS che non sono configurati per ricevere aggiornamenti Mainline, invece di all'intero file di configurazione, puoi sovrapporre sei risorse stringa per soddisfare tutte le esigenze di personalizzazione. Vengono elencate le risorse stringa in overlay nella tabella.
Risorsa stringa | Descrizione |
---|---|
google_lock_screen_sources_summary |
Sovrapporre questo valore per definire un riepilogo statico da visualizzare per
il gruppo AndroidLockScreenSources quando tutte le origini
Il gruppo è in buono stato (informazioni o gravità non specificata
). Per impostazione predefinita, il Centro per la sicurezza online mostra il titolo di tutte le fonti
nel gruppo concatenate come riepilogo per il gruppo. |
google_biometrics_title |
Sovrapponi questo valore per definire un titolo statico per la fonte biometrica
di proprietà del pacchetto com.android.settings utilizzato quando non esistono
i dati dinamici sono forniti
dalla sorgente. Sovrapposizione di questo anche quando
sovrapponendo il titolo in modo dinamico fornito dalla fonte
com.android.settings pacco. Questa opzione viene ignorata per impostazione predefinita
poiché lo stato di visualizzazione iniziale dell'origine è
hidden . |
google_biometrics_summary |
Sovrapponi questo valore per definire un riassunto statico per i dati biometrici
origine di proprietà del pacchetto com.android.settings utilizzato
quando nessun dato dinamico viene fornito dalla sorgente. Questo valore viene ignorato da
predefinito perché lo stato di visualizzazione iniziale per l'origine è
hidden . |
google_biometrics_search_terms |
Sovrapponi questo valore per definire un elenco di termini di ricerca per i dati biometrici
sorgente di proprietà del pacchetto com.android.settings . |
google_biometrics_initial_display_state |
Sovrapponi questo valore per mostrare una voce dell'interfaccia utente per la fonte biometrica di proprietà
dal pacchetto com.android.settings quando non sono presenti dati dinamici
è fornito dalla fonte. Il valore predefinito è
hidden . |
google_security_updates_intent |
Sovrapponi questo valore per modificare l'intent necessario per aprire l'attività
che consente all'utente di controllare e installare gli aggiornamenti della sicurezza. Questo
l'azione intent deve essere associata a un'attività esportata. La
il valore predefinito è
android.settings.SYSTEM_UPDATE_SETTINGS . |
Nessun'altra stringa nel pacchetto com.google.android.safetycenter.resources
è
sovrapponibili.
Per i dispositivi AOSP, tutte le risorse in com.android.safetycenter.resources
sono sovrapponibili senza restrizioni sui contenuti.
Per i dispositivi GMS che non sono configurati per ricevere aggiornamenti Mainline, crea un'istanza
com.google.android.safetycenter.resources
pacchetto in sostituzione o in sovrapposizione
com.android.safetycenter.resources
che definisce tutte le stringhe previste
test GTS.
Queste stringhe sono:
google_app_security_sources_title
google_app_security_sources_summary
google_play_protect_title
google_play_protect_title_for_work
google_play_protect_summary
google_play_protect_search_terms
google_lock_screen_sources_title
google_lock_screen_sources_summary
google_lock_screen_title
google_lock_screen_summary
google_lock_screen_search_terms
google_biometrics_title
google_biometrics_summary
google_biometrics_search_terms
google_biometrics_initial_display_state
google_accounts_sources_title
google_accounts_sources_summary
google_security_checkup_title
google_security_checkup_title_for_work
google_security_checkup_summary
google_security_checkup_search_terms
google_device_finder_sources_title
google_device_finder_sources_summary
google_find_my_device_title
google_find_my_device_summary
google_find_my_device_search_terms
google_updates_title
google_updates_summary
google_security_updates_title
google_security_updates_summary
google_security_updates_search_terms
google_security_updates_intent
google_play_system_update_title
google_play_system_update_summary
google_play_system_update_search_terms
google_privacy_sources_title
google_privacy_sources_summary
google_permission_usage_title
google_permission_usage_summary
google_permission_usage_search_terms
google_permission_manager_title
google_permission_manager_summary
google_permission_manager_search_terms
google_privacy_controls_title
google_privacy_controls_summary
google_privacy_controls_search_terms
google_advanced_title
google_advanced_security_title
google_advanced_security_summary
google_advanced_security_search_terms
google_advanced_privacy_title
google_advanced_privacy_summary
google_advanced_privacy_search_terms
Requisiti di personalizzazione
Requisiti per i formati file
Il file di configurazione deve essere un file XML e rispettare il formato descritto in
Aggiorna il file di configurazione. Il file deve essere nel formato
raw
cartella. Deve rispettare le varianti descritte in Personalizzare il Centro per la sicurezza online.
di terze parti e
Personalizzare le fonti del Centro per la sicurezza online
gruppi. Se
di configurazione del file di configurazione non è
formato correttamente per i requisiti di cui sopra,
è disabilitata del tutto. L'analisi di questo file è supportata anche da CTS e GTS
test che possono fornire un contesto aggiuntivo nel caso in cui il file non abbia un formato corretto (su
parte superiore del
logcat
log del dispositivo).
Dispositivi dei servizi Google
Sui dispositivi GMS, sono imposti alcuni vincoli a questo file. Questa funzionalità è supportata da GTS test.
Dispositivi AOSP
Sui dispositivi AOSP, il file di configurazione deve avere una formattazione corretta e deve passare il parametro CTS test per la sicurezza al centro. I test verificano che il file sia nel formato corretto. I dispositivi GMS devono inoltre superare questi test.