KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am facing problem of opening downloaded file after successfull download via DownloadManager API. In my code: Uri uri=Uri.parse("http://www.nasa.gov/images/content/206402main_jsc2007e113280_hires.jpg"); Environment .getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS) .mkdirs(); lastDownload = mgr.enqueue(new DownloadManager.Request(uri) .setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE) .setAllowedOverRoaming(false) .setTitle("app update") .setDescription("New version 1.1") .setShowRunningNotification(true) .setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "a.apk")); Cursor c=mgr.query(new DownloadManager.Query().setFilterById(lastDownload)); if(c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS)) == 8) { try { mgr.openDownloadedFile(c.getLong(c.getColumnIndex(DownloadManager.COLUMN_ID))); } catch (NumberFormatException e) { // TODO Auto-generated catch block e.printStackTrace(); Log.d("MGR", "Error"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); Log.d("MGR", "Error"); } } Problem is when is if(c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS))==8) evoked. I got status -1 and an exception. Is there any better way, how to open downloaded files with DownloadManager API ? In my example I am downloading a big image, in a real situation I would be downloading an APK file and I need to display an installation dialog immediately after udpate. Edit: I figured out that status=8 is after successfull download. You might have different "checking successfull download" approach Thanks
Tags (comma-separated)
Save Edits
Cancel