Honeycomb MR1

Te damos la bienvenida a Android 3.1.

Android 3.1 es una versión incremental de la plataforma que define mejor muchas de las funciones que se introdujeron en Android 3.0. Se basa en la misma IU y las funciones optimizadas para tablets que se ofrecen en Android 3.0 y agrega varias funciones nuevas para los usuarios y desarrolladores. En este documento, se proporciona una descripción general de las nuevas funciones y tecnologías que se introdujeron en Android 3.1. Para obtener un panorama más detallado de las nuevas APIs de desarrollador, consulta el documento Descripción general de las APIs.

Para obtener una introducción de alto nivel a Android 3.0, consulta Temas destacados de la plataforma de Android 3.0.

Nuevas funciones para el usuario

Figura 1: Pantalla principal de Android 3.1.

Refinamientos de la IU

La plataforma de Android 3.1 agrega una variedad de mejoras para que la interfaz de usuario sea más intuitiva y eficiente.

Las transiciones de la IU se mejoraron en todo el sistema y en las apps estándar. La animación del selector se optimizó para que la transición a la lista de apps y desde esta sea más rápida y fluida. Los ajustes de color, posicionamiento y texto hacen que los elementos de la IU sean más fáciles de ver, comprender y usar. La accesibilidad se mejora con comentarios audibles coherentes en toda la IU y un nuevo parámetro de configuración que permite a los usuarios personalizar el intervalo de retención táctil para satisfacer sus necesidades.

La navegación hacia y desde las cinco pantallas principales ahora es más fácil. Si presionas el botón de inicio en la barra del sistema, se te dirige a la pantalla principal que usaste más recientemente. La configuración ofrece una vista mejorada del almacenamiento interno, que muestra el almacenamiento que usa un conjunto más grande de tipos de archivos.

Conectividad para accesorios USB

Android 3.1 agrega compatibilidad con una amplia variedad de periféricos y accesorios conectados por USB. Los usuarios pueden conectar muchos tipos de dispositivos de entrada (teclados, mouse, controles de juegos) y cámaras digitales. Las aplicaciones pueden compilarse en la compatibilidad con USB de la plataforma para extender la conectividad a casi cualquier tipo de dispositivo USB.

La plataforma también agrega compatibilidad con accesorios USB, dispositivos de hardware externos diseñados para conectarse a dispositivos con Android como hosts USB. Cuando se conecta un accesorio, el framework buscará la aplicación correspondiente y ofrecerá iniciarla para el usuario. El accesorio también puede presentarle una URL al usuario para que descargue una aplicación adecuada si aún no hay una instalada. Los usuarios pueden interactuar con la aplicación para controlar accesorios con alimentación, como controles robóticos, bases de conexión, equipos de diagnóstico y musicales, kioscos, lectores de tarjetas y mucho más.

Las capacidades USB de la plataforma dependen de los componentes del hardware del dispositivo, por lo que la compatibilidad con USB en dispositivos específicos puede variar y está determinada por los fabricantes de dispositivos.

Figura 2: El menú de apps recientes ahora se puede expandir y desplazar.

Lista expandida de apps recientes

Para mejorar la multitarea y el acceso visual instantáneo a una cantidad mucho mayor de apps, la lista de apps recientes ahora se puede expandir. Ahora, los usuarios pueden desplazarse por la lista de apps recientes de forma vertical para ver las miniaturas de todas las tareas en curso y las apps usadas recientemente, y luego tocar una miniatura para volver a esa tarea.

Widgets de pantalla principal que se pueden cambiar de tamaño

Para personalizar la pantalla principal de forma más flexible, los usuarios ahora pueden cambiar el tamaño de los widgets de la pantalla principal con las barras de arrastre que proporciona el sistema. Los usuarios pueden expandir los widgets horizontal o verticalmente para incluir más contenido, siempre que cada widget lo admita.

Compatibilidad con teclados y dispositivos de puntero externos

Ahora los usuarios pueden conectar casi cualquier tipo de teclado o mouse externo a sus dispositivos con Android para crear un entorno familiar y trabajar de manera más eficiente. Se pueden conectar uno o más dispositivos de entrada al sistema de forma simultánea a través de USB o Bluetooth HID, en cualquier combinación. En la mayoría de los casos, no se necesita ningún controlador ni configuración especial. Cuando se conectan varios dispositivos, los usuarios pueden administrar el teclado y el IME activos de forma conveniente con la configuración del teclado que está disponible en la barra del sistema.

