查看原文
其他

使用隐私信息中心提高用户透明度

Android Android 开发者 2022-08-21
Android 致力于帮助用户充分利用最新的创新技术,同时始终将用户的安全和隐私视为第一要务。在 Android 12 中,通过引入隐私信息中心 (Privacy Dashboard),使平台提高了透明度,隐私信息中心为用户提供一个简单明晰的时间线,展示了过去 24 小时内各应用对位置、麦克风和摄像头的访问情况。用户可以准确获悉权限访问发生的时间,并且可以选择撤销应用对于特定功能的访问权限。


  • 隐私信息中心 (Privacy Dashboard)
    https://developer.android.google.cn/about/versions/12/features#privacy-dashboard



隐私信息中心对开发者的影响



现在用户可以更便捷地查看他们设备上的应用使用了哪些权限,所有开发者都应当审查他们的代码,明确数据访问的需求,包括第三方 SDK 需要用到的数据,并确保所有的数据访问都具备相应可被验证的应用场景。您可以使用数据访问审计 API 跟踪应用使用的数据,也可以通过 Android 12 新增的权限意图 API 更为详细地向用户解释应用在访问数据时的上下文。


  • 数据访问审计 API
    https://developer.android.google.cn/guide/topics/data/audit-access

  • 权限意图 API
    https://developer.android.google.cn/training/permissions/explaining-access#privacy-dashboard-show-rationale



数据访问审计 API



Android 提供了数据访问审计 API 可以使您更轻松地追踪您应用中数据访问的场景。通过这个 API,您可以将隐私数据的访问与特定的应用场景相关联,例如 "订购咖啡" 或者 "与朋友分享"。您可以通过它跟踪预期内和预期外的数据访问。您还可以在应用中使用 AppOpsManager.OnOpNotedCallback,每当您应用或依赖库代码在访问隐私数据时,可以通过其中的回调作出一些处理。

  • 数据访问审计 API
    https://developer.android.google.cn/guide/topics/data/audit-access

  • AppOpsManager.OnOpNotedCallback
    https://developer.android.google.cn/reference/android/app/AppOpsManager.OnOpNotedCallback

更多关于数据访问审计 API 相关的信息,请参阅:


  • 文档

    https://developer.android.google.cn/guide/topics/data/audit-access

  • 示例
    https://github.com/android/permissions-samples/tree/master/DataAccessAuditingKotlin



权限 Intent



当您确实需要请求某个权限,可以通过权限 Intent API 向用户解释说明您需要访问位置、摄像头或麦克风信息的合理原因。您可以在隐私信息中心或应用的权限申请页展示数据访问的理由。举个例子,您的应用有两个功能需要访问摄像头,例如扫描条形码和为食物拍照,使用了权限 Intent API 之后,您可以在隐私信息中心为每次访问相机权限的请求声明使用场景。


  • 展示数据访问的理由
    https://developer.android.google.cn/training/permissions/explaining-access#privacy-dashboard-show-rationale


如需在隐私信息中心展示这个 Intent,您需要在应用中定义一个 Activity,该 Activity 需要配置一个带有 android.intent.action.VIEW_PERMISSION_USAGE_FOR_PERIOD 的 Intent Filter 标签,此外还需要配置 android.permission.START_VIEW_PERMISSION_USAGE 权限。


  • android.intent.action.VIEW_PERMISSION_USAGE_FOR_PERIOD
    https://developer.android.google.cn/reference/android/content/Intent?hl=ja#ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD

  • android.permission.START_VIEW_PERMISSION_USAGE
    https://developer.android.google.cn/reference/android/Manifest.permission?hl=ko#START_VIEW_PERMISSION_USAGE


如需在权限设置中展示这个 Intent,您需要在应用中定义一个 Activity,该 Activity 需要配置一个带有 android.intent.action.VIEW_PERMISSION_USAGE 的 Intent Filter 标签,此外还需要配置 android.permission.START_VIEW_PERMISSION_USAGE 权限。


如果您的应用以 Android 12 或更高版本为目标平台,针对以上任意一种情况,您必须为这个 Activity 显式定义 android:exported 属性的值:

https://developer.android.google.cn/about/versions/12/behavior-changes-12#exported


总结



隐私信息中心通过提高透明度来保护用户隐私。开发者可以使用数据访问审计 API 跟踪他们应用中的数据访问情况,使用权限意图 API 向用户解释权限使用的合理性。


欢迎您通过下方二维码向我们提交反馈,或分享您喜欢的内容、发现的问题。您的反馈对我们非常重要,感谢您的支持!



推荐阅读

如页面未加载,请刷新重试

 点击屏末 | 阅读原文 | 即刻了解更多隐私信息中心相关内容




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存