首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Xcode项目中找到未使用的图像?

如何在Xcode项目中找到未使用的图像?
EN

Stack Overflow用户
提问于 2011-05-24 23:55:54
回答 9查看 37K关注 0票数 101

有没有人可以在Xcode项目中找到未使用的图像?(假设在代码或项目文件中按名称引用所有文件-没有代码生成的文件名。)

这些文件往往会在项目的整个生命周期中积累起来,很难判断删除任何给定的png是否安全。

EN

回答 9

Stack Overflow用户

发布于 2015-09-02 14:16:35

请尝试LSUnusedResources

它受到jeffhodnett的Unused的严重影响,但老实说,未使用的速度非常慢,结果并不完全正确。所以我做了一些性能优化,搜索速度比未使用时要快得多。

票数 26
EN

Stack Overflow用户

发布于 2011-10-12 04:17:38

我尝试了罗曼的解决方案,并添加了一些微调来处理视网膜图像。它工作得很好,但请记住,图像名称可以在代码中以编程方式生成,并且此脚本会错误地将这些图像列为未引用。例如,您可能有

NSString *imageName = [NSString stringWithFormat:@"image_%d.png", 1];

此脚本将错误地认为image_1.png未被引用。

下面是修改后的脚本:

代码语言:javascript
复制
#!/bin/sh
PROJ=`find . -name '*.xib' -o -name '*.[mh]' -o -name '*.storyboard' -o -name '*.mm'`

for png in `find . -name '*.png'`
do
   name=`basename -s .png $png`
   name=`basename -s @2x $name`
   if ! grep -qhs "$name" "$PROJ"; then
        echo "$png"
   fi
done
票数 24
EN

Stack Overflow用户

发布于 2015-06-02 08:38:33

只有这个脚本对我有效,它甚至可以处理文件名中的空格:

编辑

已更新以支持swift文件和cocoapod。默认情况下,它不包括Pods目录,只检查项目文件。要同时运行以检查Pod文件夹,请使用--pod属性运行:

/.finunusedimages.sh --pod

下面是实际的脚本:

代码语言:javascript
复制
#!/bin/sh

#varables
baseCmd="find ." 
attrs="-name '*.xib' -o -name '*.[mh]' -o -name '*.storyboard' -o -name '*.mm' -o -name '*.swift'"
excudePodFiles="-not \( -path  */Pods/* -prune \)"
imgPathes="find . -iname '*.png' -print0"


#finalize commands
if [ "$1" != "--pod" ]; then
    echo "Pod files excluded"
    attrs="$excudePodFiles $attrs"
    imgPathes="find . $excudePodFiles -iname '*.png' -print0"
fi

#select project files to check
projFiles=`eval "$baseCmd $attrs"`
echo "Looking for in files: $projFiles"

#check images
eval "$imgPathes" | while read -d $'\0' png
do
   name=`basename -s .png "$png"`
   name=`basename -s @2x $name`
   name=`basename -s @3x $name`

   if grep -qhs "$name" $projFiles; then
        echo "(used - $png)"
   else
        echo "!!!UNUSED - $png"
   fi
done
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6113243

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档