최근 IOS 개발을 Swift로 배우며 여러가지 학습을 하던 중 독특한 크래쉬를 발견했습니다.
에러 로그가 안떠서 뭐지 ? 했는데 일단 해당 에러는
EXC_BAD_ACCESS (code : 1 , address : ~~~) 라고만 쓰여있고 다른건 안 써있더라구요. Thread 1이라니 메인스레드인건 알겠는데 과연 어디가 정확히 문제일까요?
Thread 1: EXC_BAD_ACCESS
열심히 구글링한결과 일단 이 에러를 찾기 위해서는
1. XCode 상단 Product 메뉴 -> [Scheme] -> [Edit Scheme] 탭을 클릭합니다.
2. Run ->[Diagnostics] 탭에서 -> [Enable Zombie Objects] 체크박스를 체크하고 닫습니다.
그러고나서 다시 디버그를 하면 NSZombie 라며 문제가 있는곳이 나오는데 EXC_BAD_ACCESS가 어디서 나왔는지 알 수 있습니다.
?? 과 ?? 에서 중복으로 사용했다고 나오는데요
** 여기서 NSZombiEnable 옵션은 메모리 디버깅을 도와주는 장치 입니다.
대부분 메모리 문제라고 하는데
저는 ViewController를 참조하는 부분에서 중복이 있었습니다
여러분도 한번 찾아보시길바랍니다.
'프로그래밍 > IOS (Swift)' 카테고리의 다른 글
[Swift] NavigationController 사용시 코드로 Navigation Item 수정하기 & Swift 기본 이미지 사용하기(System Image) (0) | 2021.04.01 |
---|---|
[Swift] Cocoapods 이용하여 MAlert 라이브러리 사용하기 (0) | 2021.03.29 |
[Swift] 형 변환 Character to Byte(UInt8) / Byte(UInt8) to Character (0) | 2021.03.26 |
[Swift] Java 문법을 Swift에서 사용하기 - 배열,문자열 중간 추출 (System.arraycopy, .subString) 등 (0) | 2021.03.25 |
[Swift] Framework (Library) 만들고 프로젝트에 추가하기 (0) | 2021.03.24 |