Android 10 para desarrolladores: aspectos destacados de Android 10

Llegó el 2020. Aunque el comienzo del 2020 es algo difícil, creemos que el país definitivamente podrá superar la epidemia y superar las dificultades. China definitivamente lo hará, ¡y el pueblo chino definitivamente podrá hacerlo! ¡Ve a China! ¡Vaya Wuhan!

Este año, Android 10 será ampliamente utilizado, lo que presenta nuevos requisitos de adaptación para los desarrolladores, para comprender mejor las características y ventajas de Android 10, y para comprender las necesidades de adaptación del desarrollo durante la actualización, ¡es inminente!

Android 10 se basa en tres temas importantes. Primero, Android 10 está a la vanguardia de la innovación móvil con su aprendizaje automático avanzado y soporte para dispositivos emergentes (como dispositivos plegables y teléfonos móviles habilitados para 5G) . En segundo lugar, una de las principales preocupaciones de Android 10 es la privacidad y la seguridad , entre las cuales casi 50 funciones pueden brindar a los usuarios una mejor protección, mayor transparencia y un mejor control de los datos relevantes. Finalmente, Android 10 permite a los usuarios controlar mejor la salud digital , para que las personas y las familias puedan hacer un mejor uso de esta tecnología.

A continuación, vamos a presentar las funciones que ofrece Android 10 para los desarrolladores y cómo puede utilizarlas ahora.

Tecnología innovadora y nueva experiencia

Con Android 10, puede aprovechar al máximo las últimas innovaciones de hardware y software para crear una excelente experiencia de aplicación para los usuarios.

Con Android 10, puede optimizar aplicaciones para dispositivos plegables y otros dispositivos de pantalla grande.

Equipo plegable

Android 10 está construido sobre la base de una potente compatibilidad con múltiples ventanas, que amplía las capacidades de multitarea de las ventanas entre aplicaciones y también proporciona continuidad de pantalla, lo que puede mantener el estado de la aplicación cuando el dispositivo se pliega o expande. Android 10 agrega múltiples mejoras a onResume y onPause para admitir múltiples restauraciones y notificar a la aplicación cuando se enfoca. También cambia la forma en que funciona la propiedad de manifiesto resizeableActivity para ayudarlo a administrar cómo se muestra su aplicación en dispositivos de pantalla grande y plegable. Para ayudar a compilar para dispositivos plegables, puede configurar un emulador plegable en Android Studio para usarlo como dispositivo virtual (AVD). Para obtener detalles sobre cómo optimizar aplicaciones para dispositivos plegables, consulte la guía para desarrolladores .

Red 5G

Se espera que 5G aumente constantemente la velocidad y reduzca la latencia. Android 10 agrega soporte de plataforma para 5G y extiende las API existentes para ayudarlo a aprovechar al máximo estas mejoras. Puede usar la API de conexión para detectar si el dispositivo tiene una conexión de gran ancho de banda y también puede verificar si la conexión se factura por tráfico. Con estas funciones, sus aplicaciones y juegos pueden personalizar una experiencia rica e inmersiva para los usuarios que usan 5G.

Respuesta inteligente en notificación

Android 10 utiliza el aprendizaje automático en el dispositivo para proporcionar sugerencias de acciones contextuales en las notificaciones, como mensajes de respuesta inteligente o abrir un mapa de una dirección en la notificación. Su aplicación puede aprovechar al máximo esta función de inmediato, sin que tenga que realizar ninguna acción. La respuesta inteligente y la operación proporcionada por el sistema se insertan directamente en la notificación de forma predeterminada. Aún puede proporcionar su propia respuesta o acción según sea necesario. Utilice setAllowGeneratedReplies () y setAllowSystemGeneratedContextualActions () para elegir deshabilitar las respuestas inteligentes para cada notificación.

La respuesta inteligente puede proporcionar sugerencias de operación basadas en el contenido de la notificación.

Tema oscuro

