2010-09-12 17 views
5

Quería ejecutar una aplicación helloworld con el AOSP y verla en el emulador. [No a través de Android SDK configuración]Cómo compilar Helloworld con el código fuente de Android

He seguido los pasos en http://source.android.com/source/download.html y compilado con éxito el código completo del/directorio.

Pude ver contacts.apk, camera.apk todas las aplicaciones apk en ~/mydroid/out/target/product/generic/system/app.

Intenté dos cosas.

1 - Se dirigió a la carpeta/paquete/aplicaciones. Tomó una aplicación helloworld (carpeta helloworld creada en android-sdk) y copió un archivo 'Android.mk' de la carpeta Launcher2, guardó mi nuevo nombre para la aplicación y colocó la carpeta en la carpeta packages/app y compiló en /. No pude ver el archivo .apk creado para ~/mydroid/out/target/product/generic/system/app.

2 - Cambié el nombre del paquete para Launcher2 en paquetes/carpeta de aplicaciones en el archivo 'Android, mk' y compilé en la raíz. No pude ver una nueva aplicación creada en el nuevo nombre empaquetado bajo ~/mydroid/out/target/product/generic/system/app.

Lo intenté varias veces con cambios en los nombres de actividades, nombres de aplicaciones en el archivo manifest.xml. Nada refleja. Pero es seguro, tanto helloworld como el cambio en el nombre del paquete se recogen durante la compilación. Pude ver que se crearan clases intermedias. ~/mydroid/out/target/common/obj/APPS/manifirst_intermediates/src/com/android/mani -> manifirst es como un helloworld que creé y ejecuté. ~/mydroid/out/target/common/obj/APPS/Launcher2_intermediates/src/com/android/launcher

¿Alguien podría compartir los pasos para compilar un programa sencillo de Helloworld en AOSP?

Gracias, Mani

Respuesta

6

Copia Android.mk de cualquier otro paquete y sólo hay que cambiar el LOCAL_PACKAGE_NAME y hacer que uno coincide con el nombre de la carpeta en paquetes/aplicaciones.

También, añada su paquete en la lista de /build/target/product/core.mk

Después de compilar que debe encontrar el apk donde se espera que ... (out/destino/producto/.. ./system/app)

+0

Gracias Matthieu, funciona. !! – Mani

+2

Me alegro de que haya sido útil, entonces puedes validar la respuesta ... – Matthieu

+0

core.mk, me faltaba este paso ... +1 – Farhan

Cuestiones relacionadas