Question or problem in the Swift programming language:
As some of you may be aware when running in fully Debug-Mode swift can be terribly slow. Is there a way i can print out a message in code or to the GUI to let me know if I somehow forgot to compile it correctly. I’m running in mixed mode so if somebody can give me Objc and Swift code that would be super awesome.
Thanks!
How to solve the problem:
Solution 1:
I don’t think you can detect this at runtime, but you can use the DEBUG
preprocessor macro (in Objective-C) that is defined in the Debug configuration by default:
#ifdef DEBUG NSLog(@"I'm in debug mode!"); #endif
This assumes that you don’t compile without optimizations in the Release configuration 🙂
If you want to check that in Swift, you need to define a Build Configuration by adding -D DEBUG
to “Other Swift Flags” for the Debug configuration only in the Build settings. Then you can check for that configuration if #if
:
#if DEBUG println("I'm in debug mode!") #endif
Solution 2:
You can use Xcode’s schemes to add a flag as an argument or in the environment variables – you can then check for it using NSProcessInfo
– either -arguments
or -environment
.
In Xcode, go to Product > Scheme > Edit Scheme in the menu bar, select Run and under the Arguments tab, add either the argument or environment variable.