3

我需要解析应用程序的AndroidManifest.xml以找出客户端应用程序需要拥有哪些权限才能与该应用程序通信。根据android 开发人员指南,应用程序标签和组件(Activity、Service、Provider、Receiver)标签的android:permission属性中提到的权限应该由客户端应用程序拥有。这种用法的一个例子(AndroidManifest.xml 摘录)是

<application android:permission="android.permission.INTERNET">
    ...
</application>

在上述示例中,客户端应用程序应拥有android.permission.INTERNET才能与此应用程序通信。

我的问题是,这个权限信息是在标签的属性中提到的。因此,我理解(我可能错了)这里不可能有多个权限被提及。但是很可能一个应用程序/组件可以期望客户端应用程序/组件拥有多个这样的权限。例如,在上述情况下,应用程序可能期望客户端应用程序拥有 android.permission.INTERNET 和 android.permission.ACCESS_WIFI_STATE 权限。但似乎没有空间在 AndroidManifest.xml 中指定这一点。

请让我知道是否可以强制客户端应用程序拥有多个权限。

4

1 回答 1

2

因此我理解(我可能是错的)这里不可能有一个以上的权限被提及

正确的。

但似乎没有空间在 AndroidManifest.xml 中指定这一点。

正确的。

我需要解析应用程序的 AndroidManifest.xml 以找出客户端应用程序需要拥有哪些权限才能与此应用程序通信

从技术上讲,这是不可能的,因为应用程序可以在运行时检查权限(例如,通过调用checkCallingPermission())。

于 2013-08-24T17:12:03.450 回答