How to Debug an app after it is terminated and then reopened in Xcode?

I usually do debugging with support of print() method at which shows on Xcode logs as long as it is not terminated. However I have some conditions that I need to test in didFinishLaunchingWithOptions method of AppDelegate when the app's been terminated and then reopened. By "reopened" I mean by clicking on the app on simulator/iphone instead of running it from Xcode again. Sadly after termination print logs do not show. Any other way I could do it? Thanks!

Click on the options near the Appname on the upper-left corner of Xcode.

Click on Edit Scheme -> Check the Wait for executable to launch option and run as you usually do. Happy Coding :) .

How to Debug an app after it is terminated and then - iOS, and then reopened. By "reopened" I mean by clicking on the app on simulator/​iphone instead of running it from Xcode again. Sadly after termination print logs  After that, the App is launched and when a push notification is received the breakpoint will be working. On the other hand, you can use Xcode’s Debug > Attach to Process > By Process Identifier

In Swift 4.2,

var paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
let documentsDirectory = paths[0]
let fileName = "\(Date()).log"
let logFilePath = (documentsDirectory as NSString).appendingPathComponent(fileName)
freopen(logFilePath.cString(using: String.Encoding.ascii)!, "a+", stderr)

Just add this block of code in application:didFinishLaunchingWithOptions method in the app delegate file and it will create a log file in app document directory on iPhone which logs all console log events. You need to import this file from iTunes to see all console events.

Note: In the .plist file make sure that Application supports iTunes file sharing exists and is set to YES so that you can access through iTunes.

To get Logfiles: Launch iTunes, after your device has connected select Apps - select your App - in Augmentnt Document you will get your file. You can then save it to your disk

IPhone app crashes after a few days, However, after a few days, the application does not open and flashes a black blank on the same Iphone, it again works properly for a few days and then crashes again. https://developer.apple.com/library/ios/documentation/IDEs/​Conceptual/ dont you think app should again start working once the Iphone is restarted? Now build and run the iOS example, when you press the home button, you can see the app output log text in Xcode Debug Area —> Activate Console. You can click View —> Debug Area —> Show (Hide) Debug Area, Activate Console menu item to display the console. Please refer article How To Debug And Get Error Messages In Xcode Step By Step.

Mac Catalyst app doesn't terminate…, Mac Catalyst app doesn't terminate when window is closed note that the program actually terminates and the debugger session ends. an iOS app running under Mac Catalyst fail to terminate when the last window is closed. If not, then I could see how Apple translates that into quitting the app when the window closes. Debug > Attach to Process by PID or Name; In the dialog sheet, enter the name of your app as it appears in the Debug navigator when started via Xcode. If the app is already running, the debugger will attach to the running process. If it isn't running, it will wait for the app to launch and then attach.

You can try printing logs through "NSLog". On Xcode, go to "Devices and Simulators" and select your device. All the NSLogs will be visible there at the bottom.

Diagnosing Issues Using Crash Reports and Device Logs, Use crash reports and device logs to debug app issues. Crash reports describe how your app terminated, and document the code running on each When an app on iOS, iPadOS, watchOS, or tvOS uses memory inefficiently, less memory is​  I usually do debugging with support of print() method at which shows on Xcode logs as long as it is not terminated. However I have some conditions that I need to test in didFinishLaunchingWithOptions method of AppDelegate when the app's been terminated and then reopened.

Where does iOS console output go when it is tru |Apple Developer , I'm trying to debug an iOS app that sometimes exits "mysteriously". It's as if it's terminated by iOS with no involvement of the app code always been cleared and restarted sometime after the exit happened Of course that's measured only while the device is connected to Xcode and it never crashes then. The Xamarin.iOS debugger is integrated into your IDE and it allows developers to debug Xamarin.iOS applications built with any of the managed languages supported by Xamarin.iOS in the simulator and on the device.

Debugging iOS Apps in the Background, Most mobile developers know that iOS will wake up their app in some cases and apps that have been explicitly terminated by the user, or never restarted after a reboot of the phone. Then you can run that app and grab the Process Name. I have an iPhone connected to Xcode. I have a NSLog(@"test") on the main page. When I build (run) my app from Xcode I see it's printing test on debugging area.. Then I close my app (terminate it) from the device screen and then relaunch it from the device screen and it doesn't print test again (provided that device stays usb-connected at all time)

How to run code when your app is terminated, If you need to execute code when your app isn't running, there are several If they choose those options then your app can be launched in the so go ahead and launch your app and normal then go to the Debug menu and  Using Xcode to debug an app extension is a lot like using Xcode to debug any other process, but with one important difference: In your extension scheme’s Run phase, you specify a host app as the executable. Upon accessing the extension through that specified host’s UI, the Xcode debugger attaches to the extension.

Comments
  • this was really helpfull! in my terms of Swift usage! thankyou