——不想认命,就去拼命

目录

一、前言

二、简介

​三、新技术

(1)设备 ——> 可折叠

(2)网络 ——>  4G~5G

(3)通知 ——>  智能化

(4)主题 ——> 深色/暗黑

(5)手势 ——> 导航

(6)设置 ——> 浮动

(7)共享 ——> 更快捷

四、隐私权变更

五、其他变更

六、需要兼容的变更

七、内容推荐

八、项目参考

一、前言

有好长一段时间没写文章了,自从栽了一颗<Android树>之后就开始疯狂的吸取养分。其实前段时间不写文章主要是:发现要学的东西太多,总觉时间不够。而且写文章要比学习某个内容要花费更多的时间。结果最近发现有点消化不良。今天就抽空给<Android树的一小分支>做个总结。先给大家展示一下<分支>,大家就知道这篇文章要写咋了。

大家没看错,这篇要总结的就是Android 10,不叫android Q  ,<分支>里面为了方便记忆 备注了个Q。

二、简介

其实Android 10已经出来大半年了,该适配的估计都适配完,没适配完的网上也出现了许多相关博客。抽空写这篇总结,也不是教大家如何适配的,只是想更好的归纳知识点或注意事项,更方便的记忆。而且亲手写一遍会更加深刻,所以才有了这篇文章 。

我们可以清楚的从<分支>中看到大部分的内容,但是还有许多细节没展示出来。那么下面就对这些内容进行总结。

详细内容请查看文档:Android 10Google文档

​三、新技术

总的来说Android 10 变化是巨大的,内容太多所以需要整理与分析

下面的破折号(——)相当于  “支持”意思

(1)设备 ——> 可折叠

  1. 添加多窗口支持 android:resizeableActivity=["true" | "false"]

  2. 添加多屏幕支持  android:supportsMultipleDisplays=["true" | "false"]

  3. 添加多重回复

  4. 添加屏幕获取方式

  5. 定义第二块屏幕

(2)网络 ——>  4G~5G

  1. 5G平台支持
  2. 扩展现有API (1)检测设备是否具有高带宽连接 (2)检查连接是否按流量计费

(3)通知 ——>  智能化

  1. 智能回复
  2. 开启地图

(4)主题 ——> 深色/暗黑

  1. 适合光线较暗的场景病节省电量    设置->省电模式 激活
  2. 自定义深色主题 (1)新版:使用新的ForceDark功能  (2)10以下:AppCompat的DayNight功能

(5)手势 ——> 导航

  1. 设置透明系统条
  2. 设置UI可见性标志
  3. 使用自定义视图时需要实现插入手势窗口
  4. 需要处理了手势冲突

(6)设置 ——> 浮动

提供了可浮动设置面板

  1. 显示一个设置对话框 ACTION_INTERNET_CONNECTIVITY
  2. 显示NFC设置对话框 ACTION_NFC
  3. 显示WIFI设置对话框 ACTION_WIFI
  4. 显示音量设置对话框 ACTION_VOLUME

(7)共享 ——> 更快捷

简介:共享快捷方式类似于应用快捷方式,让用户能够直接跳转到其他应用来共享内容

  1. 使用 ShortcutInfo API

总结:添加了七块新的内容分别是:设备、网络、通知、主题、手势、设置与共享    

更方便记忆为:通知网络设备手动(手势)设置共享主题 

或许面试的时候会扯到这些也说不定...

四、隐私权变更

下面主要还是来自google文档 这里做个记录 查找更容易些

(1)重大变更

  1. 外部存储访问权限范围限定为应用文件和媒体
  2. 在后台运行时访问设备位置信息需要权限
  3. 针对从后台启动 Activity 的限制

(2)标识符和数据

  1. 移除了联系人亲密程度信息
  2. 随机分配 MAC 地址
  3. 对 /proc/net 文件系统的访问权限实施了限制
  4. 对不可重置的设备标识符实施了限制
  5. 限制了对剪贴板数据的访问权限
  6. 保护 USB 设备序列号

(3)摄像头和连续性

  1. 对访问摄像头详情和元数据的权限实施了限制
  2. 对启用和停用 WLAN 实施了限制
  3. 对直接访问已配置的 WLAN 网络实施了限制
  4. 一些电话 API、蓝牙 API 和 WLAN API 需要精确位置权限

(4)权限

  1. 限制对屏幕内容的访问
  2. 面向用户的权限检查
  3. 身体活动识别

