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

iOS 17中开发者如何访问自有应用的Application Support目录?

如何在iOS 17设备上访问自有应用的Application Support目录内容?

问题背景

在iOS 16及更早版本中,可通过以下步骤访问应用的Application Support目录:

  • 打开Xcode的「Devices and Simulators」窗口,选择已连接设备和目标应用,下载容器
  • 在Finder中右键容器选择「显示包内容」,进入AppData > Library > Application Support路径查看内容

但该方法在iOS 17.1设备搭配Xcode 15.0.1时失效:下载的容器内Library文件夹仅包含Caches、Saved Application State、WebKit子文件夹,无Application Support目录,而应用已通过SearchPathDirectory.applicationSupportDirectory成功写入该路径且无异常。

问题解答

  1. Application Support目录并未迁移,故障源于Xcode 15的容器下载功能:受iOS 17的沙盒权限机制更新影响,下载的容器未包含Application Support目录,并非该目录位置变更。

  2. 可行的外部访问方法:

  • 方法一:通过Xcode调试实时查看
    • 打开Xcode「Devices and Simulators」窗口(快捷键Shift+Command+2),下载目标应用的容器
    • 保持Xcode与设备连接,切换到「Debug Navigator」,选择「Storage」选项,即可直接浏览应用沙盒内的Library/Application Support目录及文件
  • 方法二:应用内临时导出
    • 在应用中添加文件导出逻辑,利用系统文档选择器将Application Support目录下的文件导出到外部(如「文件」App),示例代码:
      guard let appSupportURL = FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask).first else { return }
      let picker = UIDocumentPickerViewController(forExporting: [appSupportURL], asCopy: true)
      picker.delegate = self
      present(picker, animated: true)
      
  • 方法三:通过加密备份提取
    • 用Finder(macOS Catalina+)或iTunes连接设备,创建加密本地备份(未加密备份不会包含应用沙盒数据)
    • 使用备份管理工具打开备份,定位到目标应用,即可访问Library/Application Support目录

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 03:26:04