LoginSignup
27
30

More than 3 years have passed since last update.

【iOS】リリース時にログ出力しないようにする方法

Last updated at Posted at 2015-12-02

リリース時にログ出力しないようにする方法で、まとまっているサイトがなくて困ったのでメモ
Objetive-Cプロジェクトで使用する〜.pchを使わない方法です。

#if DEBUG を有効にする

Project -> Buid Settings -> Swift Compiler -> Other Swift Flags -> Debug
に -D DEBUG を追加する

メソッドをオーバーライドする

AppDelegateファイルのクラスの外にprintとNSLogのメソッドを追加する


func print(items: Any..., separator: String = " ", terminator: String = "\n") {
    #if DEBUG
        Swift.print(items[0], separator:separator, terminator: terminator)
    #endif
}

func NSLog(message:String){
    #if DEBUG
        Foundation.NSLog(message)
    #endif
}

func NSLog(format:String, _ args:CVarArgType...){
    #if DEBUG
        Foundation.NSLog(String(format: format, arguments: args))
    #endif
}

確認

print関数を書いたところから上記で作成したメソッドへ飛べるか確認します。
最後にコンソールに出力されていないことが確認できたら完了です。

参考にしたサイト

iOS Swift Xcode 6: Remove println() for release version

2015.12.11追記

Build Configuration をDebugにしてipaを作成すると
「#if DEBUG」に入らなかったのでメモ

27
30
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
30