Android Q dp2 已经默认隔离应用存储

2019-04-04 11:17:20 +08:00
 yukiww233
读写外置存储权限分成[音乐][照片和视频]两个权限
未适配 Q 的文件管理器已经无法访问到公共存储空间
16075 次点击
所在节点    Android
55 条回复
clouds
2019-04-04 20:37:25 +08:00
@HFX3389 在国内,不一定哦。工信部还是有点用的吧
xingda920813
2019-04-04 21:04:52 +08:00
这个改变总体上我认为有 3 点欠考虑的地方:

1, 对于第三方文件管理器, SAF 提供的 API 过于有限 (尽管有 OPEN_DOCUMENT_TREE), 无法让全功能的文件管理器 (如 Root Explorer, Total Commander, Solid Explorer 等) 改造后继续像以前版本一样工作; 备份管理器等工具应用也会受重创;
(系统自带的"文件"使用了 MANAGE_DOCUMENTS 等签名级别的权限, 非普通 App 可获取)

2, SAF 需使用 ContentProvider API, 需要进行 Binder 通信, 相比 File API 性能上存在劣势;

3, SAF 不在 NDK 中, 不能在 native 代码 (C/C++) 中访问;

我认为最好的是把非沙盒化的存储权限 (以前版本中的 WRITE_EXTERNAL_STORAGE) 做成一个特殊权限, 路径在"设置"->"应用"->扩展菜单->"特殊访问权限"->存储 (例), 像设备管理器权限一样, 但不提供 Intent 跳转, 用户只能手动去设置一级一级进入. 这样引导用户操作的成本会很高, 可阻止普通的非工具类应用滥用或强制索取;

或者在 Google Play 中上架为工具类应用的 App 才可申请 STORAGE 权限.
huaxianyan
2019-04-04 22:14:06 +08:00
@terrytw 我觉得剪贴板权限可控是 OK 的,一刀切就很麻烦了
nanaw
2019-04-04 22:32:07 +08:00
@huaxianyan 还真不能可控。对国内来说 可控==滥用 非要使用应该以普通用户无法实现的方式授予( adb,root )才不会被滥用
@xingda920813 这个直接用 adb 或者 root 才能授予特权解决吧。反正只要普通用户能授予的权限国产应用必然会滥用它
Maskeney
2019-04-05 01:18:26 +08:00
真是棒棒
Maskeney
2019-04-05 01:18:43 +08:00
但是我感觉国内厂商总会有各种办法来绕过的
shenmegui
2019-04-05 07:32:43 +08:00
我几年前就说过,安卓只有打倒重来一条路。


太太太晚了。
shan999abc
2019-04-05 07:37:05 +08:00
@pmispig 🤙👆👍👍👍👍
wangxiaoaer
2019-04-05 08:14:01 +08:00
@shenmegui 失望了,权限问题搞了多少年了,现在跟屎一样,解决不了退出问题,真不知道他们的脑回路是什么。

现在又来搞存储使用的问题,不看好。
evagreenworking
2019-04-05 08:29:45 +08:00
还差读取应用列表这个权限没放给用户,没 xprivacy 只能用 shelter 或者 island 替代
gzxu
2019-04-05 08:46:59 +08:00
@evagreenworking 用 android.content.pm.PackageManager.MATCH_UNINSTALLED_PACKAGES 参数依然可以访问 Island 外的应用列表,就像用 getprop 依然可以获得 IMEI 一样(至少我的 ROM 上面是这样的,我觉得后者可能是因为 ROM 制作者没注意,留了一个 ro.ril.oem.imei )

顺便,这个“绿色 APP 公约”就是 Island 的作者最先发起的,牛逼
gzxu
2019-04-05 09:02:17 +08:00
#42 @xingda920813 系统级开了权限的话不让上架也影响不大吧,最近百度地图就下架了,也不知道为什么。其实我觉得大家用 /sdcard 无非两个原因,一个是 PM (尤其是第三方 SDK 的代码)要求确实要在应用被删除之后存储 ID (跨应用存储 ID 这个其实方法太多了,不一定需要 /sdcard ),另一个就是"/sdcard"这串字符本身不需要动态生成,可以写成常量,用起来方便省事,一直用一直爽。不过 Google 这么一来,至少开发有底气跟 PM 说“这个功能做不了”了,就像 Oreo 里面对私有 API 的限制虽然可以绕过,但态度就是放在那里一样
C2G
2019-04-05 09:23:18 +08:00
@maomaomao001 #15 存储重定向可以实现(奥利奥使用体验良好)
zzzim
2019-04-05 18:02:01 +08:00
干的漂亮
lee233333
2019-04-24 19:59:16 +08:00
请问升级 android q 后有通话记录么??我升级后怎么打电话都没有记录。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/551974

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX