2013-01-31 25 views
12

私は最近、基本的に私が作った以前のアプリのコピーである新しいアプリで作業を始めました。この新しいアプリを作るために、私は古いアプリをコピーし、不要なものをいくつか削除しました。Xcodeで未使用のファイルを見つける

Xcodeでどのクラスファイルが使用されているかを知る方法はありますか?または、未使用のファイルを見つける方法についてのヒント?

答えて

11

このようなXcodeに組み込まれている機能はありませんが、未使用のクラス/ファイルなどの問題は、考えられるほど単純ではありません。

人は未使用のファイルを試してみるためのスクリプトを作成しています。私はscript located hereを使用しました。これはすべてのソースファイルを検索し、リソースファイルをペアにしようとします。このスクリプトは、プロジェクトに含まれていないソースファイルもチェックします。

Obj-Cが非常に動的な言語であることはそれほど些細な理由ではありません。実行時に多くのことが決定されます。そのため、未使用のファイルを静的に把握するのは難しい場合があります。例えば、画像名は、ユーザの入力に応じてオンザフライで決定されてもよい。

あなたのアプリケーションの大きさはわかりませんが、依存グラフを試して孤児クラスをチェックすることができます。詳細については、this blog postを参照してください。

+1

これを行うには、Xcodeに関数が組み込まれているといいでしょう。あなたがそのスクリプトに投稿したリンクはとても役に立ちます。ありがとうございます。 – JDx

0

はまた、このシェルスクリプトhttp://mfaizanshaikh.wordpress.com/2012/12/17/how-to-remove-unused-images-from-xcode-project/

は基本的に以下のシェルスクリプトは、xibファイルのいずれかで使用されていないプロジェクト内のすべてのpngのファイルを見つける参照してください。もちろん、pngファイルを別の方法(ストーリーボードでコードをロード)で使用しても、このスクリプトでは未使用として表示されます。参照用
は、私もここのスクリプトを貼り付けます。

#!/bin/sh 
PROJ=`find . -name '*.xib' -o -name '*.[mh]'` 

for png in `find . -name '*.png'` 
do 
    name=`basename $png` 
    if ! grep -q $name $PROJ; then 
     echo "$png is not referenced" 
    fi 
done 
+0

私は鈍いことをお詫びしますが、これは実際の質問と何が関係していますか?あなたはそれを読んだことがありますか? – pyRabbit

+1

質問の最後の部分では、未使用のファイルを見つけるヒントがあります。これは、使用されていないイメージファイルの検索に対処するようです。それは完全な答えではなく、「これも見てください...」で始まることによって、彼は完全な答えであるとは思っていません。 –

4

JetBrainsのからAppCode IDEは、いくつかの非常にまともなコード検査機能を持っています。未使用のクラスや他のリソースを指摘することができ、完全にXcodeと互換性があると主張します。

+0

そして、彼らはこれを迅速にサポートしています。 –

5

便利なツールをご覧ください。未使用のリソースをXcodeプロジェクトで確認するMacアプリhttp://jeffhodnett.github.io/Unused/

+0

このアプリは、私のプロジェクトのすべての画像ファイルが使用されていないと使用されていないクラスファイルを表示していないと述べた。役に立たない。 – Michael

3

このツールは、未使用のインポート/クラス:fuiを検索します。 READMEページから

は、未使用のObjective-Cの輸入を探します。

+0

同じ警告.... githubのこのプロジェクトでサポートまたは適切なドキュメントが見つかりません – jailani

0

MartiancraftのSlenderというアプリがあり、未使用の画像を表示するのに適しています。

http://martiancraft.com/products/slender.html

私はフェイクパは、クラスファイルの似た何かをすることを信じて、私はチェックします。このアプリは、未使用のメソッド、翻訳、およびリソースも探します。

http://fauxpasapp.com/rules/#rule-UnusedResource

私は最近、アプリのいずれかを使用していないが、両方とも以前に感銘を受けている覚えています。

関連する問題