Android 10 agrega un tema oscuro a nivel del sistema, que es muy adecuado para escenas oscuras y puede ayudar a ahorrar energía. El usuario puede activar el nuevo tema oscuro a nivel del sistema yendo a "Configuración" para realizar los ajustes correspondientes o activando el "Modo de ahorro de energía". Esto cambiará la interfaz del sistema a oscura y habilitará temas oscuros para aplicaciones que admitan temas oscuros. Puede crear un tema oscuro personalizado para su aplicación, o puede optar por utilizar la nueva función Force Dark para permitir que el sistema cree dinámicamente una versión oscura basada en temas existentes. También puede aprovechar al máximo la función DayNight de AppCompat para proporcionar un tema oscuro para los usuarios que usan versiones anteriores de Android. Para obtener más información, consulte la guía para desarrolladores .

Android 10 puede usar Force Dark para crear dinámicamente temas oscuros para aplicaciones.

Navegación por gestos

La navegación por gestos permite que la aplicación muestre contenido en pantalla completa.

Android 10 introdujo un modo de navegación por gestos completo, que no muestra el área de la barra de notificaciones, lo que permite que las aplicaciones usen la pantalla completa para brindar una experiencia más rica y envolvente. Conserva la conocida navegación "atrás", "pantalla de inicio" y "reciente" a través de deslizamientos de borde (en lugar de botones visibles). Para integrarse sin problemas con la navegación por gestos, debe seguir los bordes y dibujar detrás de la barra de navegación para crear una experiencia envolvente. Para lograr esto, la aplicación debe usar la API setSystemUiVisibility () para diseñar en modo de pantalla completa, y luego manejar WindowInsets en consecuencia para asegurarse de que no se bloqueen áreas importantes de la interfaz. Empiece a optimizar su aplicación de inmediato y consulte nuestra serie de blogs para obtener más información.

Panel de configuración

Ahora puede mostrar la configuración clave del sistema directamente en el contexto de la aplicación a través de la nueva API del panel de configuración . El panel de configuración es una interfaz flotante, puede llamarlo para mostrar la configuración que el usuario puede necesitar usar, como la conexión a Internet, NFC y el volumen. Por ejemplo, el navegador puede mostrar un panel con configuraciones de conexión como modo avión, WLAN (incluidas las redes cercanas) y datos móviles. Para mostrar el panel de configuración, simplemente emita una intención con una nueva acción Settings.Panel .

Compartir atajo

La función de acceso directo para compartir hace que compartir sea más fácil y rápido, lo que permite a los usuarios saltar directamente a otras aplicaciones para compartir contenido. Los desarrolladores pueden publicar objetivos compartidos que pueden iniciar actividades específicas en la aplicación y adjuntar contenido al mismo tiempo; estos objetivos compartidos se mostrarán a los usuarios en la interfaz para compartir. Debido a que los destinos de uso compartido se publican por adelantado, la interfaz de uso compartido los cargará inmediatamente después del inicio. Los atajos compartidos son similares a los atajos de aplicaciones, todos usan la misma API ShortcutInfo . La biblioteca ShareTarget AndroidX también es compatible con esta API. Para obtener más información, consulte la aplicación de muestra .

Compartir accesos directos permite a los usuarios saltar directamente a una actividad específica en la aplicación y adjuntar contenido al mismo tiempo.

 

Configuración de privacidad del usuario

La privacidad es una de las principales preocupaciones de Android 10. Las mejoras relacionadas incluyen proporcionar protecciones más sólidas en la plataforma y tener en cuenta la privacidad al diseñar nuevas funciones. Android 10 se basa en la versión anterior e introduce una gran cantidad de cambios (como una interfaz del sistema mejorada, permisos más restrictivos y restricciones sobre los datos que pueden usar las aplicaciones), el propósito es proteger la privacidad y brindar a los usuarios más control. Para obtener más información sobre cómo admitir estos cambios en su aplicación, consulte Cambios de privacidad .

Los usuarios ahora pueden optar por otorgar acceso a la información de ubicación mientras la aplicación se ejecuta en primer plano.

Brinde a los usuarios más control sobre los datos de ubicación: los usuarios pueden controlar mejor sus datos de ubicación a través de nuevas opciones de permisos; ahora, pueden permitir que las aplicaciones accedan a la información de ubicación solo cuando estén realmente en uso (ejecutándose en primer plano). Para la mayoría de las aplicaciones, esto proporciona un nivel suficiente de acceso; para los usuarios, esta es una mejora importante para garantizar la transparencia y el control. Para obtener más información sobre los cambios de ubicación, consulte la guía para desarrolladores o nuestra publicación de blog .

