day20 OkGo

OkGo导依赖

implementation ‘com.lzy.net:okgo:3.0.4’

代码

public class MainActivity extends AppCompatActivity {

    ProgressBar bar;
    Button btn;
    VideoView videoView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        bar = findViewById(R.id.load_bar);
        btn = findViewById(R.id.upload);
        videoView = findViewById(R.id.video_view);
        bar.setMax(100);
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                getFile();
            }
        });

    }
    //post请求数据
    public  void dopost(){
        HashMap<String, String> map = new HashMap<>();
        map.put("phone","18233790750");
        map.put("passwd","345");
        OkGo.<String>post("https://www.apiopen.top/createUser?key=00d91e8e0cca2b76f515926a36db68f5&").params(map).execute(new StringCallback() {
            @Override
            public void onSuccess(Response<String> response) {
                Toast.makeText(MainActivity.this, ""+response.body(), Toast.LENGTH_SHORT).show();
            }
        });
    }
    //post上传文件
    private void upload() {
        File file = new File("/sdcard/Movies/刀郎 - 冲动的惩罚.mp4");
        Log.e("###",file.getParent());
        OkGo.<String>post("http://10.211.55.4/hfs_demo/").isMultipart(true).params("file",new File("/sdcard/Movies/刀郎 - 冲动的惩罚.mp4"),"yj.mp4")
                .execute(new StringCallback(){
                    @Override
                    public void onSuccess(Response<String> response) {
                        Toast.makeText(MainActivity.this, ""+response.body(), Toast.LENGTH_SHORT).show();
                    }

                    @Override
                    public void uploadProgress(Progress progress) {
                        super.uploadProgress(progress);
                        //progress.fraction 获得当前上传进度 范围0-1
                        bar.setProgress((int) (progress.fraction*100));
                    }

                    @Override
                    public void onError(Response<String> response) {
                        super.onError(response);
                        Toast.makeText(MainActivity.this, "error:"+response.body(), Toast.LENGTH_SHORT).show();
                    }
                });
    }
    //get请求json
    public  void getString(){
        OkGo.<String>get("http://www.qubaobei.com/ios/cf/dish_list.php?stage_id=1&limit=20&page=1").execute(new StringCallback() {
            @Override
            public void onSuccess(Response<String> response) {
                String body = response.body();
                Toast.makeText(MainActivity.this, ""+body, Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onError(Response<String> response) {
                super.onError(response);
            }
        });

    }
    //get请求图片
    public void getBitmap(){
        OkGo.<Bitmap>get("https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=486958716,243120904&fm=26&gp=0.jpg").execute(new BitmapCallback() {
            @Override
            public void onSuccess(Response<Bitmap> response) {
                Bitmap bitmap = response.body();
                Toast.makeText(MainActivity.this, ""+bitmap.getByteCount(), Toast.LENGTH_SHORT).show();
            }
        });
    }
    //get下载文件
    public void getFile() {
        OkGo.<File>get("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4")
                .execute(new FileCallback("/sdcard/Movies/", "anim.mp4") {
                    @Override
                    public void onSuccess(Response<File> response) {
                        File body = response.body();

                    }

                    @Override
                    public void onStart(Request<File, ? extends Request> request) {
                        super.onStart(request);
                    }

                    @Override
                    public void downloadProgress(Progress progress) {
                        super.downloadProgress(progress);
                        //progress.fraction 获得当前上传进度 范围0-1
                        bar.setProgress((int) (progress.fraction * 100));
                    }

                    @Override
                    public void onError(Response<File> response) {
                        super.onError(response);
                    }

                    @Override
                    public void onFinish() {
                        super.onFinish();
                        videoView.setVideoPath("/sdcard/Movies/anim.mp4");
                        videoView.setMediaController(new MediaController(MainActivity.this));
                        videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                            @Override
                            public void onPrepared(MediaPlayer mp) {//准备完成
                                videoView.start();
                            }
                        });
                    }
                });
    }
}

猜你喜欢

转载自blog.csdn.net/weixin_44419661/article/details/95311356