总结:

变更后的优点:

  1. 赋予用户对位置数据的更多控制权
  2. 在扫描网络时保护位置数据
  3. 阻止设备跟踪
  4. 保护外部存储设备中的用户数据
  5. 屏蔽意外中断

涉及范围要点:存储访问、位置、限制后台活动、网络、限制内容、身体活动权限

瞎组合: 限制后台-存储访问-位置 /  限制-网络-与-身体活动

有更好的记忆方式请留言建议

五、其他变更

(1)安全性

  1. 存储加密 :引入新加密模式 Adiantum
  2. 默认启用 TLS 1.3:是 TLS 标准的主要修订版本,具有性能优势和更高的安全性
  3. 平台安全强化 :引入了针对平台几个关键安全区域的安全强化功能
  4. 改进了生物识别功能:扩展了 BiometricPrompt 框架,以支持被动身份验证方法,如人脸识别以及添加隐式和显式身份验证流程

(2)摄像头与媒体

  1. 照片的动态深度:可以请求动态深度图片,其中包含与深度相关元素有关的 JPEG、XMP 元数据,以及嵌入在同一文件中的深度和置信度映射

  2. 捕获播放的音频:允许其他应用使用新的音频播放捕获 API 捕获其音频流

  3. 新的音频和视频编解码器:开源视频编解码器 AV1 的支持,这允许媒体提供商使用更少的带宽向 Android 设备流式传输高品质视频内容

  4. 原生 MIDI API:针对使用 C++ 执行其音频处理的应用,Android 10 引入了原生 MIDI API,以通过 NDK 与 MIDI 设备通信

  5. 可缩放的定向麦克风:通过新的 MicrophoneDirection API 更好地控制音频捕获,使用此 API 指定在录音时麦克风的首选方向

  6. Vulkan 无处不在:所有搭载 Android 10 及更高版本的 64 位设备现在都要求使用 Vulkan 1.1,也建议在所有 32 位设备上使用 Vulkan 1.1

(3)连接性

  1. 改进了点对点连接和互联网连接

  2. WLAN 性能模式:启用高性能和低延迟模式来请求自适应 WLAN,使用新的性能模式,请调用 WifiManager.WifiLock.createWifiLock()

(4)android基础

  1. ART 优化

  2. 针对 NNAPI 1.2 进行优化并提供支持

  3. 应用和游戏可以使用 Thermal API 监控设备变化情况,并在设备过热时采取措施,使设备恢复到正常温度\

  4. 增加了对非 SDK 接口的限制,以便应用逐步转为仅使用公共 API

总结:这部分主要是介绍引进了哪些技术,增加哪些API ,及优化了哪些部分。可以适当的适配到项目当中

六、需要兼容的变更

根据文档我们知道。首先要让我们的项目在Android 10版本设备上进行兼容  。然后提升API 到29,兼容 android 10的变更,并且添加项目所需要的android 10新功能到项目中。

(1)项目在Android 10版本设备上进行兼容(API28或28以下)

(2)提升API 到29,兼容android 10的变更,并增加新功能

这部分偷个懒就不Copy,大家可以在文档中查看详情。由于没有相应的真机可以测试,所以就不在这里吹牛了

...等后面从实践中证明后再添进来。。

总结:android 10最大变化和最值得注意的要属:第三点与第四点。只要大家记住这两点,就可以解决android 10遇到的大部分问题了。。。

七、内容推荐

简书

《Android 学习资源收集》

《Android 自定义控件基础》

《Android ObjectBox开源数据库框架学习笔记》

《Android Rxjava+Retrofit网络请求框架封装(一)》

八、项目参考

自己整理的一个工具演示项目,有兴趣可以看下

Github:https://github.com/DayorNight/BLCS

apk下载体验地址:https://www.pgyer.com/BLCS

★ 若您发现文章中存在错误或不足的地方,希望您能指出!

