You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS下ImageCaptureCore无法识别扫描仪的技术求助

解决macOS应用通过ImageCaptureCore检测不到USB扫描仪的问题
  • 完善USB权限的精准配置
    仅添加com.apple.security.device.usb权限键不够,必须在.entitlements文件中为该权限指定允许的设备标识符。打开.entitlements,补充扫描仪的USB厂商ID(VID)和产品ID(PID):

    <key>com.apple.security.device.usb</key>
    <dict>
        <key>allowedIdentifiers</key>
        <array>
            <string>vid-XXXX,pid-XXXX</string> <!-- 替换为你的扫描仪VID/PID -->
            <string>vid-YYYY,pid-YYYY</string> <!-- 第二款扫描仪的VID/PID -->
        </array>
    </dict>
    

    可通过「关于本机→系统报告→USB」路径获取扫描仪的VID和PID值。

  • 补充ImageCapture权限描述
    在Info.plist中添加NSImageCaptureUsageDescription键,明确说明应用访问图像捕获设备的用途:

    <key>NSImageCaptureUsageDescription</key>
    <string>需要访问扫描仪以完成文档扫描操作</string>
    

    该描述是系统授予扫描仪访问权限的必要条件,缺失会导致系统静默拒绝设备访问请求。

  • 检查Hardened Runtime配置
    在Xcode项目的「Signing & Capabilities→Hardened Runtime」面板中,确认已勾选Allow Access to USB Devices选项,确保权限配置生效。

  • 官方示例参考
    Apple官方提供的ImageCaptureSample示例项目完整展示了ImageCaptureCore的设备检测、权限配置及扫描流程实现,可在Xcode的示例项目库中搜索获取,直接参考其权限配置和设备扫描逻辑。

内容的提问来源于stack exchange,提问作者fbix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 07:02:07