如何在xcode 8

时间:2016-09-24 06:29:14

标签: xcode8

自升级到Xcode 8后,当我使用fastlane进行构建时,收到以下错误消息:

There does not seem to be a CURRENT_PROJECT_VERSION key set for this project

如果我转到Xcode> Build Settings并转到Versioning,则会有一个Current Project Version键,如下所示:

screen shot of versioning

帮助文本表示输入整数或浮点数,但是当我单击该字段时,无法在“调试”或“释放”字段中输入数字。这与显示in this apple tech Q&A的屏幕截图不同,因此自Q& A发布以来,Xcode似乎发生了变化。

3 个答案:

答案 0 :(得分:10)

目前,当您收到 fastlane错误时,终端日志会将您重定向到

  

<强> Automating Version and Build Numbers Using agvtool

了解您需要做什么。

<强>摘要

  1. 启用agvtool。

    构建设置&gt;当前项目版本&gt; $(CURRENT_PROJECT_VERSION)

    构建设置&gt;版本控制系统&gt; Apple Generic enter image description here

  2. 设置您的版本和内部版本号。

    目标&gt;信息&gt; Bundle versions string,short(CFBundleShortVersionString)&gt; “你的初学者     版本“

    目标&gt;信息&gt;捆绑版本(CFBundleVersion)&gt;的“你     初始值“ enter image description here

  3. 这对我有很大的帮助。

答案 1 :(得分:1)

不要。而是修改应用程序的info.plist文件中的值。

这意味着不使用agvtool(据我了解)。

为什么?多年来,Apple提出了几种更改版本和内部版本号的方式。他们中的许多人现在已经过时,实践不善。更改CURRENT_PROJECT_VERSION会修改项目的project.pbxproj文件中的值,如果您正在运行分布式团队,则如果团队的另一半尝试更新并且在睡眠状态下更新了此内部值,则会导致合并冲突。如果您使用的是Pod,则会另外添加到项目中的 per Pod合并冲突。

那么,CURRENT_PROJECT_VERSION?

不要使用它。

这些键位于info.plist文件中。

CFBundleVersion
CFBundleShortVersionString

使用CFBundleVersion作为应用的内部版本号。 使用CFBundleShortVersionString作为应用程序的版本号。

使用Plistbuddy进行操作。

    <key>CFBundleShortVersionString</key>
    <string>3.0.7</string>
    <key>CFBundleVersion</key>
    <string>934</string>
</dict>
</plist>

尝试以下脚本。

#!/bin/sh

# To make executable, use: chmod u+x Build-Versioning-Scripts/Increment_Build_Number.sh
# to locate your target's info.plist use
# ${PRODUCT_SETTINGS_PATH}

echo "----"
echo "Info.plist for target: ${PRODUCT_SETTINGS_PATH}"

buildNum=$(/usr/libexec/Plistbuddy -c "Print CFBundleVersion" "${PRODUCT_SETTINGS_PATH}")
echo "Current build #: $buildNum"

if [ -z "$buildNum" ]; then
echo "No build number found in $PRODUCT_SETTINGS_PATH"
exit 2
fi

buildNum=$(expr $buildNum + 1)
echo "Build # incremented to: $buildNum"
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNum" "$PRODUCT_SETTINGS_PATH"
echo "----"
exit 0

通过将此脚本添加到构建计算机上的构建或归档过程中,这将自动更新应用程序的 build 编号。 如果您希望增加应用程序的版本号,请在info.plist中手动更改CFBundleShortVersionString(捆绑版本字符串,简称)。

答案 2 :(得分:-1)

you may try change project format ?

我建议您更改此xcode格式版本。