安卓APP的开发:为了安全的设计

安卓APP的开发:为了安全的设计

安卓默认是为了安全和隐私而设计的.隐私方面的设计聚焦于最小化.

最小化权限请求,最小化位置读取,还有最小化跨APP的数据可见性.

为了安全的设计,遵循如下的最佳实践:加密,完整性和授权.

保护用户隐私

最小化权限请求

请求你的APP功能需要的最小的权限。

解释为什么在你的APP中的一个功能需要某一个权限

需要注意的是用户或者是系统能够多次地拒绝权限。

没有权限时要优雅地降级

取消对没有权限内容的读取

要弄清楚SDK需要的权限

最小化位置读取

关于一个用户的位置的数据是敏感的,如果可能的话,避免使用这个数据。

如果你必须使用位置服务,要采取措施最小化地采集位置数据。

没有位置数据时,优雅地降级

使用蓝牙或者是WiFi设备

当可行的时候,放宽位置数据的精确度

必要时仅在后台读取位置数据

不要从后台初始化前台服务。

最小化跨APP的数据可见性.

授权读取数据

声明需要的软件包的可见性

支持有作用域的存储

使用用户可重置的标识符

不要读取IMEI和设备序列号

安卓10及以上的设备,会抛出安全异常。

对于广告用途,仅使用一个广告ID

对于非广告用途,使用一个私域存储的GUID

在你的各个APP之间使用SSAID

声明你的APP的数据的用途

把敏感数据传到其它的APP时,采取安全措施。

在日志信息中不要包括敏感信息。

支持人脸隐私特性

为了读取敏感信息,提供一个隐私协议给用户看。让用户知情。

提示用户禁用APP的潜伏状态

因为当用户长期不和APP交互时,系统把APP置为潜伏状态。

把敏感信息传到其它APP时要用消息方式通知用户

可视化地显示你的APP正在录制音频或者是视频。

相关推荐
泯泷1 天前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
泯泷1 天前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
Flynt6 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
冬奇Lab10 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
Aphasia31114 天前
VPN 与内网穿透
安全
Mr_愚人派15 天前
当"Claude"不再是 Claude:一次第三方 API 代理引发的 AI 身份伪造排查实录
人工智能·安全
DaLi Yao15 天前
【无标题】
人工智能·安全
Alsn8615 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
网络研究院15 天前
2026年网络安全
网络·安全·法律·法规·趋势·发展
treesforest15 天前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全