Framework开发——系统默认语言修改

        Android 系统原版默认的语言为英文,但是对于中国大陆 Android 产品厂商来说,我们定制系统可能需要用户一开机就是简体中文。所以把 Android 系统出厂设置为简体中文对于 Android 系统产品化非常重要,我们可以通过修改系统属性来达到默认语言的作用。本文主要是在 Android 11 源码上验证。

一、语言包修改

        通过查找相关修改方案,大多是修改 Android 语言包的语言顺序。默认语言的选择实现是在 build/core/Makefile 里,从 PRODUCT_LOCALES 里选择第一个语言作为默认语言,如下:

$(hide) TARGET_BUILD_TYPE="$(TARGET_BUILD_VARIANT)" \
			……
			PRODUCT_DEFAULT_LOCALE="$(call get-default-product-locale,$(PRODUCT_LOCALES))" \
    		……

        然后通过 build/tool/buildinfo.sh 文件将如下段写到文件build.prop,如下:

if [ -n "$PRODUCT_DEFAULT_LOCALE" ] ; then
  echo "ro.product.locale=$PRODUCT_DEFAULT_LOCALE"
fi

1、语言包排序修改

        通过上面的代码可以看到,默认语言只是将 PRODUCT_LOCALES 第一个语言取出来作为默认语言。所以我们只需要修改 PRODUCT_LOCALES 中的语言顺序即可。

常见方案

        通过网络搜索找到的

猜你喜欢

转载自blog.csdn.net/c19344881x/article/details/132693513