私の記憶には、NSLog
リリースされたときに動作しないようにすることができるいくつかのコードがあります。
コードから自分を削除したくありませんNSLog
。デバッグモードで大いに役立ちます。
そのため、コードにそれらを残し、リリース時にアプリケーションの速度を低下させない方法を見つけたいと思います。
助けてくれてありがとう~~
私の記憶には、NSLog
リリースされたときに動作しないようにすることができるいくつかのコードがあります。
コードから自分を削除したくありませんNSLog
。デバッグモードで大いに役立ちます。
そのため、コードにそれらを残し、リリース時にアプリケーションの速度を低下させない方法を見つけたいと思います。
助けてくれてありがとう~~
リリース内のすべての呼び出しを削除する一般的な方法NSLog(…)
は、条件付きプリプロセッサマクロの間にあり、何にもコンパイルされないマクロを作成することです。次のようになります。
#ifdef RELEASE
# define NSLog(...) //remove loggin in production
#endif
このコードを、プレフィックスヘッダー()の'dのように.h
、他のすべてのファイルに含まれるファイルに配置します。Defines.h
#include
.pch
RELEASE
ターゲットの[ビルド設定]タブでリリース構成に対して定義されたプリプロセッサマクロである必要があります。
NSLogをカスタムマクロに置き換える必要があります。
たとえば
#ifdef DEBUG
# define DLog(...) NSLog(__VA_ARGS__)
#else
# define DLog(...) /* */
#endif
#define ALog(...) NSLog(__VA_ARGS__)
プレフィックスpchファイル内。
デバッグフラグの状態に関係なく常にログ出力が必要な場合はALogを使用し、デバッグモードでのみログを出力する場合はDLogを使用します。