Cómo reconstruir el código fuente de Android después de realizar cambios en los archivos fuente de Android

StackOverflow https://stackoverflow.com/questions/4072781

  •  28-09-2019
  •  | 
  •  

Pregunta

Tengo código fuente de Android en mi sistema y funciona bien. Pero cuando hago algunos cambios en los archivos fuente de Android y ejecutar "marca" que no genera / actualizar los archivos Por favor, corríjanme si me equivoco,

i) el sistema debe generar un nuevo archivo system.img si se han realizado cambios en su código fuente

ii) androide kernel archivo archivo-zImage no cambia con cualquier cambio, incluso si hacemos algún cambio en el código fuente

Otra pregunta si creo una nueva carpeta dentro de la biblioteca / libcore que es recogida automáticamente al compilar. Para crear una nueva carpeta de la biblioteca fuera / libcore he añadido a su paso en /build/core/main.mk y el archivo .classpath. Aún así no es para ser recogido durante la compilación. Por favor alguien puede confirmar que todos tenemos que hacer cambios para añadir un nuevo archivo de biblioteca fuera / libcore

Saludos, Yogesh

¿Fue útil?

Solución

Esto depende de repositorio exacto que usted ha comprobado hacia fuera. Sin embargo, para la mayoría de ellos la siguiente receta funcionará:

http://source.android.com/source/download.html

Tenga en cuenta, si está utilizando la generación más reciente que debe tener el sistema de 64 bits

ACTUALIZACIÓN: Por alguna razón la página anterior le faltan algunos pasos vitales. Así que aquí están

Después de hacer 'repo sync' paso (tarda un tiempo, pero supongo que lo hizo ya que tienes los archivos de origen), haga lo siguiente:

$ . build/envsetup.sh
$ lunch

El último comando le dará una lista de opciones para la plataforma que desea construir. Si usted quiere construir para el emulador elegir-spa completo. De lo contrario elegir uno para el proveedor del dispositivo específico.

Después de elegir la marca de plataforma seguro de que hacer maquillaje completo de todo lo primero, ya que toda la plataforma Android es muy interdependientes. Así que hay que asegurarse de que tiene todos los componentes.

En el desarrollo se puede construir componentes individuales bastante rápido. Al utilizar el comando siguiente:

mmm <component_directory_name>

Por ejemplo:

mmm external/rsync

Además, el sistema de construcción no cambia poner la salida y los archivos intermedios con el código fuente. Todo va en el directorio de salida / meta.

Otros consejos

Depende del cambio que desea realizar.

En un caso fácil, si el cambio es local (por ejemplo, la adición de algunas nuevas líneas en un archivos fuente de Android existentes llamados xxx.c), que puede funcionar fácilmente:

mm -B (under the root directory of xxx.c)
adb remount
adb sync
adb reboot

En otros casos, por ejemplo, se crea un nuevo servicio del sistema para reemplazar a la antigua que se inicia en el momento de arranque, como se muestra en el archivo init.rc. Entonces, es probable que necesite:

  1. archivo de actualización init.rc
  2. Construir toda fuente de Android
  3. Flash nueva imagen
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top