动态权限<二>之淘宝、京东、网易新闻 权限申请交互设计对比分析
移动智能设备的快速普及,给生活带来巨大的精彩,但是智能设备上用户的信息数据很多,隐私数据也非常多,各种各样的app可能通过各种方式在悄悄的收集用户数据,而用户的隐私就变得耐人寻味了。比如之前的可以无限制的读取用户的联系人数据、短信记录、通话记录等,这些信息一旦泄露,可能就会造成重大财产损失。腾讯社会研究中心和DCCI互联网数据中心日前发布《2017年度网络隐私安全及欺诈行为研究分析报告》,《报告》显示,98.5%安卓手机APP存在获取用户隐私权限问题,iOS应用获取用户隐私权限也达到81.9%。用户从来无法感知这些数据收集行为,也发确定行为会触及到隐私数据,而为了保护用户隐私,谷歌android6.0加入了隐私信息获取的权限申请。其主要的目的就是在涉及到需要使用隐私数据的时候,进行权限申请。制定的权限策略分为两类:第一类是不涉及用户隐私的,只需要在manifest中声明即可,比如网络,蓝牙,NFC等,第二类是涉及用户隐私信息的,需要用户授权后才可使用的,比如SD卡读写,联系人,短信读写等等。
接下来我从当前市场上一线大厂的应用进行分析对比,主要是淘宝、京东、网易新闻、今日头条、哔哩哔哩、腾讯新闻,分析和对比的维度从启动权限申请数量、运行权限申请、交互提示等方面进行。
1.启动权限申请
| app | 启动权限申请 | 说明 |
| 淘宝 | 电话权限 |
不授予电话权限无法进入应用。 当选择不授予权限,则程序在获得操作结果以后继续申请,当选择不再提示,引导进入设置页面进行开启权限。 |
| 京东 | 电话权限 |
不授予电话权限无法进入应用。 当选择不授予权限,则程序在获得操作结果以后继续申请,当选择不再提示,引导进入设置页面进行开启权限。 |
| 网易新闻 |
无 |
进入首页以后申请,
电话权限 存储权限 位置权限 禁止也不影响应用正常使用,下次启动的时候还会继续申请未授权的权限。当选择不再提示,则在下一次启动应用时引导用户进入设置页面进行开启权限。 |
| 今日头条 | 电话权限 | 不授予电话权限也可以进入应用,选择禁止下次启动应用会继续申请,当选择不再提示,下次启动应用不提示。 |
| 哔哩哔哩 | 无 | 直接进入应用 |
| 腾讯新闻 | 无 | 进入应用后进行申请位置权限和电话权限 |
从启动权限申请来看,淘宝、京东作为电商派app,作风比较强硬,不授权则无法进入应用,相对来说,新闻类app这方面就做的比较好,其中网易新闻和腾讯新闻比较突出,腾讯新闻申请的数量比较少。而哔哩哔哩的实现是最理想的,启动到进入应用全程无申请,而是到了具体使用的时候在申请这一轮比较哔哩哔哩胜出。
2.所有敏感权限比较
| app | 所有权限 | 说明 |
| 淘宝 |
存储 位置 日历 电话 相机 通讯录 麦克风 |
|
| 京东 |
存储 位置 电话 相机 通讯录 麦克风 |
|
| 网易新闻 |
存储 位置 电话 相机 通讯录 麦克风 |
|
| 今日头条 |
存储 位置 电话 相机 通讯录 麦克风 |
|
| 哔哩哔哩 |
存储 位置 电话 相机 麦克风 |
|
| 腾讯新闻 |
存储 位置 电话 相机 通讯录 麦克风 |
从涉及到的主要权限来看,淘宝的权限数量是最多的,多了一个日历的权限,说明淘宝有一些业务需要在对应日期进行的必要操作,涉及到对日历的修改。其他的app权限申请大同小异,部分需要通讯录的权限,可能涉及到用户账号的问题,应该是有和手机厂商合作,可以使用android系统的账号登录,这种业务合作能力也不是一般的app所能具备的,与此同时肯定还有类似白名单的业务合作也是同样情况。其中又可以对比的出来哔哩哔哩真的是良心作品,没有那么多的权限,精简实在。
3.运行时权限检查比较
这里选取一个场景就是拍照的相机权限作为比较。
| 应用 | 交互 | 说明 |
| 淘宝 | 点击二维码扫描,弹出系统权限申请,选择禁止相机权限,再次点二维码扫描,仍然会提示申请,但是如果勾选不再提示,则会闪一下一个白色页面,交互不理想。见图1 | |
| 京东 | 点击头像,首先弹出自定义的框进行一些说明,然后点击下一步,才进行系统权限申请。党选择禁止,再次点击头像,仍然会提示申请。如果勾选不再提示。则会引导用户进入设置页面。 | |
| 网易新闻 | 点击头像,首先弹出自定义的框进行一些说明,然后点击下一步,才进行系统权限申请。党选择禁止,再次点击头像,仍然会提示申请。如果勾选不再提示。则会引导用户进入设置页面。 | |
| 今日头条 | 点击头像,首先弹出自定义的框进行一些说明,然后点击下一步,才进行系统权限申请。党选择禁止,再次点击头像,仍然会提示申请。如果勾选不再提示。则会引导用户进入设置页面。 | |
| 哔哩哔哩 | 点击头像,首先弹出自定义的框进行一些说明,然后点击下一步,才进行系统权限申请。党选择禁止,再次点击头像,仍然会提示申请。如果勾选不再提示。点击无交互或者提示。 | |
| 腾讯新闻 | 点击头像无反应,这个牛逼了 | 我猜是个bug。。。。 |
从交互设计上看,京东、网易、今日头条的处理是最好的,在进行权限申请的时候最好加一个自定义的提示弹窗,给用户知情权,虽然还是有少部分用户不同意授权,但是从设计交互上做到的用户知情。看的出来有一些app存在一些缺陷。
4.通用组件的权限说明。
从一个app产品角度来看,肯定会存在下面的组件:分享组件、统计组件、推送组件,可能存在支付、地图,那么这些组件又需要那些敏感权限呢,下面列举一下。
| 组件 | 权限 | 说明 |
| sharesdk |
存储 电话 |
|
| 友盟 |
存储 定位 电话 |
|
| 地图 |
存储 定位 |
|
| 个推 |
存储 电话 |
综上所述:权限的申请和业务是有必然的关联的,如果不能放弃某个启动时就必须进行的业务,那么权限申请必然需要进行。上面分析可以看到出来淘宝和京东在启动时,就有电话的权限申请,说明应用重视某项业务,这个业务必须要进行初始。而新闻类app相对来说拥有较大的空间,对比如推送、统计类组件的初始和数据可以不那么重视,或者是比如推送有其他的途径可以不用那么早的初始化。就交互体验上来说,我觉得最舒服的还是哔哩哔哩,如果他在勾选不再提示后的处理优化就更好额。

