launcher3专题

Android 13.0 Launcher3单层模式workspace中app列表页排序功能实现

1.概述 在13.0的定制化开发中,对于Launcher3的功能定制也是好多的,而对于单层app列表页来说排序功能的开发,也是常有的功能这就需要了解加载app数据的流程,然后根据需要进行排序就可以了,接下来就来实现这个功能 如图: 2. Launcher3单层模式workspace中app列表页排序功能实现的核心类 packages\apps\Launche

android launcher3将桌面较长的图标名称显示完整解决方案

android 如何将桌面较长的图标名称显示完整(有些APP的图标名称太长),androidapp 1、请找到对应的res资源,修改styles.xml,将 <style name="WorkspaceIcon.Portrait">         <item name="android:drawablePadding">0dp</item>         <item

android launcher3拖拽事件响应解析长按事件处理

AndroidICS4.0版本的launcher拖拽的流程,基本和2.3的相似。就是比2.3写的封装的接口多了一些,比如删除类的写法就多了个类。等等。4.0的改变有一些,但是不是特别大。这个月一直在改动Launcher的缩略图的效果,4.0的缩略图的功能没有实现,还得从2.3的Launcher中摘出来。通过做这个缩略图对Launcher的模块有一点点了解,拿来分享一下Launch

android launcher3修改内置的系统图标显示

/packages/apps/Launcher/res/xml/default_workspace.xml中记录了系统初始化或者恢复出厂设置时桌面上图标的排列。Launcher程序第一次运行完毕以后,会在/data/data/com.android.launcher/databases/launcher.db中创建记录,里面有所有当前的桌面图标。以后每次启动只会从这里读取桌面图标。

android Launcher3中的IconCache的剖析

在Launcher3中,IconCache是用来缓存应用图标缓存的。IconCache不仅会保存图标,还会保存应用的title, 还有应用的描述,我们可以看到缓存都是保存在mCache的HashMap中,key是ComponentName和UserHandleCompat组成的对象, Value是一个对象CacheEntry, CacheEntry的三个成员是图标,标题和应用描述。 在Lau

Android 10.0 Launcher3禁用widget微件功能实现

1.前言 在10.0的系统rom定制化开发中,在一些Launcher3的定制化功能中,有些产品禁用appwidget微件功能,要求Launcher 去掉加载widget微件功能,接下来具体分析下widget微件的加载流程 2.Launcher3禁用widget微件功能实现的核心类 packages/apps/Launcher3/src/com/android/launcher3/config

Android 10.0 Launcher3定制folder文件夹2x2布局之三foldericon的2x2的布局后拖拽只能停放在右边的问题修复

1.前言 在10.0的系统rom产品定制化开发中,在对Launcher3的folder文件夹功能定制中,要求folder文件夹跨行显示,就是 2x2布局显示,默认的都是占1格的,现在要求占4格显示,系统默认是不支持显示4格的,所以接下来需要分析相关的 功能,然后来实现这个功能 2.Launcher3定制folder文件夹2x2布局之三foldericon的2x2的布局后拖拽只能停放在右边的

Android 10.0 Launcher3定制folder文件夹2x2布局之二foldericon的2x2的显示布局

1.前言 在10.0的系统rom产品定制化开发中,在对Launcher3的folder文件夹功能定制中,要求folder文件夹跨行显示,就是 2x2布局显示,默认的都是占1格的,现在要求占4格显示,系统默认是不支持显示4格的,所以接下来需要分析相关的 功能,然后来实现这个功能 2.Launcher3定制folder文件夹2x2布局之二foldericon的2x2的显示布局的核心类 pac

Android 10.0 Launcher3定制folder文件夹2x2布局之一xml文件配置和解析相关属性

1.前言 在10.0的系统rom产品定制化开发中,在对Launcher3的folder文件夹功能定制中,要求folder文件夹跨行显示,就是 2x2布局显示,默认的都是占1格的,现在要求占4格显示,系统默认是不支持显示4格的,所以接下来需要分析相关的 功能,然后来实现这个功能 2.Launcher3定制folder文件夹2x2布局之一xml文件配置和解析相关属性的核心类 packages

Android 10.0 Launcher3 app页面调整workspace边距app行距变小功能实现

