首页 > 解决方案 > 如何将图像文件使用socket.io从android发送到节点服务器?

问题描述

我试图在 android 设备中捕获相机预览并将图像文件编码为 Base64 字符串。但它不起作用。( ImageFile(path, Uri) 到 Base64 编码的字符串在 Kotlin 中有问题

override fun onImageSaved(output: ImageCapture.OutputFileResults) {
                    var photoPath = photoFile.canonicalPath
                    val savedUri = Uri.fromFile(photoFile)                    
                    val msg = "Photo capture succeeded: $savedUri"
                    Toast.makeText(baseContext, msg, Toast.LENGTH_SHORT).show()
                    Log.d(TAG, msg)
                }

并打印日志

2020-09-12 18:52:52.608 14880-14880/com.soyeon.cameraxtutorial D/CameraXBasic: Photo capture succeeded: file:///storage/emulated/0/Android/media/com.soyeon.cameraxtutorial/CameraX%20Tutorial/2020-09-12-18-52-52-224.jpg

我单击了该日志并出现了对话框。

Cannot find file file:///storage/emulated/0/Android/media/com.soyeon.cameraxtutorial/CameraX%20Tutorial/2020-09-12-18-52-52-224.jpg

但是文件的所有权限都已检查。

此外,检查到达响应编码字符串中的文件类型错误。

如果将 Base64 字符串发送到服务器不是正确的解决方案,请给我一些其他解决方案来使用 socket.io 发送图像

标签: androidnode.jskotlinfile-iosocket.io

解决方案


推荐阅读