En el caso de los dispositivos de puntero, la plataforma admite la mayoría de los tipos de mouse con un solo botón y, de manera opcional, una rueda de desplazamiento, así como dispositivos similares, como las bolas de seguimiento. Cuando están conectados, los usuarios pueden interactuar con la IU con acciones estándar, como apuntar, seleccionar, arrastrar, desplazar el mouse y otras.

Compatibilidad con joysticks y controles de juegos

Para que la plataforma sea aún mejor para los juegos, Android 3.1 agrega compatibilidad con la mayoría de los joysticks y gamepads para PC que se conectan a través de USB o Bluetooth HID.

Por ejemplo, los usuarios pueden conectar controles de juegos de PlayStation®3 y Xbox 360® a través de USB (pero no Bluetooth), controles de juegos y joysticks de Logitech Dual Action™, o un control de carreras de autos. Los controladores de juegos que usan redes o vinculaciones proprietarias no son compatibles de forma predeterminada, pero, en general, la plataforma admite la mayoría de los joysticks y controles de juegos que se pueden conectar a PC.

Redes Wi-Fi sólidas

Android 3.1 agrega funciones de Wi-Fi sólidas para garantizar que los usuarios y sus apps puedan aprovechar al máximo el acceso a Wi-Fi de alta velocidad en casa, en el trabajo y cuando estén de viaje.

Un nuevo bloqueo de Wi-Fi de alto rendimiento permite que las aplicaciones mantengan conexiones Wi-Fi de alto rendimiento incluso cuando la pantalla del dispositivo está apagada. Los usuarios pueden aprovechar esto para reproducir música, video y servicios de voz transmitidos de forma continua durante largos períodos, incluso cuando el dispositivo está inactivo y la pantalla está apagada.

Ahora los usuarios pueden configurar un proxy HTTP para cada punto de acceso Wi-Fi individual. Para ello, deben mantener presionado el punto de acceso en Configuración. El navegador usa el proxy HTTP cuando se comunica con la red a través del punto de acceso, y otras apps también pueden hacerlo. La plataforma también proporciona copias de seguridad y restablecimiento de la configuración de IP y proxy definida por el usuario.

La plataforma agrega compatibilidad con la descarga de red preferida (PNO), una función de análisis en segundo plano que conserva los ahorros de energía de la batería en los casos en que el Wi-Fi debe estar disponible de forma continua durante largos períodos de tiempo.

Se actualizó el conjunto de apps estándar

La plataforma de Android 3.1 incluye un conjunto actualizado de aplicaciones estándar que están optimizadas para su uso en dispositivos con pantallas más grandes. En las siguientes secciones, se destacan algunas de las funciones nuevas.

Figura 3: Menú de controles rápidos en el navegador

Navegador

La app del navegador incluye una variedad de funciones nuevas y mejoras en la IU que hacen que ver contenido web sea más simple, rápido y conveniente.

La IU de los controles rápidos, a la que se puede acceder desde la configuración del navegador, se extendió y se rediseñó. Ahora los usuarios pueden usar los controles para ver miniaturas de las pestañas abiertas y cerrar la pestaña activa, así como acceder al menú ampliado para obtener acceso instantáneo a la configuración y otros controles.

Para garantizar una experiencia de visualización coherente, el navegador extiende su compatibilidad con estándares web populares, como CSS 3D, animaciones y posicionamiento fijo de CSS, a todos los sitios, ya sean para dispositivos móviles o computadoras. También agrega compatibilidad con la reproducción incorporada de contenido de video HTML5. Para facilitar la administración del contenido favorito, los usuarios ahora pueden guardar una página web de forma local para verla sin conexión, incluidos todos los diseños y las imágenes. Para mayor comodidad cuando visitas sitios de Google, una IU de acceso automático mejorada permite que los usuarios accedan rápidamente y administren el acceso cuando varios usuarios comparten un dispositivo.

Para obtener un mejor rendimiento, el navegador agrega compatibilidad con complementos que usan renderización acelerada por hardware. El rendimiento del zoom de la página también mejoró de forma significativa, lo que permite navegar y ver páginas web más rápido.

Galería

La app de Galería ahora admite el Protocolo de transferencia de imágenes (PTP), por lo que los usuarios pueden conectar sus cámaras a través de USB e importar sus imágenes a la Galería con un solo toque. La app también copia las imágenes en el almacenamiento local y proporciona un indicador para que los usuarios vean cuánto espacio hay disponible.

