Android Q para advertir a los usuarios que ejecutan aplicaciones dirigidas a Android Lollipop o anterior

Por lo general, lo mejor para un desarrollador es actualizar sus aplicaciones para admitir las últimas características de la plataforma Android. Cada nueva versión de Android ofrece nuevas API y características que las versiones anteriores de Android no ofrecen. Sin embargo, cada nueva versión de Android también agrega nuevas restricciones a lo que pueden hacer las aplicaciones, algo de lo que algunos desarrolladores de aplicaciones no son fanáticos. Por ejemplo, muchas aplicaciones evitaron subir su nivel de API objetivo a Android Marshmallow o posterior para evitar tener que implementar permisos de tiempo de ejecución. Google finalmente comenzó a tomar medidas enérgicas contra este comportamiento con nuevas restricciones impuestas a las aplicaciones cargadas y actualizadas en Google Play Store, pero también agregaron una advertencia en Android Pie para avergonzar a las aplicaciones que aún no han actualizado Android 4.1 Jelly Bean. Según una confirmación reciente en el Proyecto de código abierto de Android, parece que Android Q advertirá a los usuarios si la aplicación que están ejecutando se dirige a Android 5.1 Lollipop o anterior.

Modernización de aplicaciones de Android

En diciembre pasado, Google introdujo una nueva política para modernizar las aplicaciones de Android en Google Play Store. De acuerdo con la nueva política, todas las nuevas aplicaciones enviadas a Google Play Store a partir del 1 de agosto de 2018 deben apuntar al nivel API 26 o superior (eso significa Android 8.0 Oreo, Android 8.1 Oreo o Android 9 Pie). Además, a partir del 1 de noviembre, 2018, todas las actualizaciones de aplicaciones existentes en Play Store también deben apuntar al nivel de API 26 o superior. Esta política obligará a las aplicaciones desarrolladas más activamente a cumplir con las nuevas funciones de seguridad, privacidad, optimización de memoria y ahorro de batería en las versiones más recientes de Android. Sin embargo, la política no significa que las aplicaciones dejarán de funcionar en dispositivos con versiones anteriores de Android; los desarrolladores aún pueden establecer su propio nivel mínimo de API. Por otro lado, la última versión de Android de Google, Android 9 Pie, alienta a los desarrolladores de aplicaciones a actualizar sus aplicaciones advirtiendo explícitamente a los usuarios cuando ejecutan una aplicación que es tan antigua que podría no funcionar correctamente.

Advertencia que se muestra cuando el usuario intenta ejecutar una aplicación dirigida a un nivel de API <17 en un dispositivo Android 9 Pie.

Esta aplicación, ManifestViewer, está dirigida a Android 1.6 Donut.

De acuerdo con esta confirmación combinada en AOSP, el " PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION " se aumenta a 23. Este indicador de compilación se traduce en la propiedad del sistema ro.build.version.min_supported_target_sdk . El sistema utiliza esta propiedad al iniciar la actividad de cualquier aplicación. El sistema verifica el nivel de SDK de destino de la aplicación y, si es inferior al valor definido en ro.build.version.min_supported_target_sdk, se muestra un mensaje de advertencia al usuario de que la aplicación podría no funcionar correctamente.

Por ahora, no parece que Android Q realmente evite que los usuarios ejecuten aplicaciones de Android realmente antiguas. Nos imaginamos que habría una minoría pequeña, pero bastante vocal, de usuarios que no estarían contentos con tal restricción. Hay muchas aplicaciones poco actualizadas que se utilizan en campos especializados para los que no hay alternativas. Sin embargo, mostrar esta advertencia cada vez que un usuario inicia una aplicación anterior en Android Q puede hacer que los usuarios se quejen lo suficiente de que la aplicación se actualice o reemplace.

Si desea ver el nivel de API objetivo de las aplicaciones instaladas en su dispositivo, puede usar la aplicación vinculada a continuación. En mi dispositivo, hay 4 aplicaciones que uso regularmente que activarían esta advertencia: Titanium Backup, AZ Screen Recorder, Brother iPrint & Scan y Terminal Emulator.

Por último, debemos tener en cuenta que el mensaje de confirmación indica que el indicador PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION se está incrementando "provisionalmente". Eso significa que Google no ha decidido completamente si establecer el límite en el nivel 23 del SDK y podría elegir algo más alto o más bajo. Si detectamos más cambios a esta bandera en AOSP, se lo haremos saber a todos.