Save the date! Android Dev Summit is coming to Sunnyvale, CA on Oct 23-24, 2019.

Cambios en el comportamiento de Android Q: todas las apps

La plataforma de Android Q incluye cambios de comportamiento que podrían afectar a tu app. Los siguientes cambios de comportamiento se aplican a todas las apps que se ejecuten en Android Q, sin importar su "targetSdkVersion". Debes probar tu app y, luego, modificarla según corresponda para admitir estos cambios.

Asegúrate también de revisar la lista de cambios de comportamiento que solo afectan a las apps orientadas a Android Q.

Restricciones en interfaces no SDK

Para asegurar la estabilidad y compatibilidad de las apps, la plataforma comenzó a restringir las interfaces no SDK que tu app puede usar en Android 9 (con nivel de API 28). Android Q incluye listas actualizadas de interfaces no SDK restringidas, basadas en la colaboración con desarrolladores de Android y las pruebas internas más recientes.

Si no orientarás tu app a Android Q, es posible que no te afecten de inmediato algunos de estos cambios. Sin embargo, aunque actualmente puedes usar interfaces no SDK de lista gris (según el nivel de API objetivo), usar cualquier método o campo no SDK siempre implica un gran riesgo de error para tu app.

Si no sabes con seguridad si tu app usa interfaces no SDK, puedes probarla para verificar. Si tu app depende de interfaces no SDK, deberías empezar a planificar una migración hacia otras alternativas SDK. Si no puedes encontrar una alternativa al uso de una interfaz no SDK para una función de tu app, deberías solicitar una nueva API pública.

Para obtener más información, consulta las actualizaciones de restricciones de interfaces no SDK para Android Q y las restricciones para interfaces no SDK.

Transmisiones por Wi-Fi directo

En Android Q, las transmisiones de Wi-Fi directo ya no son fijas. Si tu app depende de la recepción de estas transmisiones durante el registro porque eran fijas, ya no las recibirá. En su lugar, usa el método get() apropiado para obtener la información.

SYSTEM_ALERT_WINDOW en dispositivos Go

Las apps que se ejecuten en dispositivos con Android Q (edición Go) no pueden tener el permiso SYSTEM_ALERT_WINDOW. Esto se debe a que el procesamiento de ventanas superpuestas usa demasiada memoria, lo que es particularmente dañino para el rendimiento de los dispositivos Android con poca memoria.

Si una app en un dispositivo Go envía un intent con la acción ACTION_MANAGE_OVERLAY_PERMISSION, el sistema rechazará automáticamente la solicitud y llevará al usuario a una pantalla de Configuración que indicará que se denegó el permiso porque ralentizaba el dispositivo. Si una app en un dispositivo Go invoca el método Settings.canDrawOverlays(), este siempre dará un resultado falso.

Advertencias para las apps orientadas a versiones anteriores de Android

En Android Q, la plataforma advertirá a los usuarios la primera vez que ejecuten cualquier app orientada a una versión de plataforma anterior a Android 6.0 (con nivel de API 23). Si la app requiere que el usuario otorgue permisos, este tendrá la oportunidad de ajustar los permisos de esa app antes de permitir que se ejecute por primera vez.

Debido a los requisitos del nivel de API objetivo de Google Play, un usuario solo verá estas advertencias si ejecuta una app que no se actualizó recientemente. En el caso de apps que se distribuyen en otras tiendas, también se introducirán requisitos similares para el nivel de API objetivo en 2019. Para obtener más información sobre estos requisitos, consulta cómo Expandir los requisitos del nivel de API objetivo en 2019.

Uso de apps

Android Q presenta los siguientes cambios de comportamiento relacionados con el uso de apps:

Mejoras en UsageStats para el uso de apps

Android Q ahora registra con precisión el uso de apps con UsageStats cuando estas se usan en los modos de pantalla dividida o pantalla en pantalla.

Además, Android Q ahora puede registrar el uso de apps instantáneas.

Escala de grises por app

Android Q ahora puede configurar el modo de visualización de las apps en escala de grises.

Mejoras de suspensión

En Android Q, las apps suspendidas ya no pueden reproducir audio.