Xcode 4 で #ifdef DEBUG の方法
Xcode が 4 になってかなり色々と変わったので、気が付いたところをメモしていく予定。
まずは、#ifdef DEBUG の設定方法。
Xcode 4 での #ifdef DEBUG のやりかた
コードは古いバージョンと変わらずにこんな感じで。
#ifdef DEBUG NSLog(@"Err : %@",[err localizedFailureReason]); #endif
プロジェクトの設定の方は、
1. プロジェクトのファイルを選択して右クリック、Open As... から Xcode project を選択
2. 2番目のカラムの TARGETS からアプリケーションを選択
3. 左から 3番目のタブ「Build Settings」を選択
4. 「GCC 4.2 - Preprocessing」の中に「Preprocessor Macros」があり、その中に「Debug」、「Distribution」、「Release」があるので「Debug」を選択
5. 「Debug」の右に出る「+」をクリックして「DEBUG」と入力
以上で設定終了です。
シミュレータでもデバイスでもプロジェクトを RUN すれば、コンソールにログが表示されます。
Release の scheme を作るにはどうするの?
上記設定で #ifdef DEBUG のデバッグはできるけど、Release にしてログを出さないようにするにはどうするの? プロジェクトに最初からある scheme は Debug になっているので、これを Release にした scheme を作れば良いのかな?
というわけで、良くわからないのだけど以下の手順でやってみた。
1. 「Product」メニューの「New Scheme...」を選択すると新しい scheme 名の入力になるので「Release」とでもして「OK」。
これで、それまで選択していた scheme のコピーが「Release」という名前で作成される。
2. 「Edit scheme...」で scheme の編集画面になるので、「Destination」を「Release」に変更して「OK」をクリックすれば設定完了。
以上で「Release」の scheme 作成終了。
scheme に「Release」を選択した状態でプロジェクトを RUN すれば、ログが表示されずにアプリが起動します。