Figura 4: Ahora se puede cambiar el tamaño de los widgets de la pantalla principal.

Calendario

Las cuadrículas de calendario son más grandes para mejorar la legibilidad y la segmentación táctil más precisa. Además, los usuarios pueden ocultar los controles de la lista de calendarios para crear un área de visualización más grande para las cuadrículas. Se rediseñó el selector de fecha para que sea más fácil de ver y usar.

Contactos

La app de Contactos ahora te permite ubicar contactos con mayor facilidad mediante la búsqueda de texto completo. La búsqueda muestra resultados coincidentes de todos los campos que se almacenan para un contacto.

Correo electrónico

Cuando respondes o reenvías un mensaje HTML, la app de Correo electrónico ahora envía el cuerpo del mensaje en texto sin formato y HTML como un mensaje MIME de varias partes. Esto garantiza que el mensaje tenga el formato correcto para todos los destinatarios. Los prefijos de carpetas para las cuentas IMAP ahora son más fáciles de definir y administrar. Para conservar la batería y minimizar el uso de datos móviles, la aplicación ahora precarga el correo electrónico del servidor solo cuando el dispositivo está conectado a un punto de acceso Wi-Fi.

Un widget actualizado de la pantalla principal les brinda a los usuarios acceso rápido a más correos electrónicos. Los usuarios pueden tocar el ícono de correo electrónico en la parte superior del widget para alternar entre etiquetas como Recibidos, No leídos y Destacados. El widget ahora se puede cambiar de tamaño, tanto horizontal como verticalmente.

Asistencia para empresas

Ahora los usuarios pueden configurar un proxy HTTP para cada punto de acceso Wi-Fi conectado. Esto permite que los administradores trabajen con los usuarios para establecer un nombre de host, un puerto y cualquier subdominio de omisión del proxy. El navegador usa automáticamente esta configuración de proxy cuando se conecta el punto de acceso Wi-Fi y, de manera opcional, otras apps pueden usarla. Ahora se crea una copia de seguridad de la configuración de proxy y IP, y se restablece en las actualizaciones y los restablecimientos del sistema.

Para satisfacer las necesidades de los usuarios de tablets, la plataforma ahora permite que se acepte una política de dispositivo de "tarjeta de almacenamiento encriptada" en dispositivos con tarjetas de almacenamiento emuladas y almacenamiento principal encriptado.

Nuevas funciones para desarrolladores

La plataforma de Android 3.1 agrega mejoras y nuevas funciones en las que los desarrolladores pueden basarse para crear experiencias de aplicaciones potentes y atractivas en tablets y otros dispositivos con pantallas grandes.

API de Open Accessory para una interacción enriquecida con los periféricos

Android 3.1 presenta una nueva API para integrar accesorios de hardware con las aplicaciones que se ejecutan en la plataforma. La API proporciona una forma de interactuar con una amplia variedad de periféricos, desde controladores de robótica hasta equipos musicales, bicicletas de ejercicio y mucho más.

La API se basa en una nueva pila y servicios de USB (bus universal en serie) que están integrados en la plataforma. La plataforma proporciona servicios para descubrir y identificar el hardware conectado, así como para notificar a las aplicaciones interesadas que el hardware está disponible.

Cuando un usuario conecta un accesorio USB, la plataforma recibe información de identificación, como el nombre del producto, el tipo de accesorio, el fabricante y la versión. La plataforma configura la comunicación con el accesorio y usa su información para notificar y lanzar una app segmentada, si hay una disponible. De manera opcional, un accesorio puede proporcionar una URL que permita a los usuarios encontrar y descargar una app que funcione con el accesorio. Estas funciones de descubrimiento facilitan al usuario la configuración por primera vez y garantizan que haya una aplicación adecuada disponible para interactuar con el hardware conectado.

Para los desarrolladores de aplicaciones y los fabricantes de accesorios, el modo de accesorio ofrece muchas formas nuevas de atraer a los usuarios y crear experiencias de interacción potentes con el hardware conectado.

Para obtener más información sobre cómo desarrollar aplicaciones que interactúan con accesorios, consulta la documentación sobre accesorios USB.

API del host USB

Android 3.1 proporciona compatibilidad integrada con la plataforma para el modo host USB y expone una API que permite que las aplicaciones administren los periféricos conectados. En los dispositivos que admiten el modo host, las aplicaciones pueden usar la API para identificar y comunicarse con dispositivos conectados, como dispositivos de audio, dispositivos de entrada, dispositivos de comunicación, concentradores, cámaras y mucho más.