1.前言 在10.0的系统rom定制化开发中,在launcher3的一些开发定制功能中,在对于大分辨率比如1600*2560的设备进行开发的时候, 会在竖屏的时候,在默认7*4的布局的时候,显得行距有点宽,这样就需要调整整个CellLayout的上下左右边距,然后就 会显得行距会小一点,接下来具体分析相关功能来实现需求 2. Launcher3 app页面调整workspace边距app行

Android 手势导航(Launcher3 部分)

手势导航功能的实现主要由 SystemUI + Launcher3 共同处理,SystemUI  中主要由 OverviewProxyService.java 监听,而在 Launcher3 中启动一个 TouchInteractionService 服务监听,主要代码实现都由 Launcher 中处理。 Launcher3/quickstep/recents_ui_overrides/src

Android 13.0 Launcher3定制化之最近任务的全部清除由左边移到下边显示

1.概述 在最近13.0的系统rom产品开发中,在Launcher3的定制化开发中,在最近任务列表中,发现点击recents最近任务键后 显示的全部清除按键在左边 由于是横屏的产品显示在左边不太合理 所以要求显示在下边比较合理,所以要从Launcher3的显示流程来解决这个问题 2. 最近任务全部清除按钮左边移到下边显示的核心代码 packages/apps/Launche

Android 12.0 Launcher3 去掉长按屏幕微件里面的设置和日历等微件

1.概述 在12.0的系统rom产品开发中,在开发Launcher3的微件功能时长按屏幕时,这时候可以进入微件.进入微件以后发现 设置 日历 图库等都有微件图标,这样可以拖动到workspace 作为微件图标使用 点击进入app,由于开发项目的需要,要求去掉这些微件,不让通过进入微件进入app,这就需要分析微件是怎么产生的,然后去掉微件,接下来就来看 怎么样来实现这个功能 2.去掉长按屏幕微件

RK3568 Android Launcher3定制修改

1.去掉Google搜索栏     目录packages/apps/Launcher3/src_build_config/com/android/launcher3/BuildConfig.java 修改如下: 2.Launcher首页去掉抽屉菜单,所有应用都放到桌面  第一步:禁止上滑显示抽屉 在目录packages/apps/Launcher3/quickstep/src/com

Android Launcher3各启动场景源码分析

文章目录 一、概述二、开机启动Launcher2.1、开机启动Launcher流程图2.2、开机启动流程源码分析 三、短压Home键启动Launcher3.1、短压Home键启动Launcher流程图3.2、短压Home键启动Launcher源码分析 四、Launcher异常崩溃后的自启动4.1、Launcher异常崩溃后的自启动流程图4.2、Launcher异常崩溃后的自启动源码分析

Android 13.0 Launcher3 app图标和hotseat 添加背景(焦点选中背景)

1.概述 在13.0的系统产品rom定制化开发中,进行Tv设备定制化开发中,配置的有遥控器需要使用遥控器来移动来控制点击功能,所以需要给app 的Icon 和hotseat 添加背景来显示选中状态原生的Launcher的背景没有支持遥控器的焦点事件,所以就需要在Launcher3中给Item 添加默认背景直接焦点样式背景, 接下来就来实现相关功能 2.Launcher3 app图标和hotse

Android 12.0 Launcher3桌面显示多个相同app图标的解决办法

1.前言 在12.0的系统ROM定制化开发中,在Launcher3的系统原生桌面中,在显示桌面的时候,在禁用和启用app的功能测试的时候,会发现有多个相同app的图标显示在桌面 这对Launcher3的体验效果不是很好,所以为了优化产品,需要解决这个bug,然后让产品更完善,接下来看下具体功能的实现方法 2.Launcher3桌面显示多个相同app图标的解决办法的核心类

android 13.0 Launcher3定制folder文件夹16宫格实现二

1. 概述 在13.0的系统产品rom定制化开发中,对于Launcher3的定制功能也是不少的,比如在Launcher3中添加默认文件夹,把默认的app添加的文件夹里面,其他的app 然后按顺序排序。在文件夹布局就是默认的16宫格布局,接下来分析下相关源码来实现功能 2.Launcher3定制化之修改添加的默认文件夹为16宫格样式的实现二核心类 packages/apps/Launcher3

