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

.NET MAUI iOS发布失败:ASN1数据损坏问题求助

解决.NET MAUI iOS发布时的ASN1 corrupted data签名错误

问题概述

在Mac上使用Visual Studio 2022 for Mac 17.6发布.NET MAUI iOS应用时,触发签名流程相关错误:

/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.4.7067/tools/msbuild/iOS/Xamarin.Shared.targets(1714,3): error : ASN1 corrupted data

已尝试以下操作但问题未解决:

  • 删除项目bin/obj目录后重新构建
  • 通过命令行手动设置签名属性
  • 清空钥匙串所有证书,重新导入新的开发/发布证书及配置文件
  • 新建.NET MAUI项目仍出现该问题,且项目的Bundle签名选项卡为空

补充信息:应用可正常在调试模式运行,Android发布无异常,当前已安装最新版Xcode。

可能的解决方案

1. 确认Xcode命令行工具关联

打开Xcode,进入Xcode > 设置 > 位置,确保命令行工具已选中当前安装的最新Xcode版本。完成后重启Visual Studio for Mac,再尝试发布。

2. 修复证书钥匙串权限

ASN1错误常和证书权限异常相关:

  • 打开钥匙串访问,找到导入的iOS开发/发布证书
  • 右键证书选择显示简介,切换到访问控制标签
  • 选择允许所有应用程序访问此项目,保存设置后重启电脑,再尝试签名发布

3. 降级Microsoft.iOS.Sdk版本

当前使用的16.4.7067版本可能存在兼容性问题,可在项目.csproj文件中指定较低版本SDK:

<PropertyGroup>
  <TargetFrameworks>net7.0-ios;net7.0-android</TargetFrameworks>
  <!-- 示例指定16.2.2029版本,可根据需求调整 -->
  <MicrosoftiOSSdkVersion>16.2.2029</MicrosoftiOSSdkVersion>
</PropertyGroup>

保存后清理项目,重新构建发布。

4. 重置VS for Mac的iOS缓存

删除以下目录的缓存文件,重启Visual Studio for Mac:

  • ~/Library/Caches/Xamarin
  • ~/Library/Caches/VisualStudio/17.0(对应VS2022 for Mac 17.x版本)
  • ~/Library/Developer/Xamarin

5. 验证配置文件与证书匹配性

登录Apple Developer官网,重新下载对应App ID的配置文件,确保配置文件绑定的证书UUID与钥匙串中安装的证书UUID完全一致。下载后双击导入,回到VS中重新选择该配置文件。

内容的提问来源于stack exchange,提问作者TaiT's

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 21:22:08