手把手教你深度定制tiny4412安卓5.0系统(一)---开发板如何预置文件到android系统

简介: 手把手教你深度定制tiny4412安卓5.0系统(一)---开发板如何预置文件到android系统

   想要预置文件,首先要了解Android源码中device这个目,打开这个目录我们看到,这个目录厂家会针对不同,注意,以下的方式不适用于预置apk。

   在这个目录中,我们看到有不同的厂家定制的信息,我们这款开发板是友善之壁提供的,那么我们只要进入friend-arm这个目录下就可以了,进到这个目录,看到tiny4412,我们切换进入看到:

0.jpg

在这个目录中,我们看到有不同的厂家定制的信息,我们这款开发板是友善之壁提供的,那么我们只要进入friend-arm这个目录下就可以了,进到这个目录,看到tiny4412,我们切换进入看到:

640.jpg

要预置相关的文件,前面有一篇文章专门讲过怎么预置,一般是在device.mk中进行,但是平台不同,供应商会整合到其它地方:

文章如下,下面我们将参考这篇文章进行预置。

http://blog.csdn.NET/morixinguan/article/details/70170641

我们打开当前的device.mk看下:

$(call inherit-product, device/friendly-arm/tiny4412/device_base.mk)
$(call inherit-product-if-exists, hardware/samsung_slsi/exynos4/exynos4.mk)
# See comment at the top of this file. This is where the other
# half of the device-specific product definition file takes care
# of the aspects that require proprietary drivers that aren't
# commonly available
$(call inherit-product-if-exists, vendor/friendly-arm/tiny4412/device-tiny4412.mk)

我们看到,这个脚本包含了vendor/friendly-arm/tiny4412/device-tiny4412.mk。

于是我们切换到android源码根目录,找到这个文件,打开:

VENDOR_PATH := vendor/friendly-arm/tiny4412
# Mali
PRODUCT_PACKAGES += \
        libEGL_mali \
        libGLESv1_CM_mali \
        libGLESv2_mali \
        libMali \
        libUMP
# gralloc, ion
PRODUCT_PACKAGES += \
        libsecion \
        gralloc.tiny4412
# hwcomposer
PRODUCT_PACKAGES += \
        hwcomposer.exynos4
# HDMI
PRODUCT_PACKAGES += \
        libTVOut \
        libhdmiclient \
        sechdmiservice
# Misc other modules
PRODUCT_PACKAGES += \
        libnetcmdiface
# Prebuilts
PRODUCT_PACKAGES += \
        prebuilt.firmware \
       prebuilt.kmodules \
        prebuilt.busybox \
        prebuilt.gapps \
        prebuilt.faapps
# FriendlyARM Support
PRODUCT_COPY_FILES += \
        $(VENDOR_PATH)/proprietary/fa_codec_ctrl:system/vendor/bin/fa_codec_ctrl \
        $(VENDOR_PATH)/proprietary/sensors.tiny4412.so:system/lib/hw/sensors.tiny4412.so \
        $(VENDOR_PATH)/bootanimation/bootanimation.zip:system/media/bootanimation.zip
ifeq ($(BOARD_USES_PWMLIGHTS),false)
PRODUCT_COPY_FILES += \
        $(VENDOR_PATH)/proprietary/lights.tiny4412.so:system/lib/hw/lights.tiny4412.so
endif
PRODUCT_PROPERTY_OVERRIDES += \
        net.eth0.startonboot=1
-include $(VENDOR_PATH)/wifi/config/config.mk

有了前面的经验,我们知道,预知文件需要在上边的PRODUCT_COPY_FILES添加,我们可以把开机动画相关的文件预置进去:


比如上面我添加的这行:

$(VENDOR_PATH)/bootanimation/bootanimation.zip:system/media/bootanimation.zip

bootanimation.zip这个文件是我自己添加的,bootanimation这个目录也是我在vendor/friendly-arm/tiny4412/这个目录下创建的,上面的$(VENDOR_PATH)就是一个环境变量,代表当前路径。

添加好之后重新编译Android系统就可以了,这些预置的文件会被自动拷贝的out目录下进行打包,一般会打包在system.img里。

以后,如果要预置文件到开发板,就可以在这里进行预置。

目录
相关文章
|
5天前
|
Android开发
Android构建系统:Android.mk(2)函数详解
Android构建系统:Android.mk(2)函数详解
12 1
|
5天前
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
37 1
|
5天前
|
移动开发 Java Unix
Android系统 自动加载自定义JAR文件
Android系统 自动加载自定义JAR文件
23 1
|
5天前
|
Shell Android开发 开发者
Android系统 自定义动态修改init.custom.rc
Android系统 自定义动态修改init.custom.rc
23 0
|
5天前
|
测试技术 Android开发 开发者
RK3568 Android系统客制化动态替换ro任意属性
RK3568 Android系统客制化动态替换ro任意属性
27 1
|
5天前
|
存储 Linux Android开发
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
RK3568 Android/Linux 系统动态更换 U-Boot/Kernel Logo
20 0
|
5天前
|
存储 缓存 安全
Android系统 应用存储路径与权限
Android系统 应用存储路径与权限
6 0
Android系统 应用存储路径与权限
|
5天前
|
存储 开发工具 Android开发
Android系统 权限组管理和兼容性
Android系统 权限组管理和兼容性
14 0
|
5天前
|
存储 安全 Android开发
Android系统 自定义系统和应用权限
Android系统 自定义系统和应用权限
19 0
|
人工智能 Shell 开发工具
Android性能优化干货分享;你的 APP 为何启动那么慢?
App启动方式 冷启动(Cold start) 冷启动是指APP在手机启动后第一次运行,或者APP进程被kill掉后在再次启动。
1883 0