2

我知道这个主题在 SO 上被多次辩论,但我没有找到所有信息。

我正在制作一个外部脚本来构建和存档我的项目。我在这里这里
找到了一些很好的文档,但我不知道如何获取 xcode 变量,如,等。${PROJECT_NAME}${TARGET_SDK}

我还看到了这条线,这对于采购这些变量可能很有趣:

."$WORKSPACE/autobuild/build.config"

但我在我的 Mac 上找不到任何“autobuild”文件夹或“build.config”文件。

我感觉我错过了一些直截了当的东西,但我不知道是什么......

任何的想法 ?

4

1 回答 1

4

确保您已安装 XCode 命令行工具(通过 XCode 首选项)。

然后,我使用的是一个简单的 shell 脚本:

#!/bin/sh
source "build.cfg"

xcodebuild -target "${XCODE_BUILD_TARGET}" -sdk "${XCODE_BUILD_SDK}" -configuration Release CODE_SIGN_IDENTITY="${XCODE_BUILD_CODE_SIGN_AUTHORITY}"
EXIT_CODE=$?
if [ ! $EXIT_CODE -eq 0 ];then
  exit $EXIT_CODE
fi

xcrun -sdk "${XCODE_BUILD_SDK}" PackageApplication -v "${XCODE_ABS_BUILD_APP_PATH}" -o "${XCODE_ARCHIVE_OUTPUT_PATH}" --sign "${XCODE_BUILD_CODE_SIGN_AUTHORITY}" --embed "${XCODE_ABS_PROVISIONING_CERTIFICATE_PATH}"
EXIT_CODE=$?
if [ ! $EXIT_CODE -eq 0 ];then
  exit $EXIT_CODE
fi

我还有很多其他的,但这是关键部分。然后 build.cfg 只包含上面的变量:

#!/bin/sh
export XCODE_PROJECT_DIR="Builds/iOS"
export XCODE_BUILD_TARGET="Demo-iPhone"
export XCODE_BUILD_SDK="iphoneos"
export XCODE_BUILD_PLIST="Info.plist"
export XCODE_BUILD_APP_NAME="demo.app"
export XCODE_BUILD_APP_DIR="build"
export XCODE_BUILD_CODE_SIGN_AUTHORITY="iPhone Distribution: ABC"
export XCODE_ARCHIVE_OUTPUT_IPA_FILENAME="demo.ipa"
export XCODE_ARCHIVE_OUTPUT_IPA_DIR="build/release"
export XCODE_ARCHIVE_PROVISIONING_CERTIFICATE="demo_adhoc.mobileprovision"
...
于 2012-12-06T11:05:41.543 回答