我试图分发我的应用程序的新版本,以应用商店与一个应用程序剪辑连接。我的应用程序和我的应用程序剪辑的info.plist具有相同的设备功能:
<array>
<string>location-services</string>
<string>gps</string>
<string>armv7</string>
<string>arkit</string>
</array>在尝试分发应用程序时,我得到了以下错误:
Invalid required device capabilities.
The UIRequiredDeviceCapabilities values [arkit, location-services, gps] in the Info.plist of app clip 'GrifGraf.app/AppClips/grifgrafAppClip.app' must match the UIRequiredDeviceCapabilities values [arkit, location-services, gps] in the Info.plist of the app.
Match the device capabilities between your app and app clip.
With error code STATE_ERROR.VALIDATION_ERROR.90845 for id 我已经检查了两个plist之间的功能是否匹配,但是我仍然得到了错误。
发布于 2022-08-17 17:41:10
我找到了答案
我在我的应用程序和应用剪辑中从info.plist中删除了info.plist数组,并将该应用程序构建到我的手机上。Xcode的调试器错误地表示,应用程序剪辑所需的设备功能与主应用程序的功能相匹配,并在错误消息中包含多个功能,包括位置服务。
这意味着它不是在看我的info.plist文件..。
我对项目根中的位置服务表示欢迎,并发现project.pbxproj是唯一包含包含location-services的UIRequiredDeviceCapabilities数组的地方,因此它从那里得到了它。project.pbxproj实际上隐藏在您的.xcodeproj包中,您必须显示包内容才能访问它。
我从该文件中删除了UIRequiredDeviceCapabilities数组,然后将设备功能重新添加到我的应用程序和应用程序剪辑的信息属性列表中,它解决了这个问题。我的猜测是,它正在查看该文件,以确定所需的设备功能,并且它与我的info.plist文件不同步。
https://stackoverflow.com/questions/73362209
复制相似问题