android 13.0 添加系统字体并且设置为默认字体

这篇具有很好参考价值的文章主要介绍了android 13.0 添加系统字体并且设置为默认字体。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.概述

在13.0系统定制化开发中,在产品定制中,有产品需求对于系统字体风格不太满意,所以想要更换系统的默认字体,对于系统字体的修改也是常有的功能,而系统默认也支持增加字体,所以就来添加楷体字体为系统字体,并替换为系统默认字体,
接下来就来分析下替换默认字体的方法

2.添加系统字体并且设置为默认字体的核心类

frameworks/base/data/fonts/
frameworks/base/data/fonts/fonts.mk
frameworks/base/data/fonts/Android.bp
frameworks/base/data/fonts/fonts.xml 

3.添加系统字体并且设置为默认字体核心功能实现和分析

android字体由android 2D图形引擎skia实现,并在Zygote的Preloading classes中对系统字体进行load。
相关文件有:skTypeface.cpp和skFontHost_android.cpp,其中后者是skia针对android平台字体实现的port。
主要的变量有:struct FontInitRec {const char*         fFileName;const char* const*  fNames;     // null-terminated list};
struct FamilyRec {FamilyRec*  fNext;SkTypeface* fFaces[5];};
uint32_t gFallbackFonts[SK_ARRAY_COUNT(gSystemFonts)+1];
load_system_fonts()@skFontHost_android.cpp
 load系统中所有的字体并给每种字体分配唯一的ID,并将字体分为两种:文章来源地址https://www.toymoban.com/news/detail-834589.html

到了这里,关于android 13.0 添加系统字体并且设置为默认字体的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android 13.0 framework中实现默认长按电源键弹出关机对话框功能

    在13.0的系统定制化开发中,在12.0的系统之前默认的都是长按电源键弹出关机对话框,而在13以后 就改成音量+电源键弹出对话框,由于使用不方便,所以就改成默认长按弹出关机对话框功能 PhoneWindowManager是供系统进程使用,是WindowManagerService 的一部分,WindowManagerService 会利用

    2024年02月11日
    浏览(45)
  • Android 13.0 添加自定义服务,并生成jar给第三方app调用

    在13.0系统产品定制化开发中,由于需要新增加自定义的功能,所以要增加自定义服务,而app上层通过调用自定义服务,来调用相应的功能,所以系统需要先生成jar,然后生成jar 给上层app调用,接下来就来分析实现的步骤,然后来实现相关的功能 从而来实现所需要的功能 添加

    2024年02月05日
    浏览(55)
  • Android 13.0 开启禁用系统接收短信功能

     在13.0的系统rom定制化中,在一些wifi产品的机器中,对于系统4g部分的功能需要裁剪 比如拨打电话 接听电话 短信功能等这部分 需要禁用系统对应的功能,接下来就来初步分析下系统中接收短信部分功能,然后实现禁用接收短信功能 对于Mms应用程序来讲主要就是在信息数据

    2024年02月22日
    浏览(46)
  • Android13.0 系统限制上网系列之iptables用IOemNetd实现屏蔽ip黑名单的实现

    在13.0的系统rom定制化开发中,在system中netd网络模块这块的产品需要中,在系统中会要求设置屏蔽ip地址之内的功能, liunx中iptables命令也是比较重要的,接下来就来在IOemNetd这块实现屏蔽ip黑名单的的相关功能,就是在 app中只能屏蔽某个网址,就是除了这个网址,其他的都能

    2024年04月14日
    浏览(33)
  • Android 13.0 在系统app安装第三方app弹出 解析安装包出现问题 的解决方案

    在13.0的系统定制化开发中,对于系统内置app中用代码调用系统安装接口安装app时抛出Permission Denial: that is not exported from UID 1000的异常,查询资料这个异常发现通常是由于Uri权限导致的问题,这就需要看PMS在安装的时候,需要什么权限,然后根据相关的日志分析 相关的安装流程

    2024年02月10日
    浏览(33)
  • Android 13 添加自定义分区,恢复出厂设置不被清除

    需求: 客户有些文件或数据,需要做得恢复出厂设置还存在,故需新增一个分区存储客户数据。 要求: a) 分区大小为50M b) 应用层可读可写 c) 恢复出厂设置后不会被清除 d) 不需要打包.img e) 不影响OTA升级 缺点: 1).通过代码在分区创建目录和文件,会涉及到SeLinux权限的修改

    2024年02月12日
    浏览(45)
  • Android 13.0 rom定制专栏系列解读

    在从事android系统rom定制化的这几年里,经历了坎坎坷坷,开发过好几种类型的产品,也随着google对android系统的更新加快,也需要跟随上时代的进步,所以需要把平时工作中遇到的问题总结出来,及时做好记录归纳总结,然后进一步的提升自己能力,本专栏提供给在13.0的rom定

    2024年02月06日
    浏览(46)
  • android 13.0 app应用安装黑名单

    在13.0系统rom定制化开发中,客户需求要实现应用安装黑名单功能,在白名单之中的应用可以安装,其他的app不准安装,实现一个 控制app安装的功能,这需要从app安装流程入手就可以实现功能 PMS就是负责管理app安装的,功能就添加在这里就可以了,接下来看具体实现这个功能

    2024年02月01日
    浏览(43)
  • Android 13.0 Recent列表不显示某个app

    在13.0 的系统产品rom定制化开发中,在点击导航栏最近任务列表时,如果做到不显示某个app 呢 一种做法是在app中直接处理 一种做法是在framework中处理 接下来看这两种处理方法 1, app中处理 为该应用AndroidManifest xml文件中主MainActivity设置属性 android:excludeFromRecents=“true” 例如:

    2024年01月18日
    浏览(40)
  • Android 13.0 Settings搜索功能屏蔽某个app

    在13.0的系统ROM产品定制化开发中,Settings中由于要屏蔽到某些app 不让搜索出这个app,所以就要从搜索流程中来去掉查询到这个app, 而搜索流程都是在SettingsIntelligence中完成的,接下来就来具体实现相关功能 搜索流程: Settings中点击搜索框,跳转至SettingsIntelligence中的搜索页面,即

    2024年01月23日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包