I keep getting Thread 1: Signal SIGABRT Xcode Error when launching apps…
Thread 1: Signal SIGABRT: If your following an online learning course like me, you know how frustrating it is to have your code not work. Especially when that code is identical to the instructors. For me, I’m learning Swift iOS 10 on a Udemy course taught by Rob Percival. The course has been going fairly well, but obviously gets confusing at times.
One thing that has really proven annoying, was that I kept getting the same error when trying to launch my apps. Thread 1: Signal SIGABRT, with zero explanation of what that means or how to fix it. So, like any other person, I turn to stackexchange.com and browse forums that give you correct answers, but using terms that I’ve still never heard before. But luckily I put the pieces together and figured it out and can solve this error regularly now.
Don’t worry I’m getting to your solution, here it is:
So when your app doesn’t launch because of a Thread 1: Signal SIGABRT error in the AppDelegate.swift file, it means one one the outlets you dragged in is causing the error. By an outlet, I mean a label, button, text field, could be anything. This could have happened because you changed the name of the variable or something. Or maybe you dragged a first outlet in and deleted it to put in a different one, so you need to delete that one.
Now, you probably have no idea which outlet you put in is wrong… To find this, look at the tableview on the main.storyboard file. There are three buttons at the top-center of the table view, you want to find the top left yellow button, called the view controller. Right click on that and you’ll see a list of outlets, one of them should have a yellow exclamation point next to it.
Thread 1: Signal SIGABRT Error in AppDelegate.swift File
If there’s two of the same outlets showing and one is giving the error, all you have to do is delete that one outlet, right there in the view controller by hitting the X button. When there’s only one of these outlets, something went wrong and you’ll have to recreate it, whether it’s a textfield, label, button, etc.
If you already created all you’re code, you may be thinking, “I don’t want to create a whole new variable and change it everywhere!!” Don’t worry. If you’re creating a new outlet because of a Thread 1: Signal SIGABRT error, just simply drag it in and give it the exact same variable name.
Now your code should work 🙂 As long as there’s no other errors going on!