You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

升级XCode 9.3后无法通过Xamarin部署iOS应用至设备

解决XCode 9.3升级后Xamarin部署iOS设备失败(缺失DADocSetAccess框架)的方案

我之前也碰到过一模一样的糟心问题!升级XCode 9.3后,用Visual Studio 2017连Mac构建代理部署iOS应用直接炸了,就是提示找不到DADocSetAccess框架,折腾了好几种方法终于搞定,给你整理几个靠谱的解决思路:

  • 方法一:修复XCode命令行工具关联
    升级XCode后经常会出现命令行工具路径错位的情况,在Mac上打开终端,先检查当前路径:

    xcode-select -p
    

    如果返回的不是/Applications/Xcode.app/Contents/Developer,就手动修正:

    sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
    

    操作完重启Mac上的Xamarin Build Agent,再回到PC端的Visual Studio重试部署。

  • 方法二:清理Xamarin缓存与构建文件
    缓存堆积很容易导致这种框架加载异常:

    1. 在PC端Visual Studio里,先点菜单栏Build -> Clean Solution,再右键项目选Clean
    2. 到Mac上,删掉这几个目录的缓存:
      • ~/Library/Caches/Xamarin
      • ~/Library/Developer/Xamarin
      • 项目根目录下的binobj文件夹
    3. 重启两端的开发工具,重新构建部署。
  • 方法三:验证XCode组件完整性
    升级过程中可能会有组件丢失:

    1. 打开Mac上的XCode,进入Preferences -> Locations,确认Command Line Tools选的是XCode 9.3
    2. 再点XCode -> Open Developer Tool -> More Developer Tools,登录Apple开发者账号后,下载重装XCode 9.3对应的Command Line Tools组件
    3. 安装完成后重启XCode和Build Agent。
  • 方法四:匹配项目与XCode的SDK版本
    检查PC端项目的SDK设置:

    1. 右键iOS项目 -> Properties -> iOS Build
    2. SDK version里选择Latest iOS (9.3)或者指定对应版本,确保和Mac上XCode的SDK版本一致
    3. 调试阶段可以把Linker Behavior设为Don't link,先排除链接器的干扰

补充排查:如果上面的方法都没用,试试在Mac上直接用XCode打开Xamarin生成的.xcodeproj文件(一般在项目iOS目录下的obj/Debug/ios/路径里),直接部署到设备。如果XCode本身部署也失败,那大概率是XCode的问题,得彻底卸载重装XCode 9.3;如果XCode能正常部署,那就是Xamarin代理的配置问题,重启Mac上的Xamarin Agent服务,或者重新配对PC和Mac的连接。

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

火山引擎 最新活动