使用Xcode 6,我们可以创build自己的Dynamic Cocoa Frameworks 。 因为: 模拟器仍然使用32-bit库 从2015年6月1日开始,提交给App Store的应用更新必须包含64位支持,并使用iOS 8 SDK( developer.apple.com ) 我们必须让胖库运行在设备和模拟器上的项目。 即在Frameworks中同时支持32位和64位。 但是我没有find任何手册,如何导出通用胖框架,以便将来与其他项目集成(并与某人分享这个库)。 这是我重现的步骤: 在“ Build Settings设置ONLY_ACTIVE_ARCH=NO 添加支持armv7 armv7s arm64 i386 x86_64到Architectures (当然) 构build框架并在Finder中打开它: 将此框架添加到另一个项目 实际结果: 但是最终我仍然在设备和模拟器上一起运行带有这个框架的项目的问题。 如果我从Debug-iphoneos文件夹中获取框架 – 它在设备上工作并且在模拟器上出错: ld: symbol(s) not found for architecture i386 xcrun lipo -info CoreActionSheetPicker fat文件中的体系结构:CoreActionSheetPicker是:armv7 armv7s arm64 如果我从Debug-iphonesimulator文件夹中获取框架 – 它可以在模拟器上运行。 和我的设备上有错误: ld: symbol(s) not found […]
#!/bin/sh UNIVERSAL_OUTPUTFOLDER=${BUILD_DIR}/${CONFIGURATION}-universal # make sure the output directory exists mkdir -p "${UNIVERSAL_OUTPUTFOLDER}" # Step 1. Build Device and Simulator versions xcodebuild -target "${PROJECT_NAME}" ONLY_ACTIVE_ARCH=NO \ -configuration ${CONFIGURATION} -sdk iphoneos \ BUILD_DIR="${BUILD_DIR}" BUILD_ROOT="${BUILD_ROOT}" clean build xcodebuild -target "${PROJECT_NAME}" -configuration ${CONFIGURATION} \ -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR="${BUILD_DIR}" \ BUILD_ROOT="${BUILD_ROOT}" clean build # Step 2. Copy the framework structure […]