Proteja los datos de ubicación al escanear la red: la mayoría de las API que se utilizan para escanear la red requieren permisos de ubicación generales. Android 10 cambia para requerir permisos de ubicación precisos , lo que mejora la defensa contra estas API.

Evite el seguimiento de dispositivos: las aplicaciones ya no pueden acceder a identificadores de dispositivos que no se pueden restablecer (que se pueden usar para el seguimiento), incluido el IMEI del dispositivo, los números de serie y los identificadores similares. La dirección MAC del dispositivo también se asignará aleatoriamente cuando se conecte a una red Wi-Fi de forma predeterminada. Lea las mejores prácticas , que lo ayudarán a elegir el identificador apropiado para su caso de uso específico; y haga clic aquí para obtener más información.

Proteja los datos del usuario en dispositivos de almacenamiento externos: Android 10 introduce algunos cambios para permitir a los usuarios controlar mejor los archivos en dispositivos de almacenamiento externos y los datos de la aplicación en ellos. Las aplicaciones pueden almacenar sus archivos en una caja de arena dedicada, pero deben usar MediaStore para acceder a los archivos multimedia compartidos y usar el selector de archivos del sistema para acceder a los archivos compartidos en la nueva colección de "contenido descargado". Para más detalles, haga clic aquí .

Bloquear interrupciones accidentales: Android 10 evita que las aplicaciones se inicien desde el fondo. El inicio desde el fondo hará que la aplicación salte inesperadamente al primer plano y obtenga el foco de otras aplicaciones. Para más detalles, haga clic aquí .

la seguridad

Android 10 presenta una serie de funciones para brindar a los usuarios una mayor seguridad a través de mejoras en el cifrado, mejoras de seguridad de la plataforma y autenticación. Lea la actualización de seguridad de Android 10 aquí .

Cifrado de almacenamiento: todos los dispositivos compatibles equipados con Android 10 deben cifrar los datos del usuario; para mejorar la eficiencia del cifrado, Android 10 presenta nuestro nuevo modo de cifrado Adiantum .

TLS 1.3 está habilitado de forma predeterminada: Android 10 también habilita TLS 1.3 de forma predeterminada , que es una revisión importante del estándar TLS con ventajas de rendimiento y mayor seguridad .

Mejoras de seguridad de la plataforma: Android 10 también presenta mejoras de seguridad para varias áreas clave de seguridad de la plataforma .

Funciones biométricas mejoradas: Android 10 amplía el marco BiometricPrompt para admitir métodos de autenticación pasivos como el reconocimiento facial y la adición de procesos de autenticación implícitos y explícitos. En un proceso explícito, el usuario debe confirmar explícitamente la transacción en el TEE durante la autenticación. Para las transacciones que requieren autenticación pasiva, los procesos implícitos son una alternativa más ligera. Android 10 también mejora el proceso de reversión de las credenciales del dispositivo a pedido. Para más detalles, haga clic aquí .

Cámara y medios

Profundidad dinámica de fotos

Las aplicaciones ahora pueden solicitar imágenes de profundidad dinámicas, que contienen metadatos JPEG, XMP relacionados con elementos relacionados con la profundidad, así como mapas de profundidad y confianza incrustados en el mismo archivo. Estas funciones le permiten proporcionar opciones de desenfoque y bokeh dedicadas en la aplicación. Dynamic Depth es un formato de código abierto que se usa en el ecosistema y estamos trabajando con socios para implementarlo en dispositivos con Android 10 y superior.

Puede utilizar imágenes de profundidad dinámica para proporcionar opciones de desenfoque y bokeh dedicadas en la aplicación.

Captura el audio reproducido

