android7.0新特性--权限更改
2017-03-13 01:07
204 查看
系统权限更改
为了提高私有文件的安全性,面向 Android 7.0 或更高版本的应用私有目录被限制访问 (0700)。此设置可防止私有文件的元数据泄漏,如它们的大小或存在性。此权限更改有多重副作用:
使用
MODE_WORLD_READABLE和/或
MODE_WORLD_WRITEABLE将触发
SecurityException。
私有文件的文件权限不应再由所有者放宽,
注:迄今为止,这种限制尚不能完全执行。应用仍可能使用原生 API 或
FileAPI 来修改它们的私有目录权限。但是,我们强烈反对放宽私有目录的权限。
分享私有文件内容的推荐方法是使用
FileProvider。
传递软件包网域外的
file://URI 可能给接收器留下无法访问的路径。因此,尝试传递
file://URI
会触发
FileUriExposedException。
。对于由
DownloadManager公开的文件,首选的访问方式是使用
ContentResolver.openFileDescriptor()。
DownloadManager 不再按文件名分享私人存储的文件。旧版应用在访问 COLUMN_LOCAL_FILENAME 时可能出现无法访问的路径。面向 Android 7.0 或更高版本的应用在尝试访问 COLUMN_LOCAL_FILENAME 时会触发
SecurityException。通过使用 DownloadManager.Request.setDestinationInExternalFilesDir() 或 DownloadManager.Request.setDestinationInExternalPublicDir() 将下载位置设置为公共位置的旧版应用仍可以访问 COLUMN_LOCAL_FILENAME 中的路径,但是我们强烈反对使用这种方法
在应用间共享文件
要在应用间共享文件,您应发送一项content://URI,并授予 URI 临时访问权限。进行此授权的最简单方式是使用
FileProvider类。如需了解有关权限和共享文件的详细信息,请参阅共享文件
对于面向 Android 7.0 的应用,Android 框架执行的
StrictModeAPI 政策禁止在您的应用外部公开
file://URI。如果一项包含文件
URI 的 intent 离开您的应用,则应用出现故障,并出现
FileUriExposedException异常。
相关文章推荐
- Android开发之深入理解Android 7.0系统权限更改相关文档
- Android开发之深入理解Android 7.0系统权限更改相关文档
- Android开发之深入理解Android 7.0系统权限更改相关文档
- Android 5.0 6.0 以及7.0新特性 MD风格 敏感权限 文件访问
- Android开发之深入理解Android 7.0系统权限更改相关文档
- Android开发之深入理解Android 7.0系统权限更改相关文档
- Android 7.0 新特性--Direct Boot
- Android 7.0的新特性
- Android 6.0新特性之 权限管理
- android 6.0权限管理特性
- android 7.0以后新特性,长按弹出快捷方式
- android 7.0 多窗口及新特性demo
- android更改system文件夹读写权限
- Android 7.0 通知新特性
- Android 7.0新特性
- Android 7.0新特性---删除三项广播
- Android 6.0新特性:权限
- 怎么更改android系统目录的权限问题
- Android 5.0和6.0以及7.0预览版的特性(从google翻译)