我已经使用毕加索很长一段时间了,但我不得不将OkHttp库升级到2.0.0,因此,我不得不将毕加索升级到2.3.2版本。
然而,现在毕加索根本不加载任何图像,图像视图是空的。任何时候都不会出现错误,但当我打开Picasso登录时,"Hunter“似乎被调度并开始执行,但永远不会结束。
所有的图像都是可访问的,而且都很小(大约200px乘100px)。
我通过毕加索的“典型”方法加载图像:
Picasso.with(context).load(url).error(R.drawable.errorimg).into(imageView);
但是,errorimg
永远不会显示。
我能做错什么呢?
编辑:
下面是毕加索无法工作的一个地方的代码(PlaceListAdapter.java - getView函数)
public View getView(int position, View convertView, ViewGroup parent)
{
final PBNPlace ev = values.get(position);
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.places_list_item, parent, false);
TextView titleView = (TextView)rowView.findViewById(R.id.place_title);
ImageView placeImage = (ImageView)rowView.findViewById(R.id.place_image);
Picasso picasso = Picasso.with(context);
picasso.load(ev.imageURL).error(R.drawable.chat).into(placeImage);
titleView.setText(ev.name);
return rowView;
}
发布于 2014-07-13 20:41:58
当你升级OKHttp的时候,你是否也升级了okhttp-urlconnection依赖?
我遇到了这个问题,结果发现我仍然在我的build.gradle文件中调用okhttp-urlconnection的1.6.0版本。没有错误消息让我很明显地看到我忽略了这一点。
将其更改为2.0.0解决了问题。
发布于 2016-02-29 12:09:38
毕加索没有内置超文本传输协议客户端,所以说“支持超文本传输协议”意义不大。
当你传入一个url时(不管它的模式是http://还是https://),我们都会把它传递给最合适的超文本传输协议客户端。
也许那就是java.net.HttpURLConnection。也许是因为那个漂亮的字节码OkHttp包。底线是,无论方案是什么,我们只是让HTTP客户端来处理它。
您在使用http:// vs https://时遇到的任何问题都存在于客户端的配置中,而不是毕加索。
由JakeWharton所说
因此,要加载图像,您只需在gradle文件中添加以下依赖项。
compile 'com.squareup.okhttp:okhttp:2.2.+'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.+'
compile 'com.squareup.picasso:picasso:2.5.2'
发布于 2016-11-01 06:44:56
<uses-permission android:name="android.permission.INTERNET"/>
这可能是最愚蠢的答案,但很抱歉。有时候,我们会忘记一些小事情。你检查过你的权限了吗。
https://stackoverflow.com/questions/24641063
复制