3 votos

¿Qué proceso sucede cuando hay una optimización del sistema?

Mi pregunta es la siguiente: No hace mucho tiempo estaba moviendo los archivos apk, data y dex a los directorios / datos, y no mostraban las aplicaciones que había instalado manualmente, si no hasta que reinicié en el dispositivo y apareció un mensaje diciendo "optimice el sistema" desde el momento en que sentí curiosidad sobre esto.

Mi propósito es aprender lo que sucede en este proceso y saber cómo ser capaz de repetirlo manualmente.

Si sabe algo sobre esto, estaré encantado de escuchar sus comentarios y respuestas. Gracias.

1 votos

Para repetir este proceso, instala el archivo APK como lo harías normalmente. Odex-ing es parte del proceso de instalación.

0 votos

Puede ser engañoso que los archivos en /data/dalvik-cache/ tienen la extensión de .dex porque su formato real es odex y es diferente de lo que se extrae del APK.

7voto

xavier_fakerat Puntos 1

¿Qué hace Android cuando dice "optimizar aplicaciones/sistemas"?

Básicamente, el sistema Android creará una versión optimizada de cada aplicación. Este proceso hace que cada aplicación se inicie lo más rápido posible con la nueva versión de Android.

Mientras que dice "optimización", el sistema operativo genera archivos "odex" para tus aplicaciones desde el principio. Como una simple explicación, los archivos odex pueden ayudan a que el sistema arranque más rápido y reduce el tiempo necesario para el lanzamiento aplicaciones.

Archivos Apk y odex

La historia más larga es que cuando se añade un archivo APK a tu Android no se almacena de esa manera. Se convierte en algo llamado archivo "odex".

El sistema operativo Android no almacena las aplicaciones tal cual después de la instalación (es decir, un solo archivo APK). Una versión optimizada de la aplicación se almacena en la caché de Dalvik, llamada .odex archivo".

¿Qué es un archivo de Odex?

En el sistema de archivos de Android, las aplicaciones vienen en paquetes con la extensión .apk. Estos paquetes de aplicaciones, o APKs contienen ciertos .odex (Optimized Dalvik EXecutable) archivos cuya supuesta función es ahorrar espacio. Estos odex Los archivos son en realidad colecciones de partes de una aplicación que se optimizan antes de arrancar. Al hacerlo, se acelera el proceso de arranque, ya que se precarga parte de una aplicación. Por otro lado, también dificulta el hackeo de esas aplicaciones porque una parte de la codificación ya ha sido extraída a otra ubicación antes de la ejecución.

Deodex

El desodexado es básicamente el reempaquetado de estos APKs de una cierta manera, de tal manera que son reensamblados en classes.dex archivos (Dalvik EXecutable).

Haciendo eso, todas las piezas de un paquete de aplicación se juntan en un lugar, eliminando así la preocupación de un APK modificado en conflicto con algunas partes odexadas separadas.

En resumen, las ROMs desodizadas (o APKs) tienen todos sus paquetes de aplicación reunidos en un solo lugar, lo que permite una fácil modificación como la temática. Dado que no hay piezas de código procedentes de ninguna ubicación externa, las ROMs o APKs personalizadas siempre son desodexadas para asegurar su integridad.

Hay varias explicaciones sobre cómo funciona esto:

En Android, las aplicaciones vienen en paquetes con la extensión .apk. Estos paquetes de aplicaciones, o APKs contienen ciertos .odex archivos cuyos La supuesta función es ahorrar espacio. Estos archivos 'odex' son en realidad colecciones de partes de una aplicación que son optimizadas antes de que se inicia. Hacerlo acelera el proceso de arranque, ya que precarga parte de una solicitud.

El sistema operativo Android utiliza una máquina virtual basada en Java para ejecutar aplicaciones, llamada la Máquina Virtual de Dalvik. Un desodorante, o .dex El archivo contiene el caché utilizado por esta máquina virtual (conocido como Dalvik-caché) para un programa, y se almacena dentro del APK. Un .odex en el archivo, en el por otro lado, es una versión optimizada de este mismo archivo .dex que es almacenado junto al APK en lugar de dentro de él. Android aplica esto técnica por defecto a todas las aplicaciones del sistema. Ahora, cuando un El sistema basado en Android está arrancando, la caché de davlik para la VM de Davlik es construido con estos .odex permitiendo que el sistema operativo aprenda de antemano qué aplicaciones se cargarán, y así se acelera el arranque proceso. Al desodexar estos APK, un desarrollador pone el .odex archivos dentro de sus respectivos paquetes APK. Ya que todo el código es ahora contenida dentro del propio APK, se hace posible modificar cualquier paquete de aplicaciones sin entrar en conflicto con el sistema operativo entorno de ejecución.

Cómo hacer el proceso manualmente;

Si quieres optimizar manualmente tus apks, hay algunas opciones:

Agradecimientos

0 votos

Gracias por la información, pero tengo otra pregunta, ya copié el dex en el directorio dalvik-cache, sin embargo el icono de la aplicación no aparece en el launcher de Android.

0 votos

Porque el .dex no se "construirá" en la máquina virtual dalvik como se ha explicado anteriormente, y este proceso ocurre durante el arranque, por lo que tiene que reiniciar después de mover su archivo dex para que se optimice primero en la caché, y las partes asociadas se muevan a las ubicaciones respectivas.

0 votos

Pero no hay manera de activar este proceso en cualquier momento sin tener que reiniciar el dispositivo. Gracias

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X