戮夕法尔
戮夕法尔
  • 发布:2022-08-01 11:56
  • 更新:2022-11-21 12:59
  • 阅读:1818

【报Bug】保存图片 uni.saveImageToPhotosAlbum 报 UNKOWN ERROR3

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: 正式

HBuilderX版本号: 3.1.22

手机系统: Android

手机系统版本号: Android 11

手机厂商: 小米

手机机型: Redmi K40

页面类型: vue

vue版本: vue2

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

uni.saveImageToPhotosAlbum({
filePath: filePath,
success (res) {
console.log('保存图片成功',res)
_this.tips('保存图片成功')
},
fail (fail) {
_this.alert('保存图片失败' + '\n' + JSON.stringify(fail))
},
})

操作步骤:

执行uni.saveImageToPhotosAlbum接口

预期结果:

保存成功

实际结果:

保存失败

bug描述:

执行uni.saveImageToPhotosAlbum接口报错 UNKOWN ERROR3

2022-08-01 11:56 负责人:无 分享
已邀请:
DCloud_UNI_Anne

DCloud_UNI_Anne

  • 戮夕法尔 (作者)

    使用 hello uni-app 示例代码 运行相同的代码可以保存成功, 请问这种情况是离线打包导致的吗?项目使用的离线打包很久没更新了。

    2022-08-01 17:23

  • DCloud_UNI_Anne

    回复 戮夕法尔: 更新后再试下

    2022-08-01 17:24

a***@163.com

a***@163.com

我是因为图片文件没有后缀名出现的这个错误,错误日志如下。
加上后缀后正常了(尝试了小米9不加后缀也能保存成功,可能跟Android版本有关系)

 java.lang.IllegalArgumentException: Unsupported MIME type image/*  
     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:172)  
     at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:142)  
     at android.content.ContentProviderProxy.insert(ContentProviderNative.java:557)  
     at android.content.ContentResolver.insert(ContentResolver.java:2193)  
     at android.content.ContentResolver.insert(ContentResolver.java:2155)  
     at io.dcloud.common.util.FileUtil.copyMediaFile(Unknown Source:25)  
     at io.dcloud.common.util.FileUtil.copyMediaFileToDCIM(Unknown Source:37)  
     at io.dcloud.js.gallery.GalleryFeatureImpl$b.onGranted(Unknown Source:79)  
     at io.dcloud.common.adapter.util.PermissionUtil.usePermission(Unknown Source:4)  
     at io.dcloud.js.gallery.GalleryFeatureImpl.execute(Unknown Source:39)  
     at io.dcloud.g.b.a(Unknown Source:141)  
     at io.dcloud.g.b.b(Unknown Source:3)  
     at io.dcloud.g.b.processEvent(Unknown Source:174)  
     at io.dcloud.e.c.c.dispatchEvent(Unknown Source:22)  
     at io.dcloud.common.core.ui.l.processEvent(Unknown Source:2)  
     at io.dcloud.common.adapter.ui.AdaUniWebView.exec(Unknown Source:7)  
     at io.dcloud.common.adapter.ui.AdaUniWebView$1.execute(Unknown Source:5)  
     at io.dcloud.common.adapter.util.MessageHandler$1.handleMessage(Unknown Source:3)  
     at android.os.Handler.dispatchMessage(Handler.java:106)  
     at android.os.Looper.loopOnce(Looper.java:210)  
     at android.os.Looper.loop(Looper.java:299)  
     at android.app.ActivityThread.main(ActivityThread.java:8268)  
     at java.lang.reflect.Method.invoke(Native Method)  
     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:576)  
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1073)

该问题目前已经被锁定, 无法添加新回复