Android 10.0修改语言设置简体中文(中国)为简体中文(中国大陆)
Android Q中 Settings的语言设置选择列表中简体中文下,默认显示为中国、香港、台湾和新加坡:
如果想修改其显示为中国大陆,就必须修改ICU资源的配置。
ICU
ICU 是开源项目, 提供了最新的unicode标准,字符集转换, 以及超过300个国家的本地数据, 比如数字,时间和信息显示格式等,以及不同语言下的文本排序,日历相关的日期时间操作等。
详细内容可以访问: http://userguide.icu-project.org/
在Android 中, ICU 源码位于 external/icu/下。其内资源不会自动随着源码编译而编译,需要提前编译后,然后把icudt**l.dat,cp到external/icu/icu4c/source/stubdata下然后再编译刷机验证。
修改及其编译
如果在external/icu/icu4c/source/data/下修改/新增了文件,那么就需要重新build .dat文件。这个.dat的原始文件是在external/icu/icu4c/source/stubdata/下,名字为icudt.dat,其中是两个数字,表明icu版本数;是一个字符,表明该.dat文件的内部格式。例如Android Q上.dat文件原名为icudt63l.dat。
具体编译步骤:
- 修改external/icu/icu4c/source/data/下文件;
- 在终端中进入目录icu4c/source:
cd external/icu/icu4c/source/
- config 编译选项,Linux终端下输入:
./runConfigureICU Linux --with--data-packaging=archive
- 终端中输入:
make INCLUDE_UNI_CORE_DATA=1
然后就可以在external/icu/icu4c/source/data/out/tmp/下看到新生成的icudtxxx.dat文件。
note:必须添INCLUDE_UNI_CORE_DATA=1,这样相应的一些资源文件才能被加入.dat文件内,比如uprops.icu,否则可能导致开机时找不到相应资源司机。
跟着各编译选项相关的文件可参看external/icu/icu4c/source/data/Makefile.in。
简体中文(中国大陆)
1、主要修改external/icu/icu4c/source/data/region/zh.txt:
2、终端中依次输入:
$:cd external/icu/icu4c/source/
$:./runConfigureICU Linux --with--data-packaging=archive
$:make INCLUDE_UNI_CORE_DATA=1
3、编译完成后,进入到external/icu/icu4c/source/data/out/tmp/目录下:
$:cd external/icu/icu4c/source/data/out/tmp/
查看新生成的icudxxx.dat:
4、备份并将其替换external/icu/icu4c/source/stubdata/目录下原始的icudt63l.dat文件:
回到源码根目录进行全编代码,然后刷机验证:
Android 10.0修改语言设置简体中文(中国)为简体中文(中国大陆)相关推荐
- Android 10.0 修改Recovery字体图片的大小(正在清理)文字大小
1.概述 在10.0系统产品开发中,进行Recovery 恢复出厂设置时 发现 真正清理的 字体小了 产品不满意 所以要求改大一点字体 于是 就只能去看Recovery部分的源码 这部分都是C 语言的 ...
- Android 10.0 修改搜狗为默认输入法,并且授予运行权限
在系统开发中,修改系统默认输入法也是经常需要修改的功能,但是替换为搜狗输入法以后,点击输入框时,会弹出 授权权限对话框 感觉是特别麻烦的,所以在framework中要授予搜狗app运行时权限 第一步: ...
- Android 10.0修改RAM(运行内存)的值
在进行定制化开发的过程中,由于有些客户要求,现有的设备RAM和ROM修改高点的配置 于是就来完成这一需求 首选来看Settings的关于设备中是怎么获取运行内存的 private static fin ...
- Android 10.0系统启动之init进程-[Android取经之路]
摘要:init进程是linux系统中用户空间的第一个进程,进程号为1.当bootloader启动后,启动kernel,kernel启动完后,在用户空间启动init进程,再通过init进程,来读取ini ...
- Android 10.0 系统服务之ActivityMnagerService-AMS启动流程-[Android取经之路]
摘要:上一节我们讲完了SystemServer的启动过程,这一节接着上一节的步骤,来讲解ActivityManagerService的启动过程. ActivityManagerService简称AMS ...
- Android 10.0 系统启动之SystemServer进程-[Android取经之路]
摘要:上一节讲解了Zygote进程的整个启动流程.Zygote是所有应用的鼻祖.SystemServer和其他所有Dalivik虚拟机进程都是由Zygote fork而来.Zygote fork的第一 ...
- 还在期待安卓9.0吗?Android 10.0要来了
目前,美国 Google公司的 AndroidP (安卓9.0),已经正式全面推出有几个多月了.众多手机品牌厂商也都在积极的进行更新适配 Android 9.0 系统(修改UI界面也算是二次开发,嗯) ...
- Android 10.0 11.0 12.0 启动模拟器教程
<<返回总目录 Android 10.0 11.0 12.0 启动模拟器教程 一.android 12.0 模拟器 二.安装android 10.0 11.0 12.0 SDK平台 三.创 ...
- Android 10.0 PackageManagerService(一)工作原理及启动流程-[Android取经之路]
摘要:PackageManagerService是Android系统核心服务之一,在Android中的非常重要,主要负责APK.jar包等的管理. 阅读本文大约需要花费50分钟. 文章的内容主要还是从 ...
- Android应用安装apk版本升级,适配Android 8.0和Android 10.0下载安装,shell命令安装APK
shell命令安装 /*** 安装apk** @param path apk文件路径*/ public void installAPK(String path) {Log.i(TAG, "i ...
最新文章
- android 图片压缩方法分析
- FineUI小技巧(5)向子窗口传值,向父窗口传值
- 菜鸟驿站是什么快递_95后女生在横店开菜鸟驿站,每天帮大明星和小龙套收快递...
- iphone内存检测
- Python序列化的使用(有少量修改)
- 懒惰的JSF Primefaces数据表分页–第2部分
- Mac系统下如何使用命令行方式启动MySQL
- 宝塔linux_Linux虚拟机上快速搭建宝塔 部署PHP运行环境
- Java 程序连接 Informix 数据库方法实例介绍
- 【板绘必读】完全0基础如何学板绘?
- PHP UTF-8转GBK
- 递归解决字符串逆序输出
- 宽带波形测试软件,适用于5G时代的波形测试分析系统是怎样的?
- Nodejs学习记录: koa2
- 机器学习算法(8)之多元线性回归分析理论详解
- uniapp的uni.compressImage压缩图片的巨坑
- 运动会分数统计的实验报告(数组实现)
- 【数据架构系列-02】从《数据中台能力成熟度模型》的发布,聊聊火了的中台
- 读《桥—巴拉克•奥巴马的人生及其崛起》有感
- ROS-CmakeLists,package
热门文章
- Ubuntu16.04+ ROS kinetic 使用kinect2 ORK功能包 linemod算法实现可乐罐识别
- logisim软件简单入门使用
- 计算机考研数据结构用哪本书,计算机考研数据结构该用哪本参考书?
- 【软件工程导论】期末复习试题集
- Spring揭秘——什么是IOC和DI
- [数据仓库]基础理论笔记
- JAVA-Switch语句
- music 算法 c语言,频率估计方法——MUSIC和ROOT-MUSIC算法(附代码)
- 通达信波段王指标公式主图_通达信波段王+精准买卖提示主图指标公式
- C 语言中获取文件长度(ftell函数)