2014-02-13 2 views
0

내 응용 프로그램에서 나는 progressDialog 이미지 다운로드 프로세스를 구현하고 싶습니다. 그리고이 후, 나는 ACENT_ATTACH_DATA 의도를 호출하고 싶습니다. 현재 내 코드는 잘 작동하지만 다운로드가 시작되면 즉시 알 수 있듯이 인 텐트를 즉시 호출합니다. 내 목표는 다운로드 후 진행 상황을 보여주는 것입니다. 당신의 도움을 주셔서 감사합니다 :)ProgressDialog DownloadManager

코드 :

Button impostacome = (Button)popupView2.findViewById(R.id.impostacome); 
      impostacome.setOnClickListener(new Button.OnClickListener(){ 
     public void onClick(View v) { 

     File folder = new File(Environment.getExternalStorageDirectory() + "/Wallpaper"); 
     boolean success = false; 
     if (!folder.exists()) { 
      success = folder.mkdirs(); 
     } 
     if (!success) { 
     } else { 
     }   
    File direct = new File("/sdcard/Wallpaper/"); 

    if (!direct.exists()) { 
     direct.mkdirs(); 
    } 

    DownloadManager mgr = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE); 

    Uri downloadUri = Uri.parse("http://www.brothersapp.com/immaginiapp/wallpaper/1"); 
    DownloadManager.Request request = new DownloadManager.Request(
      downloadUri); 

    request.setAllowedNetworkTypes(
    DownloadManager.Request.NETWORK_WIFI 
    | DownloadManager.Request.NETWORK_MOBILE) 
    .setAllowedOverRoaming(false).setTitle("brothersapp download") 
    .setDescription("The image is Downloading...") 
    .setDestinationInExternalPublicDir("/brothersapp/", "/1.jpg/"); 
    mgr.enqueue(request); 





    Intent myintent = new Intent(Intent.ACTION_ATTACH_DATA); 
    Uri sendUri = Uri.parse("file:///sdcard/brothersapp/1.jpg");  
    myintent.setDataAndType(sendUri, "image/*"); 
    startActivity(Intent.createChooser(myintent, "Set As")); 

답변

0

비동기 적으로 작동 DownloadManager. 코드가 다운로드가 완료 될 때까지 기다리지 않습니다. 파일을 다운로드 할 때 무언가를하고 싶다면 ACTION_DOWNLOAD_COMPLETE 브로드 캐스트를 청취해야합니다.

추신 : 표시 의도.

+0

감사합니다. 어떻게 다운로드 관리자가 진행률 표시 줄에서 작업하게합니까? 어쩌면 다운로드가 시작될 때 progressdialog 쇼를 만들 수 있고 다운로드가 완료되면 제거 할 수 있습니까? –

+0

왜 그렇게하고 싶습니까? DownloadManager에는 자신의 진행 막대가 있으므로 개인적으로 해당 기능을 복제하지 않습니다. –