【发布时间】:2020-07-13 05:47:35
【问题描述】:
我正在从源代码构建 AOSP。我想做的是在生成的 system.img 中包含一些预构建的文件作为制作过程的一部分。我试图找到创建 system.img 的实际文件并在那里添加几行。有什么想法吗?
提前谢谢你。
【问题讨论】:
我正在从源代码构建 AOSP。我想做的是在生成的 system.img 中包含一些预构建的文件作为制作过程的一部分。我试图找到创建 system.img 的实际文件并在那里添加几行。有什么想法吗?
提前谢谢你。
【问题讨论】:
将自定义文件添加到system.img 的一个好方法是将它们添加到vendor/your_name/product_you_want_to_add_them/proprietary/your_files_go_here 下并添加一个名为device-product_name.mk 的自定义make 文件。
完成后,只需定义要从专有文件夹和内部复制哪些文件(例如,vendor/samsung/crespo/device-vendor.mk add 以调用您的设备生成文件)。
【讨论】:
只需将您的源代码放到 Packages/apps 目录中,然后确保您的项目在 apps 目录中具有与其他项目一样的正确 make 文件。您将制作完成android构建后预构建的包。
【讨论】:
build/core/build-system.html 中找到了一些信息如何将另一个组件添加到构建中 - Android.mk 模板你有一个新库、一个新应用程序或 一个新的可执行文件 .对于每一种常见的模块类型,在模板目录下都有一个对应的文件。但是我的源代码中没有找到这个目录,希望对你有帮助。
要将预构建文件添加到构建中,请找到一个对您的项目有意义的 .mk 文件并将该文件添加到 PRODUCT_COPY_FILE 下。看起来是这样的
PRODUCT_COPY_FILE += your/build/tree/$FILE:path/to/location/on/device/$FILE
使用单独的供应商树遵循良好的领域驱动原则......但对于单个二进制文件来说可能有点过分了。检查您已经使用的 makefile,通常已经添加了预构建的 apk,您可以使用它们。 device 和现有的 vendor 树木是开始寻找的好地方。在我看来,维护一个全新的项目并不是一件容易的事。
【讨论】:
如果你想在system.img中添加程序,去vendor,然后去operator,然后去app,进入app里面的文件 如果你使用roms修改程序,程序名称是rom helper,它修改prmission为0755,修改UserID为2000,从而将apk添加到rom中
【讨论】: