4

Android 13新特性及适配开发指南

 1 year ago
source link: https://www.51cto.com/article/743017.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Android 13新特性及适配开发指南

作者:张子石 2022-12-25 10:53:47
自从2022年2月Android 13第一个测试版上线以来,历经七个多月的测试优化,Google终于在8月16日发布了Android 13正式版,目前新系统源码已上传Android开源项目(AOSP)中。Android 13继续聚焦个人隐私保护安全,并提供了IOT时代下各种尺寸屏幕适配等开发能力。本文将从功能更新、隐私权限变更和大屏适配三个方向为切入点,介绍一下Android13的新特性。
d65e87171cdf3ce5d5b908fafc434787dd6f11.jpg

Part 01  功能更新 

1.1 应用图标支持跟随主题

从Android 13开始,开发者可以选择启用带主题的应用图标。借助此功能,用户可以调节受支持的 Android 启动器中应用图标的色调,以继承所选壁纸和其他主题的配色。

在启用该功能时,目标应用必须提供自适应图标和单色应用图标,并通过list中的 <adaptive-icon> 元素指向该单色应用图标。如果用户启用了带主题的应用图标,而启动器支持此功能,则系统将使用用户选择的壁纸和主题来确定色调颜色,然后该颜色将应用于单色应用图标。

图片

图1 带主题的应用图标示意图

1.2 剪切板预览

相信每个安卓用户对剪切板功能都不陌生,用户可以使用剪切板轻松复制界面上的内容,方便进行内容的编译和修改。但剪切板为用户提供轻松功能的同时也带来一些安全隐患:剪切板复制的内容可能包含敏感信息(账号、密码、手机号等),从Android 13开始,将内容添加到剪切板时,系统会默认执行以下操作:

  • 确定内容已经成功复制
  • 提供所复制内容的预览
图片

图2 剪切板预览功能

此外,Android 13还提供了脱敏功能,能够让用户对剪切板中的敏感信息进行隐藏。

1.3 启动画面效率提高

在Android 13中,Splash Screen API中的动画启动画面效率的带了提高,系统会直接从AnimatedVectorDrawable推断动画时长,在之前的版本里,开发者必须设置windowSplashScreenAnimationDuration。

使用windowSplashScreenBehavior 属性可以更好地控制应用是否始终在Android 13及更高版本中的启动画面上显示该图标。

Part 02  隐私权限变更  

2.1 WIFI权限变更

在万物互联的时代,WIFI作为各终端连接的媒介,应该受到开发者的格外关注。在Android 13中,为了避免App过度索取权限,导致用户隐私信息泄露,系统将WIFI权限与位置权限剥离,引入了全新的权限机制:NEARBY_WIFI_DEVICES。如果App只需调用WIFI相关API而不需调用与位置相关的API时,那么开发者可以使用NEARBY_WIFI_DEVICES机制,流程如下图:

图片

图3 Android 13 WIFI权限流程图

2.2 通知权限

1、 通知栏消息一直是App与用户进行信息传递的主要途径。在Android 13中,新增了通知运行时权限POST_NOTIFICATIONS,在之前版本,如果要向用户推送通知消息,App只需使用NotificationManager,该情况下,当App需要发送通知时,系统会自动弹出授权弹窗,如果用户点击“允许”,App即可正常推送通知;点击“不允许”则无法发送通知。在Android 13版本下,开发者需要在AndroidManifest.xml中声明POST_NOTIFICATIONS权限,还需要在使用通知栏推送功能时在代码中申请运行时权限。这对于新安装的App,通知默认处于关闭状态,在请求新的权限并得到“允许”之前,App都无法发送通知。为减少更新对现有应用的影响,当升级到Android 13后,系统会自动向符合条件的现有应用自动授予相应权限。该变更能够有效提升用户的使用体验,减少被无效通知频繁骚扰的情况。

2.3 精准的闹钟权限

为减少用户被权限通知频繁地打扰,Android 13引入了全新闹钟权限USE_EXACT_ALARM,当用户在日程管理、时间管理相关应用申请了该权限时,那么便不能在设置界面关闭该权限。该变更能够为用户带来一些便利,但也会造成一定的权限滥用,因此谷歌设置了严格的审核机制,除了闹钟、计时器和日历等相关App之外,其他应用如果使用了USE_EXACT_ALARM权限会被严格禁止上架应用市场商城。

Part 03  平板电脑和大屏设备的支持 

3.1 可编辑的着色器

从Android 13开始,系统支持可编程 RuntimeShader 对象,其行为通过Android图形着色语言定义。通过这些着色器,开发者可以轻松实现涟漪效果、模糊效果和拉伸滚顶,为用户带来更丰富的视觉体验。

3.2 大屏多窗口显示

在Android 13中,用户可以在一个大屏幕上显示多个Activity,从而充分利用大屏幕的显示空间。开发者需要通过创建XML配置文件或调用Jetpack WindowManager API来确定多个Activity在同个大屏上的具体排布方式,如以切割任务窗口来显示两个Activity。

图片

图4 切割窗口示意图

3.3 更好的兼容性支持

对于尚未配置大屏窗口的App,Android 13也提供了更恰当的兼容性支持,让这些App有着更协调的UI显示效果,给与客户更良好的视觉体验。

图片

图5 大屏兼容性适配示意图

Part 04 总结 

通过近两年的Android系统更新可以看到,Google不再对Android系统进行大刀阔斧的改动,而是在用户体验、隐私保护、系统安全、组件优化等方面大做文章。一句话总结,Android 13新增功能小而美、隐私权限更细致、大屏适配更和谐。

图片1、2、3、5来源于Android 13官网

(https://developer.android.google.cn/about/versions/13)

责任编辑:庞桂玉 来源: 移动Labs

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK