xcode 3

[iOS] Xcode 11 에서 iOS 13 미만 지원 프로젝트 만들기

Xcode 11 로 업데이트 한 후에 새로운 프로젝트를 생성하면, 기본적으로 iOS의 경우 13.x 버전을 타겟으로 하는 프로젝트가 생성됩니다. 일반적으로 호환성을 높이기 위해 어느정도 하위버전으로 타겟을 변경하게 되는데, 이번 Xcode 11은 Xcode 10과 마찬가지로 iOS 8 이상을 지원합니다. 그런데, 문제가 있습니다. 프로젝트를 생성하고 빌드 타겟을 iOS 13 미만으로 설정하였을때, 에러가 발생하며 빌드되지 않는 문제가 있습니다. 구글을 검색해 보니 역시 같은 문제가 있고 해결할 수 있는 몇 가지 방법이 나오네요. 이 글에서는 그 중 파일을 삭제하지 않고 하는 방법을 남겨둡니다. 아래와 같이 SwiftUI가 아닌 Storyboard를 선택하여 프로젝트를 생성하였음에도 불구하고....빌드 타..

XCode Targets 에서 No Devices 또는 시뮬레이터 리스트가 뜨지 않는 경우

XCode를 사용하다 드물지만 가끔씩 프로젝트를 열면 타겟에 디바이스가 없다거나 시뮬레이터 리스트가 하나도 안뜨는 경우가 있습니다. 또는 iOS 용 프로젝트인데, "My Mac" 하나만 덩그러니 떠 있는 경우가 있습니다. (타겟 디바이스가 없다고 뜬다) (iOS 프로젝트인데 My Mac 하나만 뜬다) 이런 현상이 여러 상황에서 발생할 수 있으나, .xcodeproj 파일의 이름을 변경했을 때 나타나는 경우가 종종 있는것 같습니다. 해결방법을 찾아 구글과 스택오버플로를 검색하여 여러가지를 시도해 본 결과, 실제로 효과 있었던 방법을 기록해 둡니다. 1. 우선 XCode를 종료합니다. 2. 파인더에서 프로젝트 파일(.xcodeproj)을 가르키고 마우스 오른쪽 클릭을 합니다. 3. 팝업 메뉴에서 '패키지 내..

XCode 환경에서 디버그 메시지 출력

XCode로 개발할 때 Output 창으로 디버그 메시지를 출력하기 위해 NSLog를 많이 사용합니다. 하지만, NSLog는 Debug로 빌드 할 때 뿐만 아니라 Release로 빌드 하더라도, 로그 메시지를 출력한다는 단점이 있습니다. 그렇기 때문에 아무래도 불필요한 앱의 성능 저하를 가져오게 됩니다. 간단한 방법을 통해, Debug로 빌드 할 때에만 로그 메시지를 출력하도록 할 수 있습니다. 즉 Release로 빌드 한 후에는 디버그용 메시지를 볼 필요가 없기 때문에, Debug로 빌드 할 때에만 NSLog를 찍어주도록 하는 것이죠.(물론 Debug / Release 빌드 모두 봐야 할 상황도 있습니다.) 그럼 시작해 봅니다. 먼저 XCode를 실행하고, 적용할 프로젝트를 로딩 합니다. 왼쪽 프로젝트..