程序Xcode 7和Receigen中的意外"@"

And*_*rew 3 xcode xcode7 receigen

我昨晚刚刚更新到Xcode 7.0,它似乎打破了Receigen生成的代码.

CFStringRef ReceiptValidation_str1 = @obfuscateCF@("");
Run Code Online (Sandbox Code Playgroud)

程序中意外的'@'

Receigen自2014年以来一直没有更新,所以这几乎肯定是一个Xcode 7问题.

我联系了Receigen的开发人员并且还没有收到回复(它只有几个小时).任何帮助,将不胜感激.

Mic*_*eri 5

在Xcode Target中,选择"Build Phases"选项卡,编辑Receigen shell脚本.替换EXPANDED_BUNDLE_ID看起来像的声明:

EXPANDED_BUNDLE_ID=`eval \"echo $BUNDLE_ID\"
Run Code Online (Sandbox Code Playgroud)

简单地通过变量PRODUCT_BUNDLE_IDENTIFIER(在Xcode 7中引入)

EXPANDED_BUNDLE_ID=$PRODUCT_BUNDLE_IDENTIFIER
Run Code Online (Sandbox Code Playgroud)

(你也可以删除旧的,现在不用的声明BUNDLE_ID)

您的脚本应如下所示:

# Receigen binary
RECEIGEN="/Applications/Receigen.app/Contents/MacOS/Receigen"

# Extract Info.plist information
INPUT="$INFOPLIST_FILE"
BUNDLE_VERSION=`/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "$INPUT"`

# Expand information if needed
EXPANDED_BUNDLE_ID=$PRODUCT_BUNDLE_IDENTIFIER
EXPANDED_BUNDLE_VERSION=`eval "echo $BUNDLE_VERSION"`

# ...etc...
Run Code Online (Sandbox Code Playgroud)

注意:感谢@ mcgyver42的回答和这个问题


归档时间:

查看次数:

449 次

最近记录:

10 年,1 月 前