iOS疯狂详解之清理工程中没有用到的图片

APP发布前往往需要清理工程中没有用到的图片,这些图片可能是测试图片也可能是以往版本中替换遗留下来的图片

使用方法

将下面代码保存成**.sh 然后chomd 777 使其可执行

将**.sh 拷贝到工程根目录下

./执行**.sh

再同级目录下会生成一个imge.txt 结果文件

如下图

源码

#!/bin/sh

echo "删除有风险 下手需谨慎 如需再次确认图片是否被引用到"

echo "Defult.png 和例如[UIImage imageNamed:@‘img.png‘] 可能会误报"

read -n1 -p  "【Y】查阅如何确认 【N】直接进行图片检索" 

case $answer in 

"Y"|"y") 

open -a Safari "http://blog.csdn.net/hufeng825/article/details/8533647"

echo -n "按任意键开始程序";

read var

;;

"N"|"n") 

echo "命令执行时终端会输入结果 搜索完毕后 会在当前路径下自动生成imag.txt的结果报告"

;;

*) 

;;

esac

PROJ=`find .  ! -name ‘*.xib‘ -o -name ‘*.[mh]‘ -o -name ‘*.storyboard‘ -o -name ‘*.mm‘ -o -name ‘*.html‘ `

echo "~~~~~~~~~~~~开始搜索~~~~~~~~~~~~" >>‘./image.txt‘;

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 可能没引用"
        echo "$png 可能没引用"  >>‘./image.txt‘ ;
   fi
done

for jpg in `find . -name ‘*.jpg‘`
do
   name=`basename -s .jpg $jpg`
   name=`basename -s @2x $name`
   if ! grep -qhs "$name" "$PROJ"; then
        echo "$png 可能没引用"
        echo "$jpg 可能没引用"  >>‘./image.txt‘;
   fi
done

echo "~~~~~~~~~~~~结束搜索~~~~~~~~~~~~" >>‘./image.txt‘;
<<EOF
时间: 2024-10-05 15:47:12

iOS疯狂详解之清理工程中没有用到的图片的相关文章

iOS疯狂详解之CocoaPods做iOS程序包的依赖管理

每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库.比如 Java: maven,Ivy Ruby: gems Python: pip, easy_install Nodejs: npm 随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,这个工具叫:CocoaPods. CocoaPods简介 CocoaPods是一个负责管理iOS项目中第三方开源代码的工具.CocoaPods项目的源码在Github上管理.该项目开始于2011年8月12日,经过一年多的发

iOS疯狂详解之第三方微信授权登录的iOS代码分析

微信已经深入到每一个APP的缝隙,最常用的莫过分享和登录了,接下来就以代码的形式来展开微信登录的相关说明,至于原理级别的oauth2.0认证体系请参考微信开放平台的相关说明和图示 https://open.weixin.qq.com/ 微信登录授权开发 1,到微信开发平台注册相关APP,现在是等待审核成功后才能获取到对应的key和secret:获取成功后需要单独申请开通登录和支付接口,如图 2,和QQ类似,需要填写Url Schemes,如demo中的wxd930ea5d5a258f4f ,然后

iOS疯狂详解之开源库

youtube下载神器:https://github.com/rg3/youtube-dl vim插件:https://github.com/Valloric/YouCompleteMe vim插件配置:https://github.com/spf13/spf13-vim ----------------Mac完整项目---------- 电台:https://github.com/myoula/sostart ----------------iOS完整项目---------------- 1,

iOS疯狂详解之AFNetworking图片缓存问题

AFNetworking网络库已经提供了很好的图片缓存机制,效率是比较高的,但是我发现没有直接提供清除缓存的功能,可项目通常都需要添加 清除功能的功能,因此,在这里我以UIImageView+AFNetworking类中添加了下面一个清除功能方法: + (void)clearCache; + (void)clearCache { AFImageCache *cache = (AFImageCache *)[UIImageView sharedImageCache]; [cache removeA

iOS疯狂详解之warning:performSelector may cause a leak because its selector is unknown

主要是警告信息,在非ARC项目中没有这个警告.如果是在某一处修改只需要加入下列代码: #pragma clang diagnostic push #pragma clang diagnostic ignored "-Warc-performSelector-leaks" [self.ticketTarget performSelector: self.ticketAction withObject: self];//此处是你调用函数的地方 #pragma clang diagnosti

iOS疯狂详解之视频播放MPMoviePlayerViewController

需要导入的框架 #import <MediaPlayer/MediaPlayer.h> MediaPlayer.framework MPMoviePlayerViewController: 打开网络视频: -(void)openmovie { MPMoviePlayerViewController *movie = [[MPMoviePlayerViewControlleralloc]initWithContentURL:[NSURLURLWithString:@"视频网络地址&qu

iOS疯狂详解之CocoaPods本身版本升级

查看CocoaPods版本 $ pod --version 0.34.4 确实需要更新了 命令行更新(安装)步骤 $ sudo gem update --system // 先更新gem,国内需要切换源 $ gem sources --remove https://rubygems.org/ $ gem sources -a http://ruby.taobao.org/ $ gem sources -l \*\*\* CURRENT SOURCES \*\*\* http://ruby.tao

iOS疯狂详解之ASIHttpRequest的简单封装

//  iOS疯狂详解之ASIHttpRequest的简单封装 //  WLHTTPClient.h //  WLWLListen // //  Created by long on 14-12-15. //  Copyright (c) 2014年 WLong. All rights reserved. // #import <Foundation/Foundation.h> #import "ASIFormDataRequest.h" @protocol WLHTTPC

iOS疯狂详解之录制音频转换成Mp3

使用第三方 lame ,Mp3音频编码器. 使用 AVAudioRecorder 进行音频录制之前,进行参数设置: NSString *recordTemporaryPathString = [NSString stringWithFormat:@"%@/temporary",self.audioTemporarySavePath]; //LinearPCM 是iOS的一种无损编码格式,但是体积较为庞大 //录音设置 NSMutableDictionary *recordSetting