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

<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" />

===============>>#1 票数:9 已采纳

我终于设法通过向我的清单添加以下权限来解决此问题:

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

===============>>#2 票数:1

你的BroadcastReceiver真的叫做com.example.filedownload.Downloadlistener吗? 您可能需要更改它以匹配实际名称。

===============>>#3 票数:1

晚会,但有机会查看下载管理器的源代码,似乎下载完成广播针对启动下载的应用程序,所以它似乎你无法抓住其他应用程序的下载...

  ask by sim translate from so

未解决问题?本站智能推荐:

2回复

基于相同的广播意图动作,两个应用程序中的两个BroadcastReceiver是否有可能“碰撞”?

我在服务中有一个BroadcastReceiver : 这将系统下载管理器置于最前面。 在我的手机上,我正在运行基于JellyBean的CyanogenMod 10.1。 但... 系统应用程序CMupdater一旦启动: 如果CMupdater当前正在运行,
1回复

在DownloadManager上接收广播意图时出错DOWNLOAD_COMPLETE广播接收者

当我尝试从Android下载管理器获取下载文件的状态时,出现以下错误。 并授予读取,写入存储和访问网络/互联网的权限 广播接收器代码。 下载状态码 有什么帮助吗?
2回复

DownloadManager.ACTION_DOWNLOAD_COMPLETE广播接收器在Android中使用不同的下载状态多次接收相同的下载ID

我正在使用Android DownloadManger System Service以下列方式下载某些文件 其中mgr是Download Manager实例, dwnId是返回的唯一ID。 我也在注册ACTION_DOWNLOAD_COMPLETE 并在onDownloadCo
1回复

是否可以通过Android应用程序中的代码清除下载管理器应用数据

我想通过代码清除默认下载管理器应用程序的缓存和数据。 可能吗? 我需要这个,因为手动清除下载管理器数据可以让我的应用程序更成功地下载。 是否可以从我们的应用程序中删除其他应用程序的缓存或数据?
1回复

如何识别哪个文件触发了Download_Complete意向

我正在开发一个应用程序,它将下载另一个apk文件,并要求其安装。 由于我的目标是GingerBread,因此我使用的是DownloadManager类。 无论如何,是否知道哪个下载文件触发了DOWNLOAD_COMPLETE意向?
2回复

在下载管理器中尝试查看CSV文件时,将收到Android意向过滤器通知

要通知您用户正在尝试查看他们先前通过下载管理器下载的CSV文件时收到通知,注册您的应用程序需要什么魔咒? 我玩了一段简短的视频,下面的过滤器将愉快地拦截由以下各项生成的通知:Dropbox,Box,Google Drive,Sky Drive,Chrome .....,并提供打开文件的功能,但
3回复

如何在下载成功或失败之前接收下载管理器意图的状态

这是我的问题。 我正试图通过Asynctask使用下载管理器意图从我的服务器下载文件。 在我的asInctask类的doInBackground中,我调用了下载管理器intent,doinBackground将在下载完成时返回布尔值(成功或失败)。 这是我的代码 但Download
2回复

如何获取正在下载的应用程序列表?

在我的应用程序中,我需要知道是否从Android市场下载特定的应用程序。 我如何实现此功能? 是否有可能获得正在进行的所有下载的列表?Android市场是否广播可以捕获的任何意图? 注意:由于我的目标应用程序是在Android 3.0+设备上,因此我使用DownloadManager类
3回复

从捕获的DownloadManager意图中检索文件路径

从Android 4.2开始,如果用户在浏览器中下载某个文件,则使用DownloadManager。 如果用户单击“下载完成”通知,则始终启动Intent。 在Android 4.2之前,意图用于在内容中包含下载文件的路径,例如: 将返回一个String,例如file:///stor
1回复

使用DownloadManager下载视频文件时,应用程序在Android 10上崩溃

设置setDestinationInExternalPublicDir()应用崩溃 E / AndroidRuntime:致命例外:主进程:app.package,PID:19275 java.lang.IllegalStateException:不是标准目录之一:android.o