/**
* 设置超时时间
*/
OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.setConnectTimeout(5, TimeUnit.SECONDS);
okHttpClient.setReadTimeout(5, TimeUnit.SECONDS);
okHttpClient.setWriteTimeout(3, TimeUnit.SECONDS);
/**
* 加载https的网址
*/
String url = "http://image.baidu.com/search/detail?ct=503316480&z=undefined&tn=baiduimagedetail&ipn=d&word=picasso%20%E5%8A%A0%E8%BD%BD%E5%9C%86%E8%A7%92%E5%9B%BE%E7%89%87&step_word=&ie=utf-8&in=&cl=2&lm=-1&st=undefined&cs=4093164773,4097609339&os=4229561888,4160323874&simid=4283291995,603976539&pn=1&rn=1&di=176372600921&ln=1978&fr=&fmq=1457590308998_R&fm=&ic=undefined&s=undefined&se=&sme=&tab=0&width=&height=&face=undefined&is=&istype=0&ist=&jit=&bdtype=15&gsm=0&objurl=http%3A%2F%2Fcdn.scratch.mit.edu%2Fstatic%2Fsite%2Fprojects%2Fthumbnails%2F294%2F0341.png";
Picasso picasso = new Picasso.Builder(this)
.downloader(new OkHttpDownloader(okHttpClient))
.build();
/**
* 设置加载错误时的默认图片
*/
picasso.with(this).load(url).config(Bitmap.Config.ARGB_8888).placeholder(R.mipmap.head1).error(R.mipmap.ic_launcher).into(img,
new com.squareup.picasso.Callback() {
@Override
public void onSuccess() {
Toast.makeText(getApplicationContext(), "onSuccess", Toast.LENGTH_SHORT).show();
}
@Override
public void onError() {
Toast.makeText(getApplicationContext(), "onError", Toast.LENGTH_SHORT).show();
}
});
可以看到这里提供了监听下载成功和失败的,但是没有监听下载进度的。
作者已经做出了解释了。
onProgress callback? #307
(1)https://github.com/square/picasso/issues/307
(2)https://github.com/square/picasso/issues/339
(3)https://github.com/square/picasso/issues/307