OKGO
一. get請求
二.post請求
三.json下載解析
四.上傳文件
五.請求圖片圓角,圓形
一. get請求
public void downLoadFIleMP4(String yyy){
OkGo.<File>get(yyy).execute(new FileCallback(Environment.getExternalStorageDirectory().getPath(),"嚶嚶嚶.mp4") {
@Override
public void onSuccess(Response<File> response) {
}
@Override
public void downloadProgress(Progress progress) {
super.downloadProgress(progress);
// bar.setProgress((int)(progress.fraction*100));
Log.d(TAG, "當前進度 "+(int)(progress.fraction*100)+"");
}
});
}
二.post請求
public void upLoade(){
OkGo.<String>post("http://10.1.9.179:8080/test/").isMultipart(true).params("file",new File("mnt/sdcard/aaa.mp3"),"上傳的.mp3")
.execute(new StringCallback() {
@Override
public void onSuccess(Response<String> response) {
Log.d(TAG, "onSuccess: "+response.body());
}
@Override
public void uploadProgress(Progress progress) {
super.uploadProgress(progress);
}
});
}
三.json下載解析
public<T> void FromJson(String url, final Class c, final ReturnInterface returnInterface){
OkGo.<String>get(url).execute(new StringCallback() {
@Override
public void onSuccess(Response<String> response) {
String json = response.body();
Gson gson = new Gson();
Object o = gson.fromJson(json, c);
returnInterface.success((T)o);
}
});
}`在這裏插入代碼片`
public void diaoyongUtils(){
OKGOUtils.getInstance().FromJson("https://news-at.zhihu.com/api/4/news/latest", JsonBean.class, new ReturnInterface() {
@Override
public void success(Object o) {
}
});
}
public void download(View view) {
new Thread(){
@Override
public void run() {
super.run();
OKGOUtils.getInstance().downLoadFIleMP4("http://uvideo.spriteapp.cn/video/2019/0512/56488d0a-7465-11e9-b91b-1866daeb0df1_wpd.mp4");
}
}.start();
}
四.上傳文件
private void upload() {
OkGo.<String>post("http://172.21.79.88/hfs/").isMultipart(true).params("file",new File("/sdcard/來自天堂的魔鬼.mp3"),"ass.mp3")
.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));
}
});
}
5.請求圖片
package com.example.app2;
import android.content.Context;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.RoundedCorners;
import com.bumptech.glide.request.RequestOptions;
public class InageLoaderUtils {
/**
* 一個普通的弟弟型下載
* @param context
* @param url
* @param imageView
*/
public void IoadImage(Context context, String url, ImageView imageView){
RequestOptions requestOptions = new RequestOptions();
// requestOptions.error(R.mipmap.ic_launcher);
// requestOptions.placeholder(R.mipmap.aa);
requestOptions.circleCrop();//圓形
RoundedCorners roundedCorners1 = new RoundedCorners(45);
requestOptions.transform(roundedCorners1);//圓角
Glide.with(context).load(url).apply(requestOptions).into(imageView);
}
}
package com.example.app2;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
public class MainActivity extends AppCompatActivity {
private ImageView img;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
img = (ImageView) findViewById(R.id.img);
}
public void click(View view) {
new InageLoaderUtils().IoadImage(MainActivity.this,"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1565093749784&di=e4a7627c0a8844095fcd4733e3c897fb&imgtype=0&src=http%3A%2F%2Fb-ssl.duitang.com%2Fuploads%2Fitem%2F201708%2F06%2F20170806153514_xjCQt.jpeg",img);
}
}