studio programacion para móviles minsdkversion libros gratis edición desarrollo desarrollar curso aprende aplicaciones android gradle android-studio

programacion - ¿Qué comandos realiza Android Studio?



programacion android pdf 2018 (1)

Estoy jugando con Android Studio & Gradle y estoy interesado en lo que hace gradle-aware make realmente hace. El motivo de mi interés fue que originalmente tenía la impresión de que la configuración de ejecución predeterminada para un nuevo proyecto AS se realiza por defecto. gradle-aware make ejecuta el comando gradle assembledebug (mirando el estado en la parte inferior de AS durante la compilación muestra la app:assembleDebug task ejecutando) y luego algunos instalan y ejecutan comandos.

Sin embargo, al probar en una máquina que tiene 1.9 como la versión de sistema instalada y una envoltura en el proyecto establecida en 1.10, obtengo lo siguiente

  • gradle assembleDebug -> Fail: no se pudo crear el complemento de tipo ''AppPlugin''.
  • ./gradlew assembleDebug -> Success
  • AS Run -> Success

En mi opinión, el AS Run anterior debería fallar si gradle-aware make estaba usando gradle assembledebug

Mirando el src puedo ver la clase MakeBeforeRunTaskProvider.java y las confirmaciones relevantes pero no puedo ver la información relevante


(He respondido a mi propia pregunta, ya que al escribirla, encontré la respuesta, pero supongo que si esto me confunde, será otra persona, así que de todos modos estoy publicando la respuesta simple)

Resulta que debería haber buscado en la configuración, ya que puede configurar la versión de gradle que se debe usar, y por defecto es el "contenedor predeterminado".

Ahora, cuando crea un nuevo proyecto en AS, tiene configurado un contenedor predeterminado. Puede si desea agregar una sección de envoltorio personalizado a su raíz build.gradle del formulario

task wrapper(type: Wrapper) { gradleVersion = ''1.10'' }

y luego ejecute la tarea con gradle wrapper para actualizar los proyectos gradle wrapper (en ./gradle/ ). Esto permite que la versión del contenedor se actualice fácilmente.

Supongo que la opción "Usar envoltorio de gradle cusomtizable" simplemente ejecuta esta tarea de wrapper antes de cualquier otra tarea de gradle (que podría tener una URL personalizada para la descarga zip de gradle), mientras que "usar predeterminado ..." solo usará el último envoltorio generado. Esto estará en gris si el proyecto no tiene un contenedor generado. Por favor, corrígeme si crees que esto está mal.

Esto está utilizando AS 0.4.6. Molestamente, hay un error por el cual la sincronización de archivos de gradle cambiará la configuración del proyecto aquí. Parece que la configuración anterior era como la que veo en un proyecto si va a "predeterminado ..." y el otro a "local". Es hora de actualizar AS!

También la ventana de la gradle console de AS muestra los comandos y resultados exactos