2009-04-08 12 views
9

iphoneアプリケーションの記号を削除するXcodeの設定は何ですか?iPhoneアプリケーションのストリップ記号

私はXcodeでこれらの設定を使用しますが、バイナリファイルエディタを使用して の実行可能ファイルにクラス名とメソッドを表示しています。

展開:

1)展開後処理(チェック)コピー中

2)ストリップデバッグシンボル(チェック)

3)ストリップ連携製品(チェック)

4)別のストリップを使用する(チェック)

リンク:

5)デッドコードストリップ(チェック)

GCC 4.0 - コード生成

6)

答えて

6

Objective-Cのクラスとメソッド情報を剥離することができないデバッグシンボル(チェックされていない)を生成する - それがあります実行に必要なもの。あなたが望むならば、あなたがやることができれば最高の難読化を思いつくことができます。

3

私はそれをしました。

次の3つの設定のみをチェックしましたが、他の設定は無関係です。

1)展開後処理(チェック)

3)ストリップリンク製品は、(

4)は別々のストリップが(もちろん

enter image description hereチェックし、あなたがすべき必要がある使用)をチェックスキーマエディタで "Distribution"のバージョンを確認してください。 enter image description here

次にきれい!!!ビルドします。

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip /Users/xxx/Library/Developer/Xcode/DerivedData/aaaaa-dytaamkvztdwfreoqteyeijwqdcu/Build/Products/Distribution-iphoneos/aaaaa.app/aaaaa 

enter image description here

:....リリース、一番下に、私は、進行状況の記述を見つけた 表示するログのナビゲーター、選択体系:

I'vは "ストリップ" コマンドはXcodeので呼ばれていることを確認しました

最後に、I'vは、最終製品のファイルに "NM" コマンドで結果を確認し

nm -a /Users/xxx/Library/Developer/Xcode/DerivedData/aaaaa-dytaamkvztdwfreoqteyeijwqdcu/Build/Products/Distribution-iphoneos/aaaaa.app/aaaaa

現在のアプリケーションの関数名はすべて削除されています。

000b0a00 T _pj_ioqueue_create

00092ae4 T ___destroy_helper_block_200

00092af8 T ___ 68- [MyClassのMyMethodは:PARAM2] _block_invoke_21782

注、以下の関数名として:objective-Cメソッドとプロパティ名文字列ar eはまだappファイルに生成されていますが、OSローダーのシンボル名ではなく、objective-Cクラスのメタデータです。