"本文档详细介绍了‘葫芦娃’项目的客制化过程以及版本发布策略,主要涉及MTK平台的项目定制,包括PRODUCT_NAME的区分、ProjectConfig文件的使用、custom.conf与version文件的修改,以及根据项目需求进行的单双卡、DTV/ATV支持的选择。此外,还总结了创建新项目时的经验,如欧标双卡和美标单卡的配置模板。"
在MTK平台的项目开发中,客制化是一项关键任务,特别是对于那些具有不同需求但PRODUCT_NAME相同的“葫芦娃”项目。在这种情况下,由于客制化文件夹通常基于PRODUCT_NAME命名,因此当PROJECT_NAME改变时,需要创建新的目录以适应新的项目需求。为了应对这种定制需求,项目团队采取了一种策略,即在同一目录下创建ProjectConfigXX文件,并在编译前进行替换,以此来区分不同需求的项目。
客制化的具体操作包括了修改mediatek/config/$(PRODUCT_NAME)/ProjectConfig.mk文件,这个文件能够控制整个版本的各种配置。此外,还会替换两个关键文件:一个是mediatek/config/$(PRODUCT_NAME)/custom.conf,用于配置用户代理(UA)等信息;另一个是mediatek/custom/$(PRODUCT_NAME)/version,主要用于设置较长的版本号,防止配置错误。
在创建新项目时,开发人员通常会根据项目特性选择一个现有的模板,比如欧标双卡(ProjectConfigEur)或美标单卡(ProjectConfigUsa)。这些模板涵盖了不同的配置选项,例如:
1. **单/双卡**:这决定了设备支持的SIM卡数量。
2. **DTV/ATV支持**:根据项目需求添加或禁用数字电视(DTV)和模拟电视(ATV)功能。支持DTV需要在AUTO_ADD_GLOBAL_DEFINE_BY_VALUE中增加CUSTOM_KERNEL_DTV,并设置DTV_SUPPORT为yes。而支持ATV则需相应地进行配置。
3. **欧标/美标**:这涉及到UMTS和GSM频段的不同,需要在modem代码中修改射频参数,以匹配相应的频段。
在实际操作中,硬件工程师会提供所需的射频参数,开发人员需要将这些参数应用到代码中,然后重新编译生成modem模块,以确保设备在指定频段上正常工作。
总结起来,‘葫芦娃’项目的客制化是一个涉及多方面配置调整的过程,包括但不限于PRODUCT_NAME的处理、ProjectConfig文件的定制、特定功能的支持,以及对频段的适配。通过灵活运用这些方法,开发团队可以高效地创建和管理具有不同需求的项目,确保每个版本都能满足特定市场和客户的需求。