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

MAUI应用无法在iPhone真机调试:xattr相关签名错误求助

MAUI iOS真机调试签名失败:com.apple.FinderInfo属性问题

代码在iOS模拟器上运行部署正常,但真机调试时触发签名错误,涉及com.apple.FinderInfo扩展属性,试过xattr相关命令无效,且在Visual Studio 2022(17.8.3)、Visual Studio Mac 17.6.7、带C#/MAUI扩展的VS Code中部署均出现该问题。

错误信息

file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app
/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app: resource fork, Finder information, or similar detritus not allowed

完整构建日志

Executing task: dotnet build -t:Build -p:Configuration=Debug -f net8.0-ios -r ios-arm64 -p:CustomAfterMicrosoftCSharpTargets="/Users/matthewwarr/.vscode/extensions/ms-dotnettools.dotnet-maui-0.6.54-darwin-x64/dist/resources/Custom.After.Microsoft.CSharp.targets" -p:MauiVSCodeBuildOutputFile=/var/folders/4w/v3kls4555054lhd1lf7xlftm0000gn/T/dotnet-maui/maui-vsc-b8bc33ff-c9cd-4c47-8557-affa02147dcb.json /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj 

MSBuild version 17.8.3+195e7f5a3 for .NET
  Determining projects to restore...
  All projects are up-to-date for restore.
  Detected signing identity:
          
    Code Signing Key: "Apple Development: Created via API (J24PJGDN53)" (71FEE428486C6D4BE68D38D17558BB6CF14EF568)
    Provisioning Profile: "VS: com.rackemapp.mobileapp Development" (709a66c7-a114-47c6-9ee6-e155a411d422)
    Bundle Id: com.rackemapp.mobileapp
    App Id: VV625DUX6E.com.rackemapp.mobileapp
  RackEmAppMobile -> /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.dll
  Optimizing assemblies for size may change the behavior of the app. Be sure to test after publishing. See: https://aka.ms/dotnet-illink
  Tool /usr/bin/codesign execution finished (exit code = 1).
          
  file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app
  
  /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app: resource fork, Finder information, or similar detritus not allowed
  
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/17.0.8490/tools/msbuild/iOS/Xamarin.Shared.targets(2256,3): error : /usr/bin/codesign exited with code 1: [/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj::TargetFramework=net8.0-ios]
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/17.0.8490/tools/msbuild/iOS/Xamarin.Shared.targets(2256,3): error : /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app: resource fork, Finder information, or similar detritus not allowed [/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj::TargetFramework=net8.0-ios]
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/17.0.8490/tools/msbuild/iOS/Xamarin.Shared.targets(2256,3): error : Failed to codesign '/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app': /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app: resource fork, Finder information, or similar detritus not allowed [/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj::TargetFramework=net8.0-ios]
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/17.0.8490/tools/msbuild/iOS/Xamarin.Shared.targets(2256,3): error :  [/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj::TargetFramework=net8.0-ios]
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/17.0.8490/tools/msbuild/iOS/Xamarin.Shared.targets(2256,3): error :          [/Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/RackEmAppMobile.csproj::TargetFramework=net8.0-ios]

Build FAILED.

解决办法

1. 递归清理构建输出目录的扩展属性

执行命令彻底删除bin目录下所有文件的扩展属性:

xattr -rc /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin

如果需要保留部分属性,可仅删除com.apple.FinderInfo:

xattr -d com.apple.FinderInfo /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/bin/Debug/net8.0-ios/ios-arm64/RackEmAppMobile.app

2. 清理obj目录后重新构建

删除临时构建目录,再重新恢复依赖并构建:

rm -rf /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/obj
dotnet restore
dotnet build -t:Build -p:Configuration=Debug -f net8.0-ios -r ios-arm64

3. 检查并清理项目资源文件的属性

项目中从Finder复制的资源文件(如图片、配置文件)可能携带com.apple.FinderInfo,递归清理Resources目录:

xattr -rc /Users/matthewwarr/Documents/GitHub/RackEmApp_Mobile/RackEmAppMobile/Resources

4. 配置MSBuild自动清理属性

在项目的.csproj文件中添加以下目标,让构建过程在签名前自动清理扩展属性:

<Target Name="RemoveExtendedAttributes" BeforeTargets="_Codesign">
  <Exec Command="xattr -rc &quot;$(OutputPath)$(AssemblyName).app&quot;" />
</Target>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 00:00:38