无法使用Xcode 8.2.1提交包含Here Maps Premium SDK的存档

问题描述 投票:4回答:2

archive upload failure messages screenhot

Xcode未能提交包含Here Map Premium for iOS功能所需的动态库“NMAKit.framework”的项目。

(上传Here Maps Premium SDK for iOS中包含的示例项目,以避免因项目导致上传失败而导致的副作用)

Bitcode在项目的构建设置中被禁用。

我正在使用最新的Xcode版本8.2.1。

没有NMAKit.framework,我在提交应用程序时没有遇到任何问题。

Apple似乎不接受库的实际版本(此处为SDK V. 3.3)。

将我的项目包括提交给iTunes-Connect的NMAKit.framework需要采取哪些步骤?

ios itunesconnect here-api xcode8.2
2个回答
8
投票

步骤1:

项目 - >目标 - >构建阶段 - >运行脚本

添加运行脚本

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

你可以关注这个Link

第2步:

项目 - >目标 - >常规 - >嵌入式二进制文件

添加NMAKit.framework,如下图所示

enter image description here


0
投票

我尝试使用.sh脚本,这对我有用。

请按照以下步骤操作

  1. Unzip.tar文件(即HERE_Premium_iOS_SDK_v3.7.0.118.tar)
  2. 打开提取的文件夹'HERESDK-Premium'。 (提取'HERE_Premium_iOS_SDK_v3.7.0.118.tar'文件时生成的'HERESDK-Premium'文件夹)
  3. 打开终端
  4. 转到解压缩的文件夹路径('HERESDK-Premium-> framework',您可以在此文件夹中找到'strip_sim.sh'文件和NMAKit.framework)
  5. 使用此命令sh strip_sim.sh在终端中运行scrip,然后按Enter键。 (将使用此脚本修改NMAKit.framework)。
  6. 等待完整的过程。
  7. 复制项目中的新修改框架并尝试提交构建。

注意:运行sh strip_sim.sh脚本时,您的NMAKit.framework将被修改。将构建上传到iTunes后,确保将新框架替换为旧框架。

新框架未在模拟器中运行。

© www.soinside.com 2019 - 2024. All rights reserved.