기존에 Flutter로 만들었던 회사 프로젝트를 iOS에서 구현해 보려고 WebView를 사용하던 중 "This method should not be called on the main thread as it may lead to UI unresponsiveness." 이런 에러를 조우했다.. 일단 메세지를 잘 들여다보면 '어떤 메소드가 메인스레드가 아닌 곳에서 호출되었다 또는 메인스레드에서 호출되었어야 하는데 그렇지 못하였다' 류의 문제 같은데 검색을 하다보니 내 생각이 맞았다는 것을 알 수 있었다.. Apple Developer Forum에 있는 답변 및 검색 결과로 내가 직접 시도해 본 방법들인데, 1. Xcode에서 Thread Sanitizer 를 체크하고 build 해본다. 2. Dispatch..
[##_revenue_list_upper##]
developer
[##_revenue_list_lower##]회사 프로젝트 분석을 하던도중 lazy 로 선언된 변수를 사용한 것을 보았다. 솔직히 그 당시에 필요한 부분이 아니라서 넘어갔는데, 알고보니 compile 할때 상당히 중요한 부분이어서 기록했었던 것을 공유한다. 정의 A lazy stored property is a propery whose initial value is not calculated until the first time it s used => 처음 사용되기 전까지는 연산이 되지 않는 변수 즉, 미리 이 변수에 대한 내용을 설정해두고, 이 변수를 사용하기 전까지는 설정한 내용들에 대해서 연산이 되지 않는 다는 것. 좀 난해하지만 실제적인 예를 들어보자. 예를 들어서 인스타그램 어플에 있는 스토리보기 같은 기능들을 살펴보면 처음 앱을 이니셜 ..