android开发者博客二月-Marshmallow and User Data
又是一篇翻译,这篇快了很多,不过也花了快一个小时,可能熟悉一点。关于6.0权限的,让你做用户认为正确的事情。
Marshmallow and UserData 2016,2,1
棉花糖和用户数据
由Joanna Smith开发推广者和Giles Hogben,谷歌隐私团队
M引入了一些改变来帮助你的app照顾用户数据。目的就是让开发者更容易地去做正确的事情。所以在Android 6.0中,Marshmallow,增加牵引,我们希望你
那么去做。
这篇帖子将会高亮涉及到用户相信的关键考虑,当app运行到权限和硬件身份的时候,将会指引你一个新的最好的实践文档来理清在你自己的app所指向的目标。
权限改变
在M,权限从安装时转换到了运行时。在SDK 23+这是一个强制的改变,意味着将会影响所有的涉及到Android 6.0的开发者和它们的程序。你的app将可能需要
马上更新,所以你的挑战就是尽可能考虑全面一点。
运行时权限意味着你的app可以在它被使用的时候在上下文中请求获取敏感信息。这会给你一个机会去解释你需要的权限,不再让用户被一长串的请求权限而惊吓到。
权限现在被组织成组的概念,所以用户可以有一个不错的知情权,那就是不再需要去理解技术行话。在允许你的用户去做决定时,它们可能不会去同意权限或者撤销
之前同意的权限。所以,当处理API 调用可能被拒绝的权限的时候,你的app需要考虑周全,并且构建一个优雅的错误处理方式让你的用户仍然能和你的app的剩下
部分交互。
Identifier身份改变
用户相信的其它方面就是做和用户数据相关的正确事情。在M,我们关掉了访问一些数据的权限,就是为了让开发者沿着这条路走下去。
最显然的,本地wifi和蓝牙MAC地址是不再可以获取了。WifiInfo对象中的getMacAddress()方法和BluetoothAdapter.getDefaultAdapter().getAddress()
方法都将从现在开始返回02:00:00:00:00:00。
然而,Google Play Services现在提供Instance IDs,这个可以标识一个运行在设备上的应用程序实例。实例ID提供一个可信赖的可选的比如不可重设0的,设备范围的
硬件IDs,因为它们将不会坚持重设出厂模式,并且是局限于app实例的范畴。看GoogleDeveloper's 的What is Instance ID?帮助文章可以获取更多的信息
那么接下来呢?
用户最大程度地相信用户看到的和它们感觉到的。不正确的处理权限和标识identifiers会增加意料外的错误信息的风险,并且可能让用户感觉你的app实际上没有关注它们。
所以为了帮助你搞定事情,我们又搞了一些新的文档,应该可以让开发者可以相信他们的app对于用户是在做正确的事情。
Understand how permissions and user data are linked Learn more about the best practices for permissions
Discover the best practices for unique identifiers, with clarity based on changes in Marshmallow.
So happy developing! May your apps make users happy, and may your reviews reflect that. :)
android开发者博客二月-Marshmallow and User Data的更多相关文章
- android开发者博客二月Android Studio2.0测试
参考网页-http://android-developers.blogspot.com/2016/02/android-studio-20-beta.html Android Studio 2.0-B ...
- 值得订阅的Android 开发者博客
链接:http://www.zhihu.com/question/19788650/answer/60771437来源:知乎 Google 官方[Android Developers Blog](An ...
- 100个高质量Java开发者博客
ImportNew注:原文中还没有100个.作者希望大家一起来推荐高质量的Java开发博客,然后不段补充到这个列表.欢迎你也参与推荐优质的Java开发博客.(声明一下:我们的数学不是体育老师教的!:) ...
- 转:100个高质量Java开发者博客
原文来自于:http://www.importnew.com/7469.html ImportNew注:原文中还没有100个.作者希望大家一起来推荐高质量的Java开发博客,然后不段补充到这个列表.欢 ...
- 【伯乐在线】100个高质量Java开发者博客
本文由 ImportNew - 夏千林 翻译自 programcreek.欢迎加入翻译小组.转载请见文末要求. ImportNew注:原文中还没有100个.作者希望大家一起来推荐高质量的Java开发博 ...
- 记录android开发博客
1.一国外android开发博客,值得关注 https://blog.stylingandroid.com/page/2/ 2.一个app设计博客,很赞 http://androidniceties. ...
- 【新版】Android技术博客精华汇总
[新版]Android技术博客精华汇总(原文链接内持续更新) http://www.apkbus.com/thread-313856-1-1.html Kotlin Kotlin学习资料汇总 http ...
- 学习:100个高质量Java开发者博客
谷歌关键字搜索:100个高质量Java开发者博客. Java开发牛人十大必备网站.
- iOS常用第三方开源框架和优秀开发者博客等
博客收藏iOS开发过程好的开源框架.开源项目.Xcode工具插件.Mac软件.文章等,会不断更新维护,希望对你们有帮助.如果有推荐或者建议,请到此处提交推荐或者联系我. 该文档已提交GitHub,点击 ...
随机推荐
- 用jQuery 处理XML-- jQuery与XML
jQuery与XML 快而强的遍历系统,华丽丽的选择器语法,这或许是jQuery 那么流行的原因.当然它还有详尽的文档.它主要是用来处理HTML的,但在这里妳会看到如何应用到XML. 使用jQuery ...
- xampp 访问出现New XAMPP security concept 或者 新しいXAMPPのセキュリティコンセプト
出现如下错误: 新しいXAMPPのセキュリティコンセプト: は.要求されたオブジェクトへのアクセスは.ローカルネットワークから入手可能です. この設定は.ファイル"で設定することができますの ...
- JZ2440开发笔记(4)——设置静态IP
1. 配置静态ip地址 $sudo vim /etc/network/interfaces 原有内容只有如下两行: auto lo iface lo inet loopback 向末尾追加以下内容: ...
- (2)I2c总线SDA\SCL以及开始终止条件
I2C只用两条线(SDA和SCL)在连接到总线上的设备之间传送数据.每一个设备都由唯一的地址来识别(不管是微处理器.LCD驱动器.存储器或者键盘接口),并且可以依照设备的功能作为发送器或者接收器使用. ...
- Esper系列(五)Order by、Limit、构建事件流、Updating an Insert Stream
Order by 与SQL语法类似类似,默认为升序排列; 注意: 如果order by的子句中出现了聚合函数,那么该聚合函数必须出现在select的子句中. 出现在select中的expression ...
- Hadoop学习记录(4)|MapReduce原理|API操作使用
MapReduce概念 MapReduce是一种分布式计算模型,由谷歌提出,主要用于搜索领域,解决海量数据计算问题. MR由两个阶段组成:Map和Reduce,用户只需要实现map()和reduce( ...
- 费用提前计算相关的DP(BZOJ2037,POJ3042,ZOJ3469)
在刷ZeroClock大神的区间DP专辑,遇见了ZOJ3469,完全不无从下手,然后有人说是论问题,推荐看徐源盛<对一类动态规划问题的研究>这篇论文,果断得膜拜了下,感觉好神奇,可以把未来 ...
- tail -f logfile.log 一直监控某个文件,若该文件有改动,立即在屏幕上输出
tail -f logfile.log 可以一直监控某个文件,只要文件有改动,就立即在屏幕上输出
- HDU 4635 - Strongly connected(2013MUTC4-1004)(强连通分量)
t这道题在我们队属于我的范畴,最终因为最后一个环节想错了,也没搞出来 题解是这么说的: 最终添加完边的图,肯定可以分成两个部X和Y,其中只有X到Y的边没有Y到X的边,那么要使得边数尽可能的多,则X部肯 ...
- java transient简单介绍
我们都知道一个对象仅仅要实现了Serilizable接口,这个对象就能够被序列化,java的这样的序列化模式为开发人员提供了非常多便利,我们能够不必关系详细序列化的过程,仅仅要这个类实现了Serili ...