0

在 BroadcastReceiver 的 android 文档中:

android:permission广播者必须拥有向广播接收者发送消息的权限的名称。如果未设置此属性,则元素的权限属性设置的权限适用于广播接收器。如果两个属性都没有设置,则接收者不受权限保护。

我在应用程序标签中设置了一个自定义权限,并且我还有一个接收器试图接收MEDIA_SCANNER_FINISHED广播。当系统尝试广播我的侦听器事件时,我收到以下警告消息。

Permission Denial: broadcasting Intent {
 act=android.intent.action.MEDIA_SCANNER_FINISHED
 dat=file:///mnt/sdcard } from com.android.providers.media (pid=767,
 uid=10029) requires com.xxx.permission due to receiver
 com.xxx.myreceiver

我怎样才能得到广播?

4

1 回答 1

1

确保您scheme还在.dataAndroidManifest.xml

<receiver android:name=".YourReceiver">
    <intent-filter>
        <action android:name="android.intent.action.MEDIA_SCANNER_FINISHED" />
        <data android:scheme="file" />
    </intent-filter>
</receiver>
于 2012-07-31T10:12:01.497 回答