安全和隐私变更

隐私保护是Android Q重要的主题之一,Android Q带来了一系列增强用户隐私保护的变更。

1

应用文件存储空间限制

应用访问限制是Android Q影响最大变更之一。在Android Q系统中,应用只可以通过路径读取自己应用沙箱内的文件,如果需要读取应用沙箱外的文件,需要使用安卓统一接口来实现。该变更对大部分应用都会产生较重大的影响,需要开发者进行重点关注,后续我们也将以专题的形式来详细解读应该变更的影响和应对策略。

2

禁止访问不可更改的ID

Android Q将禁止非系统应用访问用户不可更改的ID,包括IMEI号、SN号、USB序列号等。系统WiFi Mac地址默认是随机生成的,不再是固定的Mac地址,防止用户隐私被追踪。该变更将对依赖设备信息的业务产生影响,比如数据上报、用户画像、推荐和广告等,需要开发者进行重点关注。

3

不允许后台弹页面

Android Q将禁止应用后台启动activity,这将对后台弹出页面使用场景产生重大影响,如:闹钟、音乐锁屏、应用后台安装等。在目前的预览版中,该变更未正式实施,但是对有后台弹页面的行为会产生toast警告,提示开发者进行相关的整改。

该变更对有通知的应用,widget和快捷方式没有影响,开发者可以将一些必要的场景改用通知的方式去实现。

4

位置权限三态化

Android Q中,应用在申请地理位置授权时,将增加使用时可用和始终可用两个选择。这将对需要后台GPS定位的使用场景产生影响,开发者在使用后台定位时需要增加前台服务。

5

剪切板访问限制

Android Q中,系统将禁止应用在后台访问剪切板,以更好地保护用户隐私。

AOSP变更

1

Hidden API

在Android P中,谷歌已经开始限制Hidden API的使用,在Android Q中,新增了max-o和max-p两种类型,黑名单的数量也大幅增加。这将对所有使用非SDK接口的应用产生影响。

开发者需要自行检测非SDK接口的名单,并将还在使用的黑名单接口反馈给谷歌申请加到灰名单中,手机厂商也会配合应用进行测试验证和相关的适配工作。

2

折叠屏适配

现在越来越多的手机厂商发布了折叠屏的手机,谷歌在Android Q系统中提供了统一的折叠屏方案和适配接口,系统增加了最小比例设置的参数minAspectRatio,应用可以通过meta-data声明。

该变更对所有在折叠屏设备上的应用都会产生影响,主要需要解决手机从折叠形态到展开状态转化时应用重新加载和展开状态下应用显示比例适配两个问题。

多媒体新特性

1

Heif格式图片支持

在Android P系统中已经增加了对Heif格式图片的软解码和软编码的支持,系统图库也支持Heif格式图片显示。在Android Q中,将支持拍照直接生成Heif格式的图片。这将对图片读取和分享的使用场景产生影响,相关的应用(如社交类、图片美化类)应进行Heif格式图片的支持适配。

2

并发录音

在Android P及之前的安卓系统中,不支持并发录音,录音焦点不可抢占。在Android Q中增加了对并发录音的支持,录音焦点可以被抢占。这将对后台录音的场景产生影响,可能会录到空数据。有相关使用场景的应用需要通过接口去监听录音焦点的状态变化,并及时作出应对。

3

录音source限制

Android Q系统对AUDIO_SOURCE_VOICE_CALL类型的录音源增加权限限制,CAPTURE_AUDIO_OUTPUT需要系统签名才可以使用,其他应用无法申请。该变更将导致应用无法录音,一些社交类软件的语音电话功能会受到影响。

开发者需要将录音源改为AUDIO_SOURCE_VOICE_COMMUNICATION来规避这个问题的发生。

4

MediaProvider

Android Q系统增加了对MediaProvider的sql语句管控,mediastore中定义的列以外的信息,无法查询,不合法的查询列会返回空值。

文件的位置信息被删除,将无法通过MediaProvider进行查询。开发者需要对查询的语句进行排查和整改,动态申请ACCESS_MEDIA_LOCATION权限,然后通过MediaProvider的openFile获取文件的exif信息。

系统应用变更

安装器接口废弃

Android Q系统将禁止调用intent(action为INSTALL_PACKAGE)拉起安装器,该应用将对TargetSdkVersion<24的应用产生影响,应用内安装的功能将无法实现。开发者可以使用FileProvider进行适配,使用content Uri替代file Uri。

OS特性变更

禁止非系统应用调用dex2oat

Android Q将禁止非系统应用调用dex2oat,该变更通过selinux权限进行管控,只对TargetSdkVersion≥Q的应用产生影响,需要开发者进行排查是否有相关操作。此外该变更还会对加固程序产生影响,需要加固厂商进行重点关注。

