d***@qianjia.email
d***@qianjia.email
  • 发布:2025-05-12 16:59
  • 更新:2025-05-13 13:51
  • 阅读:1617

【不是Bug,文档没更新】uni.chooseMedia 在 iOS 下捕获异常 [已解决]

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 4.64

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 苹果

手机机型: iPhone XR

页面类型: vue

vue版本: vue2

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

uni.chooseMedia({  
                count: 1,  
                mediaType: ['image'],  
                sizeType: ['original', 'compressed'],  
                sourceType: ['camera'],  
                camera: 'front',  
                success: async (res) => {  
                                }  
})  

操作步骤:

调用 uni.chooseMedia 无任何反应, 所以把它 包在 try catch 里, 捕获了异常
undefined is not an object (evaluating 'yu().invokeSync')

预期结果:

调用前摄像头

实际结果:

报错了

bug描述:

uni.chooseMedia 在 iOS 下捕获异常 undefined is not an object (evaluating 'yu().invokeSync'),同样代码在 Android 下没有问题

2025-05-12 16:59 负责人:无 分享
已邀请:
d***@qianjia.email

d***@qianjia.email (作者)

已找到问题,

因为 chooseMedia 是 UTS 插件

https://nativesupport.dcloud.net.cn/AppDocs/usesdk/ios.html#添加uts依赖

并且 依赖 DCloudUTSExtAPI.framework

这些在文档里没有说明,全靠猜出来的。 管用了

  • Your_Exios

    咋搞的,我现在都没打包,运行到基座就要报这个错

    2025-05-20 15:12

  • 9***@qq.com

    老哥,我也加了 DCloudUTSExtAPI.framework(在target - general - Frameworks,Libraries, and Embedded Content , 设置为embed && signed),但是还是提示错误,这是我加的不对吗?

    2025-11-17 14:19

  • d***@qianjia.email (作者)

    回复 9***@qq.com: 提示什么错啊, 你添加UTS依赖了吗?有添加 DCloudUTSFoundation 吗?这个有点坑需要转换成 xcframework 即 DCloudUTSFoundation. xcframework

    2025-12-01 17:52

DCloud_UNI_JBB

DCloud_UNI_JBB

您好,麻烦发个可复现demo,以便更好的排查问题

态度是心的面具

态度是心的面具 - 欢迎询问ios相关问题

你好,请问有IOS企业证书吗

  • d***@qianjia.email (作者)

    没有企业证书,下面有复现 demo debug.zip

    2025-05-13 11:26

d***@qianjia.email

d***@qianjia.email (作者)

这个是测试项目, 我刚用 4.64 的离线打包SDK 中的 HBuilder-ExampleDemo 仅替换了发布的内容测试了

dbug.zip 是复现 demo

要回复问题请先登录注册