当前位置:首页 > 嵌入式 > 嵌入式云IOT技术圈
[导读]    想要预置文件,首先要了解Android源码中device这个目,打开这个目录我们看到,这个目录厂家会针对不同,注意,以下的方式不适用于预置apk。     在这个目录中,我们看到有不同的厂家定制的信息,我们这款开发板是友善之壁提供的,那么我们只要进入friend-ar


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

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

    


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


要预置相关的文件,前面有一篇文章专门讲过怎么预置,一般是在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里。

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





免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