1. 项目背景与需求解析
MTK平台搭载Android 13系统的设备在国际市场发行时,通常会预装Google搜索框等原生组件,并默认采用英文界面。对于国内用户或特定区域市场而言,这些默认配置反而会造成使用障碍。最近接手的一个OEM项目就要求对系统进行以下定制化处理:
- 移除桌面默认的Google搜索框组件
- 将系统语言默认设置为简体中文
- 隐藏或删除部分预装应用(如Google系列服务)
这类需求在国产手机厂商的海外版机型本地化过程中非常典型。以某品牌东南亚版手机为例,出厂时系统语言默认为英文,且预装了20余个当地用不到的APP,导致用户首次开机就需要进行复杂设置。通过本文介绍的修改方法,我们可以将系统初始状态直接调整为符合目标用户习惯的配置。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术方案设计
2.1 整体修改思路
实现这些定制化需求主要通过三个层面的修改:
- 系统配置文件修改:调整default.xml等配置文件中的语言和区域设置
- Launcher定制:修改QuickSearchBox相关配置实现搜索框移除
- 应用可见性控制:通过packages.xml和settings.db控制APP可见性
重要提示:所有修改都需要在系统编译阶段完成,部分配置还需在vendor分区进行覆盖。直接修改系统镜像可能会导致OTA更新失效。
2.2 所需工具与环境
-
开发环境:
- Ubuntu 20.04 LTS(推荐)
- MTK提供的Android 13源码包
- repo工具和对应manifest
-
关键工具:
bash复制# 常用工具链 sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip
3. 详细实现步骤
3.1 移除桌面Google搜索框
MTK平台通常使用定制版Launcher3,修改步骤如下:
-
找到Launcher源码目录:
bash复制cd packages/apps/Launcher3/res/xml -
修改default_workspace_5x5.xml(根据实际布局文件):
xml复制<!-- 注释或删除以下widget配置 --> <favorite launcher:packageName="com.google.android.googlequicksearchbox" launcher:className="com.google.android.googlequicksearchbox.SearchActivity" launcher:screen="1" launcher:x="1" launcher:y="0" /> -
禁用QuickSearchBox组件:
bash复制# 在device.mk或类似文件中添加 PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ ro.quicksearchbox.enabled=false
3.2 设置默认语言为中文
需要修改多个位置的配置:
-
核心配置文件修改:
bash复制# frameworks/base/core/res/res/values/config.xml <string name="default_language" translatable="false">zh</string> <string name="default_locale" translatable="false">zh_CN</string> -
MTK平台额外配置:
bash复制# device/mediatek/common/overlay/frameworks/base/core/res/res/values/config.xml <string name="default_language">zh</string> <string name="default_locale">zh_CN</string> -
首次开机向导跳过:
java复制// packages/apps/SetupWizard/src/com/google/android/setupwizard/SetupWizardActivity.java if (!isSetupComplete()) { setLanguage("zh_CN"); }
