Я хочу начать свою деятельность ON_BOOT_COMPLETED. Теперь я столкнулся с одной странной проблемой.
Если я укажу разрешение на загрузку вне тега приемника, вне тега приложения. Активность начинается. следующий
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.broadcaststaticdemo.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="com.example.broadcaststaticdemo.StartAppOnBoot" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
Если я укажу разрешение внутри тега получателя, моя деятельность не начнется. следующий
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.broadcaststaticdemo"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.broadcaststaticdemo.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="com.example.broadcaststaticdemo.StartAppOnBoot"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
While i have used the second approach (permission inside receiver tag) in my other application it is working completely fine. So i am confused what is difference between specifying permission at application level and receiver level. I have seen android documentation where they have mentioned
Имя разрешения, которое должны иметь вещатели для отправки сообщения приемнику вещания. Если этот атрибут не установлен, разрешение, установленное атрибутом разрешения элемента, применяется к широковещательному приемнику. Если ни один из атрибутов не установлен, получатель не защищен разрешением. что означает, что мы можем указать любое место. Любая помощь будет оценена