2010-09-12 13 views
5

Chciałem uruchomić aplikację helloworld z AOSP i zobaczyć go w emulatorze. [Nie za pomocą konfiguracji Android SDK]Jak skompilować Helloworld za pomocą kodu źródłowego Android

Wykonałem instrukcje podane w http://source.android.com/source/download.html i pomyślnie skompilowałem pełen kod z katalogu /.

Mogłem zobaczyć contacts.apk, camera.apk wszystkie aplikacje apk w ~/mydroid/out/target/product/generic/system/app.

Próbowałem dwóch rzeczy.

1 - Udał się do folderu/package/apps. Zrobiłem aplikację helloworld (folder helloworld utworzony w Androidzie-SDK) i skopiowałem plik "Android.mk" z folderu Launcher2, zachowałem moją nową nazwę dla aplikacji i umieściłem folder w folderze packages/app i skompilowałem w /. Nie mogłem zobaczyć pliku .apk utworzonego dla ~/mydroid/out/target/product/generic/system/app.

2 - Zmieniłem nazwę pakietu Launcher2 w paczkach/folderze aplikacji w pliku "Android, mk" i skompilowałem w katalogu głównym. Nie mogłem zobaczyć nowego pliku APK utworzonego pod nową nazwą pakietu pod numerem ~/mydroid/out/target/product/generic/system/app.

Próbowałem kilka razy ze zmianami w nazwach działań, nazwach aplikacji w pliku manifest.xml. Nic nie jest odbiciem. Ale jest pewne, że zarówno helloworld, jak i zmiana nazwy pakietu jest odbierana podczas kompilacji. Widziałem, jak powstają klasy pośrednie. ~/mydroid/out/target/common/obj/APPS/manifirst_intermediates/src/com/android/mani -> manifirst jest jak helloworld, który stworzyłem i uruchomiłem. ~/mydroid/out/target/common/obj/APLIKACJE/Launcher2_intermediates/src/com/android/launcher

Czy ktokolwiek może podzielić się krokami kompilacji prostego programu Helloworld w AOSP.?

Dzięki, Mani

Odpowiedz

6

Kopiowanie Android.mk od jakiegokolwiek innego opakowania i po prostu trzeba zmienić LOCAL_PACKAGE_NAME i sprawiają, że jeden mecz nazwę folderu w pakietach/apps.

również dodać swój pakiet w wykazie /build/target/product/core.mk

Po kompilacji należy znaleźć apk gdzie można się spodziewać ... (OUT/docelowy/produktu/.. ./system/app)

+0

Dzięki Matthieu, to działa. !! – Mani

+2

Cieszę się, że pomógł, to możesz potwierdzić odpowiedź ... – Matthieu

+0

core.mk, Brakowało mi tego kroku .. +1 – Farhan

Powiązane problemy