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

Mac上调试.NET 8 iOS应用及扩展的方法与部署问题问询

关于.NET 8+ iOS应用及扩展的调试问题

1. Mac上调试.NET 8+ iOS应用的现代方式是什么?

VS for Mac将于2024年5月退役,且官方目前不支持.NET 8;Mac版VS Code暂无微软官方iOS调试器,CodeLLDB扩展不支持iOS调试,原生.NET调试器也无法适配,微软相关立场不明确,因此寻求可行的调试方案。

2. 如何在Mac或Windows上调试.NET iOS扩展?

用户无法在任何平台(包括Windows版VS)调试或部署iOS扩展,现有方案包含两个.NET 8项目:

  • iOS宿主应用:使用ios workload(或maui workload,效果一致),项目配置片段如下:
    <Project Sdk="Microsoft.NET.Sdk">
     <PropertyGroup>
     <TargetFramework>net8.0-ios</TargetFramework> 
    
  • iOS扩展项目:配置片段如下:
    <IsAppExtension>True</IsAppExtension>
    <IsWatchExtension>False</IsWatchExtension>
    <PlatformTarget>ARM64</PlatformTarget> 
    <MtouchDevice>iPhone</MtouchDevice> 
    
  • 宿主应用中对扩展项目的引用配置:
    <ProjectReference Include="..\ext\ext.csproj">
     <IsAppExtension>true</IsAppExtension>
     <IsWatchApp>false</IsWatchApp>
    </ProjectReference> 
    

用户已解决编译问题:Windows上使用VS MSBuild时需为扩展项目独立设置PlatformTarget,Mac上执行dotnet build可正常编译部署,但仍遇到以下部署错误:

  • 扩展项目提示:Please select a valid device before running the application;宿主项目提示:Xamarin.iOS does not support deploying the previous version. Please ensure your solution builds before deploying it.(单独编译宿主应用无异常)
  • 部署结果:2个项目编译成功,0失败;0个部署成功,2失败

此外还存在以下问题:

  • 设置<MtouchDevice>iPhone</MtouchDevice>后出现签名错误,即使显式配置也无法解决
  • 使用新.NET风格项目文件时,配置管理器仅提供“Any CPU”选项,无法选择具体CPU/平台,导致无法调试扩展及宿主应用

尝试使用即将退役的VS for Mac调试扩展,但选择扩展项目为目标时,UI无选择目标设备的选项,无法完成调试。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 22:31:05