安卓11开发版本适配

随着Android 11正式版本的发布,许多Android开发者开始面对解决如何适配新版本的问题。在这篇文章中,我将向大家介绍Android11新特性及开发者如何适配这些新特性。

1.Android 11新特性

1.1 通知区域

Android11针对通知区域功能进行了许多调整,开发者需要修改之前的代码进行适配,具体修改如下:

1.1.1 Shortcuts

在Android11中,开发者需要在AndroidManifest.xml中声明shortcuts,这将确保所有快捷方式在长按应用图标时展现。

1.1.2 通知分组

到了Android11,通知会根据应用程序的类别分组显示。如通知类别是聊天信息,则所有相关聊天信息应显示在一组中。但是注意,在自己的应用程序中为每个通知创建分组是不必要的,Android11会自动分类。

1.2 权限

在Android11中,权限系统变得更加严格,确保用户对敏感信息的保护。开发者需要增加以下代码进行适配:

1.2.1 询问权限

即使您的应用程序已经存在存储权限,Android11会要求您的应用程序再次请求该权限,以确保用户想要保护他们的设备数据。

1.2.2 存储权限

在Android11中,应用程序无法直接意外访问存储设备。开发者需要使用新的存储访问框架来适配这个新的变化。

1.2.3 媒体存储访问权限

在Android11中,开发者需要使用新的访问媒体储存访问框架,用以请求权限,允许用户访问其照片和媒体库中的文件。

1.3 模糊亚像素锁定(SurfaceView/RippleDrawable)

在Android11中,针对SurfaceView和RippleDrawable进行了优化,模糊亚像素现在是可锁定的。

1.4 动态和静态服务

针对Android11中的服务有一点特别的提醒:前台服务现在需要得到许可,才能保持持久化(这不包括所有服务,只包括前台服务)。

2.适配Android11新特性

现在,您完全可以逐步进行Android11的适配,以下是一些适配方案:

2.1 通知区域的适配

首先,对于 Shortcuts,您需要在AndroidManifest.xml中创建快捷方式。对于通知分组,只需将通知以分类方式展现即可。

2.2 权限适配

为了在运行Android11时请求许可,您应该使用以下代码: requestPermissions()方法。对于存储许可,开发者需要适配新的存储访问框架来实现。

2.3 模糊亚像素锁定(SurfaceView/RippleDrawable)适配

若您的应用程序使用SurfaceView或RippleDrawable进行视觉处理,则在Android11上,可以启用模糊亚像素锁定来进行某些视觉优化。

2.4 动态和静态服务适配

如果您的应用程序需要长时间运行一个前台服务,确保您的应用程序已经被许可再后台持久运行。

3.总结

Android11是一个充满变化的版本。适配Android11不仅是一个需要技能的过程,还是一种维持好的用户体验的必要性过程。我希望上述适配方案可以对您有所帮助。

川公网安备 51019002001728号