如何设置 Bundle Ids、App Identifiers 和 Provisioning Profiles 以发布使用 SwiftUI 和 XCode 制作的 WatchOs 应用程序?

Posted

技术标签:

【中文标题】如何设置 Bundle Ids、App Identifiers 和 Provisioning Profiles 以发布使用 SwiftUI 和 XCode 制作的 WatchOs 应用程序?【英文标题】:How to set Bundle Ids, App Identifiers and Provisioning Profiles to publish a WatchOs App made with SwiftUI and XCode? 【发布时间】:2021-04-07 10:20:28 【问题描述】:

我使用 Xcode 12 和 SwiftUI 制作了一个 watchOS 应用程序,但我真的很难尝试发布它。一个 watchOS 应用包含三段代码:

应用程序 watchkit 应用程序 watchkit 扩展

我尝试对所有人使用相同的捆绑包 ID(格式:com.domain.appname)。那失败了。因此,我尝试为每个包使用不同的包 ID,如下所示(知道我已经创建了 3 个应用标识符和 3 个与 developer.apple.com 上匹配的配置文件)。

应用程序(包 ID:com.domain.appname) watchkit 应用程序(包 ID:com.domain.appname.watchkitapp) watchkit 扩展(捆绑 id:com.domain.appname.watchkitextension)

构建失败并出现以下错误:

所以我无法构建或归档我的应用程序。然后我对 App 和 Extension 使用了相同的 bundleId,如下所示:

应用程序(包 ID:com.domain.appname) watchkit 应用程序(包 ID:com.domain.appname.watchkitapp) watchkit 扩展(包 id:com.domain.appname.watchkitapp)

通过这些设置,我可以构建和归档应用程序。但是,当我尝试将其上传到应用商店(使用 XCode 或使用名为传输器的外部应用)时,出现此错误:

所以在这一点上我迷路了...这里有没有人能够使用 swift UI 和 Xcode 发布手表操作系统应用程序,并且可以告诉我如何使用 Bundle Ids、App Identifiers 和 Provisioning Profiles这样做。谢谢

【问题讨论】:

你弄明白了吗? @loremipsum 是的,正如你所说。您需要创建 3 个配置文件。扩展名为 com.domain.appName.watchkitapp.watchkitextension 谢谢 【参考方案1】:

在 Target > General > Bundle Identifier

它们应该是扩展目标的增量

主应用 = com.domain.appName

观看应用 = com.domain.appName.watchkitapp

手表扩展 = com.domain.appName.watchkitapp.watchkitextension

据我所知,您的扩展程序不是唯一的(它没有添加扩展程序部分)。

另外,您在同一区域的VersionBuild 应该匹配所有 3 个项目

【讨论】:

以上是关于如何设置 Bundle Ids、App Identifiers 和 Provisioning Profiles 以发布使用 SwiftUI 和 XCode 制作的 WatchOs 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

Bundle大小很大,如何减小app.js的大小?

humlbe bundle如何绑定二次验证码_虚拟MFA_两步验证_谷歌身份验证器?

如何在运行时知道 app bundle (.aab) 配置?

如何从 android app bundle 分发支持版本?

如何使用 Xamarin Visual Studio 2015 构建 Android App Bundle?

Xcode 5 如何从 App Bundle 链接动态库