当前位置: 首页 > wzjs >正文

怎么外贸网站推广ui培训内容

怎么外贸网站推广,ui培训内容,WordPress表情包插件,凡科网站建设怎么样Android 下拉栏中的禁用摄像头和麦克风隐藏 文章目录 Android 下拉栏中的禁用摄像头和麦克风隐藏一、前言二、下拉框中的禁用摄像头和麦克风隐藏实现1、设置支持属性为false2、修改代码 三、其他1、下拉栏中的禁用摄像头和麦克风隐藏小结2、 Android SensorPrivacyService ps&a…

Android 下拉栏中的禁用摄像头和麦克风隐藏

文章目录

  • Android 下拉栏中的禁用摄像头和麦克风隐藏
    • 一、前言
    • 二、下拉框中的禁用摄像头和麦克风隐藏实现
      • 1、设置支持属性为false
      • 2、修改代码
    • 三、其他
      • 1、下拉栏中的禁用摄像头和麦克风隐藏小结
      • 2、 Android SensorPrivacyService
  • ps: 成功最重要的原因是明确的目标、不懈的努力与适应变化的能力三者相结合。

一、前言

Android下拉栏中有摄像头和麦克风禁用功能;

但是点击禁用后会有些bug,比方多视窗异常,信源声音异常等问题;

所以目前做法是直接隐藏掉禁用功能,算是规避手段了,

出现问题就不问题删除,哈哈,当然如果有能力和时间去解决这个问题是更好的;

市场上大部分手机上应该是解决了这些问题的,也可能是在某些场景进行了优化;

我这里开发的是大屏设备,没有手机那么多顾虑和要求所以隐藏UI是目前最好的做法。

如果你也有隐藏下拉栏UI或者简单修改下拉框UI的需要可以看看本文。

Android 系统下拉栏的主要代码的目录:

frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar

StatusBar.java 是状态栏和下拉通知栏的核心类,负责管理通知栏的显示、隐藏、滑动等逻辑;

NotificationPanelView.java 用于处理通知栏的布局和绘制等。

本文不涉及复杂逻辑的修改,只是隐藏图标,并且系统中大部分图标都是有res属性可以控制是否隐藏的;

但是3588 Android15 中设置这个属性未生效,后面在代码中直接进行了修改。

二、下拉框中的禁用摄像头和麦克风隐藏实现

1、设置支持属性为false

+++ frameworks/base/core/res/res/values/config.xml
@@ -127,9 +127,9 @@<bool name="config_supportPreRebootSecurityLogs">true</bool><!-- Whether this device is supporting the software microphone toggle -->
-    <bool name="config_supportsMicToggle">true</bool>
+    <bool name="config_supportsMicToggle">false</bool><!-- Whether this device is supporting the camera toggle -->
-    <bool name="config_supportsCamToggle">true</bool>
+    <bool name="config_supportsCamToggle">false</bool>

正常情况修改framework 中的config属性为false就行了;

但是也有些系统方案存在overlay覆盖的情况;一般是vendor 或者device 目录会有

比如RK3588 中的overlay目录:

device/rockchip/common/overlay/frameworks/base/core/res/res/values/config.xml

之前在Android13 的这个目录修改是生效的,但是在Android15 上修改就不行了;

搜索整个源码目录的 config_supportsMicToggle 关键字,能修改的几个都修改了,也是没有起作用;

所以需要看看代码是哪里获取的尝试确认并修改。

2、修改代码

