xcode - Xamarin.IOS 手表扩展商店上传错误 ITMS-90733
问题描述
我有一个 Visual Studio 解决方案,包括一个 .NET Standard 2.0 库、一个 Xamarin.iOS 项目、一个手表操作系统扩展项目和一个手表应用程序项目。iOS 项目以 12.1 为目标,两个 watch 项目都以 5.1 为目标。
直到大约一周前一切正常,但现在我无法再使用 Application Loader 将 IPA 包上传到 Testflight:
ERROR ITMS-90733: "Missing architecture. Apps built with Watch OS 5.0 and later SDKs must contain additional architectures."
请注意,我没有更改任何代码,所有项目都与上周完全相同。
到目前为止我尝试了什么:
- 将 VS2017(在 Windows 上)更新到版本 15.9.11
- 安装了 VS2019 v16.0.3(在 Windows 上),并将 OS X 更新到版本 10.14.4,将 XCode 更新到 v10.2
- 按照https://github.com/xamarin/xamarin-macios/issues/5951中的建议,在 Mac 上安装了 Xamarin.ios 12.6.0.59 - 但是,这导致了错误
The Xamarin.iOS version 12.6.0.59 that is installed on the Mac is not compatible with this version of Visual Studio. Would you like us to install Xamarin.iOS 12.8 for you?
- 按照https://devblogs.microsoft.com/xamarin/apple-new-processor-architecture/中的建议安装了新的 Xamarin.iOS 安装程序
- 添加
ARMv7k, ARM64_32
到手表应用程序和/或手表扩展项目的构建架构中(尝试了所有组合) - 但是这导致构建失败并出现错误(请注意,除了在 VS 中使用可视项目属性编辑器Could not parse TargetArchitectures 'ARMv7k, ARM64_32'
之外,我无法选择其他平台ARMv7k
视窗)
watch 扩展项目的发布配置是这样的:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhone\Release\</OutputPath>
<DefineConstants>
</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodesignKey>iPhone Distribution</CodesignKey>
<MtouchUseLlvm>true</MtouchUseLlvm>
<MtouchUseSGen>true</MtouchUseSGen>
<MtouchUseRefCounting>true</MtouchUseRefCounting>
<MtouchFloat32>true</MtouchFloat32>
<MtouchEnableBitcode>true</MtouchEnableBitcode>
<CodesignEntitlements>
</CodesignEntitlements>
<MtouchLink>SdkOnly</MtouchLink>
<MtouchArch>ARMv7k</MtouchArch>
<MtouchTlsProvider>Default</MtouchTlsProvider>
<CodesignProvision>Test flight</CodesignProvision>
<CodesignExtraArgs />
<CodesignResourceRules />
</PropertyGroup>
我刚刚花了 48 小时尝试所有这些组合,但无法让它发挥作用。还有什么想法吗?
解决方案
无法解析 TargetArchitectures 'ARMv7k, ARM64_32'
听起来您没有安装 macOS 和|或 Windows Xamarin.iOS 正确版本。
它不能与博客文章中链接的组合以外的任何其他组合一起使用(因此“较新的”Xamarin.iOS 12.10.xxx 生产版本不起作用,只有那些“较旧的”预览版本)
此功能(新架构)仍处于预览阶段(不在我们的正常版本中)。您正在使用不同的预览版本(用于 d16-1),今天不包含它。
如果需要提交watchOS应用请使用博文中提到的包,即 https://dl.xamarin.com/uploads/05uvso0cndi/xamarin.ios-12.6.0.59.pkg
推荐阅读
- android - 实现分页库 3.0 过滤/搜索功能
- javascript - moment().fromNow() 忽略 UTC
- c# - C# Word Cloud 库中未记录的参数
- python - 使用 zip() 循环两个列表以将数字添加到另一个列表
- php - 当连接到用 PHP 实现的 Telnet/sockets 服务器时,PuTTY 显示奇怪的字符
- python - 模拟按顺序修补多个用户输入
- reactjs - NPM 包有效,但 IDE 未找到导入
- pandas - 替换数据框中的公式(熊猫)
- python-3.x - APIError(code=-1099):未找到、未经身份验证或未经授权
- vue.js - 如何以编程方式扩展 v-data-table 组件中的所有行(Vuetify 1.5 版)