Logcat: не предоставление разрешения android.permission.BIND_DEVICE_ADMIN для пакета com.myprojects.myapp (protectionLevel=2 flags=0xbe46)

У меня есть полностью загрузочный вещательный приемник, но он не работает должным образом. Полноэкранное действие также не требует разрешения STATUS_BAR.

Я попытался просмотреть журналы LogCat, пока телефон загружался, и вот что я нашел:

ЖУРНАЛ

 04-11 14:23:48.718: W/PackageManager(133): Not granting permission 
    android.permission.BIND_DEVICE_ADMIN to package com.myprojects.myapp (protectionLevel=2 flags=0xbe46)

Любая подсказка, почему это происходит?

Мой файл манифеста имеет:

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

<receiver android:name="com.myprojects.myapp.DeviceAdministrationReceiver"
        android:permission="android.permission.BIND_DEVICE_ADMIN">  
       <meta-data android:name="android.app.device_admin" android:resource="@xml/device_admin_policies" />

    <intent-filter>
            <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
    </intent-filter>
</receiver>

<receiver android:name="com.myprojects.myapp.BootCompleteReceiver">  
        <intent-filter>  
            <action android:name="android.intent.action.BOOT_COMPLETED" />  
        </intent-filter>  
</receiver>

EDIT И два других подобных журнала:

04-11 14:24:17.810: W/PackageManager(133): Not granting permission android.permission.STATUS_BAR to package com.myprojects.myapp (protectionLevel=3 flags=0xbe46)

04-11 14:24:17.810: W/PackageManager(133): Not granting permission android.permission.WRITE_SECURE_SETTINGS to package com.myprojects.myapp (protectionLevel=3 flags=0xbe46)

person Vikas Singh    schedule 11.04.2012    source источник
comment
это разрешение на использование находится вне тега ‹application›?   -  person Padma Kumar    schedule 11.04.2012
comment
Да, это. Но это так работает, верно?   -  person Vikas Singh    schedule 11.04.2012
comment
@sanjana: вы расширяете DeviceAdminReceiver?   -  person ρяσѕρєя K    schedule 11.04.2012
comment
Да, эта часть работает нормально. Две вещи, которые не работают: 1) BOOT_COMPLETE OnReceive() не срабатывает и STATUS_BAR, что я пытаюсь сделать полноэкранное действие!   -  person Vikas Singh    schedule 11.04.2012
comment
@sanjana: отредактируйте пост с полноэкранным кодом   -  person ρяσѕρєя K    schedule 11.04.2012


Ответы (1)


если вы расширяете DeviceAdminReceiver, то должны добавить метаданные и описание для получателя, например:

<receiver 
    android:name=".AdminReceiver" 
    android:description="@string/description" 
    android:label="@string/labelValue" 
    android:permission="android.permission.BIND_DEVICE_ADMIN" 
 > 
 <meta-data  
  android:name="android.app.device_admin" 
  android:resource="@xml/lockourscreen"/> 
  <intent-filter> 
   <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" /> 
  </intent-filter> 
</receiver> 

BIND_DEVICE_ADMIN как указано в doc: Must be required by device administration receiver, to ensure that only the system can interact with it.

поэтому удалите строку <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN"/> с уровня приложения

person ρяσѕρєя K    schedule 11.04.2012
comment
у него есть метатеги.. Обновили сообщение манифестом - person Vikas Singh; 11.04.2012
comment
удалите эту строку ‹uses-permission android:name=android.permission.BIND_DEVICE_ADMIN/› - person ρяσѕρєя K; 11.04.2012
comment
BIND_DEVICE_ADMIN только для приемника, а не для приложения - person ρяσѕρєя K; 11.04.2012
comment
да, у меня есть решение, но что касается этого вопроса, решенного или нет? - person ρяσѕρєя K; 11.04.2012