Para obtener más información sobre cómo desarrollar aplicaciones que interactúan con dispositivos USB, consulta la documentación del host USB.

Entrada de mouse, joystick y control de juegos

Android 3.1 extiende el sistema de eventos de entrada para admitir una variedad de fuentes de entrada y eventos de movimiento nuevos en todas las vistas y ventanas. Los desarrolladores pueden aprovechar estas capacidades para permitir que los usuarios interactúen con sus aplicaciones con mouses, trackballs, joysticks, gamepads y otros dispositivos, además de teclados y pantallas táctiles.

En el caso de la entrada del mouse y la bola de desplazamiento, la plataforma admite dos acciones de eventos de movimiento nuevas: desplazamiento (horizontal o vertical), como desde una rueda de desplazamiento, y desplazamiento del mouse, que informa la ubicación del mouse cuando no se presionan botones. Las aplicaciones pueden controlar estos eventos de la forma que sea necesaria.

En el caso de los joysticks y los gamepads, la plataforma proporciona una gran cantidad de ejes de movimiento que las aplicaciones pueden usar desde una fuente de entrada determinada, como X, Y, Hat X, Hat Y, rotación, aceleración, presión, tamaño, toque, herramienta, orientación y otros. Los desarrolladores también pueden definir ejes personalizados si es necesario para capturar el movimiento de otras maneras. La plataforma proporciona eventos de movimiento a las aplicaciones como un lote, y las aplicaciones pueden consultar los detalles de los movimientos incluidos en el lote para un manejo más eficiente y preciso de los eventos.

Las aplicaciones pueden consultar la lista de dispositivos de entrada conectados y los rangos de movimiento (ejes) que admite cada dispositivo. Las aplicaciones también pueden controlar varios eventos de entrada y movimiento desde un solo dispositivo de entrada. Por ejemplo, una aplicación puede usar fuentes de eventos del mouse y del joystick desde un solo dispositivo de entrada.

Widgets de pantalla principal de tamaño variable

Ahora los desarrolladores pueden crear widgets de la pantalla principal cuyo tamaño los usuarios pueden cambiar horizontal o verticalmente, o ambos. Simplemente, agrega un atributo a la declaración de un widget para que se pueda cambiar de tamaño horizontal, vertical o ambos. Esto permite a los usuarios personalizar la visualización del contenido del widget y mostrar más en sus pantallas principales.

API de MTP para la integración con cámaras externas

En Android 3.1, una nueva API de MTP (Protocolo de transferencia de contenido multimedia) permite a los desarrolladores escribir apps que interactúan directamente con cámaras conectadas y otros dispositivos PTP. La nueva API facilita que las aplicaciones reciban notificaciones cuando se conectan y quitan dispositivos, administren archivos y almacenamiento en esos dispositivos, y transfieran archivos y metadatos hacia y desde ellos. La API de MTP implementa el subconjunto PTP (Protocolo de transferencia de imágenes) de la especificación de MTP.

API de RTP, para controlar las sesiones de transmisión de audio

Android 3.1 expone una API a su pila de RTP (protocolo de transporte en tiempo real) integrada, que las aplicaciones pueden usar para administrar directamente la transmisión de datos interactiva o on demand. En particular, las apps que proporcionan VOIP, push-to-talk, conferencias y transmisión de audio pueden usar la API para iniciar sesiones y transmitir o recibir flujos de datos a través de cualquier red disponible.

Optimizaciones de rendimiento

Android 3.1 incluye una variedad de optimizaciones de rendimiento que ayudan a que las aplicaciones sean más rápidas y responsivas. Estas son algunas de las optimizaciones:

  • Una nueva clase de caché LRU permite que las aplicaciones se beneficien de un almacenamiento en caché eficiente. Las aplicaciones pueden usar la clase para reducir el tiempo dedicado a calcular o descargar datos de la red, a la vez que mantienen un espacio en memoria razonable para los datos almacenados en caché.
  • El framework de la IU ahora admite invalidaciones parciales en vistas aceleradas por hardware, lo que hace que las operaciones de dibujo en esas vistas sean más eficientes.
  • Un nuevo método de gráficos, setHasAlpha(), permite que las apps insinúen que un mapa de bits determinado es opaco. Esto proporciona un aumento de rendimiento adicional para algunos tipos de operaciones de transferencia y es especialmente útil para aplicaciones que usan mapas de bits ARGB_8888.