frameworks/base/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.java
@@ -1289,13 +1289,16 
@@ public final class SensorPrivacyService extends SystemService {@Overridepublic boolean supportsSensorToggle(int toggleType, int sensor) {
+            //change by skg
+            Log.d(TAG,"lwz supportsSensorToggle toggleType = " + toggleType + ", sensor = " + sensor);
+
+            Log.d(TAG,"lwz supportsSensorToggle config_supportsMicToggle = " + mContext.getResources().getBoolean(R.bool.config_supportsMicToggle) +
+            ", config_supportsCamToggle = " + mContext.getResources().getBoolean(R.bool.config_supportsCamToggle));if (toggleType == TOGGLE_TYPE_SOFTWARE) {if (sensor == MICROPHONE) {
-                    return mContext.getResources().getBoolean(R.bool.config_supportsMicToggle);
+                    return false;//mContext.getResources().getBoolean(R.bool.config_supportsMicToggle);} else if (sensor == CAMERA) {
-                    return mContext.getResources().getBoolean(R.bool.config_supportsCamToggle);
+                    return false;//mContext.getResources().getBoolean(R.bool.config_supportsCamToggle);}} else if (toggleType == TOGGLE_TYPE_HARDWARE) {if (sensor == MICROPHONE) {

从代码看可以看到是否支持确实是从res属性中进行获取和判断;

上面强制返回了false,表示不支持;

并且从打印日志查看,虽然res属性设置了false,但是打印的日志还是获取到显示true;

难道存在有打包的gms overlayapk会进行属性覆盖?暂时不确定。

三、其他

1、下拉栏中的禁用摄像头和麦克风隐藏小结

正常情况设置framework config属性就行:

<bool name="config_supportsMicToggle">false</bool>
<bool name="config_supportsCamToggle">false</bool>

也有可能存在overlay的情况,需要修overlay的属性。

如果修改config资源无效,可以尝试修改Java文件:

frameworks/base/services/core/java/com/android/server/sensorprivacy/SensorPrivacyService.javapublic boolean supportsSensorToggle(int toggleType, int sensor) {return false;}

SensorPrivacyService 只控制隐私的摄像头和麦克风,下拉栏的其他属性不在这里控制。

2、 Android SensorPrivacyService

Android SensorPrivacyService 是 Android 系统中负责传感器隐私管理的服务,其主要作用如下:

**保护用户隐私**:它通过限制应用对传感器数据的访问,来防止应用在用户不知情的情况下获取敏感信息,从而保护用户的隐私。
例如,在用户未授权时,阻止应用访问位置传感器、摄像头、麦克风等传感器,避免位置信息、图像、语音等数据被泄露。

简单的说SensorPrivacyService 就是一个系统服务,开机回初始化,会控制和监听摄像头和麦克风的是否使用授权;

这个SensorPrivacyService的代码不多只有一千多行;里面还有两个Settings属性的监听:

Settings.Secure.DEFAULT_INPUT_METHOD 在 Android 系统的输入法管理中起着关键的作用,它是连接用户设置、系统输入法切换以及应用与输入法交互的重要纽带。Settings.Global.RECEIVE_EXPLICIT_USER_INTERACTION_AUDIO_ENABLED 是 Android 系统设置中的一个全局属性,用于控制是否允许应用在接收到明确的用户交互后播放音频。

ps: 成功最重要的原因是明确的目标、不懈的努力与适应变化的能力三者相结合。

http://www.dtcms.com/wzjs/796911.html

相关文章:

  • 定制建设网站官方网站下载6966
  • 自己做的网站如何管理做高铁在哪个网站买
  • 三水区建设局网站宝安中心做网站
  • 刘涛做的婴儿玩具网站重庆大型网络公司
  • 网站建设服务合同是否缴纳印花税长沙公司网络营销推广
  • 做软件代理去哪个网站电影网站做多大会有风险
  • net网站开发net网站开发电子商务网站建设步
  • 写作网站招聘邯郸网络推广服务平台
  • 网站建设赶集网dz 一步一步教你做网站
  • 网站建设苏州公司《网站开发与应用》试题
  • 东莞陈村网站制作优化大师免费下载
  • 佛山门户网站建设公司网站制作aqq
  • 零基础网站建设书籍团购汽车最便宜的网站建设
  • 网站seo优化技巧cms 网站模板
  • 企业做年度公示在哪个网站做网站建设一年能赚多少
  • 刚做的网站怎么在百度搜到常见的网络营销推广方法
  • 国外免费网站域名服务器查询软件登陆建设银行官方网站
  • 做哪种网站流量大网站建设图书
  • 蚂蜂窝网站分析祁连网站建设公司
  • 东莞企业网站后缀新公司网站建设
  • 宿迁网站seo宝应网页设计
  • 个人网站建设的过程海南高端网站建设定制
  • 南岗红旗大街网站建设可以自己做网站经营吗
  • 网站域名的单词网络科技公司注册资金
  • 网站如何有排名如何做pdf电子书下载网站
  • 武城网站建设价格我怎么打不开建设银行的网站
  • 建设通网站联系电话网站建设的通知网站维护分工
  • wordpress wnmp网站优化文档
  • 苏州网站开发网站建立费用wordpress 微博功能
  • 营口网站建设价格国外设计素材网站免费