Kev*_*vik 53 permissions android manifest
我注意到清单文件中有两种类型的权限,"权限"和"使用权限",如下所示;
<permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Run Code Online (Sandbox Code Playgroud)
对于我将它们放在manifest.xml文件中时使用的以下4个权限?uses-permissions还是permissions?
android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
android.permission.INTERNET
android.permission.CHANGE_WIFI_MULTICAST_STATE
Run Code Online (Sandbox Code Playgroud)
A--*_*--C 65
对于
<permission>
Run Code Online (Sandbox Code Playgroud)
该文件规定:
声明一个安全权限,可用于限制对此应用程序或其他应用程序的特定组件或功能的访问.
因此,由于您正在访问Android的权限,因此您需要uses-permission.该元素的文档说明:
请求必须授予应用程序以使其正常运行的权限.
<permission>通常在制作自定义权限时使用(例如,当制作其他应用可以绑定的应用时,限制访问是必须的),并且<uses-permission>在您的应用实际需要其通常没有的权限时使用.
Oma*_*nik 27
让我们从"使用权限..."开始:假设您想在您的应用程序中使用GoogleMap作为示例,以查找任何办公室的最近位置,例如银行或任何其他办公室.你需要上网.因此,您需要授予您的Android设备访问INTERNET的权限.这是通过使用被调用的android权限来完成的.
<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)
现在来到"权限..":它的作用是声明一个安全权限,可以用来限制对这个或其他应用程序的特定组件或功能的访问.如果你的应用程序需要一些资源或其他应用程序的某些功能,你可以通过给出特定的类或包来使用.
<permission android:name="com.example.project.DEBIT_ACCT" . . . />
Run Code Online (Sandbox Code Playgroud)
谢谢.有关更多信息,请阅读
http://developer.android.com/guide/topics/manifest/manifest-intro.html
简而言之,您需要的是uses-permission语句.
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>
Run Code Online (Sandbox Code Playgroud)
用于声明您要使用的权限.
在定义和执行权限时,您可以看到
<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>
Run Code Online (Sandbox Code Playgroud)
用于定义您自己的权限.