从Xcode 10.1将构建上传到iTunes错误

时间:2019-02-14 06:58:02

标签: ios objective-c xcode here-api

我尝试验证构建/将构建上传到iTunes发生了错误。

注意:我正在使用自定义框架并以Objective-c语言开发。

查看ipa内容

这是自定义框架摘要的屏幕截图,请检查屏幕截图中的警告。

  

关于ipa审核内容的警告文本(自定义框架)

     

macOS High Sierra是将运行32位的macOS的最新版本   应用程序毫不妥协。 Mac App Store将需要所有应用   (包括更新),到2018年6月将完全为64位。   enter image description here

错误 enter image description here 我也在Project-> Target-> Build Phase-> Run Script

中编写脚本

两个股票都相同,我只是共享了两个链接供您参考。

脚本链接

链接1:Unable to submit archive including Here Maps Premium SDK with Xcode 8.2.1

链接2:http://ikennd.ac/blog/2015/02/stripping-unwanted-architectures-from-dynamic-libraries-in-xcode/

此项目是从xcode 9.4上传的,但是当我更新自定义框架时,发生了错误。

谢谢。

1 个答案:

答案 0 :(得分:0)

花了我几天的时间才能弄清楚Xcode 10的正确运行脚本。但是我现在有了它,它可以正常工作。这是:

######################

# Options

######################




REVEAL_ARCHIVE_IN_FINDER=false




FRAMEWORK_NAME="${PROJECT_NAME}"




SIMULATOR_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/${FRAMEWORK_NAME}.framework"




DEVICE_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphoneos/${FRAMEWORK_NAME}.framework"




UNIVERSAL_LIBRARY_DIR="${BUILD_DIR}/${CONFIGURATION}-iphoneuniversal"




FRAMEWORK="${UNIVERSAL_LIBRARY_DIR}/${FRAMEWORK_NAME}.framework"







######################

# Build Frameworks

######################




xcodebuild -workspace ${PROJECT_NAME}.xcworkspace -scheme ${PROJECT_NAME} -sdk iphonesimulator -configuration ${CONFIGURATION} -UseModernBuildSystem=NO clean build CONFIGURATION_BUILD_DIR=${BUILD_DIR}/${CONFIGURATION}-iphonesimulator 2>&1




xcodebuild -workspace ${PROJECT_NAME}.xcworkspace -scheme ${PROJECT_NAME} -sdk iphoneos -configuration ${CONFIGURATION} -UseModernBuildSystem=NO clean build CONFIGURATION_BUILD_DIR=${BUILD_DIR}/${CONFIGURATION}-iphoneos 2>&1




######################

# Create directory for universal

######################




rm -rf "${UNIVERSAL_LIBRARY_DIR}"




mkdir "${UNIVERSAL_LIBRARY_DIR}"




mkdir "${FRAMEWORK}"







######################

# Copy files Framework

######################




cp -r "${DEVICE_LIBRARY_PATH}/." "${FRAMEWORK}"







######################

# Make an universal binary

######################




lipo "${SIMULATOR_LIBRARY_PATH}/${FRAMEWORK_NAME}" "${DEVICE_LIBRARY_PATH}/${FRAMEWORK_NAME}" -create -output "${FRAMEWORK}/${FRAMEWORK_NAME}" | echo




# For Swift framework, Swiftmodule needs to be copied in the universal framework

if [ -d "${SIMULATOR_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/" ]; then

cp -f ${SIMULATOR_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/* "${FRAMEWORK}/Modules/${FRAMEWORK_NAME}.swiftmodule/" | echo

fi



if [ -d "${DEVICE_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/" ]; then

cp -f ${DEVICE_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/* "${FRAMEWORK}/Modules/${FRAMEWORK_NAME}.swiftmodule/" | echo

fi




######################

# On Release, copy the result to release directory

######################

OUTPUT_DIR="${PROJECT_DIR}/Output/${FRAMEWORK_NAME}-${CONFIGURATION}-iphoneuniversal/"




rm -rf "$OUTPUT_DIR"

mkdir -p "$OUTPUT_DIR"




cp -r "${FRAMEWORK}" "$OUTPUT_DIR"




if [ ${REVEAL_ARCHIVE_IN_FINDER} = true ]; then

open "${OUTPUT_DIR}/"

fi  

我唯一要做的就是在Xcode 10上为我的自定义框架创建一个新项目,并复制Xcode 9项目中的所有文件并再次重新编译。在Xcode 10上直接重新编译Xcode 9项目无法正常工作。