Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android <;许可>;仅在manifest标记下,它实际上意味着什么?_Android_Permissions_Manifest - Fatal编程技术网

Android <;许可>;仅在manifest标记下,它实际上意味着什么?

Android <;许可>;仅在manifest标记下,它实际上意味着什么?,android,permissions,manifest,Android,Permissions,Manifest,最近,当我分析一些代码时,我发现在manifest标记之后有一个permission标记,而不是在任何其他标记(如activity标记或receiver标记)下的event use 我理解在某些标记下添加权限标记的原因,例如,或,但不理解使用该标记的意义 这类似于以下内容: <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="3" android:versionN

最近,当我分析一些代码时,我发现在manifest标记之后有一个permission标记,而不是在任何其他标记(如activity标记或receiver标记)下的event use

我理解在某些标记下添加权限标记的原因,例如,
,但不理解使用该标记的意义

这类似于以下内容:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode="3"
android:versionName="3.0" >
<permission android:name="com.mustakim.myproject.permission.READ_ALL" />
</manifest>

有人能给我解释一下使用这种东西的原因吗

<permission>

描述:声明可用于限制对此应用程序或其他应用程序的特定组件或功能的访问的安全权限

因此,由于您正在访问Android的权限,因此您希望使用权限,因为此节点的文档说明:

请求必须授予应用程序的权限,以使其正确运行


因此,您在创建自己的权限时使用(例如创建一个其他应用程序可以访问的库,您希望它们声明使用您的库部件),并且在您的应用程序实际需要其通常不具有的权限时使用。

manifest元素是该应用程序的正确位置

基本上,它只是声明了一个自定义权限。然后,您可以通过在
应用程序
活动
接收器
元素中引用该属性来要求客户端具有此权限。

权限是限制访问部分代码或设备上数据的限制。该限制旨在保护可能被误用以扭曲或破坏用户体验的关键数据和代码

安全权限

一旦您使用此标记声明了自己的权限,并且您的应用程序需要访问受此权限保护的功能,您必须声明它将该权限用于
,例如:

<manifest . . . >
    <permission android:name="com.mustakim.myproject.permission.READ_ALL" . . . />
    <uses-permission android:name="com.mustakim.myproject.permission.READ_ALL" />
    . . .
    <application . . .>
        <activity android:name="com.mustakim.myproject.MyActivity"
              android:name="com.mustakim.myproject.permission.READ_ALL"
              . . . >
        . . .
        </activity>
    </application>
</manifest>

. . .
. . .
换句话说,
声明您自己的权限,然后您使用
实际声明您的应用程序/活动需要该权限才能运行


查看提供的链接,这里有更多详细信息。

从android文档中查看此链接:但是,在我的代码中,权限不会引用任何其他标记,如,或,而不是tag。你能告诉我这样做有什么意义吗?如果你只是声明了一个权限,但不需要它,你可以删除未使用的权限。我还阅读了《开发者指南》中的文档。但是,据说权限将在任何类型的标记中引用,但是,在我的代码中,权限不会在任何其他标记中引用,比如,或者更确切地说,在标记中引用。您能告诉我这样做有什么意义吗?我还阅读了《开发者指南》中的文档。但是,据说权限将在任何类型的标记中引用,但是,在我的代码中,权限不会在任何其他标记中引用,比如,或者更确切地说,在标记中引用。你能告诉我这样做有什么意义吗?正如@laalto所说,如果你在任何地方都不使用它,你可以把它移除,因为拥有它没有任何意义。此外,请阅读此处的安全提示: