오류 내용 Xcode 에서 아래와 같이 멋진 오류를 마주했다... 도저히 무슨 오류인지 알수가 없다. 시뮬레이터 관련 오류인 것 같은데... 해결 Product → Scheme 로 가서 Run → Environment Variables → + → OS_ACTIVITY_MODE: disable 해주면 해결된다! 참고 nw_connection_get_connected_socket_block_invoke 19 Connection has no connected handler The console of Xcode continue print __nw_connection_get_connected_socket_block_invoke 6 Connection has no connected handler stackoverf..
→ Xcode
Xcode 에는 놀랍게도 Thread 의 경쟁 상황을 체크할 수 있는 툴이 있다. 바로 Thread Sanitizer 라는 것인데... 사용방법은 간단하다. 해당 프로젝트에서 Product 메뉴로 들어가면 아래에 Scheme → Edit Scheme 에 들어간다. 혹은 Xcode 중앙 상단에 Edit Scheme 바로 갈수 있는 경로가 있다. Run → Diagnostics 에 가서 Thread Sanitizer 를 선택해 주고 빌드한다. 빌드시간이 오래 걸리니 체크하고 빌드한 후에 다시 체크 해제해주는 것이 좋다. 여기서 실기기 말고 시뮬레이터를 선택해줘야 Thread Sanitizer 를 체크할수 있는 듯 하다. 시뮬레이터에 빌드를 하게 되면 아래와 같이 해당 코드에 Data race 보라색 오류가 ..
프로젝트를 진행하다보면 내 프로젝트는 총 몇줄일까? 궁금할때가 있다. 이럴때 아주 간단한 방법이 있다! 우선 터미널을 열어준다. 나는 보통 해당 폴더에서 이렇게 터미널을 열어준다. 혹은 cd ~/Desktop/DayCounter 같은 식으로 해당 폴더에 들어가준다! 아래와 같은 명령어를 입력해준다. find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.swift" ")" -print0 | xargs -0 wc -l 그렇게 되면 짜잔! 아래와 같이 파일명들과 줄수가 표시되게 된다. 총 717줄이고 몇가지의 파일들은 리팩토링이 필요하겠구나... 생각이 된다.
SwiftLint 란? GitHub - realm/SwiftLint: A tool to enforce Swift style and conventions. A tool to enforce Swift style and conventions. Contribute to realm/SwiftLint development by creating an account on GitHub. github.com Swift 언어로 앱을 개발하다보면 코드의 스타일, 컨벤션을 맞추는데 어려움이 있다. 이때 SwiftLint 를 사용하여 코드의 스타일과 컨벤션을 효과적으로 맞출수 있다. SwiftLint 를 적용하여 코드를 작성하면 SwiftLint 에서 적용한 스타일과 맞지 않는다면 아래와 같이 Warning 이 뜨게 된다. 빌드..
Xcode 로 커스텀 폰트를 적용하려다 보면 폰트가 도저히 적용되지 않을 때가 있다. 아래와 같은 절차를 따른다면 무조건 적용이 가능할 것이다. 😇 타겟 확인해 보기 폰트를 추가했을 때 Target Memebership 도 같이 선택했을 것이다. 다시 한번 타겟을 앱으로 잘 설정해 줬는지 확인해 보자 Info.plist 살펴보기 Info 로 들어가서 Fonts provided by application 의 item 에 폰트가 확장자까지 잘 추가되어 있는지 확인해 보자! 빌드해서 폰트 이름 확인해 보기 그렇게 된다면 아래와 같이 모든 fontName 을 프린트해 보면 아마 파일이름과 다르게 되어있는 것을 발견할 수 있을 것이다. .onAppear { for fontFamily in UIFont.family..