Android图片转base64后传到服务器提示格式不对

Android图片转base64后传到服务器图片老是提示不是jpeg或png格式,明明是的。

问题代码如下:

复制代码
private fun convertImageToBase64(uri: Uri?) {
        try {
            Log.e("xxx",uri?.path!!)

            val contentResolver: ContentResolver = MApplication.sCurActivity.contentResolver
            val mimeType = contentResolver.getType(uri)

            if (mimeType != null) {
                Log.e("MimeType", "文件类型: " + mimeType)
            } else {
                Log.e("MimeType", "无法获取文件类型")
            }

            val bitmap = MediaStore.Images.Media.getBitmap(contentResolver, uri)
            var byteArray = FileUtil.convertBitmapToBase64(bitmap,mimeType!!);

            val encodedImage = Base64.encodeToString(byteArray, Base64.DEFAULT);
            Log.e("xxx", "ImageBase64:"+ encodedImage) // 打印或使用Base64编码的字符串


            val jsonObject = JSONObject()
            jsonObject.put("class", "File")
            jsonObject.put("function", "chooseFile")
            val argsJSONObject = JSONObject()
            argsJSONObject.put("fileBase64", "data:"+mimeType+";base64,"+encodedImage)
            jsonObject.put("args", argsJSONObject)
            CallJsService.nativeToJs(jsonObject.toString())

        } catch (e: IOException) {
            e.printStackTrace()
        }
    }

后来参考这个文章,将

复制代码
val encodedImage = Base64.encodeToString(byteArray, Base64.DEFAULT);

改成:

复制代码
val encodedImage = Base64.encodeToString(byteArray, Base64.NO_WRAP);

终于不报错误了

相关推荐
Doro再努力13 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
Daniel李华13 小时前
echarts使用案例
android·javascript·echarts
做人不要太理性14 小时前
CANN Runtime 运行时组件深度解析:任务调度机制、存储管理策略与维测体系构建逻辑
android·运维·魔珐星云
我命由我1234515 小时前
Android 广播 - 静态注册与动态注册对广播接收器实例创建的影响
android·java·开发语言·java-ee·android studio·android-studio·android runtime
朗迹 - 张伟15 小时前
Tauri2 导出 Android 详细教程
android
lpruoyu16 小时前
【Android第一行代码学习笔记】Android架构_四大组件_权限_持久化_通知_异步_服务
android·笔记·学习
独自破碎E17 小时前
【BISHI15】小红的夹吃棋
android·java·开发语言
李堇20 小时前
android滚动列表VerticalRollingTextView
android·java
lxysbly21 小时前
n64模拟器安卓版带金手指2026
android
游戏开发爱好者81 天前
日常开发与测试的 App 测试方法、查看设备状态、实时日志、应用数据
android·ios·小程序·https·uni-app·iphone·webview