Ahora, cualquier aplicación que reproduzca audio permite que otras aplicaciones capturen su flujo de audio utilizando la nueva API de captura de reproducción de audio . Además de habilitar subtítulos, esta API también le permite admitir escenarios de uso comunes (como juegos en vivo). Tomamos en consideración la privacidad y la protección de los derechos de autor al crear esta nueva función. Por lo tanto, la capacidad de la aplicación para capturar audio de otras aplicaciones será limitada, lo que permitirá que las aplicaciones controlen por completo si se pueden capturar sus transmisiones de audio. Para obtener más información, lea esta publicación de blog .

Nuevos códecs de audio y video

Android 10 agrega soporte para el códec de video de código abierto AV1 , que permite a los proveedores de medios usar menos ancho de banda para transmitir contenido de video de alta calidad a dispositivos Android. Además, Android 10 también admite el uso de Opus (un códec abierto y libre de regalías optimizado para transmisión de voz y música) y HDR10 + (para video de alto rango dinámico en dispositivos que lo admitan) para la codificación de procesamiento de audio. La API MediaCodecInfo presenta una forma más sencilla de determinar las capacidades de reproducción de video de un dispositivo Android. Para cualquier códec especificado, puede obtener una lista de tamaños y velocidades de fotogramas admitidos.

API MIDI primitiva

Para las aplicaciones que usan C ++ para realizar su procesamiento de audio, Android 10 presenta una API MIDI nativa para comunicarse con dispositivos MIDI a través del NDK. Esta API permite recuperar datos MIDI dentro de las devoluciones de llamada de audio mediante lecturas sin bloqueo, procesando así mensajes MIDI con baja latencia. Pruébelo con la aplicación de muestra y el código fuente aquí .

Micrófono direccional escalable

Android 10 te permite controlar mejor la captura de audio a través de la nueva API MicrophoneDirection . Puede utilizar esta API para especificar la dirección preferida del micrófono al grabar. Por ejemplo, cuando un usuario está tomando un video "selfie", puede solicitar el micrófono frontal (si está disponible) para grabar. Además, esta API también introduce un método estandarizado para controlar micrófonos con zoom, lo que permite que su aplicación controle el tamaño del campo de grabación .

Vulkan está en todas partes

Android 10 incluye implementaciones de API multiplataforma de baja sobrecarga para dibujar gráficos 3D de alto rendimiento , ampliando el alcance de la influencia de Vulkan . Todos los dispositivos de 64 bits con Android 10 y superior ahora requieren Vulkan 1.1, y Vulkan 1.1 también se recomienda en todos los dispositivos de 32 bits. Hemos visto el fuerte impulso de todo el ecosistema que respalda fuertemente a Vulkan. Entre los dispositivos equipados con Android N o superior, el 53% de los dispositivos son compatibles con Vulkan 1.0.3 o superior. Con la introducción de nuevos requisitos relacionados en Android 10, esperamos que la tasa de adopción de Vulkan aumente aún más durante el próximo año.

Conectividad

Conexión punto a punto y conexión a Internet mejoradas

Refactorizamos la pila de WLAN para mejorar la configuración de privacidad y el rendimiento, al tiempo que mejoramos los escenarios de uso comunes (como administrar dispositivos de IoT y proporcionar sugerencias de conexión a Internet) sin solicitar permisos de ubicación. La API de conexión de red simplifica la operación de administración de dispositivos de IoT a través de WLAN local para funciones punto a punto como configuración, descarga o impresión. La API de sugerencias de red permite que la aplicación muestre al usuario la red Wi-Fi preferida para la conexión a Internet.

Modo de rendimiento de WLAN

Las aplicaciones ahora pueden solicitar WLAN adaptativa habilitando modos de alto rendimiento y baja latencia . Si la baja latencia es fundamental para la experiencia del usuario (como juegos en tiempo real, llamadas de voz activas y escenarios de uso similares), estos modos son extremadamente ventajosos. La plataforma se utiliza junto con el firmware del dispositivo para cumplir con los requisitos mínimos de consumo de energía. Para usar el nuevo modo de rendimiento, llame a WifiManager.WifiLock.createWifiLock () (use WIFI_MODE_FULL_LOW_LATENCYo WIFI_MODE_FULL_HIGH_PERF). En estos modos, la plataforma trabaja con el firmware del dispositivo para cumplir con los requisitos mínimos de consumo de energía.

