Jak dodać pliki APK w kompilacji AOSP?
Muszę dodać kilka APK 3rd party do mojej kompilacji AOSP. W jakim folderze powinienem przechowywać te apki, aby po zbudowaniu kodu i utworzeniu obrazu został zainstalowany w emulatorze?
Wygląda na to, że aplikacje systemowe są przechowywane w folderze packages/app , więc muszę wiedzieć, gdzie przechowywane są aplikacje innych firm.
3 answers
Dodawanie plików APK stron trzecich do kompilacji jest zdecydowanie możliwe.
Również apki i aplikacje z kodem źródłowym trafiają do tego samego miejsca; do folderu package/app
.
Dodawanie nowego APK do kompilacji
W katalogu głównym AOSP Dodaj folder:
<aosp root>/package/app/< yourappfolder >
Następnie w tym folderze dodaj:
- pusty
Android.mk
< yourapp.apk >
Plik Android make powinien mieć odniesienie do twojego apk, dodaj to do Android.mk
:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE := < your app folder name >
LOCAL_CERTIFICATE := < desired key >
LOCAL_SRC_FILES := < app apk filename >
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
include $(BUILD_PREBUILT)
Create an wpis w commons.mk
(zwykle w build/target/product
) dla Twojego apk dodaj linię (sprawdź, gdzie są wszystkie inne)
PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name >
Skompiluj AOSP i masz zupełnie nową aplikację zainstalowaną w systemie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-20 18:31:32
Możesz również wykonać następujące czynności w docelowym katalogu wyjściowym:
<path-to-your-build-dir>/host/linux-x86/bin/simg2img system.img temp.img
mkdir system_root
sudo mount -t ext4 -o loop temp.img system_root
W tym momencie możesz wprowadzić dowolne zmiany w plikach w system_root, tzn. dodać apk do system / app itp...
Kiedy skończysz, wróć do katalogu wyjściowego i wykonaj:
sudo umount system_root
<path-to-your-build-dir>/host/linux-x86/bin/img2simg temp.img system.img
Możesz teraz flashować system.img za pomocą fastboot jak zwykle.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-26 17:33:33
The Android.mk przedstawione powyżej zainstaluje APK w /system / app
Jeśli chcesz zainstalować APK w / data / app, musisz dodać następującą linię do Android.mk before line include $(BUILD_PREBUILT)
LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-30 12:31:36