0

我正在尝试解决这个问题并且没有运气。我正在归档项目并使用 XCode 以开发人员签名格式导出。

我需要设置什么才能正确签署此更新:

  • 在项目构建设置页面(当前开发者 ID:Jeremy Laurenson (XXXX))
  • 在目标构建设置页面上(当前开发者 ID:Jeremy Laurenson (XXXX))

在我的 sparkle 框架签名构建脚本中:

LOCATION="${BUILT_PRODUCTS_DIR}"/"${FRAMEWORKS_FOLDER_PATH}"
IDENTITY="Mac Developer: Jeremy Laurenson (XXXX)"
codesign --verbose --force --sign "$IDENTITY" "$LOCATION/Sparkle.framework"

在我的应用程序演员签名脚本中:

#!/bin/bash

PROJECT_NAME=testapp

set -o errexit echo "Getting version of the app $PROJECT_NAME here in this directory." VERSION=$(/usr/libexec/PlistBuddy -c "Print

:CFBundleVersion" "$PROJECT_NAME.app/Contents/Info.plist")
DOWNLOAD_BASE_URL="http://www.map-pin.com/sparkle/testapp"
RELEASENOTES_URL="http://www.map-pin.com/sparkle/testapp/release-notes.html#version-$VERSION"

ARCHIVE_FILENAME="$PROJECT_NAME$VERSION.zip" DOWNLOAD_URL="$DOWNLOAD_BASE_URL/$ARCHIVE_FILENAME"

WD=$PWD

echo "Removing all previous $PROJECT_NAME*.zip"

rm -f "$PROJECT_NAME"*.zip
4

1 回答 1

1

原来...

您可以使用您的 AppleID 进行代码签名,也可以使用 Sparkle 以前使用的公钥/私钥密钥方法进行代码签名,但不能同时使用两者。

最简单的方法是:

  1. 删除应用程序构建设置中的所有代码签名步骤。
  2. 在此处下载 sparkle 的新 github 版本,并类似地创建一个普通的、未签名的框架。
  3. 在您的新项目中使用该框架。
  4. 存档,使用开发者 ID 签名
  5. 使用上面的脚本,没有 DSA 签名:

    cat >"sparkle_appcast_update.txt" < 版本 $VERSION $RELEASENOTES_URL $PUBDATE EOF

于 2014-07-28T23:36:16.250 回答