Conceptos básicos de Android

Optimización de ART

Las mejoras en el tiempo de ejecución de ART pueden ayudar a que su aplicación se inicie más rápido, ocupe menos memoria y se ejecute con mayor fluidez sin que tenga que hacer nada. Con la ayuda de los archivos de configuración de ART proporcionados por Google Play , ART puede compilar previamente los componentes de la aplicación antes de que se ejecute. En tiempo de ejecución, Android 10 agrega una función de recolección de basura generacional al recolector de basura de copia simultánea (CC) de ART para ahorrar tiempo de recolección de basura y mejorar la eficiencia de la CPU, reducir el retraso y ayudar a que las aplicaciones se ejecuten sin problemas en dispositivos de gama baja.

La figura anterior muestra la reducción en el tiempo de inicio de una aplicación específica en forma de porcentaje después de usar el perfil de Play para probar.

API 1.2 de redes neuronales

Agregamos 60 operaciones nuevas (incluidas ARGMAX, ARGMIN y LSTM cuantificado) y realizamos una serie de optimizaciones de rendimiento. Esto sienta las bases para acelerar más modelos, como los modelos de detección de objetos y los modelos de segmentación de imágenes. Trabajamos con proveedores de hardware y utilizamos marcos de aprendizaje automático comunes (como TensorFlow ) para optimizar y admitir NNAPI 1.2.

API térmica

Cuando el dispositivo se sobrecalienta, pueden limitar la CPU y / o GPU, lo que puede afectar las aplicaciones y los juegos de formas inesperadas. Ahora, en Android 10, las aplicaciones y los juegos pueden usar la API térmica para monitorear los cambios del dispositivo y tomar medidas cuando el dispositivo se sobrecalienta para restaurar el dispositivo a la temperatura normal. Por ejemplo, las aplicaciones de reproducción de video en línea pueden reducir la resolución / velocidad de bits o reducir el tráfico de red; las aplicaciones de la cámara pueden desactivar el flash o la mejora intensiva de la imagen; los juegos pueden reducir la velocidad de fotogramas o reducir la teselación poligonal. Para más detalles, haga clic aquí .

Compatibilidad a través de API pública

Android 10 continúa aumentando las restricciones en las interfaces que no pertenecen al SDK, por lo que las aplicaciones cambian gradualmente a usar solo API públicas . Si la interfaz que usa actualmente está restringida, puede optar por solicitar una nueva API pública para esa interfaz . Para ayudarlo a completar la transición y evitar interrupciones de la aplicación, solo implementamos estas restricciones cuando su aplicación tiene como objetivo Android 10 (API 29). Para obtener más información sobre estas restricciones, consulte la guía para desarrolladores .

Actualizaciones más rápidas y actualizaciones de código más frecuentes

Android 10 puede acelerar las actualizaciones a través del programa Treble , que proporciona una interfaz comprobable consistente entre Android y el código del dispositivo subyacente proporcionado por los fabricantes de dispositivos y de chips. Con el programa Treble, los fabricantes de dispositivos pueden introducir Android 10 en dispositivos compatibles con Treble a una velocidad más rápida y a un menor costo.

Android 10 también es la primera versión compatible con Project Mainline (el nombre oficial es "Actualización del sistema de Google Play"); esta es una nueva tecnología que utilizamos para proteger a los usuarios de Android y actualizar los dispositivos de manera oportuna a través de importantes cambios de código, que pueden obtenido directamente a través de Google Play. Con la actualización del sistema Google Play, podemos actualizar componentes internos específicos en todos los dispositivos equipados con Android 10 y superior sin la necesidad de que los fabricantes de dispositivos actualicen el sistema.

Para los desarrolladores, esperamos que estas actualizaciones en Android 10 puedan ayudar ampliamente a mejorar la consistencia de la implementación de la plataforma entre dispositivos y proporcionar una mayor uniformidad a lo largo del tiempo, reduciendo así sus costos de desarrollo y prueba.

 

 

 

 

 

 

 

 

 

 

Supongo que te gusta

Origin blog.csdn.net/MYBOYER/article/details/104141834
Recomendado
Clasificación