Android 权限管理有什么意义?

2018-03-22 15:18:56 +08:00
 Jimjay

权限只要将 targetsdkversion 设置为 22 就能在你安装的时候统统都接受。只有 23 以上才会弹窗请求。 就是是这样,大厂的 APP, 拒绝了后直接不给你用!

我对这个权限管理???????

10544 次点击
所在节点    Android
12 条回复
orangeade
2018-03-22 15:22:02 +08:00
今年底 Play 商店所有应用 target sdk 必须大于等于 8.0 的,
墙国?自生自灭吧
orangeade
2018-03-22 15:22:41 +08:00
在运行时请求权限

- 危险权限只可以在运行时被授予。应用的 UI 流必须提供相应可供性向用户请求这些权限;

- 但凡可能,您的应用要准备好应对权限请求被拒的情况。譬如说,如果某个用户拒绝您的应用访问设备 GPS,应用须通过其它方法继续运行



满足 Google Play 目标 API 等级 (targetSdkLevel) 的要求
https://mp.weixin.qq.com/s/YY7bulNGdIv9sNRjpPH7ZA
Jimjay
2018-03-22 15:26:50 +08:00
@orangeade 说到底谷歌还是宽容了
marcong95
2018-03-22 15:33:31 +08:00
“拒绝了后直接不给你用”这个锅 Android 表示不背,申请权限 app 肯定要收到同意或者拒绝的返回,以便后续运行。iOS 可以通过 AppStore 上架审核。总不能系统自带 XPrivacy 吧。
orangeade
2018-03-22 15:35:28 +08:00
@marcong95 Android 从 4.3 开始有一套隐藏的权限,appops,应用无感知的,Play 商店搜 AppOps 就能开启
iwtbauh
2018-03-22 15:49:15 +08:00
调低 targetsdkversion 也可以手动在设置里禁用权限,只不过禁用时会告诉你“应用为旧版 Android 设计,禁用权限可能使应用无法正常工作”
说白了就是为兼容性设计的
另外 appops 了解一下
honeycomb
2018-03-22 15:58:17 +08:00
@orangeade

AppOps 大部分的责任是充当 运行时权限机制 对付低 targetSDK 的应用
另一部分责任是对付所有用户可以改动的非运行时权限,且也不是 normal 权限的部分

@Jimjay
问题是在这两个方面:

Google 的责任:
1 运行时权限机制 设计成允许应用检测到的结果决定自身是否运行,但没有提供任何救济措施。
苹果的 app store 的上架审核能保证不会出现如此情况。

2 Android 暴露了一些不应该暴露的接口,比如我们最常诟病的手机权限涉及的 getDeviceId(),用以获取 IMEI。
在 iOS 上,这些永久识别码根本就是没有的。

应用开发者的责任:
它们区别对待了两个平台,既然在 iOS 端不能拿到永久识别码,在 Android 连尝试去拿也不可以(有些人不要拿“监管要求”来做挡箭牌)。

好在至少还有显式调用 AppOps 的办法,目前尚可以用来解决不给权限不运行的问题
yidinghe
2018-03-22 16:01:05 +08:00
大厂在安卓系统里面不像在 ios 那样有另一个大厂来限制,可以为所欲为
KevinChan
2018-03-22 16:06:06 +08:00
国内的 app 会告诉你打开权限,否则我就不运行
KevinChan
2018-03-22 16:06:40 +08:00
用安卓真的费心费力费时,浪费生命
aksoft
2018-03-22 16:53:24 +08:00
都一样,要么全开放,要么给一家
YumeMichi
2018-03-26 17:58:02 +08:00
安卓 P 开始好像不能随便这么乱改 targetSDK 了

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

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

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

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

© 2021 V2EX