Google Pixel Tablet-Sicherheitscenter aktivieren oder deaktivieren
Verwenden Sie zum Aktivieren oder Deaktivieren des Sicherheitscenters das überblendbare boolesche Feld config_enableSafetyCenter
in der Datei frameworks/base/core/res/res/values/config.xml
.
Auf den meisten Geräten wird das Sicherheitscenter standardmäßig unterstützt, z. B. auf Smartphones und Tablets. Auf einigen Geräten ist der Dienst „Sicherheitscenter“ standardmäßig deaktiviert, z. B. auf Auto-, TV- und Wear-Geräten.
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- ... -->
<!-- Determines whether SafetyCenter feature is enabled. -->
<bool name="config_enableSafetyCenter">true</bool>
<!-- ... -->
</resources>
Wenn Sie das Sicherheitscenter unterstützen möchten, legen Sie für config_enableSafetyCenter
den Wert true
fest. Wenn Sie das Safety Center nicht unterstützen möchten, setzen Sie diesen Wert auf false
, um es zu deaktivieren.
Wenn das Sicherheitscenter deaktiviert ist, wird bei jedem Versuch, auf die Seite „Sicherheit und Datenschutz“ umzuleiten, stattdessen die App „Einstellungen“ geöffnet. Alle Versuche, mit den APIs zu interagieren, werden ignoriert oder es wird ein Standardwert zurückgegeben. Je nachdem, ob das Sicherheitscenter aktiviert ist, werden auch die zugehörige Kachel der Schnelleinstellungen und der entsprechende Eintrag eingeblendet oder ausgeblendet.
DeviceConfig-Flag
Zusätzlich zum Aktivieren des Sicherheitscenters mit der Konfiguration config_enableSafetyCenter
wird das Flag DeviceConfig
(safety_center_is_enabled
) verwendet, um das Sicherheitscenter per Fernzugriff zu aktivieren oder zu deaktivieren.
Unter Android 14 und höher sind keine weiteren Maßnahmen erforderlich, da dieses Flag standardmäßig auf true
gesetzt ist.
In Android 13 ist das Sicherheitscenter standardmäßig serverseitig deaktiviert und durch die Zulassungsliste mit diesem Flag aktiviert. Reiche deine Gerätefingerabdrücke ein und wende dich an deinen TAM, um auf die Zulassungsliste gesetzt zu werden. Beachten Sie, dass die Hauptversion M-2022-11
oder höher der Zulassungsliste hinzugefügt werden muss.
Für die lokale Entwicklung und Tests kann das Flag lokal mit einem adb
-Befehl aktiviert oder deaktiviert werden (bis zum Neustart). So aktivieren Sie das Flag beispielsweise:
adb root
adb shell device_config set_sync_disabled_for_tests until_reboot
adb shell device_config put privacy safety_center_is_enabled true
Und so überprüfen Sie, ob das Sicherheitscenter aktiviert ist:
adb root
adb shell cmd safety_center enabled
Die Ausgabe gibt an, ob der Dienst „Sicherheitscenter“ auf dem Gerät richtig aktiviert ist.
Konfigurationsdatei aktualisieren
Verwenden Sie die Konfigurationsdatei safety_center_config.xml
, um den Inhalt des Sicherheitscenter-Bildschirms zu ändern. Sie können diese Datei überlagern, sofern Sie die Anforderungen an die Anpassung erfüllt haben.
Konfigurationsdatei als Overlay
Informationen zum Ändern der Datei safety_center_config.xml
(Laufzeitressourcen-Overlays) finden Sie unter Wert der Ressourcen einer Anwendung zur Laufzeit ändern.
Achte in Android 14 darauf, die Datei res/raw-v34/safety_center_config.xml
und nicht res/raw/safety_center_config.xml
zu überlagern. Erstere hat Vorrang. Dies gilt auch für andere Dateien mit einem Geltungsbereich für v34
, z. B. res/values-v34/strings.xml
. Das Overlay-Paket muss eine SDK-Mindestversion haben, die niedriger als 34
ist. Andernfalls wird der v34
-Qualifier bei der Optimierung möglicherweise entfernt.
Verwenden Sie außerdem ein statisches Overlay, da dieser Wert beim Starten geladen wird.
Bei Android Open Source Project (AOSP)-Geräten wählen Sie das Paket com.android.safetycenter.resources
als Ziel. Es gibt keine Overlay-Konfiguration, auf die ausgerichtet werden kann. Alle Ressourcen können ohne Inhaltsbeschränkung eingeblendet werden.
Für GMD-Geräte, die für den Erhalt von Mainline-Updates konfiguriert sind, zielen Sie auf das Paket com.google.android.safetycenter.resources
ab. Legen Sie als Ziel die Konfiguration SafetyCenterConfig
fest. Für diese Konfiguration muss sich das Overlay-Paket entweder in der Partition product
, system
oder vendor
befinden. GMS-OEMs sollten die von Google bereitgestellte safety_center_config.xml
-Datei kopieren und die Änderungen auf diejenigen beschränken, die durch die GTS-Tests zugelassen sind. Die Overlay-Definition sollte ungefähr so aussehen:
<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>
Richte für GMD-Geräte, die nicht für den Empfang von Mainline-Updates konfiguriert sind, das Paket com.android.safetycenter.resources
als Ziel ein. Es gibt keine Overlay-Konfiguration für das Targeting. Das Overlay-Paket muss den Paketnamen com.google.android.safetycenter.resources
haben.
GMS-OEMs sollten die von Google bereitgestellte safety_center_config.xml
-Datei kopieren und Änderungen an den von den GTS-Tests erlaubten Änderungen einschränken. GMS-OEMs müssen auch die in der XML-Konfiguration verwendeten Strings definieren.
Dateistruktur
Die Datei safety_center_config.xml
enthält eine Liste von Sicherheitsquellen. Diese Sicherheitsquellen sind in Gruppen organisiert, um die Signale auf dem Bildschirm des Sicherheitscenters zu verwalten, z. B. die App-Sicherheit oder die Displaysperre. Die Reihenfolge dieser Liste bestimmt die Anzeigereihenfolge:
<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>
Google-Konfigurationsdatei
Die AOSP-Konfigurationsdatei befindet sich in packages/modules/Permission/SafetyCenter/Resources/res/raw/safety_center_config.xml
.
In Android 13 sieht die Google-Konfigurationsdatei so aus:
<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 sieht die Google-Konfigurationsdatei so aus:
<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>
In Android 15 sieht die Google-Konfigurationsdatei so aus:
<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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_play_protect_title_for_private_profile"
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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_biometrics_title_for_private_profile"
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"/>
<dynamic-safety-source
id="GoogleAutoLock"
packageName="com.google.android.gms"
profile="primary_profile_only"
initialDisplayState="hidden"
maxSeverityLevel="0"
packageCertificateHashes="1975b2f17177bc89a5dff31f9e64a6cae281a53dc1d1d59b1d147fe1c82afa00,f0fd6c5b410f25cb25c3b53346c8972fae30f8ee7411df910480ad6b2d60db83,d22cc500299fb22873a01a010de1c82fbe4d061119b94814dd301dab50cb7678,7ce83c1b71f3d572fed04c8d40c5cb10ff75e6d87d9df6fbd53f0468c2905053"/>
</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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_security_checkup_title_for_private_profile"
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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_password_checkup_title_for_private_profile"
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="AndroidCellularNetworkSecuritySources"
title="@com.google.android.safetycenter.resources:string/google_cellular_network_security_title"
summary="@com.google.android.safetycenter.resources:string/google_cellular_network_security_summary">
<dynamic-safety-source
id="AndroidCellularNetworkSecurity"
packageName="com.android.phone"
profile="primary_profile_only"
notificationsAllowed="true"
initialDisplayState="hidden"/>
</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">
<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="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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_ads_identity_title_for_private_profile"
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"
titleForPrivateProfile="@com.google.android.safetycenter.resources:string/google_activity_controls_title_for_private_profile"
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="AndroidPrivacySourcesAdditional"
title="@com.google.android.safetycenter.resources:string/google_privacy_additional_title">
<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"/>
<dynamic-safety-source
id="AndroidPrivateSpace"
packageName="com.android.settings"
profile="primary_profile_only"
title="@com.google.android.safetycenter.resources:string/google_private_space_title"
summary="@com.google.android.safetycenter.resources:string/google_private_space_summary"
searchTerms="@com.google.android.safetycenter.resources:string/google_private_space_search_terms"
initialDisplayState="hidden"
maxSeverityLevel="0"/>
</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>
Quellen für das Sicherheitscenter anpassen
Quellentypen im Sicherheitscenter
Quellen können dynamisch, nur für Probleme oder statisch sein, je nachdem, welche Art von Daten sie dem Safety Center zur Verfügung stellen.
Dynamische Quellen
Kennzeichne die Sicherheitsquelle als dynamic-safety-source
, wenn sie dem Sicherheitscenter dynamische Daten sowohl für die Eingangs- als auch für mögliche Warnkarten zur Verfügung stellen kann:
<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"/>
Nur Quellen für Probleme
Markieren Sie die Quelle als issue-only-safety-source
, wenn es keinen zugehörigen Einstellungseintrag gibt, aber trotzdem Warnungen angezeigt werden. Sie können nur Warnungen ausgeben. Die Eingabe eines Einstellungseintrags führt zu einem Fehler:
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
Statische Quellen
Markieren Sie die Quelle als static-safety-source
, wenn es sich um einen Weiterleitungseintrag ohne dynamische Daten handelt:
<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"/>
Sicherheitscenter-Quellkonfiguration
Je nach Safety Center-Quelltyp und anderen unveränderlichen Informationen sind Konfigurationsdateifelder optional, erforderlich oder unzulässig und können angepasst werden:
id
- Eindeutige Kennung für die Sicherheitsquelle, muss in der gesamten Datei eindeutig sein und darf nur aus Buchstaben (a–z, A–Z) bestehen. Die Groß- und Kleinschreibung wird berücksichtigt.
- Stringtyp
- Für alle Typen von Sicherheitsquellen erforderlich
packageName
- Name des Pakets, zu dem diese Sicherheitsquelle gehört, z. B.
com.google.android.permissioncontroller
. - Stringtyp
- Erforderlich für dynamische Sicherheitsquellen und nur für Probleme vorgesehene Sicherheitsquellen
- Unter Android 13 für statische Sicherheitsquellen verboten. Unter Android 14 kann dies optional so festgelegt werden, dass das Targeting explizit und nicht implizit auf die
intentAction
der Quelle ausgerichtet wird. Weitere Informationen finden Sie in der Dokumentation zur Intent-Auflösung.
- Name des Pakets, zu dem diese Sicherheitsquelle gehört, z. B.
initialDisplayState
- Wie der UI-Eintrag angezeigt wird, wenn die Sicherheitsquelle keine Daten bereitstellt
- Als String dargestellter Enum-Typ. Er muss einer der folgenden Werte sein:
enabled
(Standardeinstellung, wird normal angezeigt)disabled
(grau hinterlegt, kann nicht angeklickt werden)hidden
(wird nicht angezeigt)
- Optional für dynamische Sicherheitsquellen (Standardwert:
enabled
) - Nicht zulässig bei reinen Problem- und statischen Sicherheitsquellen
profile
- Gibt an, ob diese Sicherheitsquelle mit dem verwalteten Profil des Nutzers interagiert
- Der als String dargestellte Enum-Typ muss einer der folgenden sein:
primary_profile_only
(interagiert nur mit dem übergeordneten Profil des Profils)all_profiles
(kann auch mit den verwalteten Profilen und ab Android 15 mit dem privaten Profil interagieren)
- Unter
all_profiles
werden mehrere UI-Einträge generiert (einer für das übergeordnete Profil und einer für jedes verwaltete Profil). Die Sicherheitsquelle kann unterschiedliche Daten für jedes Profil bereitstellen. - Für alle Sicherheitsquellen erforderlich
searchTerms
- Liste der Suchbegriffe, die dem Eintrag „Sicherheitscenter“ zugeordnet werden, wenn die Suche in der App „Einstellungen“ verwendet wird
- Ressourcen-ID, dargestellt als voll qualifizierter Ressourcenname, z. B.
@package:string/my_search_terms
- Optional für dynamische und statische Sicherheitsquellen (Standardeinstellung: keine Suchbegriffe)
- Verboten für Sicherheitsquellen, die nur Probleme enthalten
title
- Standardtitel des UI-Eintrags, der verwendet wird, wenn keine Daten dynamisch von der Quelle bereitgestellt werden
- Ressourcen-ID als voll qualifizierter Ressourcenname, z. B.
@package:string/my_title
- Erforderlich für dynamische und statische Sicherheitsquellen (außer
initialDisplayState="hidden"
ohnesearchTerms
) - Verboten für Sicherheitsquellen, die nur Probleme enthalten
titleForWork
- Standardtitel des UI-Eintrags für das verwaltete Profil, der verwendet wird, wenn Daten nicht dynamisch von der Quelle bereitgestellt werden
- Ressourcen-ID, dargestellt als voll qualifizierter Ressourcenname, z. B.
@package:string/my_title_for_work
- Erforderlich für dynamische und statische Sicherheitsquellen, für die
profile="all_profiles"
angegeben ist (außerinitialDisplayState="hidden"
ohnesearchTerms
) - Nicht zulässig bei Sicherheitsquellen oder ‐quellen, die nur für ein Problem dienen, mit
profile="primary_profile_only"
summary
- Standardzusammenfassung des UI-Eintrags (dies ist eine längere Textbeschreibung unter dem Titel), die verwendet wird, wenn Daten von der Quelle nicht dynamisch bereitgestellt werden
- Ressourcen-ID als voll qualifizierter Ressourcenname, z. B.
@package:string/my_summary
- Optional für statische Sicherheitsquellen (Standard ist keine Zusammenfassung)
- Erforderlich für dynamische Sicherheitsquellen (außer
initialDisplayState
isthidden
) - Verboten für Sicherheitsquellen, die nur Probleme enthalten
intentAction
- Aktion, die ausgelöst wird, wenn auf den UI-Eintrag geklickt wird
- Stringtyp, z. B.
com.google.android.settings.security.SECURITY_ADVANCED_SETTINGS
, oder Ressourcen-ID als vollständig qualifizierter Ressourcenname, z. B.@package:string/my_intent_action
- Wenn diese Intent-Aktion für das angegebene
packageName
(falls vorhanden) nicht aufgelöst wird, verhält sich der UI-Eintrag genauso wie mitinitialDisplayState="disabled"
. - Erforderlich für statische Sicherheitsquellen und
dynamic
-Sicherheitsquellen mitinitialDisplayState="enabled"
- Nicht zulässig für Sicherheitsquellen, die nur zu einem Problem gehören
maxSeverityLevel
- Die höchste Schwere, die diese Safety Center-Quelle angeben kann
- Ganzzahl, als String dargestellt, z. B.
300
- Optional für dynamische und nur auf Probleme ausgerichtete Sicherheitsquellen (Standard ist „Kein Maximum“)
- Verboten für statische Sicherheitsquellen
loggingAllowed
- Ob das Sicherheitscenter Interaktionen oder Daten im Zusammenhang mit dieser Quelle protokollieren kann
- Boolesch, als String dargestellt, z. B.
false
- Optional für dynamische und reine Sicherheitsquellen (Standardeinstellung ist
true
) - Nicht zulässig bei statischen Sicherheitsquellen
refreshOnPageOpenAllowed
- Gibt an, ob ein Signal an die Sicherheitsquelle gesendet werden soll, um die Daten zu aktualisieren, wenn der Bildschirm des Sicherheitscenters geöffnet wird.
- Boolesch, als String dargestellt, z. B.
true
- Optional für dynamische und nur auf Probleme ausgerichtete Sicherheitsquellen (Standard ist
false
) - Verboten für statische Sicherheitsquellen
notificationsAllowed
(ab Android 14)- Ob die Sicherheitsquelle beim Melden eines Problems optional eine Benachrichtigung senden kann
- Boolesch, als String dargestellt, z. B.
true
- Optional für dynamische und nur auf Probleme ausgerichtete Sicherheitsquellen (Standard ist
false
) - Verboten für statische Sicherheitsquellen
deduplicationGroup
(ab Android 14)- Eine potenzielle eindeutige Kennung, mit der Probleme aus verschiedenen Quellen dedupliziert werden können. Quellen innerhalb derselben Deduplizierungsgruppe können Probleme mit einer optionalen Deduplizierungs-ID senden. Probleme mit derselben Deduplizierungs-ID werden in der UI nur einmal angezeigt, auch wenn sie von mehreren Quellen gesendet werden.
- Stringtyp
- Optional für dynamische und reine Sicherheitsquellen (Standardeinstellung: keine Deduplizierung)
- Nicht zulässig bei statischen Sicherheitsquellen
packageCertificateHashes
(ab Android 14)- Eine durch Kommas getrennte Liste von Zertifikats-Hashes für das angegebene
packageName
. Wenn diese Option festgelegt ist, wird bei der Interaktion mit der Sicherheitsquelle aus Sicherheitsgründen eine Zertifikatsprüfung für die angegebenepackageCertificateHashes
für die angegebenepackageName
ausgeführt. - Stringtyp
- Optional für dynamische und reine Sicherheitsquellen (Standardeinstellung: keine Zertifikatsprüfungen)
- Verboten für statische Sicherheitsquellen
- Eine durch Kommas getrennte Liste von Zertifikats-Hashes für das angegebene
titleForPrivateProfile
(ab Android 15)- Standardtitel des UI-Eintrags für das private Profil, der verwendet wird, wenn Daten nicht dynamisch von der Quelle bereitgestellt werden
- Ressourcen-ID, dargestellt als voll qualifizierter Ressourcenname, z. B.
@package:string/my_title_for_private_profile
- Erforderlich für dynamische und statische Sicherheitsquellen, für die
profile="all_profiles"
angegeben ist (außerinitialDisplayState="hidden"
ohnesearchTerms
) - Verboten für Sicherheitsquellen, die nur Probleme enthalten, oder Quellen mit
profile="primary_profile_only"
Quellengruppen im Sicherheitscenter anpassen
Quellen im Sicherheitscenter müssen in einer Quellengruppe im Sicherheitscenter enthalten sein. Jede Quellgruppe wird in der Benutzeroberfläche in der Reihenfolge angezeigt, in der die Quellgruppen in der Datei aufgeführt sind. Jede Quelle wird innerhalb der Gruppe in der Reihenfolge angezeigt, in der sie in der Datei aufgeführt ist. Wenn die Gruppe nur eine Sicherheitsquelle enthält, wird sie nicht als Gruppe, sondern als einzelner Eintrag angezeigt.
Konfiguration der Sicherheitscenter-Quellengruppe
Verwenden Sie die folgenden Variablen, um Safety Center-Quellgruppen anzupassen:
id
- Eindeutige Kennung für die Gruppe der Sicherheitsquellen; muss in der gesamten Datei eindeutig sein
- Stringtyp
- Erforderlich
title
- Titel der Gruppe in der Benutzeroberfläche
- Ressourcen-ID als voll qualifizierter Ressourcenname, z. B.
@package:string/my_title
- Erforderlich, wenn sich in der Gruppe mindestens eine dynamische oder statische Sicherheitsquelle befindet (d. h. die Gruppe nicht
type="hidden"
ist)
summary
- Eine kurze Beschreibung der Gruppe auf der Benutzeroberfläche, die unter dem Titel angezeigt wird. Wird unter bestimmten Bedingungen angezeigt, in der Regel, wenn keine Daten bereitgestellt werden. Andernfalls wird die Zusammenfassung anhand der Daten berechnet, die von den Quellen innerhalb der Gruppe bereitgestellt werden.
- Ressourcen-ID als voll qualifizierter Ressourcenname, z. B.
@package:string/my_summary
- Optional (Standardeinstellung: keine Zusammenfassung)
statelessIconType
- Symboltyp, der für die Gruppe angezeigt wird, wenn die Sicherheitsquellen keinen Status bereitstellen, z. B. statische Einträge
- Enum-Typ, der als String dargestellt wird und entweder
none
oderprivacy
(Typ des Datenschutzsymbols) sein muss - Optional (Standardwert ist
none
)
type
(ab Android 14)- Ein expliziter Typ, der beschreibt, wie diese Gruppe mit dem Sicherheitscenter interagiert
- Der als String dargestellte Enum-Typ muss einer der folgenden sein:
stateful
(wird angezeigt und trägt zum Gesamtstatus des Sicherheitscenters bei)stateless
(wird angezeigt und trägt nicht zum allgemeinen Status des Sicherheitscenters bei)hidden
(wird nicht angezeigt, alle Quellen müssen nur Probleme enthalten)
- Optional, standardmäßig anhand der Sicherheitsquellen in der Gruppe sowie
summary
undstatelessIconType
abgeleitet. Wenntype
angegeben ist, werden einige zusätzliche Invarianten erzwungen, um sicherzustellen, dass sie mit den in der Gruppe gefundenen Quellen übereinstimmt. Die Gruppe darf beispielsweise nichthidden
sein, wenn sie für den Nutzer sichtbare Einträge enthält.
Quellengruppentypen im Sicherheitscenter
Safety Center-Quellgruppen werden basierend auf dem Status bestimmter Felder als zustandsabhängig, zustandslos oder ausgeblendet klassifiziert.
Zustandsorientierte Gruppe
Eine Gruppe, die sowohl einen Titel als auch eine Zusammenfassung hat oder stateLessIconType="privacy"
als zustandsabhängig gilt, trägt zum Gesamtstatus des Play Store-Sicherheitscenters bei:
<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 wird eine solche Gruppe in der UI als minimierbarer Eintrag angezeigt. In Android 14 wird es als Eintrag mit eigenem Status angezeigt, der zur Unterseite weiterleitet.
Zustandslose Gruppe
Eine Gruppe mit einem Titel, aber ohne Zusammenfassung. stateLessIconType="none"
gilt als zustandslos und trägt nicht zum Gesamtstatus des Play Store-Sicherheitscenters bei:
<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>
Eine solche Gruppe wird in der Benutzeroberfläche als starre Liste von Einträgen angezeigt.
Ausgeblendete Gruppe
Eine ausgeblendete Gruppe enthält nur Sicherheitsquellen, die nur für Probleme vorgesehen sind, und hat keinen Titel. Ausgeblendete Gruppen werden in der Benutzeroberfläche nicht angezeigt:
<safety-sources-group
id="HiddenGroup">
<issue-only-safety-source
id="AndroidAccessibility"
packageName="com.google.android.permissioncontroller"
profile="all_profiles"
refreshOnPageOpenAllowed="true"/>
</safety-sources-group>
Dynamische Daten für einen statischen Eintrag
Sie können die dynamische Sicherheitscenter-Quelle als statischen Eintrag anzeigen lassen, der es ermöglicht, Weiterleitungseinträge in Abhängigkeit von bestimmten Bedingungen zu senden und den Inhalt während der Laufzeit anzupassen. Definieren Sie die dynamische Quelle in einer zustandslosen Gruppe, z. B. abhängig von den Informationen zu Ihren Arbeitsrichtlinien.
Dieses Beispiel zeigt eine dynamische Sicherheitsquelle, die kein Sicherheitssignal bereitstellt, da sie sich in einer zustandslosen Gruppe befindet:
<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 diesem Beispiel kann die Quelle nur grüne Warnkarten senden und einen nicht angegebenen Status bereitstellen. Damit andere Daten bereitgestellt werden können, muss sich die Quelle in einer zustandsorientierten Gruppe befinden.
Strings und Overlay-Felder anpassen
Bei GMD-Geräten, die nicht für den Empfang von Mainline-Updates konfiguriert sind, kannst du, statt die gesamte Konfigurationsdatei überlagern, sechs String-Ressourcen überlagern, um alle Anpassungsanforderungen zu erfüllen. Die überlagernden Stringressourcen sind in der Tabelle aufgeführt.
Stringressource | Beschreibung |
---|---|
google_lock_screen_sources_summary |
Überlagern Sie diesen Wert, um eine statische Zusammenfassung zu definieren, die für die Gruppe AndroidLockScreenSources angezeigt wird, wenn alle Quellen in der Gruppe einwandfrei sind (Informationen oder nicht angegebener Schweregrad). Standardmäßig wird im Safety Center der Titel aller Quellen in der Gruppe als Zusammenfassung angezeigt. |
google_biometrics_title |
Überlagern Sie diesen Wert, um einen statischen Titel für die biometrische Quelle zu definieren, die dem Paket com.android.settings gehört und verwendet wird, wenn von der Quelle keine dynamischen Daten bereitgestellt werden. Lege dieses Overlay auch dann über den Titel, wenn der Titel dynamisch von der Quelle im com.android.settings -Paket bereitgestellt wird. Dies wird standardmäßig ignoriert, da der anfängliche Anzeigestatus für die Quelle hidden ist. |
google_biometrics_summary |
Überlagern Sie diesen Wert, um eine statische Zusammenfassung für die biometrische Quelle zu definieren, die dem com.android.settings -Paket gehört, das verwendet wird, wenn keine dynamischen Daten von der Quelle bereitgestellt werden. Dies wird standardmäßig ignoriert, da der anfängliche Anzeigestatus für die Quelle hidden ist. |
google_biometrics_search_terms |
Überlagern Sie diesen Wert, um eine Liste von Suchbegriffen für die biometrische Quelle zu definieren, die dem com.android.settings -Paket zugewiesen ist. |
google_biometrics_initial_display_state |
Blenden Sie diesen Wert ein, um einen UI-Eintrag für die biometrische Quelle des Pakets com.android.settings aufzurufen, wenn keine dynamischen Daten von der Quelle bereitgestellt werden. Der Standardwert ist hidden . |
google_security_updates_intent |
Blenden Sie diesen Wert ein, um den Intent zu ändern, der zum Öffnen der Aktivität erforderlich ist, mit der der Nutzer Sicherheitsupdates prüfen und installieren kann. Diese Intent-Aktion muss mit einer exportierten Aktivität verknüpft sein. Der Standardwert ist android.settings.SYSTEM_UPDATE_SETTINGS . |
Keine anderen Strings im com.google.android.safetycenter.resources
-Paket können überlagert werden.
Bei AOSP-Geräten können alle Ressourcen im com.android.safetycenter.resources
-Paket ohne Einschränkungen für den Inhalt überlagert werden.
Erstellen Sie für GMS-Geräte, die nicht für den Empfang von Mainline-Updates konfiguriert sind, ein com.google.android.safetycenter.resources
-Paket, das com.android.safetycenter.resources
ersetzt oder überlagert und alle Strings definiert, die von den GTS-Tests erwartet werden.
Diese Strings sind:
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
Anforderungen an die Anpassung
Anforderungen an Dateiformate
Die Konfigurationsdatei muss eine XML-Datei sein und dem Format entsprechen, das unter Konfigurationsdatei aktualisieren beschrieben ist. Die Datei muss sich im Ordner raw
befinden. Sie müssen den Invarianten entsprechen, die unter Sicherheitscenter-Quellen anpassen und Sicherheitscenter-Quellengruppen anpassen beschrieben sind. Wenn die Konfigurationsdatei nicht den oben genannten Anforderungen entspricht, wird die Funktion vollständig deaktiviert. Das Parsen dieser Datei wird auch durch CTS- und GTS-Tests gestützt, die zusätzlichen Kontext liefern können, falls die Datei nicht gut formatiert ist (zusätzlich zu den logcat-Gerätelogs).
Geräte mit Google-Diensten
Auf GMD-Geräten gelten einige Einschränkungen für diese Datei. Dies wird durch GTS-Tests unterstützt.
AOSP-Geräte
Auf AOSP-Geräten muss die Konfigurationsdatei korrekt formatiert sein und die CTS-Tests für den Play Store-Sicherheitscheck bestehen. Bei den Tests wird geprüft, ob die Datei korrekt formatiert ist. GMD-Geräte müssen diese Tests ebenfalls bestehen.