Xcode를 통해서 스위프트 개발을 할 때 iOS 시뮬레이터(iOS Simulator)를 통해서 보다 쉽고 빠르게 개발한 앱의 동작을 확인할 수 있습니다. 개발한 앱을 아이폰에서 직접 확인을 하기 위해서는 '애플 개발자 프로그램'에 일정 비용을 지불하고 가입 후, 아이폰에서 확인이 가능합니다. 하지만 간단하고 비용 없이 개발한 앱을 확인하고자 하는 경우에는 iOS 시뮬레이터를 통해 쉽게 확인가능합니다. 실기기 아이폰에서 확인하는 것과 같이 거의 동일하게 시뮬레이터에서도 확인이 가능하기 때문에 개발하는 중간중간에 시뮬레이터를 통해 많이 확인을 하고는 합니다.
iOS 시뮬레이터는 실기기에서 테스트 하는 것이 아닌 맥(Mac) PC에서 확인을 하는 것이기 때문에 테스트를 하는 데 있어서 제한된 기능이 있고, iOS 기기의 모든 기능을 다 지원하지는 않습니다. 그래서 일부 기능, 지원되지 않는 기능을 확인하기 위해서는 실제 기기에서 테스트하는 것이 좋습니다.
: iOS 시뮬레이터 지원 기능
- 회전 기능(좌,우)
- 멀티 터치 기능(손가락 두 개 터치 가능)
- 흔들기 효과
- GPS 기능(좌표를 수동으로 입력)
: iOS 시뮬레이터 지원 불가 기능
- 전화 착신 시 동작하는 기능
- 카메라 기능
- 가속도 센서
- GPS로 실제 위치 취득하는 기능
: iOS 시뮬레이터(iOS Simulator) 실행
1. 시뮬레이터 디바이스 선택
시뮬레이터를 실행하기 전에 어떤 기기로 시뮬레이터를 진행할 것인지 디바이스를 선택할 수 있습니다. 현재는 'iPod touch (7th generation)'으로 설정되어 있는데 해당 부분을 클릭해서 다른 디바이스로 시뮬레이터를 실행해보겠습니다. 상단에 설정되어 있는 디바이스 영역을 클릭해주세요.
[디바이스] 영역을 클릭하시면 위와 같이 여러 다양한 디바이스 기기 목록이 나옵니다. 'iOS Simulators'의 기기 목록에서 시뮬레이터로 사용하고자 하는 아이폰 디바이스를 선택해주시면 됩니다. 저는 [iPhone 12] 디바이스로 시뮬레이터를 실행해보도록 하겠습니다.
2. 시뮬레이터 빌드 버튼 클릭
[디바이스] 선택을 하신 후, 왼쪽 상단에 있는 '▶', Build 버튼을 눌러주세요. 해당 버튼을 눌러주시면 해당 프로젝트가 빌드되면서 iOS 시뮬레이터가 실행됩니다.
3. 시뮬레이터 실행
잠시 시간을 가지고 기다려주시면 위와 같이 새로운 창이 나오면서 iOS 시뮬레이터가 실행됩니다. 상단에는 선택한 디바이스 기기 정보와 iOS 버전이 함께 안내됩니다.
스토리보드를 통해서 만든 앱의 화면이 그대로 시뮬레이터에 나타는 것을 확인할 수 있습니다. 시뮬레이터를 통해 확인하는 앱의 화면이 실기기에서 보는 화면과 거의 비슷하다고 보시면 됩니다.
또한, 실제 아이폰 기기와 동일하게 키보드 기능도 사용 가능합니다. 텍스트 필드(Text Field) 영역, 텍스트를 입력할 수 있는 영역을 클릭하시면 아래에서 키보드가 올라오고 동일하게 클릭해서 키보드 사용이 가능합니다. 그리고 키보드에서 입력하는 텍스트에 따른 자동 완성 텍스트 기능도 지원합니다.
: 시뮬레이터 디바이스 베젤 숨기기
위와 같이 시뮬레이터 디바이스의 베젤을 숨길 수도 있습니다. [Simulator] 메뉴 - [Window] - [Show Device Bezels]을 체크하시면 아이폰 디바이스 베젤이 보여지고, 체크 해제하시면 위와 같이 디바이스 베젤이 사라져 보이게 됩니다.
iOS 시뮬레이터 기능을 통해서 스위프트 개발 중에도 빠르고 쉽게 바로바로 앱의 동작 과정을 테스트 할 수 있습니다. 여러 디바이스 기기를 선택할 수 있고 그로 인해 다양한 디바이스에서의 테스트가 가능하다는 장점이 있습니다. 하지만 일부 기능의 경우 시뮬레이터에서 지원을 하지 않기 때문에 그런 경우에는 실제 기기에서 테스트를 해야만 합니다. 또한, 개발한 앱을 실제 기기, 아이폰 등에서 확인을 하고자 하신다면 애플 개발자 프로그램에 가입하신 후에 직접 확인이 가능합니다.
'스위프트(Swift)' 카테고리의 다른 글
[Swift] 아웃렛 변수(Outlet variable) 추가 및 연결하는 방법 | 아웃렛변수 문법 (0) | 2021.06.05 |
---|---|
스위프트(Swift)는 어떤 언어일까? | 스위프트 장점 및 개발환경 (1) | 2021.06.05 |
[Swift] 데이트 피커(Date Picker) 사용 및 속성 설정 방법 | 한글 설정 (0) | 2021.06.04 |
[iOS] 액션 함수(Action Function) 추가 및 활용하기 | 액션함수 문법 (0) | 2021.06.04 |
[Swift] Xcode 기본 구조 및 기본 프로젝트 파일 (0) | 2021.06.04 |