![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ck6n3B/btsGNGf5a0K/BL1ckJNkatTARFjxKCdb90/img.png)
안녕하세요. 오늘은 오랜만에 재밌어 보이는 기능을 들고 왔습니다. 혹시 이런 거 보신 적 있나요? (패턴잠금, 영어로는 Gesture Lock 등 부르는 표현은 다양합니다.) 이거 한번 만들어 보고 싶었는데 마침 좋은걸 GitHub에서 발견해서 써볼까 합니다. * CCGestureLock Git 주소 https://github.com/hsuanchih/CCGestureLock-Swift?tab=readme-ov-file GitHub - hsuanchih/CCGestureLock-Swift: CCGestureLock (Swift) is a customisable gesture/pattern lock for iOS written in Swift. CCGestureLock (Swift) is a customi..
안녕하세요. 오늘은 자주 보이지만 은근 골때리는 오류(경고에 가깝긴 합니다.)로 찾아왔습니다. 이정도면 오류 카테고리를 따로 만들까 Attempt to present on (from ) whose view is not in the window hierarchy. (보통 노란색으로 뜹니다.) 바로 이 친구입니다. 뷰 한번씩 꼬여본 사람들이면 꽤 자주 만나게 되는 친구죠 이친구의 무서운 점은 오류가 아닌 경고로 취급되어서 코드는 돌아가지만 내가 원하는 기능은 작동을 안하게 됩니다. 주 발생원인 특정 뷰 위에 뷰를 띄우는 작업을 할때 주로 발생합니다. (특히 present 를 이용한 작업) 해결방법 기존의 뷰가 완전히 로드 되지 않은 상태에서 그 위에 뷰를 올리려다 발생한 것이기 때문에 될수있으면 viewDi..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/brSWHD/btsGknf4i7f/8NQY7AmXHfwzDZ1HzTCuvk/img.png)
자 1탄에서는 작성을 위해 알아야하는 항목들을 알아봤습니다. (1탄과 2탄 사이에 버그가 터져서 기간이 길어진건 안비밀) 그럼 이번엔 진짜 프로젝트에 만들어봐야겠죠? 1. 파일 만들기 - File > new > file 눌러주시면 아래와 같은 창이 뜨실 겁니다. - 여기서 App Privacy 눌러주세요. (안보이시면 스크롤 조금 내리시거나 검색해주세요.) - 그러면 아래처럼 PrivacyInfo 라고 뜰텐데 이름 냅두고 - 아래 보이시는 Target에 자기 앱 체크해주세요. (각자 앱에 맞게 선택해주세요.) - 그럼 이런 손바닥 모양이 나올텐데 그럼 일단 파일은 만들어진 겁니다. 2. 항목 만들기 - 처음 보면 아무것도 안보이실 겁니다. (정상입니다.) - App Privacy Configuration..
안녕하세요. 요즘 애플에서 발표한 정책때문에 유명한 친구가 하나 있습니다. 바로 Privacy manifest 인데요 이제 이 친구가 없으면 앱스토어 통과가 힘들어진다고 하네요 * 애플 일정 안내 https://developer.apple.com/news/?id=3d8a9yyh Privacy updates for App Store submissions - Latest News - Apple Developer Developers are responsible for all code included in their apps. At WWDC23, we introduced new privacy manifests and signatures for commonly used third-party SDKs and ann..
안녕하세요. 요즘 왠 버그 하나 때문에 난리를 치고 있는데 해결이 안되네요ㅠ (나중에 해결되면 박제할 생각입니다.) 아무튼 버그 하나에 시간을 너무 쓰다 보니 오늘은 머리 식힐겸 자주 쓰이는거 공부해봅시다. 혹시 코드 작업 하시다가 아래와 같은 코드를 본 적 있나요? #if DEBUG // Swift Compiler - Custom Flags 에서 - "-D이름" 으로 Other Swift Flags 에 추가해주시면 아래처럼 사용이 가능해집니다. - 디버그는 잘되는데 Release 는 잘 안되더라고요;;(이유는 저도 아직 잘 모르겠습니다) 가만 생각하면 코드 쓸때 별 생각 안하고 쓴 것 같은데 은근히 자주 보게 되는 친구여서 정리해보았습니다. 그럼 오늘도 파이팅입니다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/blSjIo/btsF2xqQZ1K/iy6fg3NLBNY1KIkOyhYVNk/img.png)
요즘 일이 좀 있다보니 정신이 없는데 그 와중에 비교적(?) 간단한 오류가 나서 정리해볼까 합니다. 발생 오류 내용은 다음과 같습니다. 주로 C 나 다른 언어를 섞어 쓰는 상황에서 많이 나온다고 하네요. (참고로 저 오류가 무더기로 떴는데 앞에 'NSAutoreleasePool' 부분만 다르고 뒤에는 다 동일했습니다.) 메세지 속에 답이 있습니다. 특정 모드에서는 저 타입을 사용할수 없다는 뜻이니 그 모드를 찾아서 꺼주시면 됩니다. 해결방법 (비권장) 오늘도 우리들의 Build Setting 으로 들어가 아래 옵션을 NO로 바꿔줍시다. 사실 코드를 수정할수있는 상황이면 아래 방법은 추천드리지 않습니다만 임시적으로 빠르게 이 문제를 해결해야 한다는 경우에만 권장드립니다. **주의** 다만 해당 옵션이 무엇..