D/skia: --- 无法创建带有消息“未实现”的图像解码器
Posted
技术标签:
【中文标题】D/skia: --- 无法创建带有消息“未实现”的图像解码器【英文标题】:D/skia: --- Failed to create image decoder with message 'unimplemented' 【发布时间】:2020-05-21 00:38:15 【问题描述】:我在我的项目中使用https://github.com/jhansireddy/androidScannerDemo这个扫描库。
当我捕获图像时,我在控制台中收到D/skia: --- Failed to create image decoder with message 'unimplemented'
,并且捕获的图像未设置为 Android P 中的 imageview。
当我在 Android Q 中测试相同的应用程序时,我也遇到了错误。
2020-02-05 11:32:23.668 9270-9270/? E/ReviewScreenImpl: onClickOKButton() - Fail to decode captured picture
有人可以帮忙解决上述问题吗?
【问题讨论】:
你是否在他们的 github 上为此创建了问题? 是的,我在 github 上创建了问题,但之前我也在那里创建了 2,3 个问题,但没有得到任何回应。 只是确保,在 github 上提出问题通常是个好主意 有什么解决办法吗? 使用新的活动结果 API 获取相机结果时出现此错误 【参考方案1】:我也有同样的问题,getResources 中似乎有一个错误,不在您使用的库中,因为我不使用它。但是,您可以改用 ResourcesCompat,如下所示:
val myLogo = (ResourcesCompat.getDrawable(this.resources, R.drawable.ic_home_black_24dp, null) as VectorDrawable).toBitmap()
或
val myLogo = (ResourcesCompat.getDrawable(this.resources, R.drawable.ic_home_black_24dp, null) as BitmapDrawable).bitmap
取决于您的可绘制类型(矢量或图像)。
请注意,这只会在 API > 22 上运行。
【讨论】:
【参考方案2】:请将图像字节字符串而不是简单的字符串传递到您的解码器 BitmapFactory.decodeStream 方法中。
【讨论】:
【参考方案3】:确保您已生成图像 Uri,您将使用 Intent 使用 FileProvider 将其发送到相机应用程序。
相机应用将在返回Activity.RESULT_OK之前保存图片的图像uri应该像这样使用FileProvider生成
FileProvider.getUriForFile(
context,
context.getString(R.string.file_sharing_authority),
File(filePath)
有关如何将我们的文件共享给其他应用程序(如相机应用程序)进行读取或写入的更多信息,请参阅https://developer.android.com/reference/androidx/core/content/FileProvider
【讨论】:
以上是关于D/skia: --- 无法创建带有消息“未实现”的图像解码器的主要内容,如果未能解决你的问题,请参考以下文章
是否有 Android Skia logcat 输出的文档? [关闭]
OpenCV 在带有 anaconda 的 Linux 上无法与 python 一起正常工作。收到未实现 cv2.imshow() 的错误
无法使用 Gtalk 应用程序的 asmack api 获取离线消息
由于 EndpointDispatcher 的 ContractFilter 不匹配,接收方无法处理带有 Action '' 的消息。