动态权限<二>之淘宝、京东、网易新闻 权限申请交互设计对比分析的更多相关文章
- 从淘宝和网易的font-size思考移动端怎样使用rem?
最近翻了一下关于移动端的rem的使用,怎样最方便.在读到流云诸葛的一篇关于<从网易与淘宝的font-size思考前端设计稿与工作流>的文章后,来总结一下. 然而根据我以往做移动端web项目 ...
- iOS界面-仿网易新闻左侧抽屉式交互 续(添加新闻内容页和评论页手势)
本文转载至 http://blog.csdn.net/totogo2010/article/details/8637430 1.介绍 有的博友看了上篇博文iOS界面-仿网易新闻左侧抽屉 ...
- 淘宝、网易移动端 px 转换 rem 原理,Vue-cli 实现 px 转换 rem
在过去的一段时间里面一直在使用Vue配合 lib-flexible和px2rem-loader配合做移动端的网页适配.秉着求知的思想,今天决定对他的原理进行分析.目前网上比较主流使用的就是淘宝方 ...
- 方便代理下单的EcStore收货地址一键分析插件,同时支持淘宝/京东/一号店
使用EcStore开展分销的网站,代理需要经常代客下单,每个客户收货地址都不同,要选择和填写多个内容才能完成地址输入:省.市.区.详细地址.收货人姓名.手机电话等,非常麻烦,也容易输入错误.安装EcS ...
- Vue(小案例_vue+axios仿手机app)_购物车(二模拟淘宝购物车页面,点击加减做出相应变化)
一.前言 在上篇购物车中,如果用户刷新了当前的页面,底部导航中的数据又会恢复为原来的: 1.解决刷新,购物车上数值不变 ...
- 云互联(http://www.yunone.com/)淘宝店铺名[格子窝]垃圾皮包骗子公司分析
首先先给大家说明下我写这篇文章的初衷,本来也不想费神写这个的,可是忍无可忍,无需再忍,别人不犯贱,咱们何必跟人家较真呢? 在做渭南电脑维修网的同时,遇到了很多问题,使我受益匪浅,尤其是SEO方面的提升 ...
- AOP编程 - 淘宝京东网络处理
现象描述 当我们打开京东 app 进入首页,如果当前是没有网络的状态,里面的按钮点击是没有反应的.只有当我们打开网络的情况下,点击按钮才能跳转页面,按照我们一般人写代码的逻辑应该是这个样子: /** ...
- 开源第三方登录组件OAuthLogin2.0 支持QQ,阿里巴巴,淘宝,京东,蘑菇街,有赞等平台
Nuget地址:https://www.nuget.org/packages/OAuthLogin2.0/ 项目结构说明: AuthorizationProviders文件夹下主要存放内置的授权平台. ...
- iOS开发 仿淘宝,京东商品详情3D动画
- (void)show { [[UIApplication sharedApplication].windows[0] addSubview:self.projectView]; CGRect fr ...
随机推荐
- 我的Java之旅——答答租车系统
今天试着写了一个新的程序,叫做"答答租车系统",是慕课网上的一个综合练习,戳我看原题. 项目要求截图如下: 我的代码(简单粗暴版): Vehicle.java public cla ...
- IKVM.NET入门(1)
IKVM.NET是一个针对Mono和微软.net框架的java实现,其设计目的是在.NET平台上运行java程序.本文将比较详细的介绍这个工具的原理.使用入门(如何java应用转换为.NET应用.如何 ...
- Java 持久化发展历程
- Hive学习之路 (三)Hive元数据信息对应MySQL数据库表
概述 Hive 的元数据信息通常存储在关系型数据库中,常用MySQL数据库作为元数据库管理.上一篇hive的安装也是将元数据信息存放在MySQL数据库中. Hive的元数据信息在MySQL数据中有57 ...
- 私有仓库harbor安装包括https
1. 下载离线的 harbor gz包 wget https://github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-in ...
- 20155314 2016-2017-2 《Java程序设计》实验二 Java面向对象程序设计
20155314 2016-2017-2 <Java程序设计>实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UM ...
- Windows7下配置JMeter安装环境
JMeter配置安装 1.安装JDK环境 下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-21 ...
- 使用ROS节点——Node & Master——roscore、rosrun、rosnode
1.Node 在ROS的世界里, 最小的进程单元就是节点( node) . 一个软件包里可以有多个可执行文件, 可执行文件在运行之后就成了一个进程(process), 这个进程在ROS中就叫做节点. ...
- C语言常用知识点
C语言条件预处理命令 /* 格式: #ifdef 标识符 程序1 #else 程序2 #endif 标识符已经定义时,程序段1才参加编译 应用:如调试版本,发行版本,便于调试 */ #include ...
- Go语言连接Oracle(就我这个最全)
综合参考了网上挺多的方案 倒腾了半天终于连接好了 Go都出来这么多年了 还没有个Oracle的官方驱动... 过程真的很蛋疼..一度想放弃直接连ODBC 首先交代一下运行环境和工具版本: WIN10 ...