我正在尝试将关联的域添加到我的Expo(非弹出)反应本地项目中。
我的应用程序可以正常运行,并可以通过XCode应用程序加载器正常提交。
但是,如果我将associatedDomains
数组添加到app.json
中,则在尝试提交申请时出现错误:
ERROR ITMS-90163: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. The bundle contains a key that is not included in the provisioning profile: 'com.apple.developer.associated-domains' in 'Payload/ExpoKitApp.app/ExpoKitApp'."
我根本不在XCode中进行开发。我一直在自己的环境中构建应用程序,运行expo build:ios
,下载.ipa
文件,在Mac上打开XCode,然后运行Xcode > Open Developer Tools > Application Loader
将其提交给testflight。该过程运行良好,但是我不确定是否需要在XCode或Apple开发人员帐户中的哪个位置启用权利,是否需要更新某些配置文件,以及是否需要在以后放置它。
博览会文档提到(https://docs.expo.io/versions/latest/workflow/linking/#universal-links-on-ios),我需要“要将您的域添加到权利中,请单击“域”表底部的“添加”(+),以添加具有Web凭据的占位符域:前缀。将占位符替换为您网站的域,并保留前缀。”但我不知道我的Domains表在哪里。是在Apple Web界面中还是在XCode中?
如果问题有点基本,或者我缺少有关XCode或react-native应用程序开发工作流的东西,表示歉意,并感谢您的帮助!
答案 0 :(得分:0)
弄清楚了。我发生了两件事:
续博览中的证书
我必须登录developer.apple.com并删除我的密钥,配置文件和所有其他数据,但https://developer.apple.com/account/resources/certificates/list下的应用程序ID除外
之后,我需要通过运行expo build:ios -c
来刷新expo中的证书,该操作将清除Expo存储在您的服务器上的证书。
无效的应用域
此后,我遇到了另一个错误,因为associatedDomains
中app.json
中列出的应用程序域是mywebsite.com
,而不是以下内容:
{
expo: {
...
ios: {
associatedDomains: [
"applinks:mywebsite.com",
]
}
}
}
这样做之后,构建将恢复以适当的权利提交到testflight。