Android 10文档阅读总结相关推荐

  1. Android逆向文档阅读笔记-Android Application Fundamentals

    Fundamentals Review Android应用程序是在APK格式的文件中的,APK是基于ZIP文件的(可以将APK后缀改成ZIP后缀,然后可以使用unzip去解压). APK文件内容: A ...

  2. Android文档阅读之Txt文档阅读的方案实现

    Android文档阅读之Txt文档阅读的方案实现 上两节说到了Office文档的阅读实现方案,通过NoHTTP将文档下载到本地,然后策略阅读,如果还没阅读到Office该篇的小伙伴们,可以先移步到上两 ...

  3. 一款轻巧快速的跨平台文档阅读器

    程序员宝藏库:你想要的,应有尽有! DevWeekly收集整理每周优质开发者内容,包括开源项目.资源工具.技术文章等方面. 每周五定期发布,同步更新到知乎:Jackpop . 欢迎大家投稿,提交iss ...

  4. “全能”选手—Django 1.10文档中文版Part1

    欢迎大家访问我的个人网站<刘江的博客和教程>:www.liujiangblog.com ### 主要分享Python 及Django教程以及相关的博客 本文是博主翻译的Django1.10 ...

  5. Qt文档阅读笔记-共享库的创建与调用

    使用共享库的符号 这个符号可以作用在变量.类.函数中,并且这些都可以被调用端使用. 在编译共享库中,需要使用export符号.在使用端调用的时候使用import符号. 这里是本人从文档中记录的笔记,大 ...

  6. 聚合API文档阅读帮助

    聚合API文档阅读帮助 该文基于聚合云数据开放平台的API文档,目的使得开发者能够方便的快速了解我们这个API文档的结构,从而能够经行高效的开发. 该API文档总共有6个大类:国外API.国内API. ...

  7. Android入门文档

    该文章为网络材料整理,部分内容经过重新编写. 一. 名词介绍 JDK:Java Development Kit Java 语言的软件开发工具包 JRE:Java Runtime Environment ...

  8. PDF文档阅读器-福昕PDF阅读器下载

    福昕PDF阅读器(Foxit Reader)是福昕公司推出的首款简体中文版本PDF文档阅读器,它的启动速度是很快的,是一款非常好用的软件.福昕PDF阅读器(Foxit Reader)是用户信赖的阅读器 ...

  9. Android 学习文档整理收集

    利用闲暇时间整理了一份 Android 学习文档整理收集,希望能够对大家有所帮助,也欢迎各位帮忙补充. Android Android基础入门教程 CSDN主题Android专栏 极客头条Androi ...

  10. Blockly学习之文档阅读笔记

    文档阅读来源--谷歌官网介绍: https://developers.google.com/blockly/guides/overview 概述 一个用于Web.Android.iOS的可视化代码编辑 ...

最新文章

  1. Mysql:查询当天、今天、本周、上周、本月、上月、本季度、本年的数据
  2. [机器学习]机器学习笔记整理12-线性回归概念理解
  3. Lesson 15.1 学习率调度基本概念与手动实现方法
  4. VS2005发布网站问题及aspnet_merge.exe”已退出,代码为 1的错误
  5. 解决github图片不显示问题【完美解决】
  6. iDow Brand——关于一个商标的构思。
  7. linux path_lookup,Linux虚拟文件系统(4)-- 路径名查找
  8. meanshift算法图解
  9. ppt python动画_ppt中如何插入动画 python入门教程(非常详细)
  10. 2019年8月2 星期五 今日计划
  11. simd-neno加速
  12. 03 graphx 从 SSSP 来看 pregel
  13. mysql清空表分区数据恢复_清空表数据恢复 mysql恢复某个表数据
  14. 【VSCode】安装VSCode都需要配置什么?
  15. c#被指定为此窗体的 MdiParent 的窗体不是 MdiContainer
  16. 安装loadrunner11,出现提示缺少vc2005_sp1_with_atl...的问题解决
  17. PID算法详细解析——基于单片机
  18. 微信被爆出存在高危漏洞!(快扩散)
  19. 微信小程序开发入门与实战(三种通信方法)
  20. 桶排序基数排序代码及简要说明

热门文章

  1. Nuvoton M0518 之 记录数据到LDROM,数据掉电不丢失的方式
  2. linux http error 401,出现HTTP: 401 的时候的解析思路
  3. msl3等级烘烤时间_msl湿敏等级对应表
  4. 软考高级信息系统项目管理师经验分享
  5. C#里的InputBox
  6. C语言 两种方法优化:输入一个日期的年、月、日,计算并输出这天是该年的第几天。
  7. POJ3580:SuperMemo
  8. 解锁!95%的Android程序员做性能优化时,存在的五大误区和两大疑点!
  9. linux 下查看硬件信息(mac,IP地址,硬盘型号,序列号等)
  10. SQL语句(查询、新建表、删除表、更新表、新建视图)