AppStore 上架问题
在打包上传到app store的时候,碰到了这个问题
ERROR ITMS-90087: "Unsupported Architectures. The executable for xxx.framework contains unsupported architectures '[x86_64, i386]'."
网上查询是因为工程中有自建的frameWork,里面包含了不被app store允许的x86_64,i336架构。我们需要把这两个架构移除。
解决办法:TARGETS->Build Phases->点击加号选择New Run Script Phase->然后复制粘贴下面代码
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
# This script loops through the frameworks embedded in the application and
# removes unused architectures.
find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
do
FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
EXTRACTED_ARCHS=()
for ARCH in $ARCHS
do
echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
done
echo "Merging extracted architectures: ${ARCHS}"
lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
rm "${EXTRACTED_ARCHS[@]}"
echo "Replacing original executable with thinned version"
rm "$FRAMEWORK_EXECUTABLE_PATH"
mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
done
原文链接:http://blog.csdn.net/yutaotst/article/details/53887958
image.png上传app包成功之后,在开发者网站上看不到,收到邮件。
这个是因为第三方包在打包时info.plist 中CFBundleSupportedPlatforms 是设置的模拟环境,就是iphoneSimulator,我们需要把它们改成iphoneOS.需要注意的是,需要修改项目中所有第三中有用到CFBundleSupportedPlatforms的key,有些第三方framework需要在文件中进行查找info.plist文件
查看项目中是否有用到IDFA广告标识
cd 项目地址
grep -r advertisingIdentifier .
可以看到几个文件使用了IDFA。
网友评论