Android DownloadManager API - opening file after download?

后端 未结 4 1272
無奈伤痛
無奈伤痛 2021-01-30 11:07

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


        
4条回答
  •  被撕碎了的回忆
    2021-01-30 11:47

    You need to register a reciever for when the download is complete:

    registerReceiver(onComplete, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
    

    and a BroadcastReciever handler

    BroadcastReceiver onComplete=new BroadcastReceiver() {
        public void onReceive(Context ctxt, Intent intent) {
            // Do Something
        }
    };
    

    Buy instead of me ripping off everything, I suggest you'll check this out.

    EDIT:

    Just as a suggestion, I wouldn't recommend using API 9 just yet: http://developer.android.com/resources/dashboard/platform-versions.html

    There are ways around this, by creating your very own download handler, like I did, because we didn't want to alienate most of our android's user base, for that you'll need: Create AsyncTask which handles the file download.

    and i'll recommend to create a download dialog of some sort (if you say it's a big file, i'd make it appear in the notification area).

    and than you'll need to handle the opening of the file:

    protected void openFile(String fileName) {
        Intent install = new Intent(Intent.ACTION_VIEW);
        install.setDataAndType(Uri.fromFile(new File(fileName)),
                "MIME-TYPE");
        startActivity(install);
    }
    

提交回复
热议问题