android壁纸显示逻辑

2023-11-01

所有文章仅限自己备忘,并无他用

壁纸主要分为两类,锁屏壁纸和桌面壁纸

一,壁纸服务的启动

壁纸服务WallpaperManagerService中,有一个内部类LifeCycle继承自SystemService,SystemServer在启动系统服务的时候,会创建LifeCycle对象并进行创建的相关逻辑,LifeCycle在onStart方法中会发布Service(publishBinderService(Context.WALLPAPER_SERVICE, mService)),然后WallpaperManagerService就可以作为系统服务供其它模块调用了

二,桌面壁纸的现实逻辑

1,壁纸的显示
在系统服务启动到一定阶段的时候,会进行壁纸的显示,WallpaperManagerService会在系统启动到SystemService.PHASE_THIRD_PARTY_APPS_CAN_START的时候去启动切换User的逻辑(switchUser()),里面会进行壁纸的显示和用户的切换,开机时用户的默认值为UserHandle.Null,然后切换为UserHandle.USER_SYSTEM,并显示对应的壁纸,单用户的话默认显示的壁纸为/data/system/users/0/wallpaper
2,壁纸的切换
1> 壁纸的切换首先需要权限android.permission.SET_WALLPAPER并且是system用户
2> 应用首先获取WallpaperManager(WMS的远程代理ÿ

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

android壁纸显示逻辑 的相关文章

  • mysql中的declare_sql中declare是什么意思

    展开全部 sql中declare是声明的意思32313133353236313431303231363533e58685e5aeb931333365653236 就是声明变量的 这个一般是用在函数和存储过程中的 比如说 这个存储过程是 只要
  • python数组的操作(访问)

    Python 自带的list print python自带的list集合 list1 list range 20 print list1 list2 list1 1 10 2 从开始下标1开始截取 下标到10结束 间隔2个 print li
  • 快速创建ES集群

    win10 中docker 设置 快速创建集群 访问 官网 elasticsearch docs reference setup install docker at main elastic elasticsearch GitHub 负责上
  • 上海控安成功举办普陀区科普创新专项智能网联车学术活动

    12月25日 由上海控安主办的上海市普陀区科普创新专项 智能网联汽车不神秘 学术交流活动顺利举办 活动现场座无虚席 齐聚汽车从业人员 汽车爱好者 青年学生近百人 共同探究未来汽车产业的变革 普陀区科委相关代表列席活动 上海工程技术大学电子电
  • Python学习基础系列----了解python

    了解python 1 了解Python Python是一种解释型 这意味着开发过程中没有了编译这个环节 面向对象 支持面向对象的风格或代码封装在对象的编程技术 动态数据类型的交互式 可在命令行中通过Python提示符及直接代码执行程序 高级
  • MATLAB 正则表达式

    MATLAB 正则表达式 文章目录 MATLAB 正则表达式 与正则表达式相关的函数 regexp 用法 输出类型 如何构建 exp 元字符 字符转义 重复限定符 重复限定符的三种模式 分组运算符 锚点 选项 option 例子 与正则表达
  • JS求数组中最大值

    法一 function getArrMax arr var max arr 0 for var i 1 i lt arr length i if arr i gt max max arr i return max getArrMax 1 2
  • angular总结-my

    angular知识点 1 Component 装饰器 这表明它下面的类是一个组件 它提供了有关该组件的元数据 包括它的模板 样式和选择器 在 Component 的元数据中指定的样式只会对该组件的模板生效 2 Angular 只会绑定到组件
  • sideload刷机

    官方Recovery自带了sideload刷机选项 方便了手机出故障的机友自行恢复 转载请标明出处IUNI官方论坛 bbs iunios com http bbs iunios com thread 28244 1 1 html 一 刷前准
  • [Python图像处理] 二十四.图像特效处理之毛玻璃、浮雕和油漆特效

    该系列文章是讲解Python OpenCV图像处理知识 前期主要讲解图像入门 OpenCV基础用法 中期讲解图像处理的各种算法 包括图像锐化算子 图像增强技术 图像分割等 后期结合深度学习研究图像识别 图像分类应用 希望文章对您有所帮助 如
  • Python Web系列学习3-Tornado

    1 Tornado常被用作大型站点的接口服务框架 协程是Tornado推荐的编程方式 Tornado集成了丰富的用户身份验证功能 2 同步I O可以理解为被调用的I O函数会阻塞调用函数的执行 而异步I O则不会 tornado httpc
  • 【python爬虫】js逆向分析及AES解密

    一 原理简述 1 首先查看需要获取的数据即热门评论是否在源代码中 如果在源代码中就可以直接xpath等方式进行抓取 2 但是发现在网页和框架源代码里面都无法搜到评论内容 此时 使用网络抓包工具即 查看network中的XHD 在js代码中
  • vue2 vue3父子组件传参

    vue3 父子组件传参 父组件
  • Chatgpt私有化部署(全流程)

    前言 当下使用chatgpt来帮助完成工作已然成为主流 但想访问必须先面对地区的封锁 所以使用openai官方提供的API来部署至本地服务器从而更加便利的使用chatgpt 本文章主要介绍如何部署私有聊天机器人 条件准备 公网服务器一台 可
  • Unity 屏幕坐标鼠位置 Input.mousePosition 转为UI物体的坐标

    方式一 使用 RectTransformUtility ScreenPointToLocalPointInRectangle
  • [1158]微信小程序字段配置

    文章目录 微信小程序之permission字段 微信开发者工具 project config json配置详情 项目配置文件 一级字段 compileType setting useCompilerPlugins babelSetting

随机推荐