GMS之Launcher中去除默认Search或替换为Chrome Search
将Launcher中搜索框去除
将FeatureFlags.java文件中的QSB_ON_FIRST_SCREEN变量修改为false
\system\vendor\mediatek\proprietary\packages\apps\Launcher3\src\com\android\launcher3\config\FeatureFlags.java/*** Defines a set of flags used to control various launcher behaviors.** <p>All the flags should be defined here with appropriate default values.*/
public final class FeatureFlags {/*** Enable moving the QSB on the 0th screen of the workspace. This is not a configuration feature* and should be modified at a project level.*/public static final boolean QSB_ON_FIRST_SCREEN = BuildConfig.QSB_ON_FIRST_SCREEN;
在源码中是通过launcher3中的BuildConfig.java去获取变量(默认true),那么在这里将变量修改为false即可(自行添加系统变量进行灵活控制也行)
\system\vendor\mediatek\proprietary\packages\apps\Launcher3\src_build_config\com\android\launcher3\BuildConfig.javapublic final class BuildConfig {public static final String APPLICATION_ID = "com.android.launcher3";public static final boolean DEBUG = false;/*** Flag to state if the QSB is on the first screen and placed on the top,* this can be overwritten in other launchers with a different value, if needed.*/public static final boolean QSB_ON_FIRST_SCREEN = false;
}
最近在Android 13平台修改以上代码后,在Launcher中并不生效,后来发现,如果SearchLauncherQuickStep存在会默认使用,那么我们的修改就不会生效,因此在这里也需要把它注释掉
system\vendor\partner_gms\products\gms.mkGMS_PRODUCT_PACKAGES += \#SearchLauncherQuickStep
如何将默认的Search替换为其他的? 比如项目是出货RU(俄罗斯)的,根据要求需要将Launcher中的默认Google Search 要更换为 Chrome Search
String providerPkg 为 Chrome 浏览器应用的包名
String className 为 launcher中Chrome Search组件的名字
Boolean ruSupport 为了判断当前版本是否为RU版本(一般只有RU地区才需要这样替换Search)
在getSearchWidgetProviderInfo方法中进行修改判断
system\vendor\mediatek\proprietary\packages\apps\Launcher3\src\com\android\launcher3\qsb\QsbContainerView.java/*** returns it's AppWidgetProviderInfo using package name from getSearchWidgetPackageName* @param context* @return AppWidgetProviderInfo*/@Nullablepublic static AppWidgetProviderInfo getSearchWidgetProviderInfo(@NonNull Context context) {String providerPkg = getSearchWidgetPackageName(context);if (providerPkg == null) {return null;}//add ---------------------------------------------------------String providerPkg = "com.android.chrome";String className = "org.chromium.chrome.browser.searchwidget.SearchWidgetProvider";Boolean ruSupport = SystemProperties.get("ro.product.name");//end ---------------------------------------------------------AppWidgetProviderInfo defaultWidgetForSearchPackage = null;AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);for (AppWidgetProviderInfo info :appWidgetManager.getInstalledProvidersForPackage(providerPkg, null)) {if (info.provider.getPackageName().equals(providerPkg) && info.configure == null) {if ((info.widgetCategory& AppWidgetProviderInfo.WIDGET_CATEGORY_SEARCHBOX) != 0) {//add ---------------------------------------------------------if(ruSupport){if(className.equals(info.provider.getClassName())){return info;}}else{return info;}//end ---------------------------------------------------------} else if (defaultWidgetForSearchPackage == null) {defaultWidgetForSearchPackage = info;}}}return defaultWidgetForSearchPackage;}
相关文章:
GMS之Launcher中去除默认Search或替换为Chrome Search
将Launcher中搜索框去除 将FeatureFlags.java文件中的QSB_ON_FIRST_SCREEN变量修改为false \system\vendor\mediatek\proprietary\packages\apps\Launcher3\src\com\android\launcher3\config\FeatureFlags.java/*** Defines a set of flags used to control various launche…...
@DateTimeFormat 和 @JsonFormat 的详细研究
关于这两个时间转化注解,先说结论 一、介绍 1、DateTimeFormat DateTimeFormat 并不会根据得到其属性 pattern 把前端传入的数据转换成自己想要的格式,而是将前端的String类型数据封装到Date类型;其次它的 pattern 属性是用来规范前端传入…...
nodejs基于Vue.js健身体育器材用品商城购物网97794
管理员端的功能主要是开放给系统的管理人员使用,能够对用户的信息进行管理,包括对用户、健身器材、器材类型、系统和订单进行查看,修改和删除、新增等,对系统整体运行情况进行了解。用户的功能主要是对个人账号和密码进行更新信息…...
C#WPF框架Microsoft.Toolkit.MvvM应用实例
本文实例演示C#WPF框架Microsoft.Toolkit.MvvM应用 目录 一、MVVM概述 二、MVVMLight概述 三、使用Microsoft.Toolkit.Mvvm框架 一、MVVM概述 MVVM概述MVVM是Model-View-ViewModel的简写,主要目的是为了解耦视图(View)和模型(Model)。...
蓝桥杯每日一题2023.9.27
4408. 李白打酒加强版 - AcWing题库 题目描述 题目分析 对于这题我们发现有三个变量,店,花,酒的数量,对于这种范围我们使用DP来进行分析。 dp[i][j][k]我们表示有i个店,j朵花,k单位酒的集合,…...
Redis与分布式-主从复制
接上文 常用中间件-OAuth2 1.主从复制 启动两个redis服务器。 修改第一个服务器地址 修改第二个redis 然后分别启动 redis-server.exe redis.windows.conf) 查看当前服务器的主从状态,打开客户端:输入info replication命令来查看当前的主从状态&am…...
QT pyside2 线程嵌套子线程 实现开始运行和停止运行
文章目录 前言为什么要使用多线程 一、单个线程实现按钮方法的执行二、线程嵌套多个子线程实现按钮方法的执行三、QT GUI常用代码3.1 多线程取出队列任务循环执行,无停止3.2 将某个方法放在线程中执行3.3 QT pyside2 tableWidget 清除日志3.4 退出整个GUI程序(杀死进…...
江西广电会展集团总经理李悦一行莅临拓世科技集团调研参观,科技璀璨AIGC掀新潮
在江西这片充满活力的土地上,数字经济如潮水般涌动,会展文化与科技的完美结合,正如新时代的璀璨繁星照亮夜空,更预示着一场AIGC创新的壮丽篇章即将展开。作为拓世科技集团的老朋友,江西广电多位领导多次莅临拓世科技集…...
【RabbitMQ实战】06 RabbitMQ配置
一、概述 一般情况下,可以使用默认的内建配置来有效地运行RabbitMQ,并且大多数情况下也并不需要修改任何 RabbitMQ的配置。当然,为了更加有效地操控 RabbitMQ,也可以利用调节系统范围内的参数来达到定制化的需求。 RabbitMQ提供…...
CTF 全讲解:[SWPUCTF 2021 新生赛]jicao
文章目录 参考环境题目index.phphighlight_file()include()多次调用,多次执行单次调用,单次执行 $_POST超全局变量HackBarHackBar 插件的获取 $_POST打开 HackBar 插件通过 HackBar 插件发起 POST 请求 GET 请求查询字符串超全局变量 $_GET JSONJSON 数据…...
FL Studio21.1电脑试用体验版音乐制作软件
我一直以来对音乐艺术都很感兴趣。最近我接触到了一款名为 FL Studio 的电脑版音乐制作软件,深感其强大功能和广泛适用性。通过使用这款软件,我不仅深入了解了音乐制作的过程与技巧,也加深了对音乐创作的理解。 FL Studio 最初是一款针对 MI…...
【数据结构】单链表的基本操作(节点建立、插入删除)
1. 单链表的基本操作 1.1. 链表的定义1.2. 链表的创建(初始化) 1.2.1. 不带头结点的链表1.2.2. 带头结点的链表 1.3. 链表的插入和删除 1.3.1. 按位序插入 1.3.1.1. 带头结点1.3.1.2. 不带头结点 1.3.2. 指定节点的后插操作1.3.3. 指定元素的前插操作1.3…...
DEM格式转换:转换NSDTF-DEM国标数据格式为通用格式,使用ArcGIS工具转换NSDTF-DEM国标.dem文件为通用.tif格式。
DEM格式转换:转换NSDTF-DEM国标数据格式为通用格式,使用ArcGIS工具转换NSDTF-DEM国标.dem文件为通用.tif格式。 *.dem是一种比较常见的DEM数据格式,其有两种文件组织方式,即NSDTF-DEM和USGS-DEM。 (1)NSDT…...
施耐德电气:勾勒未来工业愿景,赋能中国市场
9月19日,第23届中国国际工业博览会(简称“工博会”)在上海隆重召开。作为全球能源管理和自动化领域的数字化转型专家,施耐德电气在工博会现场全方位展现了自身对未来工业的全新视野与深刻见解,不仅展示了其贯通企业设计…...
安防监控产品经营商城小程序的作用是什么
安防监控产品覆盖面较大,监控器、门禁、对讲机、烟感等都有很高用途,家庭、办公单位各场景往往用量不少,对商家来说,市场高需求背景下也带来了众多生意,但线下门店的局限性,导致商家想要进一步增长不容易。…...
php中判断指定字符串是否包含指定字符的封装函数
在 PHP 中,你可以使用内置的字符串函数 strpos() 来判断一个字符串是否包含指定的字符或子字符串。以下是一个简单的封装函数,它使用 strpos() 来判断指定字符串是否包含指定字符,并返回一个布尔值。 function stringContains($string, $cha…...
GICI-LIB源码阅读(三)因子图优化模型
原始 Markdown文档、Visio流程图、XMind思维导图见:https://github.com/LiZhengXiao99/Navigation-Learning 文章目录 三、因子图优化(FGO)1、因子图模型2、因子图优化状态估计模型3、因子图优化求解4、Ceres 非线性最小二乘库5、GICI-LIB 中…...
5、Docker安装mysql主从复制与redis集群
安装mysql主从复制 主从搭建步骤 1.1 新建主服务器容器实例3307 docker run -p 3307:3306 --name mysql-master #3307映射到3306,容器名为mysql-master -v /app/mysql/mydata/mysql-master/log:/var/log/mysql #容器数据卷 -v /app/mysql/mydata/mysql-master/dat…...
【AI视野·今日NLP 自然语言处理论文速览 第四十三期】Thu, 28 Sep 2023
AI视野今日CS.NLP 自然语言处理论文速览 Thu, 28 Sep 2023 Totally 38 papers 👉上期速览✈更多精彩请移步主页 Daily Computation and Language Papers Cross-Modal Multi-Tasking for Speech-to-Text Translation via Hard Parameter Sharing Authors Brian Yan,…...
Unity 制作登录功能01-创建登录的UI并获取输入内容
1.创建UI面板 导入插件TextMesh Pro 2.编写脚本获取用户输入 这里用的是输入框侦听函数,所有UI都可以使用侦听函数 ,需要注意TMP_InputField 这个类是UI中导入的一个插件TextMesh Pro!在代码中需要引用using TMPro; 命名空间! …...
什么是用户画像?
(1)首先用户画像是个动词逻辑,不是名词,就是给用户绘制肖像。 (2)在互联网这个平台上,绘制肖像就相当千给用户打标签 (3)标签通常是人为规定的高度精炼的特征标识,如年龄、性别、地域、兴趣等…...
DevExpress WinForms图表组件 - 直观的数据信息呈现方式!(二)
在上文中(点击这里回顾>>),我们为大家介绍了DevExpress WinForms图表控件的互动图表、图标设计器及可定制功能等,本文将继续介绍DevExpress WinForms图表控件的数据分析、大数据功能等,欢迎持续关注我们哦~ Dev…...
基于AIOps实现智慧园区极简IT运维
随着物联网、云平台、大数据、人工智能等技术的发展,并逐步投入到智慧园区的建设,传统园区数字化转型加快。园区的形式包括产业园区、教育园区、制造业园区、科研园区、社区等等,园区形态不断演进和发展,园区网承载的对象和业务也…...
chatgpt 只会死记硬背吗
本周写两篇关于 chatgpt 的随感,我不善于写文档,所以我的文字多是输出直感和观点,而不是知识,没有关于 chatgpt 的原理和应用,甚至术语也不匹配,反正就是想到哪算哪吧。 都说 chatgpt 没有内在逻辑…...
03-Zookeeper客户端使用
上一篇:02-Zookeeper实战 1. 项目构建 zookeeper 官方的客户端没有和服务端代码分离,他们为同一个jar 文件,所以我们直接引入zookeeper的maven即可, 这里版本请保持与服务端版本一致,不然会有很多兼容性的问题 <…...
自然语言处理(NLP)学习之与HanLP的初相识
目录 前言 一、自然语言处理基本知识 1、NLP类别 2、核心任务 二、Hanlp简要介绍 三、Hanlp云服务能力 1、全新云原生2.x 2、Python api调用 3、Go api调用 4、Java api调用 四、Hanlp native服务 1、本地开发 总结 前言 在ChatGPT的滚滚浪潮下,也伴随着人工智…...
JDBC【DBUtils】
一、 DBUtils工具类🍓 (一)、DBUtils简介🥝 使用JDBC我们发现冗余的代码太多了,为了简化开发 我们选择使用 DbUtils Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,…...
大数据Doris(一):Doris概述篇
文章目录 Doris概述篇 一、前言 二、Doris简介...
vue 基于vue-seamless-scroll无缝滚动的用法和遇到的问题解决
vue 基于vue-seamless-scroll无缝滚动的用法和遇到的问题解决 背景 最近再做一个大屏项目,需要用到表格滚动效果,之前自己写过js实现,最近发现一个组件vue-seamless-scroll可以实现滚动,感觉挺方便的,准备用一下,但是用完之后才发现这个组件有很多坑需要解决.我把用法和一些问…...
SmartX 边缘计算解决方案:简单稳定,支持各类应用负载
在《一文了解近端边缘 IT 基础架构技术需求》文章中,我们为大家分析了边缘应用对 IT 基础架构的技术要求,以及为什么超融合架构是支持边缘场景的最佳选择。值得一提的是,IDC 近日发布的《中国软件定义存储(SDS)及超融合…...
男女做某事网站/168推广网
函数名: strnicmp头文件:函数原型: int strnicmp(const char *str1,const char *str2,unsigned n);功 能: 对指定长度的两个字符串进行比较,但是不区分大小写参 数: str1和str2 为要进行比较的字符串unsigned n 为要比较的字符串个数返回值&…...
沈阳做网站哪家公司好/网络营销考试题目及答案2022
Navicat 设置导出向导的附加选项设置根据用户设置的文件格式而定。本教程将详解 Navicat 在设置导出向导时如何设置附加选项。 包含列的标题:勾选此项,栏位名将会包含在导出的文件。 添加:如果用户在设置导出目标文件名时为多个表选择“导出选…...
wordpress自动发布模块/互联网营销师考证多少钱
分享一组Rpg Marker人物行走,游戏素材图片,共5张图片 上面的下载地址链接是图片,无法直接复制哦!下载请直接点击:游戏素材下载 或者复制以下链接:http://www.2gei.com/view/50.html...
网站服务器错误/企业网站模板图片
简介:开发工具篇Maven 篇Git 篇其他工具篇开发工具篇Intellij IDEA 最常用配置详细图解Intellij IDEA 非常6的 10 个姿势Intellij IDEA 那些隐藏好用的小技巧Intellij IDEA Debug 调试技巧Intellij IDEA 阅读源码的 4 个绝 ...开发工具篇Maven 篇Git 篇其他工具篇开发工具篇Int…...
成都有几家做网站的公司/百度站长工具收费吗
springboot学习比较总结:https://pan.baidu.com/s/1dYwvpk spring STS工具安装:https://blog.51cto.com/qinbin/2067347Java系统部署脚本:当想把程序放到后台运行: nohup ./your_command &部署Java:1. 在eclips…...
车险网站模版/百度推广首次开户需要多少钱
今天做的一个小程序项目中需要用到scope.userLocation获取用户地理位置这个权限,这个权限对应两个接口wx.getLocation(Object object) 和wx.chooseLocation(Object object),这两个接口都能够获取到用户当前位置的经纬度,但是除此之外…...