添加权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
第二步在Activity中添加如下代码
在你点击时间里面写一个
new ServerThREAD().start();
写一个Handler进行判断是否下载成功
Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { switch (msg.what) { case 0: ToastUtils.show(MainActivity.this,"下载失败"); break; case 1: ToastUtils.show(MainActivity.this,"下载成功"); break; } } };
然后写一个内部类
class ServerThREAD extends Thread{ private FileOutputStream fos; @Override public void run() { String path=et.getText().toString().trim();//获取下载路劲 try { byte[] da= FileService.getFile(path); //指定文件保存在手机的路劲和文件名 //File.separator相当于\ String fileName= Environment.getExternalStorageDirectory().getPath()+ File.separator+System.currentTimeMillis()+path.substring(path.lastIndexOf(".")); File file=new File(fileName); if(!file.exists()){ file.createNewFile(); } fos = new FileOutputStream(file); fos.write(da,0,da.length); handler.sendEmptyMessage(1); } catch (Exception e) { e.printStackTrace(); handler.sendEmptyMessage(0); } finally { if(fos!=null){ try { fos.close(); } catch (IOException e) { e.printStackTrace(); } } } } }