Android 11 中的权限更新
官网:https://developer.android.com/about/versions/11/privacy/permissions#audit-by-feature
Android 11 使用户能够为位置、麦克风和摄像头指定更精细的权限。此外,系统会重置针对 Android 11 或更高版本的未使用应用程序的权限,如果应用程序使用系统警报窗口或读取与电话号码相关的信息,则可能需要更新它们声明的权限。
一次性权限
从 Android 11 开始,每当您的应用请求与位置、麦克风或摄像头相关的权限时,面向用户的权限对话框都会包含一个名为Only this time的选项。如果用户在对话框中选择此选项,您的应用将被授予临时的一次性权限。
详细了解系统如何处理一次性权限。
注意:如果您的应用在请求运行时权限时已经遵循了最佳实践,则无需更改您的应用以支持一次性权限。
自动重置未使用应用程序的权限
如果您的应用以 Android 11 或更高版本为目标平台并且几个月未使用,系统会通过自动重置用户授予您的应用的敏感运行时权限来保护用户数据。此操作与用户查看系统设置中的权限并将您的应用程序的访问级别更改为Deny具有相同的效果。如果您的应用程序遵循 在运行时请求权限的最佳做法,则您不需要对您的应用程序进行任何更改。这是因为,当用户与应用程序中的功能交互时,您应该验证这些功能是否具有他们需要的权限。
注意:系统仅重置运行时权限,即在请求时向用户显示运行时提示的权限。
详细了解系统如何自动重置未使用应用的权限。
权限对话框可见性
从 Android 11 开始,如果用户在您的应用在设备上的安装生命周期内多次点击拒绝特定权限,则当您的应用再次请求该权限时,用户不会看到系统权限对话框。用户的动作暗示“不要再问了”。在以前的版本中,每次您的应用程序请求权限时,用户都会看到系统权限对话框,除非用户之前选择了“不再询问”复选框或选项。Android 11 中的这种行为变化不鼓励重复请求用户选择拒绝的权限。
注意:如果您的应用已遵循与权限相关的最佳实践,则无需更改您的应用即可支持此行为更改。
详细了解如何处理应用程序中的权限拒绝。
系统警报窗口更改
Android 11 对应用授予权限的方式进行了多项更改 SYSTEM_ALERT_WINDOW 。这些更改旨在通过更有意识地授予权限来保护用户。
某些应用会根据请求自动授予 SYSTEM _ ALERT _ WINDOW 权限
某些类别的应用程序会根据请求自动授予权限SYSTEM_ALERT_WINDOW :
任何具有 ROLE_CALL_SCREENING 和请求的应用程序SYSTEM_ALERT_WINDOW都会自动授予权限。如果应用程序丢失ROLE_CALL_SCREENING,它将失去权限。
MediaProjection 任何通过 a和请求捕获屏幕的应用程序 SYSTEM_ALERT_WINDOW都会自动授予该权限,除非用户明确拒绝该应用程序的权限。当应用程序停止捕获屏幕时,它会失去权限。此用例主要用于游戏直播应用。
这些应用无需发送 ACTION_MANAGE_OVERLAY_PERMISSION 即可获得SYSTEM_ALERT_WINDOW权限;应用程序可以 SYSTEM_ALERT_WINDOW直接请求。
MANAGE _ OVERLAY _ PERMISSION 意图总是将用户带到系统权限屏幕
从 Android 11 开始, ACTION_MANAGE_OVERLAY_PERMISSION intents 始终将用户带到顶级设置屏幕,用户可以在其中授予或撤销 SYSTEM_ALERT_WINDOW 应用程序的权限。package:意图中的任何数据都将被忽略。
在早期版本的 Android 中,ACTION_MANAGE_OVERLAY_PERMISSION意图可以指定一个包,它将用户带到特定于应用程序的屏幕以管理权限。Android 11 不支持此功能。相反,用户必须首先选择他们希望授予或撤销权限的应用。此更改旨在通过更有意识地授予权限来保护用户。
电话号码
Android 11 更改了您的应用在读取电话号码时使用的与电话相关的权限。
如果您的应用面向Android 11或更高版本并且需要访问以下列表中显示的电话号码API,则必须请求权限 READ_PHONE_NUMBERS ,而不是READ_PHONE_STATE权限。
类和 类getLine1Number()中的 方法 。TelephonyManagerTelecomManager
getMsisdn()类中 不受支持的方法TelephonyManager 。
如果您的应用声明READ_PHONE_STATE调用的方法不是上一个列表中的方法,您可以继续READ_PHONE_STATE跨所有 Android 版本请求。但是,如果您READ_PHONE_STATE仅对前面列表中的方法使用权限,请按如下方式更新您的清单文件:
更改您的声明,READ_PHONE_STATE以便您的应用仅在 Android 10(API 级别 29)及更低版本上使用该权限。
添加READ_PHONE_NUMBERS权限。
以下清单声明片段演示了此过程:
<manifest><!-- Grants the READ_PHONE_STATE permission only on devices that runAndroid 10 (API level 29) and lower. --><uses-permission android:name="android.permission.READ_PHONE_STATE"android:maxSdkVersion="29" /><uses-permission android:name="android.permission.READ_PHONE_NUMBERS" />
</manifest>
额外资源
更多关于Android 11权限变化的信息,请查看以下资料:
影片
使用 Android 11 中的最新隐私更改进行开发
相关文章:
Android 11 中的权限更新
官网:https://developer.android.com/about/versions/11/privacy/permissions#audit-by-feature Android 11 使用户能够为位置、麦克风和摄像头指定更精细的权限。此外,系统会重置针对 Android 11 或更高版本的未使用应用程序的权限,如果应用…...
october-cms
环境准备 靶机链接:百度网盘 请输入提取码 提取码:3e4s 虚拟机网络链接模式:桥接模式 攻击机系统:kali linux 2021.1 信息收集 1.探测目标靶机ip。 2.探测靶机开放端口和服务情况。 漏洞探测 1.访问网页 2.用dirsearch扫描…...
抖音怎样报白?报白需要审核哪些资料呢
抖音怎样报白?报白需要审核哪些资料呢 抖音报白需要什么资料,翡翠原石产品如何开通报白#报白#小店报白#小店运营#抖音#抖音小店运营 文/专栏作家百收 随着抖音在国内流行起来,抖音上每天会有大量的视频更新,越来越多的年轻人也加…...
Spring中的AOP
Spring中的AOP 文章目录Spring中的AOPAOP概述相关术语总结作用AOP概述 AOP(Aspect Programming) 是一种设计思想,是面向切面编程思想 跟OOP(面向对象编程)有什么关系呢? AOP面向切面编程然后是OOP(面向对象编程)的补充和完善。…...
文件系统与动静态库的基本了解
目录文件系统与动静态库的基本了解文件系统了解Access Modify Changeinode硬链接软链接静态库与动态库概念静态库的制作使用静态库动态库的制作使用动态库总结如何制作文件系统与动静态库的基本了解 文件系统 了解Access Modify Change 当文件没有被打开时,他们存…...
netty——IO、NIO、AIO进化之路
IO、NIO、AIO进化之路BIO——同步阻塞IO伪异步阻塞IONIO——同步非阻塞IOAIO——异步IO总结本文会说明各种IO的特点、分别解决了什么样的问题做一个分析阐述,并结合Java代码例子来辅助理解,像这些的历史演进和详细的底层原理网上很多,所以我们…...
AI稳定生成图工业链路打造
前沿这篇文章会以比较轻松的方式,跟大家交流下如何控制文本生成图片的质量。要知道如何控制文本生成质量,那么我们首先需要知道我们有哪些可以控制的参数和模块。要知道我们有哪些控制的参数和模块,我们就得知道我们文本生成图片的这架机器或…...
20230220华南金牌主板u盘启动
20230220华南金牌主板u盘启动 2023/2/20 10:29 百度搜索:华南金牌主板u盘启动 https://www.zhihu.com/question/498121895?utm_id0 华南金牌主板b85u盘启动怎么设置? 华南金牌主板b85u盘启动怎么设置 海的那边 上小学后才发现还是幼儿园好混…… 华南一般是F7和F1…...
测试团队都在用哪些不错的测试用例管理平台?盘点6大主流测试管理系统
测试团队使用的主流测试用例管理平台:1.PingCode ;2.TestRail;3.Testlink;4.ZephyrJira;5.TestCenter;6.飞蛾。目前市面上的测试用例管理工具有很多,但由于针对的项目、领域、目标用户ÿ…...
linux 系统编程之线程
线程 文章目录线程1 线程概念2 NPT安装线程 man page:查看指定线程的 LWP 号:3 线程的特点4 线程共享资源5 线程非共享资源6 线程的优缺点7线程常用操作1 线程号pthread_self函数:pthread_equal函数:参考代码2 错误返回值分析参考代码3 线程的…...
从0开始学python -35
Python3 File(文件) 方法 open() 方法 Python open() 方法用于打开一个文件,并返回文件对象。 在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。 注意:使用 open() 方法一定要保证关闭文件对…...
1.14 golang中的结构体
1. 结构体 Go语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念。Go语言中通过结构体的内嵌再配合接口比面向对象具有更高的扩展性和灵活性。 1.1. 类型别名和自定义类型 1.1.1. 自定义类型 在Go语言中有一些基本的数据类型,如string、整…...
原创不易,坚持更难
早上CSDN发消息,今天是创作满三年的纪念日,邀请写一篇博文,谈谈感受 开博原因 2020年是一个特殊的年份,疫情刚爆发第一年,也是第一次居家办公,从过完年就一直居家办公,一直居家了38天。2020年…...
计算机网络 | 谈谈TCP的流量控制与拥塞控制
文章目录一、TCP的流量控制1、利用滑动窗口实现流量控制【⭐⭐⭐】2、如何破解【死锁】局面❓二、TCP的拥塞控制1、拥塞控制的一般原理① 解决网络拥塞的误区② 拥塞控制与流量控制的关系【重点理解✔】2、TCP的拥塞控制方法① 接收窗口【rwnd】与拥塞窗口【cwnd】② 慢开始和拥…...
Flask入门(7):内置装饰器(钩子函数)
目录7.内置装饰器(钩子函数)7.1 before_request7.2 after_request7.3 before_first_request7.4 error_handlers7.5 template_filter7.6 template_global复习装饰器基础及其应用,可参考文章:闭包和装饰器 7.内置装饰器(…...
Java8新特性
✨作者:猫十二懿 ❤️🔥账号:CSDN 、掘金 、个人博客 、Github 🎉公众号:猫十二懿 写在最前面 在企业中更多的都是使用 Java8 ,随着 Java8 的普及度越来越高,很多人都提到面试中关于Java 8 也…...
哈希表题目:设计哈希集合
文章目录题目标题和出处难度题目描述要求示例数据范围解法一思路和算法代码复杂度分析解法二思路和算法代码复杂度分析题目 标题和出处 标题:设计哈希集合 出处:705. 设计哈希集合 难度 3 级 题目描述 要求 不使用任何内建的哈希表库设计一个哈希…...
java static关键字 万字详解
目录 一、为什么需要static关键字: 二、static关键字概述 : 1.作用 : 2.使用 : 三、static修饰成员变量详解 : 1.特点 : 2.细节 : ①什么时候考虑使用static关键字? ②静态变量和非静态变量的区别? ③关于静态变量的初始化问题 : ④关于静态变…...
光谱实验反射、透射光谱测量
标题反射、透射光谱测量的基本原理 暗背景/基线:Dark………………………………………………………………0% (空)白参考:Reference…………………………………………………………100% 样品反射/透射光谱:Sampl…...
【基础算法】之 冒泡排序优化
冒泡排序思想基本思想: 冒泡排序,类似于水中冒泡,较大的数沉下去,较小的数慢慢冒起来(假设从小到大),即为较大的数慢慢往后排,较小的数慢慢往前排。直观表达,每一趟遍历,…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...
Ubuntu Cursor升级成v1.0
0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开,快捷键也不好用,当看到 Cursor 升级后,还是蛮高兴的 1. 下载 Cursor 下载地址:https://www.cursor.com/cn/downloads 点击下载 Linux (x64) ,…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
