PLogging と呼ばれるクラスの PLog と呼ばれる行番号とメソッド (セレクター) だけでなく、呼び出されたクラスを出力する NSLog の代替手段があります。名前の変更を除いて、ここから取得した DLog とまったく同じです。書かれているとおりの利点はDLog
、Release モードでコンパイルすると、ログ呼び出しがコメントに変更され、それ以外の場合に影響を受けるパフォーマンスへの影響が無効になることです。これを使用してフレームワーク内に保持できるようにしたいが、フレームワークを追加するプロジェクトから呼び出すことができるようにしたい。ただし、リリース モードでは、ログ呼び出しがコメントにコンパイルされます。これは可能ですか?
2 に答える
ホワイト リスト アプローチをお勧めします。デバッグ構成にプリプロセッサ定義を追加して、DLog/Plog がコンソールにログを記録できるようにします。それ以外の場合は、コメントになります。
あなたの問題を指摘しているように見えるこのブログ投稿をご覧ください。もちろん、機能を実現する方法、つまりマクロを変更したくないと仮定します。abit の言葉を引用します。「基本的な問題の例は、デバッグ バージョンとリリース バージョンの両方を含むライブラリにリンクすることです。そのため、アプリケーションでは、デバッグ バージョンをライブラリのデバッグ バージョンにリンクする必要があります。リリース バージョンがライブラリのリリース バージョンにリンクするようにします。」
私はむしろそのためにターゲットを使用する傾向がありますが、問題は不快に見えます.
サードパーティのフレームワークは、App Store では許可されていません。プロジェクト間の参照を使用してアプリに追加する静的ライブラリまたはソース ファイルがあると思いますか?
デバッグ構成用に設定されたデバッグ フラグを使用してライブラリ プロジェクトをセットアップし、リリース構成用に設定を解除した場合は、アプリ プロジェクトに同じ構成名を使用するだけで、ライブラリは同じ構成。