Android Studio 3.5 Canary agrega "Aplicar cambios", un reemplazo de Instant Run

click fraud protection

Android Studio 3.5 presenta Apply Changes, el sucesor de la función Instant Run de la popular herramienta de desarrollo de aplicaciones.

Android Studio 3.5 (actualmente en los canales Canary y Dev) ahora presenta una nueva forma de enviar cambios de código a su aplicación y ver sus efectos sobre la marcha sin tener que reiniciar la aplicación. Apodado simplemente "Aplicar cambios", es el sucesor de la función "Ejecución instantánea" en versiones anteriores de Estudio Android.

de google Blog de desarrolladores de Android dice lo siguiente sobre Aplicar cambios:

Aplicar cambios le permite enviar cambios de código y recursos a su aplicación en ejecución sin reiniciarla y, en algunos casos, sin reiniciar la actividad actual. Aplicar cambios reemplaza Instant Run con un enfoque completamente nuevo para la optimización de la compilación. En lugar de reescribir el código de bytes de su APK durante el tiempo de compilación, Aplicar cambios redefine las clases sobre la marcha aprovechando la instrumentación de tiempo de ejecución compatible con Android 8.0 (API nivel 26) o superior.

Además, Android Studio ahora le solicita que decida si desea reiniciar su aplicación o actividad cuando detecta que los cambios no son compatibles con Aplicar cambios. Este control adicional debería brindarle una experiencia más consistente y predecible en comparación con el comportamiento de Instant Run.

La publicación del blog continúa enumerando algunas limitaciones de la nueva funcionalidad. Por ejemplo, el dispositivo en el que estás probando tu aplicación debe al menos estar ejecutándose Android 8.0 Oreo (nivel API 26) y hay ciertos cambios de código que aún requerirán que su aplicación se reinicie. Al igual que con "Ejecución instantánea", "Aplicar cambios" obligará a la aplicación a reiniciarse si:

  • Agregar o eliminar una clase, método o campo
  • Cambiando el manifiesto
  • Cambiar firmas de métodos
  • Cambiar modificadores de métodos o clases.
  • Cambiar el nombre de las clases
  • Cambiando la herencia de clases
  • Agregar o eliminar un recurso

En "Problemas conocidos", la publicación del blog indica que, dado que Google inicialmente priorizó la estabilidad sobre el rendimiento en esta nueva característica, a veces se ejecutará "Aplicar cambios". más lento que su predecesor, la función "Instant Run". Además, las imágenes del emulador x86_x64 no son compatibles y, para fines de depuración, solo se admite Android Pie (API nivel 28). soportado. Puede ver la lista completa de limitaciones y problemas conocidos en el enlace de origen a continuación.

Para obtener una descripción más detallada de la diferencia entre "Aplicar cambios" y "Ejecución instantánea", un empleado de Google del equipo de Android Studio dijo lo siguiente en Reddit:

Hace algo muy, muy diferente. Instant Run tuvo un impacto muy específico en la compilación, instrumentando cada una de sus clases en el momento de la compilación para prepararlas para ser reemplazadas durante el tiempo de ejecución con una nueva versión de la clase. También divide su APK en varios APK para volver a cargar su aplicación de manera más incremental.

Aplicar cambios no hace nada parecido. Su APK es muy similar ya sea que use Aplicar cambios o no. En lugar de eso, se basa en nuevas capacidades de instrumentación en tiempo de ejecución de ART VM para recargar dinámicamente las clases y reemplazarlas mientras la aplicación se está ejecutando. Por eso requiere versiones mucho más nuevas de Android.

Se espera que "Aplicar cambios" reemplace eventualmente a "Ejecución instantánea" en los canales Beta y Estable a medida que Google realice mejoras en su rendimiento y estabilidad.


Fuente: Blog de desarrolladores de Android