在android.permission.RECEIVE_BOOT_COMPLETED中使用android:permission的混淆

时间:2015-05-08 07:02:48

标签: android broadcastreceiver android-permissions

请查看以下Maniferst.xml文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="pack.saltriver" 
    android:versionCode="1" 
    android:versionName="1.0"
    android:permission="android.permission.RECEIVE_BOOT_COMPLETED">


   <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>

    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <receiver android:name=".autostart">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <activity android:name=".hello"></activity>
        <service android:enabled="true" android:name=".service" />
    </application>
 </manifest>

我真的需要同时使用

android:permission="android.permission.RECEIVE_BOOT_COMPLETED">

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>

它们之间的区别是什么?

2 个答案:

答案 0 :(得分:0)

不,像这样改变你的清单

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="pack.saltriver" 
    android:versionCode="1" 
    android:versionName="1.0">


   <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>

    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <receiver android:name=".autostart">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>

        <activity android:name=".hello"></activity>
        <service android:enabled="true" android:name=".service" />
    </application>
 </manifest>

这就是为什么我们有这些答案的答案.. documentation

声明一项安全权限,可用于限制对此应用程序或其他应用程序的特定组件或功能的访问。

因此,由于您要访问Android的权限,因此您需要使用uses-permission。该元素的文档说明:

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

通常在制作自定义权限时使用(例如,在制作其他应用可以绑定的应用时,必须限制访问权限),并在您的应用实际需要权限时使用,但它不具备正常权限

答案 1 :(得分:0)

使用权限是足够的,不需要在清单标记中写入权限。

<!DOCTYPE html>