Android Q让用户优雅地管理位置权限

移动开发 Android
应用可以利用位置数据为 Android 用户带去精彩丰富的移动体验,如搜索附近美食,跟踪跑步距离,行车导航等等。然而,位置数据同样也属于高度敏感的个人信息之一。我们想要为用户提供一种简单易懂的控制模式,方便他们管理与应用共享的位置数据。

[[262144]]

应用可以利用位置数据为 Android 用户带去精彩丰富的移动体验,如搜索附近美食,跟踪跑步距离,行车导航等等。然而,位置数据同样也属于高度敏感的个人信息之一。我们想要为用户提供一种简单易懂的控制模式,方便他们管理与应用共享的位置数据。因此,随着 Android Q 的发布,我们给予了用户更多位置控制,并将这些控制交予给用户。我们很高心看到开发者们在应用中挥洒创意,匠心打造卓越的位置体验,与此同时,我们也希望尽己所能,全力协助各位平稳过渡至新的位置管理模式。本文将针对以下三个问题展开深度探讨:

  • Android Q 引入了哪些位置权限变更
  • 您的应用将受到哪些影响
  • 您又应该从何着手进行必要更新

过去,用户在位置权限上只有两种选择,即允许或拒绝应用访问设备位置,而且一旦授予后,该权限并不会随应用状态的改变 (进入或退出使用状态) 而发生变化。Android Q 在此基础上新增了一个选项,允许用户选择只在应用使用期间,即当应用运行在前台时,与应用共享位置信息。这意味着 Android Q 用户可通过以下三种方式对位置权限进行管理:

  • 始终允许: 应用可在任何时段获取位置信息
  • 仅在使用期间允许: 应用只能在被使用时获取位置信息
  • 拒绝: 应用无法获取设备的位置信息 

Android Q 让用户优雅地管理位置权限 

部分应用和功能仅在使用时才需要访问设备位置,比如说,假如用户试图搜索附近餐厅,那应用只需在用户打开应用并进行搜索时,获取设备的地理位置即可。 

但是其它应用的场景则略有不同,即使在非使用时段,它们仍旧需要持续进行定位。例如: 一些应用可为用户自动记录行驶里程,帮助他们进行报税,而且全过程无需用户参与。

在新的位置管理模式下,用户可自行决定设备共享位置数据的时段,同时防止应用获取不必要的位置信息。当应用请求访问权限时,屏幕会弹出如图所示的对话框,向用户显示新的权限选项。用户可点击设置 → 位置信息 → 应用权限,随时更改应用的访问权限。

轻松上手

我们深知这些变更可能会对您的应用造成影响。我们十分尊重开发者社区,而我们的目标是谨慎对待所有此类变更,因此,我们会从以下两方面入手,助力各位开发者应对新的位置管理:

在*** Q Beta 版本中推出对开发者有影响的特性,给您预留充足时间对应用进行必要更新。

陆续发布更多学习资源,如开发者博客、开发者指南和隐私清单,为您提供更多细节内容。

如果应用的目标平台 (targetSdkVersion) 为 Android Q 且包含需要 "始终" 访问设备当前位置的功能,请您在清单文件中添加新的 ACCESS_BACKGROUND_LOCATION 权限。如果应用的目标平台是 Android 9 (API 等级 28) 或更低版本系统,当您请求 ACCESS_FINE_LOCATION 或 ACCESS_COARSE_LOCATION 时,系统会自动为应用添加 ACCESS_BACKGROUND_LOCATION 权限。为了维持良好的用户体验,请您仔细设计应用,确保应用妥善处理权限受限的情况,即无法从后台访问设备位置或完全无法获取位置信息。

如果用户知道应用需要相应权限的原因,他们会更容易接受权限请求。另外,对于需要授予权限才能使用的功能,请您务必结合具体场景,选择恰当的请求时机: 当用户启用该功能或与之发生交互时,如正在搜索附近内容,再发起请求。***,其您避免请求过多权限,也就是说,如果应用中的某项功能只需要 "使用期间" 权限,那就没必要请求 "始终允许" 权限。

责任编辑:未丽燕 来源: 安卓巴士
相关推荐

2022-05-24 06:07:48

JShack用户代码

2021-07-21 09:03:53

GoogleChrome权限

2017-05-22 11:09:53

KotlinAndroid

2020-11-06 08:13:03

服务器Nodejs客户端

2023-06-06 08:51:06

2022-06-28 08:01:26

hook状态管理state

2021-03-24 10:20:50

Fonts前端代码

2022-04-01 12:51:44

命令Containerd

2013-11-21 09:10:27

MongoDB

2017-03-20 19:01:20

Linux管理员系统用户

2018-11-11 09:41:28

安卓智能手机Android Q

2011-10-12 15:49:29

Q魔宝Mobile RoadApp

2010-12-24 09:32:43

2010-10-29 10:46:23

Oracle超级用户

2021-01-28 14:53:19

PHP编码开发

2017-04-12 11:16:08

Python终端编程

2022-04-20 20:27:51

Hydra配置文件开发工具

2011-04-12 10:16:18

UNIX权限

2023-11-19 22:31:00

内存程序

2021-01-18 13:17:04

鸿蒙HarmonyOSAPP
点赞
收藏

51CTO技术栈公众号