i trying download file server , store in storage code gives error - unable create directory
. please check error
task - file gets downloaded server , loaded in webview in android.
protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); webview = (webview) findviewbyid(r.id.webview); try { webview.loadurl("file://" + environment.getexternalstoragedirectory() + "/sponsors/"+ "dddd.html"); } catch (exception e) { toast.maketext(mainactivity.this, "file doesn't exist", toast.length_short).show(); } try { mydownloadlast("http://192.168.76.1:8084/mytest/dddd.html"); } catch (exception e) { toast.maketext(this, e.getmessage()+"\n"+e.getcause(), toast.length_short).show(); } } public void mydownloadlast(string myurl) { downloadmanager.request request = new downloadmanager.request(uri.parse(myurl)); request.settitle("updating timetable"); request.setdescription("please wait"); //request.setallowednetworktypes(downloadmanager.request.network_wifi); request.allowscanningbymediascanner(); request.setnotificationvisibility(downloadmanager.request.visibility_visible_notify_completed); //request.setnotificationvisibility(downloadmanager.request.visibility_hidden); string nameoffile = urlutil.guessfilename(myurl, null, mimetypemap.getfileextensionfromurl(myurl)); file myfile = new file(string.valueof(environment.getexternalstoragepublicdirectory("/sponsors/"))); if(!myfile.exists()){ myfile.mkdir(); } try { request.setdestinationinexternalpublicdir(string.valueof(myfile), nameoffile); } catch (exception e) { toast.maketext(this, e.getmessage()+"\n"+e.getcause(), toast.length_short).show(); } downloadmanager manager = (downloadmanager) getsystemservice(context.download_service); manager.enqueue(request); broadcastreceiver oncomplete = new broadcastreceiver() { public void onreceive(context ctxt, intent intent) { //toast.maketext(getactivity(), "download complete", toast.length_long).show(); toast.maketext(getapplicationcontext(), "update complete\nfor best performance\nrestart app", toast.length_short).show(); } }; registerreceiver(oncomplete, new intentfilter(downloadmanager.action_download_complete)); }
your problem can related few suspects
make sure have permissions on android manifest
<uses-permission android:name="android.permission.write_external_storage" />
also, refer external directory following :
string name = environment.getexternalstoragedirectory().getabsolutepath() + "/directorynameyouwant/" ;
Comments
Post a Comment