【划重点】5分钟带你看懂Android 11预览版适配攻略-MobTech

本文介绍了Android 11开发者预览版的更新内容,包括隐私保护、存储权限变化、新功能如数据访问审核、多媒体文件操作等,并提供了适配指南,包括沙箱模式、后台位置权限、大型数据集共享等。MobTech将关注Android 11的更新并进行SDK适配测试。
摘要由CSDN通过智能技术生成

近日,谷歌推送了最新的Android 11第二个开发者预览版(Developer Preview 2)更新,而这距离上一个版本已过去了一个月之久。


按照谷歌提供的里程碑列表,从今年2月份起,每月将会发布一个开发者预览版,直至第三季度Android 11最终版本推出。谷歌官方提示广大开发者,尽早开始应用程序兼容性的测试,留更充裕的时间用于后期的适配处理。



图片来自网络

本次新版本主要带来了新的隐私保护措施,用于5G、共享、连接、媒体等方面新的API,另外也有一些用户行为的变更。下面,小编将结合最新的开发者预览版,解读Android 11在第三方移动应用工具中兼容测试及适配,需要注意的要点。


01
存储及隐私的变化



在系统存储上,Android 11将正式使用沙箱模式、存储访问框架限制、媒体文件批量处理。隐私变化的更新,主要围绕“位置”,“相机”,“麦克风”三组权限,在用户选择时增加“仅这次”选项、位置权限选择框中不再显示“始终允许”选项、两次“拒绝”将视为“不再询问”。



图片来自安卓开发者平台官网


02
值得关注的新功能



在第三方移动应用开发中,值得开发者关注的是Android 11引入了“数据访问审核”功能,通知栏增加快速回复图片等媒体以及安全共享大型数据集,并对Android模拟器中的相机支持了扩展。


03
适配及新功能的使用


1)配置Android 11环境

  • Pixel手机刷入,需前往Android开发者平台获取相应的image或在AS中下载Android 11模拟器;

  • SDK-Manager可下载最新的Android R Preview版本、Android SDK Build-Tools 30-rc1;

  • build.gradle配置compileSdkVersion’android-R’、buildToolsVersion"30-rc1"、targetSdkVersion ‘R’。

2)沙箱适配要点提示

  • Android使用的文件系统,类似于其他平台上基于磁盘的文件系统。系统可为开发者提供一些保存应用数据的选项;

  • 特定于应用程序的存储:将仅供开发者的应用程序使用文件存储在内部存储卷内的专用目录中,或外部存储中的其他专用目录中。使用内部存储中的目录,来保存其他应用程序不应访问的敏感信息;

  • 共享存储:存储开发者的应用打算与其他应用共享的文件,包括媒体,文档和其他文件;

  • 首选项:将私有原始数据存储在键值对中;

  • 数据库:使用Room持久性库将结构化数据存储在专用数据库中。

3)后台位置权限的适配

  • 如应用targetSdkVersion=‘R’:请求ACCESS_COARSE_LOCATION 或 ACCESS_FINE_LOCATION位置权限。用户选择“允许”后,再次请求ACCESS_BACKGROUND_LOCATION位置权限,此时会跳转“系统位置权限”页面,包含“始终允许”选项。


    效果如下:


图片来自网络


使用方式:

//targetR,必须先申请FINE OR COARSE LOCATION,然后申请BACKGROUND LOCATION,才能跳转到系统设置页面,
//否则直接申请BACKGROUND LOCATION将无效
//申请数组将android.permission.ACCESS_BACKGROUND_LOCATION、FINE、COARSE和任意权限放一起申请将报错
if (checkSelfPermission("android.permission.ACCESS_FINE_LOCATION") !=PackageManager.PERMISSION_GRANTED) {
   
   requestPermissions(new String[]{
   "android.permission.ACCESS_FINE_LOCATION"}, 0);
}
else if (checkSelfPermission("android.permission.ACCESS_BACKGROUND_LOCATION") !=
PackageManager.PERMISSION_GRANTED) {
   
       requestPermissions(new String[]{
   "android.permission.ACCESS_BACKGROUND_LOCATION"}, 0);
}

  • 如应用targetSdkVersion<‘R’:permissions数组同时包含ACCESS_BACKGROUND_LOCATION,ACCESS_COARSE_LOCATION 或 ACCESS_FINE_LOCATI
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值