首页 > 其他分享 >Android 10.0 Launcher3禁用widget微件功能实现

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

时间:2024-06-03 09:58:03浏览次数:14  
标签:10.0 widget java 功能 BaseFlags Launcher3 Android 微件

1.前言

在10.0的系统rom定制化开发中,在一些Launcher3的定制化功能中,有些产品禁用appwidget微件功能,要求Launcher 去掉加载widget微件功能,接下来具体分析下widget微件的加载流程

2.Launcher3禁用widget微件功能实现的核心类

packages/apps/Launcher3/src/com/android/launcher3/config/BaseFlags.java
packages/apps/Launcher3/src/com/android/launcher3/popup/SystemShortcutFactory.java

3.Launcher3禁用widget微件功能实现的核心功能分析和实现

Launcher顾名思义,就是桌面的意思,也是android系统启动后第一个启动的应用程序, :Launcher3负责管理和展示用户手机桌面上的各个应用程序图标。它通过GridView或者LinearLayout等布局管理器将 图标进行排列,并支持滑动、放大缩小等手势操作 在Launcher3中SystemShortcutFactory.java中就是具体处理关于长按弹窗布局的, SystemShortcutFactory.java可以看出长按图标时的弹框加载的功能,

3.1 BaseFlags.java的相关源码分析

在实现Launcher3禁用widget微件功能实现的核心功能中,通过上述的分析得知, 在BaseFlags.java的相关源码中,这里主要是管理Launcher3的常量类的,接下来看下 关于widget的常量管理类

abstract class BaseFlags {
 
     private static final Object sLock = new Object();
     @Gu

标签:10.0,widget,java,功能,BaseFlags,Launcher3,Android,微件
From: https://blog.csdn.net/baidu_41666295/article/details/139394759

相关文章

  • Android Studio踩坑记录
    一、5issueswerefoundwhencheckingAARmetadata:  1. Dependency'androidx.appcompat:appcompat-resources:1.7.0'requireslibrariesandapplicationsthat    dependonittocompileagainstversion34orlaterofthe    AndroidAPIs.诸如......
  • Android基础-UI布局
    在Android开发中,UI布局是构建用户界面(UserInterface)的基础。不同的布局方式可以适应不同的界面需求,实现多样化的界面效果。下面将详细阐述Android中几种常见的UI布局方式,包括它们的功能、优势和劣势,以便开发者在选择布局方式时能够做出更明智的决策。1.LinearLayout(线性布局......
  • Android Bluetooth page timeout问题
    Android蓝牙连接超时时间蓝牙配对时间过长https://blog.51cto.com/u_13019/7750311测试机与辅助机配对蓝牙成功后,关闭辅助机蓝牙开关,测试机给辅助机通过蓝牙分享一张图片,提示"蓝牙共享,未发送文件"间隔时间应当5秒左右测试步骤:1.测试机与辅助机配对蓝牙成功2.进入设置->蓝牙,选......
  • Android启动窗口SplashScreen
    Android启动窗口SplashScreen首先介绍下什么是启动窗口,对于大部分应用冷启动时的场景都会有启动窗口,为了让效果更明显,在如下代码中(只是一个基本的可以运行的应用即可)添加了sleep5s的代码,在按recent键移除应用后,再点击桌面图标,即可看到启动窗口效果,即使点击后界面内容显示出来前的......
  • Flutter开发效率提升1000%,Flutter Quick教程之对写好的Widget进行嵌套
    通常写代码的时候,我们是先写好外面的Widget,再写里面的Widget。但是,也有的时候,我们写好了一个Widget,但是我们觉得有必要再在外面嵌套一个Widget,这时候应该怎么做呢?(还有其他方式,本篇讲的就是快捷的方式)1,首先,我们左键选中要嵌套的Widget。2,这时候,我们要选择的嵌套在外面的Widge......
  • 基于Android的XX校园交流APP
    摘要这个App的设计主要包括前台页面的设计和方便用户互动的后端数据库,而前端软件的开发则需要良好的数据处理能力、友好的界面和易用的功能。数据要被工作人员通过界面操作传输至数据库中。通过研究采用MVP结构设计,使用Java开发语言开发,采用ssm架构以及MySQL数据库进行设......
  • springboot基于Android的记录生活APP
    摘要本文拟采用Android平台进行开发,使用java技术和Springboot搭建系统框架,后台使用MySQL数据库进行信息管理,设计开发的记录生活APP。通过调研和分析,系统拥有管理员和用户两个角色,主要具备登录注册,个人信息修改,用户管理,运动项目管理,食物类型管理,新闻资讯管理,食品分析管理,套......
  • 基于Android的跳蚤市场
    摘要伴随着我国社会的发展,人民生活质量日益提高。互联网逐步进入千家万户,改变传统的管理方式,以互联网为基础,利用java技术,结合SpringBoot框架和MySQL数据库开发设计一套跳蚤市场,提高工作效率的同时,减轻管理者工作方面的压力,使他们能够将更多精力投入到市场上,更好的完成用户......
  • Android基础-数据库
    在Android系统中,数据库扮演着至关重要的角色,它负责存储、管理和检索应用程序所需的数据。随着移动应用的日益复杂和功能的不断增加,对数据库的需求也日益提高。在Android中,有多种数据库管理系统和工具可供选择,其中最为常见和广泛使用的是SQLite数据库。下面将详细介绍Android系......
  • Qt for Android 轻松解决编译器无法被识别问题!!
        相信很多小伙伴,也碰到过这种问题。明明下载Qt时,勾选了安卓组件,JDK,NDK、SDK都配置成功,但还是没有安卓编译器,或者是编译器前面有黄色感叹号,无法使用编译器。下面有解决办法。    解决方法:        1、Qt缓存导致(解决大部分问题):        ......