androd开发者博客二月-Marshmallow and User Data

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了androd开发者博客二月-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实例的范畴。看Google
Developer‘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. :)

 

  

以上是关于androd开发者博客二月-Marshmallow and User Data的主要内容,如果未能解决你的问题,请参考以下文章

❤️Androd 性能优化之布局优化❤️

androd 获得wifi列表

Androd Gradle 使用技巧之模块依赖替换

Androd Gradle 使用技巧之模块依赖替换

Androd Gradle 对其使用模块依赖的替换

[Androd] Gradle 使用技巧之模块依赖替换