应用程序未接收android.intent.action.DOWNLOAD\u完整的意图

应用程序未接收android.intent.action.DOWNLOAD\u完整的意图,android,download-manager,Android,Download Manager,我正在编写一个简单的应用程序,当通过下载管理器在android设备上完成任何下载时,都会收到通知。我已经为它创建了一个广播接收器,并在清单文件中设置了如下意图过滤器。 但是,当下载完成时,我的广播接收器不会被调用。是否还需要设置一些其他权限,以便我的应用程序接收下载管理器发送的下载完整意图? 请注意:我的应用程序需要收听通过下载管理器完成的任何下载 <receiver android:name="com.example.filedownload.Downloadlistener"

我正在编写一个简单的应用程序,当通过下载管理器在android设备上完成任何下载时,都会收到通知。我已经为它创建了一个广播接收器,并在清单文件中设置了如下意图过滤器。 但是,当下载完成时,我的广播接收器不会被调用。是否还需要设置一些其他权限,以便我的应用程序接收下载管理器发送的下载完整意图? 请注意:我的应用程序需要收听通过下载管理器完成的任何下载

<receiver
    android:name="com.example.filedownload.Downloadlistener" >
       <intent-filter>
        <action android:name="android.intent.action.DOWNLOAD_COMPLETE" />
        <action android:name="android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED" />
       </intent-filter>
</receiver>

以下是使用的权限:

<uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />


您的BroadcastReceiver是否真的被称为
com.example.filedownload.Downloadlistener
?您可能需要更改它以匹配实际名称。

我最终通过向清单中添加以下权限解决了此问题:

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


晚会迟到了,但有机会查看了下载管理器的源代码,而且下载完整广播似乎是针对启动下载的应用程序的,因此您似乎无法捕获其他应用程序的下载…

是的,包名是com.example.filedownload,接收者是Downloadlistener。我认为接收器是好的,因为如果我声明音量状态改变了意图并增加或减少音量按钮,我的广播接收器就会被调用。然而,对于这两个下载管理器,它从未进入具有相同问题的广泛广播接收器。在清单中似乎正确声明了接收方,但从未调用它。你找到解决方案了吗?刚刚发布了一个解决方案。请看下文,即使您的应用程序不是正在下载的应用程序,而是正在下载的其他应用程序,这是否有效?我不这么认为,但我还没有进行测试。它是否被腐蚀了?我在官方文件中找不到此权限。只需要互联网。