API LEVEL政策变更

2019 Google Play上架API LEVEL政策规定,对于新上架的应用,2019年8月1日以后,应用TargetSdkVersion需要大于等于28;对于更新的应用,2019年11月1日前需要将应用TargetSdkVersion升级到28及以上。

转载于:https://www.cnblogs.com/bluestorm/p/10782927.html

Android Q 变更和新特性相关推荐

  1. Android 12 变更与新特性

    Date:2021.7 文章目录 Android 12新特性总结 一.设置 二.通知 1. 媒体控制界面 2. 媒体控制 3. 休眠功能 4. 通知界面更新 5. trampoline 三.消息框To ...

  2. android各个版本的新特性

    首先看看最新版本Android 11 : https://www.zhihu.com/question/420186152 4.0 Ice Cream Sandwich(冰激凌三明治):2011年10 ...

  3. Android Pie 引入 Keystore 新特性,安全防护再升级

    作者: Lilian Young 和 Shawn Willden, Android 安全团队:Frank Salim, Google Pay 团队 我们希望更深入的了解您的开发实践与体验,以便为您构建 ...

  4. Android 6.0系统新特性及功能说明

    本文通过翻译官方文档和google开发者大会资料收集得出,转载请注明出处. Android 6.0系统新特性及功能说明... 1 1       优化用户体验:... 1 1.1        应用权 ...

  5. Android 4.1-Jelly Bean新特性详解

    Android 4.1Jelly Bean新特性详解 发布会已经结束,Android新一代的4.1版本,代号Jelly Bean(果冻豆)的新系统已经正式问世,除了新架构.全新通知栏和搜索功能之外,实 ...

  6. Android studio 4.2新特性及升级异常

    Android studio 版本及特性系列目录 Android 12 终于来了,你准备好了吗? Android studio 4.2新特性 Android studio 4.1新特性 Android ...

  7. 探索Android 9.0 Pie新特性变更

    北京时间 8 月 7 日上午,Google 正式发布 Android 9.0 正式版系统,并宣布系统版本 Android P 被正式命名为代号「Pie」. 目前,Google 已向全球 Pixel 设 ...

  8. 神经网络API、Kotlin支持,那些你必须了解的Android 8.1预览版和Android Studio 3.0新特性

    曾仅用 55 秒发布会的 Android 8.0 Oreo 在时隔两个月后,Google 于今天在其官方网站上正式发布了 Android 8.1 首个开发者预览版,此次升级涵盖了针对多个功能的提升优化 ...

  9. Android 系统各版本新特性总结

    Android 4.0 Space 留白 PopupMenu GlidLayout 网格布局 Android 5.0 MaterialDesign设计风格 Material Theme Meteria ...

最新文章

  1. Ardino基础教程 23_步进电机
  2. MariaDB通过命令行的方式导出指定数据库和还原指定数据库
  3. Node.js的完全卸载与下载安装及各种npm、nvm、nrm配置(保姆式教程---提供全套安装包)---node.js的安装与配置(0)
  4. Git命令集十四——抓取命令
  5. Linked List Two Finish
  6. 基于大数据的人工智能象棋
  7. MATLAB 非对称矩阵求逆
  8. Spotfire 表达式之日期和时间函数
  9. 字节二面、三面面经及内推
  10. c语言中floor有什么作用,floor函数?floor函数的使用方法?ceil函数?C语言 floor 函数...
  11. mysql where in()
  12. 国瀚实业|春节投资,这些理财的坑要注意
  13. mantis 重启mysql_机器突然重启导致Mantis错误
  14. 【20200129】win10 win7双系统安装成功后,win7提示未激活怎么办?
  15. python生成器与迭代器_python 生成器与迭代器(yield 用法)
  16. Greenplum实战--standby master的模拟故障与修复
  17. 美团登录获取cookie
  18. 学习笔记:有源晶振与无源晶振(一)
  19. Mac 显示隐藏文件 如.m2
  20. 计算1+3+5+...+99 的和

热门文章

  1. java连接mysql数据库(jsp显示和控制台显示)
  2. HTTP访问控制(CORS)
  3. android中文字中间有超链接的实现方法
  4. 为你的水晶报表装载本地图片
  5. 档案盒正面标签制作_2020昆明大学档案盒价格价格行情
  6. 前端和后端开发人员比例_前端开发人员vs后端开发人员–实践中的定义和含义
  7. 数据通信技术(二:交换机配置管理)
  8. golang socket读写同时_epoll在Golang的应用
  9. PyTorch基础与简单应用:构建卷积神经网络实现MNIST手写数字分类
  10. 白盒测试的5种逻辑覆盖法