gpt4 book ai didi

android - Picasso 与 OKHttp 不显示图像 : log error

转载 作者:行者123 更新时间:2023-11-29 01:15:35 26 4
gpt4 key购买 nike

我正在尝试从网络服务器下载和缓存带有 picasso 的图像。我在这里找到了解决方案:https://stackoverflow.com/a/30686992/6884064

   Picasso.Builder builder = new Picasso.Builder(this);
builder.downloader(new OkHttpDownloader(this,Integer.MAX_VALUE));
Picasso built = builder.build();
built.setIndicatorsEnabled(true);
built.setLoggingEnabled(true);
Picasso.setSingletonInstance(built);

Picasso.with(this)
.load("http://i.imgur.com/Q85lste.jpg")
.networkPolicy(NetworkPolicy.OFFLINE)
.into(coverImg);

构建.gradle:

compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp:okhttp:2.4.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.0'

当我运行它时,我的占位符图像消失了,但新图像没有加载。

运行日志给了我这个:

D/Picasso: Main        created      [R0] Request{http://i.imgur.com/Q85lste.jpg}
D/Picasso: Dispatcher enqueued [R0]+6ms
D/Picasso: Hunter executing [R0]+7ms
W/System.err: remove failed: ENOENT (No such file or directory) : /data/user/0/com.test.example1/cache/picasso-cache/journal.tmp
D/Picasso: Dispatcher batched [R0]+45ms for error
D/Picasso: Dispatcher delivered [R0]+246ms
D/Picasso: Main errored [R0]+246ms

有人知道这里发生了什么吗?谢谢!

编辑:

它正在使用这段代码:

   OkHttpClient okHttpClient = new OkHttpClient();
okHttpClient.networkInterceptors().add(new Interceptor() {
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
Response originalResponse = chain.proceed(chain.request());
return originalResponse.newBuilder().header("Cache-Control", "max-age=" + (60 * 60 * 24 * 365)).build();
}
});

okHttpClient.setCache(new Cache(getCacheDir(), Integer.MAX_VALUE));
OkHttpDownloader okHttpDownloader = new OkHttpDownloader(okHttpClient);
Picasso picasso = new Picasso.Builder(this).downloader(okHttpDownloader).build();
picasso.load("http://i.imgur.com/test.jpg").into(coverImg);

最佳答案

如果您在 android Studio 模拟器中尝试,请清理应用程序的缓存和数据并卸载,然后重新安装。也不要忘记所需的权限:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

也许有用。祝你好运。

关于android - Picasso 与 OKHttp 不显示图像 : log error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39923730/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com