Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在构建时更改iOS应用程序图标_Ios_Xcode_Shell_Icons - Fatal编程技术网

在构建时更改iOS应用程序图标

在构建时更改iOS应用程序图标,ios,xcode,shell,icons,Ios,Xcode,Shell,Icons,我曾遇到过这些教程(和),但很难让它们发挥作用。第一个更详细,所以我一步一步地遵循它。脚本正在运行,没有错误,但应用程序图标没有更改 以下是我目前掌握的情况: IFS=$'\n' buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}") versionNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleS

我曾遇到过这些教程(和),但很难让它们发挥作用。第一个更详细,所以我一步一步地遵循它。脚本正在运行,没有错误,但应用程序图标没有更改

以下是我目前掌握的情况:

IFS=$'\n'
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}")
versionNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleShortVersionString" "${PROJECT_DIR}/${INFOPLIST_FILE}")
commit=`git rev-parse --short HEAD`
branch=`git rev-parse --abbrev-ref HEAD`
echo buildNumber=$buildNumber
echo versionNumber=$versionNumber
echo commit=$commit
echo branch=$branch
PATH=${PATH}:/usr/local/bin

function generateIcon () {
    BASE_IMAGE_NAME=$1
    TARGET_PATH=${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/${BASE_IMAGE_NAME}
    echo TARGET_PATH=$TARGET_PATH
    echo SRCROOT=$SRCROOT
    BASE_IMAGE_PATH=$(find ${SRCROOT} -name ${BASE_IMAGE_NAME})
    WIDTH=$(identify -format %w ${BASE_IMAGE_PATH})
    echo WIDTH=$WIDTH
    FONT_SIZE=$(echo "$WIDTH * .15" | bc -l)
    echo FONT_SIZE=$FONT_SIZE

    convert dev_ribbon.png -resize $WIDTHx$WIDTH resizedRibbon.png
    convert ${BASE_IMAGE_PATH} -fill white -font Times-Bold -pointsize ${FONT_SIZE} -gravity south -annotate 0 "$buildNumber" - | composite resizedRibbon.png - ${TARGET_PATH}
}

echo "Generating new icons ..."
generateIcon "app_icon_57.png"
generateIcon "app_icon_72.png"
generateIcon "app_icon_76.png"
generateIcon "app_icon_57@2x.png"
generateIcon "app_icon_72@2x.png"
generateIcon "app_icon_60@2x.png"
generateIcon "app_icon_76@2x.png"
每个变量都有正确的值,但什么都不会发生。我试着用terminal命令更改一些图像,看看工具是否正常工作——它们确实正常

我不知道为什么它不起作用

我的最后一个想法是我的构建脚本可能在错误的点执行。它应该按脚本顺序放置在哪里? 或者它将图像输出到错误的位置


我正在使用xcassets作为应用程序图标。

你知道如何在构建时更改应用程序图标吗?@chrisP是的,我最终采用了一种稍微不同的方法。今天我将尝试发布一个答案。谢谢你提醒我这篇文章。