下载文件实现

来源:互联网 发布:大学生分期购物软件 编辑:程序博客网 时间:2024/06/03 12:47
//点击下载按钮
downapp1.setOnClickListener(new OnClickListener() {


              @Override
              public void onClick(View arg0) {
                 downapp();
                 
             }
         });
private void downapp() {
         HttpUtils http = new HttpUtils();
          HttpHandler handler = http
                 .download(
                           "下载地址" ,
                           "存放地址" , true, // 如果目标文件存在,接着未完成的部分继续下载。服务器不支持RANGE时将从新下载。
                           true, // 如果从请求返回信息中获取到文件名,下载完成后自动重命名。
                           new RequestCallBack<File>() {


                                @Override
                                public void onStart() {
                                   //进度条的实现
                                    pb.setVisibility(View. VISIBLE);
                                    downapp1.setVisibility(View. GONE);
                               }


                                @Override
                                public void onLoading(long total, long current,
                                        boolean isUploading) {
                                   //进度条的实现
                                    int pro = (int)(((double )current/(double)total)*100);
                                   Log. e("123", "当前现在进度:" + current+"/" + total+ "---"+pro);
                                    pb.setProgress(pro);
                               }
                                @Override
                                public void onFailure(HttpException arg0,
                                       String arg1) {
                                    downapp1.setVisibility(View. VISIBLE);
                                    pb.setVisibility(View. GONE);
                                    pb.setProgress(0);
                               }


                                @Override
                                public void onSuccess(ResponseInfo<File> arg0) {
                                    // TODO Auto-generated method stub
                                    pb.setVisibility(View. GONE);
                                    downapp1.setVisibility(View. VISIBLE);
                                    downapp1.setImageResource(R.drawable. open);
                                    downapp1.setOnClickListener( new OnClickListener() {
                                     File file = new File("/sdcard/Fate_It_1455_1000_10100041_1. 3.011.apk");


                                        @Override
                                        public void onClick(View arg0) {
                                           //点击跳出安装提示
                                             openFile( file);
                                       }
                                   });
                               }
                          });
    }
//安装提示
private void openFile(File file) {
        // TODO Auto-generated method stub
        Intent intent = new Intent();
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK );
        intent.setAction(android.content.Intent.ACTION_VIEW);
        intent.setDataAndType(Uri. fromFile(file),
                        "application/vnd.android.package-archive" );
        startActivity(intent);
    }
0 0
原创粉丝点击