Android 12.0 Launcher3定制化之动态日历图标功能实现

1.概述  在12.0的系统产品rom开发中,在Launcher3中的相关定制化功能中,对于一些产品要求需要动态日历图标功能,在日期改变的时候,日历图标也需要跟着改变 所以需要自定义日历图标,监听日历改变的广播,收到日期改变的广播后,刷新日历图标,接下来就来分析关于动态日历图标更新这个功能的实现 2.Launcher3定制化之动态日历图标功能实现的核心类 packages\apps\La

Android 12.0 Launcher3定制化之动态时钟图标功能实现

1.概述 在12.0的系统产品rom定制化开发中,在Launcher3中的定制化的一些功能中,对于一些产品要求需要实现动态时钟图标功能,这就需要先绘制时分秒时针表盘,然后 每秒刷新一次时钟图标,时钟需要做到实时更新,做到动态时钟的效果,接下来就来分析这个功能的实现 如图: 2.动态时钟图标功能实现的核心类 packages\apps\Launcher3\src\com\android\l

Android 12.0 关于在系统Launcher3中调用截图api总是返回null的解决方案

1.概述 在12.0的系统rom产品开发中,在Launcher3的开发中,在某些时候需要调用截图接口来进行截屏功能实现,而在Launcher3中发现调用系统截屏接口SurfaceControl.screenshot进行截图的时候始终为null, 获取不到系统当前页面的截屏功能,所以需要找到当前截屏失败的原因然后来实现截屏功能的实现,下面来分析下屏幕截屏的流程然后来解决问题. 2.关于Launc

【Android】Android Framework系列--Launcher3桌面图标加载流程

Launcher3桌面加载流程 Android Launcher3(简称Launcher)启动后会加载桌面。基于Android12代码,分析一下桌面加载的流程。 一些相关的概念: WorkSpace:桌面。在桌面上可以添加快捷方式、Hoseat或Dock(就是手机或者车机系统在桌面底部的图标栏)、Widet小组件(比如天气)等。AllApp:App List,呈现所有App。点击任意App图标

Android 12.0 Launcher3定制化之folder文件夹去掉背景功能实现

1.概述 在12.0的系统产品开发rom定制中,在Launcher3的开发中,在Launcher3的folder文件夹中, 在进入文件夹由于背景是白色的,不是很美观,所以要求去掉白色背景,要求背景换成透明的 所以需要从folder文件夹流程中,找到相关的背景设置的地方,去掉相关背景的功能就可以了 2.Launcher3 folder文件夹去掉背景功能实现的核心类 packages\apps\

Android 13.0 Launcher3 禁止首屏时钟部件拖动到其他屏

1.概述   在13.0的系统rom定制化开发中, 在系统Launcher3中,首页中间默认有个时钟部件来显示时间,并且可以任意拖拽到其他地方,如果拖动到其他屏显的很不美观,所以根据需要要求时钟部件 不能拖拽到其他屏,所以就要从拖拽开始处理,判断如果是时钟部件,就不让拖拽到其他屏,先从拖拽流程分析 然后实现禁止拖拽时钟weight的相关功能 2.Launcher3 禁止首屏时钟部件拖动到其他屏

Android 13.0 Launcher3 禁止首屏时钟部件拖动到其他屏

1.概述   在13.0的系统rom定制化开发中, 在系统Launcher3中,首页中间默认有个时钟部件来显示时间,并且可以任意拖拽到其他地方,如果拖动到其他屏显的很不美观,所以根据需要要求时钟部件 不能拖拽到其他屏,所以就要从拖拽开始处理,判断如果是时钟部件,就不让拖拽到其他屏,先从拖拽流程分析 然后实现禁止拖拽时钟weight的相关功能 2.Launcher3 禁止首屏时钟部件拖动到其他屏

【Android】Android Framework系列--Launcher3各启动场景源码分析

Android Framework系列–Launcher3各启动场景源码分析 Launcher3启动场景 Launcher3是Android系统提供的默认桌面应用(Launcher),它的源码路径在“packages/apps/Launcher3/”。 Launcher3的启动场景主要包括: 开机后启动:开机时,android ams服务拉起Launcher按键启动:比如短压home键,an