android - que - ¿Cómo agrego APKs en una compilación AOSP?
project android source (3)
Añadir archivos APK de terceros a la compilación es definitivamente posible.
También los APKs y APPs con código fuente van al mismo lugar; la package/app
del package/app
.
Añadiendo un nuevo APK a la compilación
En la raíz de AOSP agregar la carpeta:
<aosp root>/package/app/< yourappfolder >
Luego dentro de esta carpeta agregue:
-
Android.mk
vacío -
< yourapp.apk >
El archivo make de Android debe tener la referencia a tu apk, agrega esto a tu 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)
Cree una entrada en commons.mk
(generalmente en build/target/product
) para su apk agregue la línea (verifique dónde están todos los demás)
PRODUCT_PACKAGES += < what you have defined in LOCAL_MODULE, it should be your app folder name >
Compile el AOSP y tendrá una nueva aplicación instalada en el sistema.
Necesito agregar algunos APK de terceros a mi compilación de AOSP. ¿Qué carpeta debo mantener estos APKs para que cuando compile el código y se cree la imagen, se instale en el emulador?
Parece que las aplicaciones del sistema se guardan en la carpeta de paquetes / aplicaciones, así que necesito saber dónde se guardan los APK de terceros.
El Android.mk presentado anteriormente instalará el APK en / system / app
Si desea instalar el APK en / data / app, deberá agregar la siguiente línea a Android.mk antes de que la línea include $(BUILD_PREBUILT)
LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)
También puede hacer lo siguiente en el directorio de salida de destino:
<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
En este punto, puede realizar los cambios que desee a los archivos en system_root, es decir, agregar apks al sistema / aplicación, etc.
Cuando haya terminado, simplemente vuelva al directorio de salida y haga:
sudo umount system_root
<path-to-your-build-dir>/host/linux-x86/bin/img2simg temp.img system.img
Ahora puedes flashear system.img usando fastboot como siempre.