¿Qué es Android Pre-Dexing y cómo aumentar el rendimiento?
Veo script hormigas de Android tiene un mensaje que es "pre-dexing". Sin embargo dex y pre-dex utiliza las mismas opciones, excepto que en un caso un frasco a la vez, en otros frascos de múltiples casos a la vez.
¿Cuál es la verdadera necesidad? ¿Es pre-dex obligatorio?
- Android Gradle: ¿Qué es javaMaxHeapSize "4g"?
- Carga dinámica de la biblioteca aar
- DX Error al ejecutar el proyecto de Android Studio
- Cargar el archivo DEX dinámicamente en Android 5.0
- Android app lento tiempo inicial de inicio
p.ej
The ' characters around the executable and arguments are not part of the command. [dex] Pre-Dexing F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\libs\pinit-sdk-1.0.jar -> pinit-sdk-1.0-e3bebafa2727504605edf3d8d85b5d46.jar [dx] Current OS is Windows 7 [dx] Executing 'D:\Apps\java\embd\cmn\android\oems\google\adt\4.x\4.3.x\4.3\sdk\build-tools\18.1.0\dx.bat' with arguments: [dx] '--dex' [dx] '--output' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\dexedLibs\pinit-sdk-1.0-e3bebafa2727504605edf3d8d85b5d46.jar' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\libs\pinit-sdk-1.0.jar' [dx] [dx] The ' characters around the executable and arguments are [dx] not part of the command. Execute:Java13CommandLauncher: Executing 'D:\Apps\java\embd\cmn\android\oems\google\adt\4.x\4.3.x\4.3\sdk\build-tools\18.1.0\dx.bat' with arguments: '--dex' '--output' 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\dexedLibs\pinit-sdk-1.0-e3bebafa2727504605edf3d8d85b5d46.jar' 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\libs\pinit-sdk-1.0.jar' The ' characters around the executable and arguments are not part of the command. [dex] Converting compiled files and external libraries into F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\classes.dex... [dx] Current OS is Windows 7 [dx] Executing 'D:\Apps\java\embd\cmn\android\oems\google\adt\4.x\4.3.x\4.3\sdk\build-tools\18.1.0\dx.bat' with arguments: [dx] '--dex' [dx] '--output' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\classes.dex' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\classes' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\dexedLibs\classes-144740ee5cf8b90b747300d19fb8201e.jar' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\dexedLibs\classes-1593da1bb60c5ec741aca494963e04a3.jar' [dx] 'F:\users\tejasoft\work\fnd\cmn\tools\social\sz\demo\bin\dexedLibs\classes-37bb5269e4fbd6dda9900fea95c0c29b.jar'
- Reflexión de Java que maneja cambios de la biblioteca
- Los archivos múltiples dex definen <mi paquete> / BuildConfig, no pueden encontrar la causa:
- Error al instalar APK Android Studio
- Android Dex: la opción "--core-library" para suprimir este mensaje de error
- Reemplazar el nuevo método dexlib2 fallando
- Múltiples archivos dex - La conversión a formato Dalvik falló - No se puede ejecutar dex
- Carga modificada /system/framework/*.jar sin reiniciar
- Error al crear una aplicación Codename One grande durante la fase Dex
Es útil recordar en este caso que usted está trabajando en Java, que no es exactamente lo mismo que el tiempo de ejecución de Dalvik. Java, de Oracle, utiliza una máquina virtual completamente diferente, mientras que Dalvik está específicamente ajustado para dispositivos móviles.
Los procesos DEX toman sus archivos JAR compilados en Java y los convierten en archivos de archivos ejecutables de Dalvik (.dex) que se ejecutarán en Android. La JVM de Oracle utiliza diferentes bytecode que el tiempo de ejecución de Dalvik, haciendo de este paso una necesidad.
Hay un proceso para bibliotecas que podría haber incluido en su proyecto, ya que también se compilan con un compilador estándar de Java y, a continuación, otro proceso para su proyecto real.
Se realiza en dos pasos, ya que el proceso final, su aplicación, requiere acceso a archivos de biblioteca dexed ya para evitar tener referencias al cambio de código mientras el proceso está ocupado.
Usted puede encontrar más en http://source.android.com/devices/tech/dalvik/index.html – donde usted también verá que Dalvik está programado para el reemplazo con algo llamado ART.
- Cómo puedo limitar el número de filas en la tabla SQLite de Android
- Programáticamente actualizar Android Vector Drawable