4

誰かがNSLogをアプリのリリースビルドから免除する方法を検討できますか?また、リリースバージョンにコメントが残っているかどうかは重要ですか?ありがとう!

4

4 に答える 4

6

DLogラップのようなマクロを使用NSLogして、リリースビルドでオフにします。

#ifdef DEBUG
#    define DLog(...) NSLog(__VA_ARGS__)
#else
#    define DLog(...) /* */
#endif

コメントは絶対に関係ありません。それらはソースコードにのみ含まれ、コンパイルされた出力には含まれません。ソースコードをAppleに送信するのではなく、アプリのビルドコピーのみを送信します。

于 2012-04-09T02:15:47.703 に答える
2

NSLogsを除外するために私が行うことは、これをプレフィックスファイルに追加することです。

#define NSLog(...)

そうすれば、コンパイル時に、すべてのNSLogが何も置き換えられず、空の行のようになります。

コメントに関しては、それらは決してバイナリになりません。それらはソースコードを見ることができる人だけのためのものです。

于 2012-04-09T03:07:41.500 に答える
1

DEBUGXcodeプロジェクトの新しいバージョンには、通常、デバッグバージョン用にビルドするときにマクロ定義が含まれているため、次の方法を選択するのが最も簡単な方法です。

#ifdef DEBUG
NSLog(@"Safe and sound ...");
#endif

しかし、実際には問題ではありませんが、私の経験では、コンソールに大量のログを吐かせたくない場合があります。おそらく、特定の場合にのみ必要になります。

于 2012-04-09T02:14:30.017 に答える
0

これはすでにNSLogの動作ではありませんか?それがポイントだと思いました...

于 2012-04-09T16:15:34.153 に答える