macOS App Group 名称应该以“group.”开头还是以 Development Team ID 开头?
Should macOS App Group name start with `group.` or Development Team ID?
当我尝试将我的应用程序上传到 Mac App Store 时,出现错误 -
iTunes Store operation failed.
Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on Mac OS X. Specifically, value '[group.MyCompany.MyProject]' for key 'com.apple.security.application-groups' in 'com.MyCompany.mac.MyProject.pkg/Payload/MyProject.app/Contents/MacOS/MyProject' is not supported. This value should be a string or an array of strings, each starting with your TEAMID followed by a dot '.' .
但我读到共享组必须以 group.
前缀开头 - 那么正确的方法是什么?
不,macOS 应用组必须以您的开发团队 ID 开头。
The value for this key must be of type array, and must contain one or more string values, each of which must consist of your development team ID, followed by a period, followed by an arbitrary name chosen by your development team
请查看以下来自 Apple 开发页面的示例。
https://developer.apple.com/library/mac/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html#//apple_ref/doc/uid/TP40011195-CH4-SW19
<key>com.apple.security.application-groups</key>
<array>
<string>DG29478A379Q6483R9214.HolstFirstAppSuite</string>
<string>DG29478A379Q6483R9214.HolstSecondAppSuite</string>
</array>
group.identifier
用于iOS应用组名; TEAMID
后跟一个点,然后是名称(如错误消息所述)用于 Mac 应用程序组名称。
另请记住,这必须是您的开发团队 ID;不要像 Xcode 建议的那样使用 $(TeamIdentifierPrefix)
。
出于某种原因,$(TeamIdentifierPrefix
) 构建时变量在归档项目时未正确解析。
使用 Jerry 的应用程序组名称应该可行。
iOS 应用组必须在门户中注册,因为它们需要在配置文件中列入白名单,并且门户不允许您创建不以 group.
开头的应用组
macOS 应用组根本不需要在门户中注册,它们也不会在配置文件中列入白名单,因为它们甚至不存在于配置文件中。但是,如果您在 Mac App Store 上发布您的应用程序,它会强制要求您的应用程序组必须以您的团队 ID 为前缀。
有关所有这些的更多详细信息,请参阅此处:
当我尝试将我的应用程序上传到 Mac App Store 时,出现错误 -
iTunes Store operation failed.
Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on Mac OS X. Specifically, value '[group.MyCompany.MyProject]' for key 'com.apple.security.application-groups' in 'com.MyCompany.mac.MyProject.pkg/Payload/MyProject.app/Contents/MacOS/MyProject' is not supported. This value should be a string or an array of strings, each starting with your TEAMID followed by a dot '.' .
但我读到共享组必须以 group.
前缀开头 - 那么正确的方法是什么?
不,macOS 应用组必须以您的开发团队 ID 开头。
The value for this key must be of type array, and must contain one or more string values, each of which must consist of your development team ID, followed by a period, followed by an arbitrary name chosen by your development team
请查看以下来自 Apple 开发页面的示例。
https://developer.apple.com/library/mac/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html#//apple_ref/doc/uid/TP40011195-CH4-SW19
<key>com.apple.security.application-groups</key>
<array>
<string>DG29478A379Q6483R9214.HolstFirstAppSuite</string>
<string>DG29478A379Q6483R9214.HolstSecondAppSuite</string>
</array>
group.identifier
用于iOS应用组名; TEAMID
后跟一个点,然后是名称(如错误消息所述)用于 Mac 应用程序组名称。
另请记住,这必须是您的开发团队 ID;不要像 Xcode 建议的那样使用 $(TeamIdentifierPrefix)
。
出于某种原因,$(TeamIdentifierPrefix
) 构建时变量在归档项目时未正确解析。
使用 Jerry 的应用程序组名称应该可行。
iOS 应用组必须在门户中注册,因为它们需要在配置文件中列入白名单,并且门户不允许您创建不以 group.
开头的应用组
macOS 应用组根本不需要在门户中注册,它们也不会在配置文件中列入白名单,因为它们甚至不存在于配置文件中。但是,如果您在 Mac App Store 上发布您的应用程序,它会强制要求您的应用程序组必须以您的团队 ID 为前缀。
有关所有这些的更多详细信息,请参阅此处: