【问题标题】:BitmapHunter Exception - Unrecognized type of requestBitmapHunter 异常 - 无法识别的请求类型
【发布时间】:2016-08-10 02:06:00
【问题描述】:

我正在使用带有水平滚动的回收器视图,所有代码在代码中工作正常。我正在检索我传递给毕加索的图像 url,但我无法在图像视图中显示图像。我收到以下错误。

我查看了其他答案,但没有找到解决方案。

java.lang.IllegalStateException: Unrecognized type of request: Request{"https://s3-us-west-2.amazonaws.com/test-magictiger-uploads-thumbs/ccc33adf-0e01-4899-b4b1-868932913176.png”}
at com.squareup.picasso.BitmapHunter$2.load(BitmapHunter.java:66)
at com.squareup.picasso.BitmapHunter.hunt(BitmapHunter.java:206)
at com.squareup.picasso.BitmapHunter.run(BitmapHunter.java:159)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
at com.squareup.picasso.Utils$PicassoThread.run(Utils.java:411)

我也在github上提出了一个新问题:https://github.com/square/picasso/issues/1364

private void loadImage(ImageView imageView, String url) {
        if (mContext != null && imageView == null) return;
        Picasso.Builder builder = new Picasso.Builder(UiUtil.getApp());
        builder.listener(new Picasso.Listener() {
            @Override
            public void onImageLoadFailed(Picasso p,Uri u,Exception e){
                e.printStackTrace();
            }
        });
        Picasso pic = builder.build();
        pic.load(url.trim())
                .error(R.drawable.ic_launcher)
                .placeholder(R.drawable.ic_launcher).into(imageView);
    }

任何帮助表示赞赏。 提前致谢。

【问题讨论】:

  • 这很奇怪,如果this line returns false...
  • @EpicPandaForce 完全正确...我查看了您上面提到的代码.....也无法使用 http 解决此问题。
  • 尝试在LOG中打印URL并尝试在浏览器中加载。
  • @janki 做到了,也发现了这个错误......当我在浏览器中点击 url 时,它会将图像下载到我的机器......无法理解这里的问题。
  • 这意味着问题出在 URL 上。它用于下载图像而不是加载它。尝试获取正在加载图像的 URL :)。

标签: android android-fragments android-studio picasso


【解决方案1】:

发现上述错误的问题...我正在解析 Json 并使用 get() 方法,并且正在使用 tostring() 转换值(对应于 image_url 键)必须在那里使用 getAsString() 方法。

【讨论】:

  • 谢谢,我也遇到了同样的问题
【解决方案2】:

试试这个:pic.load(new File(url)):

private void loadImage(ImageView imageView, String url) {
        if (mContext != null && imageView == null) return;
        Picasso.Builder builder = new Picasso.Builder(UiUtil.getApp());
        builder.listener(new Picasso.Listener() {
            @Override
            public void onImageLoadFailed(Picasso p,Uri u,Exception e){
                e.printStackTrace();
            }
        });
        Picasso pic = builder.build();
        pic.load(new File(url))
                .error(R.drawable.ic_launcher)
                .placeholder(R.drawable.ic_launcher).into(imageView);
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-10
    • 2018-11-11
    • 2013-02-19
    • 2021-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-16
    相关资源
    最近更新 更多