在manifest.xml文件中使用权限与Android权限的权限
我注意到清单文件中有两种types的权限,“权限”和“使用权限”,如下所示的两个权限:
<permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
对于以下4个权限,当我将它们放入我的manifest.xml文件中时,我将使用哪些权限? uses-permissions
或permissions
?
android.permission.ACCESS_NETWORK_STATE android.permission.ACCESS_WIFI_STATE android.permission.INTERNET android.permission.CHANGE_WIFI_MULTICAST_STATE
对于
<permission>
该文件指出:
声明可用于限制对此应用程序或其他应用程序的特定组件或function的访问的安全权限。
因此,由于您正在访问Android的权限,您需要uses-permission
。 该元素的文档指出:
为了使其正常运行,请求必须授予应用程序的权限。
在制作自定义权限时,通常会使用<permission>
(例如,在制作其他应用可以绑定的应用时,限制访问是必须的),当您的应用实际需要权限时,会使用<uses-permission>
没有正常的。
让我们从“uses-permission …”开始:假设你想在你的应用程序中使用GoogleMap作为例子,find任何办公室如银行或其他办公室的最近位置。 你需要互联网。 所以你需要授予你的Android设备访问INTERNET的权限。 这是通过使用android权限调用。
<uses-permission android:name="android.permission.INTERNET" />
现在来“权限..”:它是做什么它声明一个安全权限,可以用来限制对这个或其他应用程序的特定组件或function的访问。如果您的应用程序需要一些资源或从其他应用程序的某些function,您可以通过给出具体的类或包来使用。
<permission android:name="com.example.project.DEBIT_ACCT" . . . />
谢谢。 欲了解更多信息,你可以阅读
http://developer.android.com/guide/topics/manifest/manifest-intro.html
总之,你需要的是使用权限声明。
Androird Document现在有一个专门讨论这两种用法的页面。
在使用权限部分,它解释了这一点
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.app.myapp" > <uses-permission android:name="android.permission.RECEIVE_SMS" /> ... </manifest>
用来声明你想要使用的权限。
而在定义和执行权限,你可以看到
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.me.app.myapp" > <permission android:name="com.me.app.myapp.permission.DEADLY_ACTIVITY" android:label="@string/permlab_deadlyActivity" android:description="@string/permdesc_deadlyActivity" android:permissionGroup="android.permission-group.COST_MONEY" android:protectionLevel="dangerous" /> ... </manifest>
用于定义您自己的权限。