Articles of android download manager

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 = […]

Android下载管理器完成了

关于android下载管理器的小问题。 这是我第一次使用它并成功下载了多个文件并打开了它们。 但我的问题是如何检查下载是否完成。 情况是我下载一个PDF文件并打开它,通常文件很小,它在打开之前完成。 但是如果文件有点大,我如何在打开之前检查下载管理器是否完成了下载。 我如何下载: Intent intent = getIntent(); DownloadManager downloadManager = (DownloadManager)getSystemService(DOWNLOAD_SERVICE); Uri Download_Uri = Uri.parse(intent.getStringExtra(“Document_href”)); DownloadManager.Request request = new DownloadManager.Request(Download_Uri); //Restrict the types of networks over which this download may proceed. request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE); //Set whether this download may proceed over a roaming connection. request.setAllowedOverRoaming(false); //Set the title of this download, to […]

在webview中点击URL时如何获取文件名

如何获得我们在页面上提供链接到该文件时,我们上传到服务器上的文件名? 我正在做的是,我提供的数据与webview中的文件链接,所以无论何时用户点击链接需要从服务器下载,因为我已经从服务器上下载这个文件,但问题是无法获得其确切的types和名称使用DownloadManager。 我想要这样 在上面我已经给了我的文件在test_androt链接,当我点击它会给与选项具有文件名的dailog,我不知道如何实现这个文件名时,用户点击WebView的URL链接。 编辑对不起,忘记提到我的url是这样的 misc/dnload.php?t1=MzQ0MDA=&t2=MTY5NTUz&t3=MTY5NTUzMTMwMjEyMDNfcGhhcm1hY3kga2V5IGluZm8ucG5n&t4=MTMwMjEyMDM=

如何暂停和恢复DownloadManager

我知道这个问题是重复的,我没有得到自满的答案。 我正在使用Android系统DownloadManager从networking下载文件,它与下载文件正常工作。 private DownloadManager downloadManager; Button start; Button pause; Button resume; 初始化上面的所有button downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); Uri Download_Uri = Uri .parse("uri"); DownloadManager.Request request = new DownloadManager.Request( Download_Uri); 那么它已经放下了下载队列。 什么时候轮到它开始下载 我的问题是,是否有任何简单的方法来暂停下载并恢复下载 downloadManager.pause(); downloadManager.resume(); 提前致谢。

BroadcastReceiver onReceive()被调用两次

在我的应用程序中,我正在使用DownloadManager下载PDF,一旦下载完成,它就会通过BroadcastReceiver通知应用程序。 我的问题是BroadcastReceiver的onReceive()方法被调用两次。 代码如下: 在我的列表适配器中,运行for循环来下载选定的pdf文件。 下载代码被写入另一个类如下: public static void downloadCheat(final SherlockFragmentActivity activity, final String cheatName, String pathOnServer){ Request request = new Request( Uri.parse(ApplicationConstants.CHEAT_DOWNLOAD_SERVER_URL + "/" + pathOnServer + cheatName + ".pdf")); if(Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD_MR1) { request.setShowRunningNotification(true); } else { request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); } final DownloadManager dm = (DownloadManager) activity .getSystemService(Context.DOWNLOAD_SERVICE); final long enqueue = dm.enqueue(request); BroadcastReceiver receiver = […]

下载的文件没有出现在Android的下载应用程序

我在android中构build一个应用程序,用户可以下载远程文件并将其保存到外部存储器下载目录。 它运作良好,我可以通过Es File Explorer和其他文件浏览器工具查看文件。 但是这些文件没有出现在我的Nexus 4设备的下载应用程序中。 请注意,我没有使用DownloadManager,而是创buildHttpUrlConnection到远程服务器和下载文件。 任何人都可以告诉我如何使下载的应用程序中显示下载的文件,而无需使用DownloadManager?

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

我正在使用下载pipe理器下载一些多媒体文件并对其进行分类。 我也使用Crashlytics,这是一个错误,我经常使用Android的不同设备和版本。 我正在寻找你的解决scheme/build议! 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 before […]

控制Android下载pipe理器的下载顺序

有如下用例: 有几个文件可以下载,例如ABCDEF 当下载开始时,说AB完成,C正在下载,我想中断C的​​下载并开始下载E 然后,E完成后(如果没有其他中断),继续CD F. 到目前为止,形成我的研究只有取消的方法 downloadManager.remove(downloadReference); 如何通过下载pipe理器来实现这一点,还是有其他的方法? 谢谢 private long startDownload(String url) { Uri DownloadUri = Uri.parse(url); String fileName = StorageUtils.getFileNameFromUrl(url); String destination = null; downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); DownloadManager.Request request = new DownloadManager.Request( DownloadUri); request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE); request.setAllowedOverRoaming(false); request.setTitle(fileName); request.setDescription("com.example.services"); if (StorageUtils.isSDCardPresent() && StorageUtils.isSdCardWrittenable() && StorageUtils.checkAvailableStorage()) { destination = StorageUtils.SDCARD_ROOT; } try { […]

如何从webview Android下载文件?

我下面的代码加载的网页罚款和search后,当我点击下载链接崩溃的歌曲。 关于如何让下载pipe理器使用webview,没有太多的教程。 我究竟做错了什么? import java.io.File; import android.app.Activity; import android.app.DownloadManager; import android.content.Context; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.webkit.WebView; import android.webkit.WebViewClient; public class List1 extends Activity { WebView ourBrow; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Use a custom layout file setContentView(R.layout.list1); final DownloadManager manager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE); final File destinationDir = new File […]