Android 原生开发中的 Picasso 失败
Picasso failure in Android Native Developing
我在 Android Studio 中有一个使用 Java 编码的 android 应用程序。
我将 Restful Api 发布到网络服务器。
每当我打开我的 android 应用程序时,上传到服务器的图片无法通过 Picasso 下载到应用程序。
此外,我无法访问 App_Data 文件夹下的这些图片。有什么解决办法吗?
我想分享这个答案以防有人需要。
我在App_Data文件夹下的图片访问出现问题是因为缺少虚拟目录匹配。
首先,我在 App_Data 下创建了一个指向我的图片文件夹的虚拟目录。
其次我测试了我是否可以使用 chrome 浏览器访问这些图片。如果我使用新创建的虚拟目录键入正确的路径,我可以通过网络浏览器访问。
但关键问题是我无法从我的应用程序再次访问这些文件。
我通过深挖和分析找到了原因。
实际问题是:
当我试图通过我的 android 应用程序访问这些文件时,毕加索在其缓存中分配了一些映射。在我的 android 应用程序文件夹下。
由于这个缓存,无论我修复了虚拟目录问题 Picasso 都无法访问它们。 Picasso 只检查它的缓存,如果该文件出现 404 错误,它不会再尝试一次。
所以在我完全从设备上卸载并重新安装了它。之后一切正常!
编辑:清除毕加索缓存也有效。但它必须在类似条件下使用,否则清除 picasso 缓存会影响加载时间和互联网使用。
我在 Android Studio 中有一个使用 Java 编码的 android 应用程序。 我将 Restful Api 发布到网络服务器。 每当我打开我的 android 应用程序时,上传到服务器的图片无法通过 Picasso 下载到应用程序。 此外,我无法访问 App_Data 文件夹下的这些图片。有什么解决办法吗?
我想分享这个答案以防有人需要。
我在App_Data文件夹下的图片访问出现问题是因为缺少虚拟目录匹配。 首先,我在 App_Data 下创建了一个指向我的图片文件夹的虚拟目录。 其次我测试了我是否可以使用 chrome 浏览器访问这些图片。如果我使用新创建的虚拟目录键入正确的路径,我可以通过网络浏览器访问。
但关键问题是我无法从我的应用程序再次访问这些文件。 我通过深挖和分析找到了原因。
实际问题是: 当我试图通过我的 android 应用程序访问这些文件时,毕加索在其缓存中分配了一些映射。在我的 android 应用程序文件夹下。 由于这个缓存,无论我修复了虚拟目录问题 Picasso 都无法访问它们。 Picasso 只检查它的缓存,如果该文件出现 404 错误,它不会再尝试一次。 所以在我完全从设备上卸载并重新安装了它。之后一切正常!
编辑:清除毕加索缓存也有效。但它必须在类似条件下使用,否则清除 picasso 缓存会影响加载时间和互联网使用。