Articles of android download manager

未知的url内容:// downloads / my_downloads

我正在使用Download Manger下载一些多媒体文件并对其进行分类。 我也在使用Crashlytics,这是一个错误,我经常在不同的设备和Android版本上得到它。 我正在寻找你的解决方案/建议! java.lang.IllegalArgumentException: Unknown URL content://downloads/my_downloads at android.content.ContentResolver.insert(ContentResolver.java:862) at android.app.DownloadManager.enqueue(DownloadManager.java:1252) at com.myapp.LessonFragment$DownloadClickListener.onClick(SourceFile:570) at android.view.View.performClick(View.java:4262) at android.view.View$PerformClick.run(View.java:17351) at android.os.Handler.handleCallback(Handler.java:615) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4921) at java.lang.reflect.Method.invokeNative(Method.java) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) at dalvik.system.NativeStart.main(NativeStart.java) 您可以在下面看到我的代码: private class DownloadClickListener implements View.OnClickListener { @Override public void onClick(View view) { // Check if download manager available […]

如何更新ListView项中的进度条

我有一个附加到ArrayAdapter的ListView 。 当用户单击ListView项目的下载按钮时,将使用DownloadManager开始DownloadManager 。 我想要做的是使用进度条跟踪下载进度(放置在项目布局中)。 怎么能实现这一目标? Pocket Cast的方式是我所追求的: Pocket Cast exampel http://www.mrcrab.net/images/thumb_big/9982-Pocket_Casts_Apk_v4.3.2_Android-0.jpg 注意:我知道如何使用DownloadManager ,它是即时更新进度条很棘手。

直到android下载管理器将通过下载参考ID提供下载状态?

我有一个用例, 我开始使用android下载管理器下载文件,并在中间关掉手机。 当我再次重新启动时,下载继续并完成。 我通过提供下载引用ID获得了状态。 但是我想知道使用该引用ID 10天后的状态。 所以我的问题是直到android下载管理器将通过下载参考ID给出下载状态? 我查看了文档并通过堆栈进行了流程,但无法find答案。 有人帮助我。

DownloadManager下载超过2.1 GB的文件

我正在开发一个应用程序,我正在处理的一个function是下载一些二进制文件。 其中一些非常大(超过几兆字节)。 只要文件大小小于2 GB,下载就可以正常完成。 我卡在一个3.2GB的文件上,因为我获得了进度更新(我正在汇集DownloadManager以获取进度更新),但是当下载完成时,该文件不存在于目标文件路径上。 询问DownloadManager的下载ID,我得到STATUS_FAILED并说明ERROR_UNKNOWN – 一个人们希望的最喜欢的错误细节! 奇怪的是,这出现在大多数设备上,但对于某些设备(如Samsung SG 4 Active OS 4.2.2和LG Nexus 5 OS 4.4.2),它似乎没有出现。 做了一些额外的调查,我发现这似乎是Android DownloadManager实现中的一个错误 。 似乎Android实现将下载计数存储为int,但当该计数超过Integer.MAX_VALUE ,下载结束为失败。 我想用前台服务替换DownloadManager用法,但我不会放弃…. 你们是否面对这个问题,如果是这样,你是如何解决这个问题的? 是否有任何解决方法在4.2.2之前使用DownloadManager所以我可以下载每个文件超过2.1 GB?

为什么“下载完成”通知会在Gingerbread设备上消失?

我正在使用DownloadManager类以编程方式下载文件。 一切正常,但我不能让下载完成通知持续存在。 下载完成后立即消失。 这是我的代码: Request rqtRequest = new Request(Uri.parse(((URI) vewView.getTag()).toString())); if (Build.VERSION.SDK_INT < Build.VERSION_CODES.ICE_CREAM_SANDWICH) { rqtRequest.setShowRunningNotification(true); } else { rqtRequest.setNotificationVisibility(Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); } ((DownloadManager) getSystemService(DOWNLOAD_SERVICE)).enqueue(rqtRequest); 我在网上看到了一些与此相关的问题,但我找不到解决方案。

在活动中显示下载管理器进度

我在我的活动中使用了Download Manager类来执行下载; 它工作正常,我的下一个任务是在我的活动中显示相同的进度百分比。 我不知道该怎么做。 我的代码到目前为止 public class DownloadSampleBook extends Activity{ private long enqueue; private DownloadManager dm; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sample_download); BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) { long […]

如何以编程方式获取用户在Android OS配置上设置的数据使用限制?

用户可以在“数据使用”屏幕上定义移动数据使用的限制和/或警告限制。 那么如何通过代码获取此信息呢? 本机操作系统的数据使用配置屏幕。 我想要极限值和警告值。 我已经尝试过但不能正常工作并且总是向两者返回NULL: final Long recommendedBytes = DownloadManager.getRecommendedMaxBytesOverMobile( this.context ); final Long maximumBytes = DownloadManager.getMaxBytesOverMobile( this.context ); // recommendedBytes and maximumBytes are NULL 而TrafficStats类只是传输数据而不是限制。

是否可以取消/停止使用DownloadManager启动的下载?

我正在使用DownloadManager在我的应用程序中下载一堆文件。 我无法弄清楚如何取消downloadManager排队的下载。 有两种可能性:a。 用户可以通过在通知栏中单击它来手动取消它。 湾 取消并通过代码删除下载。 我定义了以下接收器。 并在接收器中 if (DownloadManager.ACTION_NOTIFICATION_CLICKED.equals(action)) { Constants.showLog(TAG, “Notification clicked”); long downloadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0); DownloadManager dm =(DownloadManager)context.getSystemService(Context.DOWNLOAD_SERVICE); dm.remove(downloadId); } 任何见解?

Android DownloadManager获取文件名

在我的应用程序中,您可以下载一些文件 我使用Android DownloadManager类进行下载。 下载完成后,它会显示一条消息,说明该文件已下载。 问题是,可能同时有2,3或4次下载。 我的BroadcastReceiver代码如下所示: receiver_complete = new BroadcastReceiver(){ @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(DownloadManager.ACTION_DOWNLOAD_COMPLETE) ){ Toast.makeText(MainActivity.this, MainActivity.this.getString(R.string.download_finished, “Here should be the name”, Toast.LENGTH_SHORT).show(); } } }; 如何获取完成下载的当前文件名? 非常感谢你。

如何从服务器下载文件并将其保存在Android的SD卡中的特定文件夹中?

我的Android应用程序中有一个要求。 我需要以编程方式下载并保存SD卡的特定文件夹中的文件。 我开发了源代码,这是 String DownloadUrl = “http://myexample.com/android/”; String fileName = “myclock_db.db”; DownloadDatabase(DownloadUrl,fileName); // and the method is public void DownloadDatabase(String DownloadUrl, String fileName) { try { File root = android.os.Environment.getExternalStorageDirectory(); File dir = new File(root.getAbsolutePath() + “/myclock/databases”); if(dir.exists() == false){ dir.mkdirs(); } URL url = new URL(“http://myexample.com/android/”); File file = new File(dir,fileName); long startTime = […]