En esta página, se describe la configuración de seguridad y privacidad en Android y cómo acceder a ella (incluida la estructura, integración y personalización) a través del Centro de seguridad.
A partir de Android 13, el Centro de seguridad combina elementos de seguridad y privacidad en una sola página llamada Seguridad y privacidad. También puedes acceder a Safety Center desde una tarjeta de Configuración rápida.
El Centro de seguridad proporciona entradas de redireccionamiento para que los usuarios puedan acceder a una configuración específica de seguridad y privacidad. Safety Center también identifica problemas que los usuarios pueden corregir en sus dispositivos o cuentas combinando datos dinámicos recibidos de varias fuentes. Estos datos proporcionan a los usuarios un estado de seguridad general con recomendaciones específicas.
Figura 1: Pantalla del Centro de seguridad
Requisitos y lineamientos de integración
- Android 13 y Mainline M-2022-11 o versiones posteriores
- Archivo de configuración del framework de Android para habilitar Safety Center:
- El campo
config_enableSafetyCenter
superponible del archivoframeworks/base/core/res/res/values/config.xml
se establece entrue
(predeterminado).
- El campo
Requisitos del servidor (solo para Android 13):
- La marca
DeviceConfig
safety_center_is_enabled
se establece comotrue
(true
predeterminado desde Android 14).
- La marca
Lineamientos
- Los OEMs de GMS que no implementen Safety Center pueden inhabilitar esta función configurando el campo
config_enableSafetyCenter
superponible del archivoconfig.xml
enfalse
(el valor predeterminado estrue
). Para obtener más información, consulta Habilita o inhabilita Safety Center. - Para evitar un error en la integración de la pantalla de bloqueo en Android 13, consulta Acerca de PendingIntent y Solución para PendingIntent. No es necesario hacerlo en Android 14 ni en QPR de Android 13, ya que el problema se corrigió.
Cómo realizar la integración con el Centro de seguridad
- Habilita Safety Center en tu dispositivo.
- (Opcional) Modifica el archivo de configuración de Safety Center para cambiar la forma en que se proporcionan los datos. Consulta Actualiza el archivo de configuración. Los cambios en el archivo de configuración deben cumplir con los requisitos de personalización y deben probarse con una prueba de GTS que imponga restricciones estrictas a las modificaciones.
- (Opcional) Modifica la app de Configuración para agregar o cambiar la entrada Seguridad y privacidad.
- Agrega o cambia la compatibilidad con las fuentes de seguridad para asegurarte de que el Centro de seguridad funcione con indicadores como la pantalla de bloqueo o los datos biométricos (si son compatibles). Esto puede requerir algunos cambios en la app de Configuración para implementarlo correctamente. Por ejemplo, cambiar el nombre del paquete de configuración en el archivo de configuración al adecuado y usar las APIs de fuente de Safety Center en tu app de Configuración.
- (Opcional) Personaliza la IU del Centro de seguridad superponiendo temas, padding y otras funciones.
- Ejecutar y aprobar las pruebas de GTS y CTS asociadas
- En 13, asegúrate de haber enviado huellas digitales del dispositivo para la lista de entidades permitidas del servidor. No es necesario hacerlo en 14.
Fuentes del Centro de seguridad
Una fuente del Centro de seguridad proporciona datos al Centro de seguridad. Por lo general, una fuente es propiedad de una app independiente en el dispositivo. Actualmente, solo se permiten fuentes de seguridad de apps del sistema. Las apps de terceros no son fuentes de seguridad.
Estos son algunos ejemplos de fuentes de Safety Center:
- Bloquear pantalla
- Datos biométricos
- Actualizaciones de seguridad
- Encontrar mi dispositivo
- Google Play Protect
- Verificación de seguridad de la Cuenta de Google
- Indicadores de privacidad
Una fuente de Safety Center puede proporcionar estos tipos de datos:
- Una entrada en la IU de Safety Center para redireccionar al usuario a otra pantalla. Esta entrada tiene un estado que representa si el usuario está en riesgo, junto con metadatos adicionales asociados con el estado, como el título y el resumen.
- Son tarjetas de advertencia (también llamadas problemas) que se pueden resolver directamente desde el Centro de seguridad o redireccionando a un usuario a otra pantalla. Cada problema también tiene metadatos adicionales asociados, como el título, el resumen, las etiquetas de los botones y las acciones.
- Posibles errores que se produjeron cuando se intentaron proporcionar datos a Safety Center.
- Es el motivo por el que una fuente envía datos al Centro de seguridad.
Archivo de configuración
Las fuentes de Safety Center se enumeran en un archivo de configuración que actúa como una lista de entidades permitidas. Este archivo también proporciona datos predeterminados para cada entrada de la IU. El archivo de configuración puede especificar entradas de redireccionamiento estáticas que no pueden afectar el estado de Safety Center ni los problemas (también llamados fuentes de seguridad estáticas). Para obtener más información, consulta Cómo actualizar el archivo de configuración.
Módulo de línea principal
Safety Center forma parte principalmente del módulo Mainline de PermissionController, por lo que Google puede actualizar esta función como parte de una actualización de Mainline para dispositivos OEM de GMS que admiten Mainline.
Los dispositivos OEM que no son de GMS y los dispositivos OEM de GMS que no son compatibles con Mainline pueden usar Safety Center si esta función está incluida en su imagen del sistema. Sin embargo, deben usar el código de M-2022-11 o versiones posteriores. Consulta Habilita o inhabilita Safety Center para conocer los requisitos.
APIs de Safety Center
Las APIs del Centro de seguridad están escritas en Java, y las muestras de código de esta página están escritas en Java. Sin embargo, debido a que Kotlin es interoperable con Java, se pueden usar las APIs del Centro de seguridad en Kotlin. Varias partes de la app del sistema PermissionController que interactúan con Safety Center están escritas en Kotlin.
Puedes usar APIs para interactuar con el Centro de seguridad. Se puede acceder a estas APIs principalmente a través de SafetyCenterManager
, que es una API del sistema. Para obtener más información, consulta Cómo interactuar con Safety Center.
Acciones y elementos adicionales de intents
A partir de Android 13, se define una acción de intent pública (a la que pueden acceder apps de terceros) en la clase Intent
para redireccionar al Centro de seguridad.
Las acciones y los elementos adicionales se definen en SafetyCenterManager
y solo las apps del sistema pueden acceder a ellos para permitir, por ejemplo, redireccionar a un problema específico.
API habilitada para el Centro de seguridad
SafetyCenterManager
expone una API que muestra si Safety Center está habilitado en el dispositivo. La API confirma si el dispositivo cumple con los requisitos del Centro de seguridad, por ejemplo, si tiene instalada la versión correcta del módulo de línea principal. Esta verificación se usa para determinar si el Centro de seguridad se muestra en Configuración y otros lugares. Esto también se puede usar para determinar
si se deben proporcionar los datos al Centro de seguridad. Si quieres obtener información para activar o desactivar el Centro de seguridad, consulta Cómo habilitar o inhabilitar el Centro de seguridad.
APIs de origen de Safety Center
Las fuentes del Centro de seguridad usan las APIs de origen del Centro de seguridad para proporcionarle datos dinámicos. Las APIs de origen de Safety Center realizan las siguientes funciones:
- Establece los datos de una fuente de Safety Center determinada.
- Obtén el conjunto de datos más reciente de una fuente determinada de Safety Center.
- Informar un error de una fuente determinada de Safety Center
Las fuentes del Centro de seguridad pueden aceptar recibir una señal para enviar datos al Centro de seguridad en ocasiones especiales, por ejemplo, cuando se abre la página del Centro de seguridad, para garantizar que los datos proporcionados estén actualizados.
APIs del Centro de seguridad interno
Algunas APIs de Safety Center son internas y solo las usa el módulo principal de PermissionController
, excepto por el shell y las pruebas. Por motivos técnicos, estas APIs no están ocultas y las expone SafetyCenterManager
.
Las APIs de Safety Center realizan las siguientes funciones:
- Envía un indicador a las fuentes de Safety Center para actualizar sus datos.
- Obtén una representación del archivo de configuración.
- Obtener datos combinados de varias fuentes de Safety Center
- Suscribirse y anular la suscripción a los cambios de datos
- Descartar tarjetas de advertencia
- Ejecuta una acción de tarjeta de advertencia.
APIs de prueba
SafetyCenterManager
incluye las APIs de prueba de Safety Center que se usan para las pruebas.
Las APIs de prueba del Centro de seguridad pueden hacer lo siguiente:
- Borra todos los datos almacenados por el Centro de seguridad.
- Anular el archivo de configuración y borrar la anulación
Comandos del shell
Se proporcionan algunos comandos de shell para interactuar con Safety Center a través de Android Debug Bridge Shell (adb shell
). Usa adb shell cmd safety_center help
para ver la lista de comandos y lo que pueden hacer.
Interfaz de usuario del Centro de seguridad
La interfaz de usuario del Centro de seguridad se define en la app del sistema PermissionController
dentro del módulo PermissionController
. La IU se compone de una actividad y varios fragmentos que usan las APIs que se describen en APIs de Safety Center interno. La tarjeta de configuración rápida que expone Safety Center usa los mismos componentes de la IU con algunos cambios menores en la forma en que se organizan los elementos.
El aspecto de esta página se puede cambiar con superposiciones. Para obtener más información, consulta Cómo personalizar la IU de Safety Center.