壁画-如何将图像保存到本地存储

时间:2019-01-20 13:09:04

标签: android android-image fresco

我的应用程序需要从本地存储加载图像,进行一些转换,然后将转换后的图像保存回本地存储。

我正在使用Fresco从存储中加载图像。一切正常,除了我无法将图像保存回本地存储。

这是我要保存的图片:

val imagePipeline = Fresco.getImagePipeline()
val dataSource = imagePipeline.fetchEncodedImage(imageRequest, context)
dataSource.subscribe(SaveBitmapSubscriber(), DefaultExecutorSupplier(1).forLocalStorageWrite())

class SaveBitmapSubscriber: BaseDataSubscriber<CloseableReference<PooledByteBuffer>>() {
  override fun onFailureImpl(dataSource: DataSource<CloseableReference<PooledByteBuffer>>) {
    Log.d(javaClass.simpleName, "onFailureImpl")
  }

  override fun onNewResultImpl(dataSource: DataSource<CloseableReference<PooledByteBuffer>>) {
    Log.d(javaClass.simpleName, "onNewResultImpl")
  }
}
每次都会调用

onFailureImpl。我究竟做错了什么?这是正确的方法吗?有关该主题的文档很少。

1 个答案:

答案 0 :(得分:0)

onFailureImpl中,尝试calling dataSource.getFailureCause()并记录下来。 该异常应说明出了什么问题。

相关问题