Xcode存档验证错误 - Xcode 9和Swift 4

时间:2018-03-07 17:17:51

标签: ios swift4 xcode9

当我尝试使用Xcode存档将应用上传到应用商店时,会出现以下验证错误:

  

iTunes Store操作失败无效的捆绑包。捆绑在   ' Dvp.app/Frameworks/AlamofireSwiftyJSON.framework'包含不允许   文件'框架'。

     

iTunes Store操作失败无效的捆绑包。捆绑在   ' Dvp.app/Frameworks/AlamofireSwiftyJSON.framework'包含不允许   嵌套的捆绑包。

     

iTunes Store操作失败CFBundleIdentifier冲突。有   具有CFBundleIdentifier值的多个捆绑包   ' com.swiftyjson.SwiftyJSON'在iOS应用程序' Dvp.app'。

     

iTunes Store操作失败CFBundleIdentifier冲突。有   具有CFBundleIdentifier值的多个捆绑包   ' org.alamofire.Alamofire'在iOS应用程序' Dvp.app'。

我已将这些框架拖放到我的项目中。我没有使用cocoapod或swift包管理器将第三方框架引用到项目中。

任何想法如何摆脱这些验证问题?

谢谢

3 个答案:

答案 0 :(得分:0)

归档应用程序后,使用AppStore选择生成ipa,并使用Application Loader上传

答案 1 :(得分:0)

除了ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO之外,对我来说解决此问题的关键还是在主要应用目标之外的所有目标的构建设置中设置EMBEDDED_CONTENT_CONTAINS_SWIFT=NO。不得不清除派生数据,但之后一切都很顺利。

enter image description here

答案 2 :(得分:0)

在这种情况下,由于 AlamofireSwiftyJSON 框架而发生了这些验证错误。错误如下:

  

iTunes Store操作失败无效的捆绑包。捆绑在   ' Dvp.app/Frameworks/AlamofireSwiftyJSON.framework'包含不允许   文件'框架'。

     

iTunes Store操作失败无效的捆绑包。捆绑在   ' Dvp.app/Frameworks/AlamofireSwiftyJSON.framework'包含不允许   嵌套的捆绑包。

要删除上述错误,我只选择了 AlamofireSwiftyJSON 目标并添加了一个"运行脚本"在"构建阶段"标签。

参考下图:

enter image description here

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi

这修复了上述验证错误和以下验证错误:

  

iTunes Store操作失败CFBundleIdentifier冲突。有   具有CFBundleIdentifier值的多个捆绑包   ' com.swiftyjson.SwiftyJSON'在iOS应用程序' Dvp.app'。

     

iTunes Store操作失败CFBundleIdentifier冲突。有   具有CFBundleIdentifier值的多个捆绑包   ' org.alamofire.Alamofire'在iOS应用程序' Dvp.app'。

希望这会有所帮助。