ios - Cocoa Touch Frameworks - 位码支持

标签 ios swift xcode frameworks bitcode

我正在为我的公司构建一个框架。我有一个工作区,里面有两个项目,Cocoa Touch Framework 和示例应用程序。我有一个运行脚本,它会在我每次构建我的框架时运行,构建模拟器和设备版本,然后对它们进行 lipo 以创建胖框架。所有这些都是通过 Cocoapods 分发的,所以我在 podspec 上设置了 vendored_frameworks 属性等等。一切都在其他项目中正确安装,除了一件事:不可能存档项目,因为框架不包含位码。这些是我的 xcodebuild 命令(在运行脚本中):

# Build both device and simulator versions for iOS
xcodebuild BITCODE_GENERATION_MODE=bitcode -project "${PROJECT_DIR}/${PROJECT_NAME}.xcodeproj" -derivedDataPath "${BUILD_DIR}" -scheme "${PROJECT_NAME}" -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone X' clean build

xcodebuild BITCODE_GENERATION_MODE=bitcode -project "${PROJECT_DIR}/${PROJECT_NAME}.xcodeproj" -derivedDataPath "${BUILD_DIR}" -scheme "${PROJECT_NAME}" -sdk iphoneos clean build

我将构建配置设置为Release,所以它不使用Debug。但是,始终存在相同的问题:无法将内部包含此框架的应用程序存档。 你有什么建议吗?

最佳答案

2个选项:

1.尝试使用位码构建您的框架:

xcodebuild BITCODE_GENERATION_MODE=bitcode OTHER_CFLAGS="-fembed-bitcode" -target "${PROJECT_NAME}" ONLY_ACTIVE_ARCH=NO -configuration ${CONFIGURATION} -sdk iphoneos BUILD_DIR="${BUILD_DIR}" BUILD_ROOT="${BUILD_ROOT}" clean build
xcodebuild BITCODE_GENERATION_MODE=bitcode OTHER_CFLAGS="-fembed-bitcode" -target "${PROJECT_NAME}" -configuration ${CONFIGURATION} -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR="${BUILD_DIR}" BUILD_ROOT="${BUILD_ROOT}" clean build

2.或者您选择在您的应用程序中禁用位码

关于ios - Cocoa Touch Frameworks - 位码支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49709262/

相关文章:

iphone - 从单元格的 View Controller 向导航 Controller 推送新 View

ios - Swift Make Animation 看起来就像去新的 ViewController 而没有 One

ios - 为什么我收到此错误 : Ambiguous reference to member 'fetch(with:parse:completion:)'

ios - google map SDK for iOS 中是否有比例控件?

ios - 我如何知道项目中的当前cocos2d版本?

ios - 如何通过它的匹配属性获取类型属性?

ios - NSURLConnection中建立错误案例,Swift中JSON解析

ios - 为什么我所有的 View Controller 都是方形的?

ios - 未找到有效的配置文件但有匹配项

xcode - 如何让 UIAutomation、模拟器和 Xcode 调试器同时运行?