【发布时间】:2010-02-01 10:56:53
【问题描述】:
我正在开发一个包含一些脚本支持的应用程序。这个应用程序执行的脚本将来可能需要各种权限,但很难预测哪些权限。
有没有办法在运行时请求额外的权限(比如 iPhone 应用有时会这样做),而不是提前在 AndroidManifest.xml 中指定它们?
【问题讨论】:
标签: android permissions
我正在开发一个包含一些脚本支持的应用程序。这个应用程序执行的脚本将来可能需要各种权限,但很难预测哪些权限。
有没有办法在运行时请求额外的权限(比如 iPhone 应用有时会这样做),而不是提前在 AndroidManifest.xml 中指定它们?
【问题讨论】:
标签: android permissions
所需的权限 应用程序是静态声明的 该应用程序,因此可以知道它们 在安装时预先设置,不会 之后改变。
【讨论】:
<uses-permission> 文档中类似地说“权限是在安装应用程序时授予的,而不是在它运行时授予的。”
Android M 引入了一种新的应用权限模型,该模型简化了用户安装和升级应用的过程。如果在 M 上运行的应用程序支持新的权限模型,则用户在安装或升级应用程序时无需授予任何权限。相反,应用程序会在需要时请求权限,系统会向用户显示一个对话框来请求权限。
用户在运行时授予权限:当应用程序请求权限时,系统会向用户显示一个对话框,然后调用应用程序的回调函数通知它是否已授予权限。如果用户授予权限,则应用程序将获得该权限功能区域中在应用程序清单中声明的所有权限。
【讨论】: