1
qq292382270 2019-08-21 16:15:10 +08:00
还没上手, 也没看过文档 ,只是听说, Q 貌似是给应用创建独立虚拟目录.应用只能在这里面创建文件吧好像..
不过我猜测不管怎样,不给权限就不给用的问题应该是解决不了的.给不给你用取决于 app 开发者 . 再者说, 如果没有文件读写权限. 微信要发个图片什么的,就读不到手机相册内容了. |
2
SF 2019-08-21 16:17:20 +08:00 via iPhone
要解决不给权限不让用的问题,只能靠故意给应用投喂假数据了,我觉得原生安卓不会做的这么绝…
|
4
menyakun 2019-08-21 16:20:43 +08:00
可以试试这个 http://boxify.pro/
|
5
menyakun 2019-08-21 16:21:07 +08:00
不过 Google Play 里面下架了,我是在这里下的 https://apkpure.com/boxify-mdm/de.backessrt.boxify.mdm
|
6
liukanshan 2019-08-21 16:21:44 +08:00
不能解决 这个问题会一直存在下去 甚至会更严重。 安卓应用没有人监管真的是无法无天。 带头的几个流氓做监管? (xx 市场)还是算了吧。
|
7
menyakun 2019-08-21 16:23:26 +08:00
原理实际上是在 apk 安装时,rewrite 一些和权限有关的代码,代理到一个权限控制的 app 里面
|
8
leoplusclaude 2019-08-21 16:24:37 +08:00
第二个问题推荐下 Rikka 已经搞了好久的 Storage Redirect ( https://play.google.com/store/apps/details?id=moe.shizuku.redirectstorage), 第一个问题 Q 只能说是收紧了权限,但是没有针对性的解决
|
9
leoplusclaude 2019-08-21 16:26:05 +08:00
|
10
star29 2019-08-21 16:26:27 +08:00 via iPhone
@leoplusclaude 你这个 app 需要 root 权限吗
|
11
Lin0936 2019-08-21 16:29:00 +08:00
从 beta1 开始用到现在的 final beta,俩问题都没解决(未 root ),问题 1 可以用 AppOps 搞,但是没 root 的话每次重启都要 adb 启动服务,很烦。
|
12
leoplusclaude 2019-08-21 16:29:28 +08:00
@star29 需要 Magisk
|
13
honeycomb 2019-08-21 16:30:06 +08:00 via Android
不能,目前的 workaround 还是要通过系统自带的 appops (对付多数不给权限就不运行)与第三方软件 island(通过 managed profile 新建一个受控用户)/storage redirect (在 scoped storage 之前便出现的类似方案,需要 magisk )解决存储权限的滥用。
存储权限的滥用需要到 R 强制启用 scoped storage 才能解决。Q 虽然有 scoped storage,但不强制启用也无法通过 appops 强制启用。 Q 可以解决电话权限的滥用,因为 Q 不再提供设备唯一识别码,拿到了电话权限也没用。 如果无意外,Android Q 正式版会在明天发布。 |
15
morethansean 2019-08-21 16:32:28 +08:00
1. iOS 也是靠应用市场审核约束的啊,这点系统怎么可能约束得了?不过不用担心,国家已经动手约束了,按分类限制应用必须要的权限。详情参考: https://www.v2ex.com/t/590809 2. 本来 Q 重点解决了这个问题,不过不幸的是开发者反应太激烈,貌似 Q 对 android 9 以下的不会默认开启,参考: https://www.v2ex.com/t/558823
|
16
admirez 2019-08-21 16:47:52 +08:00
这就是我一直 ios 的原因,至少我通讯录权限是一个 app 都不给的。
|
17
azh7138m 2019-08-21 16:51:26 +08:00
@star29
标题 是 Storage Redirect - App Storage Isolation (root) 介绍第一句 是 This tool requires root privileges. 要。 |
18
a5237039 OP 谢谢各位 V 友,看来还是任重道远。希望安卓能越做越好吧,也能看见类似统一推送联盟,绿色公约之类的在行动,往好的方向发展始终是好的。
|
19
SimonOne 2019-08-21 17:07:35 +08:00
Storage Redirect 解决 sd 拉屎,
|
20
SimonOne 2019-08-21 17:08:01 +08:00
App Ops 解决不给权限不给用
|
21
leapV3 2019-08-21 17:09:56 +08:00
谷歌自己就是最大的广告商,你觉得会把自己堵死吗
|
22
R0n1n 2019-08-21 17:10:09 +08:00 via Android
哈哈,会不会有一天发展成厂商只提供 API,用户自己实现调用
|
23
shyrock 2019-08-21 17:16:58 +08:00
2 我觉得谷歌能搞定,严格的沙箱机制。
1 么,我觉得这是应用和用户之间的契约和认同问题,比方微信安装完弹个框要你支付 10000 元才能使用,你不愿意给就退出卸载呗,为啥要 OS 来帮你解决? |
24
expy 2019-08-21 17:27:01 +08:00
谷歌卖广告的,不会完全站在用户这边。它对应用的管辖能力也没苹果那么强。
它要在用户跟厂商之间妥协,你的痛点 2 本来 Q 已经解决,由于应用开发者反对,已经推迟到下个版本。 |
25
smarthing 2019-08-21 17:37:46 +08:00
等明年十月份的 Android R 吧,目前的 Q 还是解决不了这个问题。
由于 Android 要向下兼容,理论上只要应用的 target sdk 版本不改,这个问题就会一直无解。 毒瘤应用(微信)之类的会将拿到的结果进行验证,所以无解。除非它们升级 target sdk 版本了,然后就没有接口了,也就拿不到了。 但是由于 Android 的开放性,sdcard 目录总会有方法来拿到,一个可能的方案是只有将应用设置成默认应用时 API 才生效,这样能阻止这个问题,我相信没人原因把毒瘤(微信)设置成默认的文件管理器。 所以,微信就只用来聊天吧,金融类的事情还是交给支付宝吧,支付宝一直走在前列的,支付宝在几个版本之前就已经不需要电话权限了。 目前支付宝强制需要的权限只有 存储 了,并且还可以用 appops 来阻止存储权限,只是不给存储权限就没法用支付宝小程序了。 |
26
smarthing 2019-08-21 17:40:10 +08:00
@honeycomb 存储权限这个 R 也解决不了,因为有 API 可以访问 sdcard。除非 R 里加个限制,只有默认文件管理器才能访问 sdcard。
|
27
theoran 2019-08-21 18:06:21 +08:00
Q 新增的文件权限的限制是应用在 target API 到 Q 的时候才生效,如果 target API 在 Q 以下是没有限制的。
即使 target 了 Q,Google 也提供了在 Manifest 里绕过限制的配置项。(据说后面的版本会移除这个过渡用配置项,据谷歌自己说的。。。) 所以对于国内应用来说,这种限制可以理解为不存在。 当然,如果 target 了 Q,同时不启用过渡配置项,然后运行在 Q 上面,诸如 getExternalStorageDirectoy 这种 API 就无效了,无法获取到真实文件。谷歌推荐这么做,如果非要获取要用 Storage Access Framework,但是开发者们估计不会领情~ |
28
moneyduo 2019-08-21 19:48:30 +08:00
我比较关系 能不能把强制控制亮度的权限交给用户,现在很多支付类 app,打开二维码亮度瞬间最亮,夜里真实亮瞎了眼。。
|
30
Kahnn 2019-08-21 23:06:54 +08:00
我现在用一款叫 Island 的应用,可以在工作资料中运行 App,就读取不到存储和通讯录了
|
31
baobao1270 2019-08-21 23:12:58 +08:00
不能
第一个:AppOps + Xprivacy 第二个:Storage Redirect |
32
luckylo 2019-08-22 07:51:41 +08:00 via Android
@smarthing 其实我是想说,不是因为权限问题,经融类才选择支付婊,而且 TX 的出了问题要么找不到客服,要么找相关部门,相反支付婊的处理,这是甩了 TX 几个数量级了
|
33
fox0001 2019-08-22 08:37:38 +08:00 via Android
目前用 shelter 解决这两个问题。把那些应用装在 shelter 里(利用了 Android 的工作目录模式,类似那些应用分身的 app ),即使拿到权限,也只能访问工作目录里的数据和文件。还可以把那些不常用的 app 冻结,避免后台运行
|
34
fox0001 2019-08-22 08:39:00 +08:00 via Android
shelter 无需 root 权限,另外还有个类似的,叫 island。都是开源的
|
37
iwtbauh 2019-08-22 09:26:03 +08:00 via Android
第一个问题可以通过 appops 部分解决
第二个问题我不管了,眼不见心不烦。/sdcard/myhome 是我的工作目录 |
38
yukiww233 2019-08-22 09:37:56 +08:00
1.这个问题 ios 也没法解决啊,只是通过 appstore 的审核可以淘汰掉大部分,同样 google play 也可以淘汰掉大部分
2.需要 target Q,要到 R 才会强制执行 |
39
augustheart 2019-08-22 09:47:45 +08:00
只要不强制 target 版本,什么都解决不了
|
40
deorth 2019-08-22 09:52:41 +08:00
讲真,2 的话,windows 也没限制应用磁盘访问啊,乱拉屎的应用不能说没有,至少比安卓少太多。为什么呢?
|
41
leeeric 2019-08-22 09:57:57 +08:00
如果不是安卓粉,可以考虑换成 iOS,完全满足你的这两个要求。顺带提供更靠谱的隐私保和安全保护。
自己做过 iOS 开发就明白,审核 app 那叫一个痛苦,基本上任何小聪明都玩不过苹果,新上架 app 都能触发对老 app 的抽检,作为开发者真是恨死苹果了,但作为终端用户,真是爱死他了。 至于安卓是不可能了,这辈子都不可能。如果要坚守安卓阵地,请学会容忍和放弃。 |
42
qq565999484 2019-08-22 10:17:15 +08:00
换个 iOS 系统的。。。手动狗头.png
|
43
honeycomb 2019-08-22 10:33:25 +08:00 via Android
@smarthing 会有受限,能访问 sdcard 的 API 要么是在应用的私有目录随意写,要么是只能在 scoped storage 规定的地方写规定的内容,还有一种情况似乎是写了文件后其它应用看不到( filtered view )?
|
44
Honker 2019-08-22 10:53:15 +08:00
IOS 不会出现不给权限不能用的情况是因为,IOS 一般情况下应用仅来自 app store,如果不给权限不能用,你干脆别上架了。Android 在国外还有 Google Play,国内各自为营,除非厂商达成协议统一管理或者形成一套 App 管理共识,否则很难做到。
|
46
Anarchy 2019-08-22 11:24:59 +08:00
第一点其实网安在推,现在主流 app 应该都会改掉这个问题
|
47
chenxin8 2019-08-27 13:32:43 +08:00
@SimonOne 单 appops 已经不好使了,试过有很多 app 还能检测到,需要 appops + Xprivacylua 组合,才能拦住流氓
|
48
carryme 2019-08-31 20:07:06 +08:00
有没有解决 DCIM 文件下 .thumbdata 文件越来越大,删不掉的问题阿。
|