Android 系统的演化
隐私权限功能的加强,细分,
增加新的权限,比如剪贴板
拆分权限, 比如蓝牙(connect,scan,Advertise,也变成了运行时权限),图片的部分访问
细分权限,比如 audio, image, video,位置权限(coarse,fine,when,always 等等)
权限收紧,比如 默认拒绝设定精确的闹钟
安全的增强, WiFi 和 蓝牙的扫描次数的限制。 App 加入到某些 WiFi 网络,需要用户的同意。
静态申请权限,增加大到动态运行时权限
从之前的一次 grant,永久可以用,添加了只允许这次授予权限, 长时间 App 不使用,撤销 App 的权限
功能的增加: PIP 功能,多窗口的功能,折叠屏,通知的 UI 行为,Material You,剪贴板,应用启动,
对于开发者来说,搞出了 Android Jetpack 库,这些库都是对之前的系统的 API 的重构,或者再开发。UI 这块开发了 Jetpack Compose 响应式 UI库。此外还有对 SharedPreference 替换,采用了 DataStore。数据库开发了 Room 库。Camera 库给了 CameraX, Camera2 等库。 Audio 和 Video 添加了 Media 1, Media 2, media3 库,逐渐放弃了之前的 exoplayer 库。 添加了 in-app search 库。
Jetpack 库添加了 coroutine 支持。这些大大增加了开发的便利性,提高了开发效率。
Google play store 的政策的对隐私的不断收紧,提出了敏感权限的概念,限制 App 对敏感权限的申请。比如 READ_CALL_LOG,WRITE_CALL_LOG,PROCESS_OUTGOING_CALLS,READ_SMS,ACCESS_FINE_LOCATION,ACCESS_BACKGROUND_LOCATION,QUERY_ALL_PACKAGES,MANAGE_EXTERNAL_STORAGE,REQUEST_INSTALL_PACKAGES 等等. 短信,通话,查询 App 包,Sdcard 读写,位置权限等等。在 Google play store 里如果要使用这些权限,还需要在 Google play console 里说明这些权限的使用场景,并且录视频以证明。 在 Google play store 上面还把 App 的权限列出来的,以便告知用户,增加了透明性和用户同意。
性能优化这块,开发了新的工具 perfetto, Android 系统里添加了 System trace收集功能。添加了 macrobenchmark 和 microbenchmark 两个方案。 还有 CPU Profiler 和 Memory Profiler,Energy Profiler
Material 发展了 Material 2, Material 3 (Material You),
Android Studio 添加了 Profiler 工具,能分析内存,cpu,能耗,网络等等。 添加了 WiFi debug,扫二维码链接。


