수색…


중단 점

xcode 개발자는 실행중인 앱의 실행을 일시 중지 / 중단 할 수 있으며 프로그램 상태를 검사 할 수 있습니다.

실행중인 프로그램을 일시 중지하는 방법은 다음과 같습니다.
중단 점을 넣으려는 파일을 열고 실행을 일시 중지하려는 왼쪽의 거터에있는 선을 클릭하기 만하면됩니다.

여기에 이미지 설명을 입력하십시오.

그래서 여기에 21 번과 38 번 줄에 중단 점을 놓았습니다. 실행이 38 행에 도달하면 Xcode는 실행을 일시 중지하고 해당 행에 녹색 선을 표시합니다.

디버그 게이지 (Debug Gauges) 는 CPU 사용량, 메모리 사용량 및 스레드 및 함수 이름이 포함 된 실행 스택의 하단을 보여줍니다. 어떤 스택이나 함수 시퀀스가이 줄 바꿈으로 이어질 지 알 수 있습니다.

Variables View 는 breaded line의 범위에있는 모든 변수의 상태와 값에 대한 모든 세부 사항을 제공합니다. 우리는 값, 메모리 주소, 인스턴스의 속성 및 세부 정보를 볼 수 있습니다.

콘솔 은 범위에있는 변수의 값을 인쇄하는 데 사용할 수 있습니다. PO 명령을 사용하여이 작업을 수행 할 수 있습니다.

디버그 막대 에는 중단 점에 대한 컨트롤이 있습니다.

  • 첫 번째 버튼은 일시 중지 된 중단 점을 활성화 / 비활성화하는 버튼입니다.
  • 두 번째 버튼은 프로그램 실행을 일시 중지 / 다시 시작하는 데 사용됩니다.
  • 세 번째 단계는 다음 행으로 실행하는 데 사용되는 단계별 단추입니다.
  • Step-In의 네 번째 버튼은 현재 실행중인 함수 내부에 입력하는 데 사용됩니다.
  • 다섯째는 현재 기능을 빠져 ​​나오기위한 스텝 아웃 버튼입니다.

중단 점 구성 :
우리는 심지어 중단 점을 더 많이 제어 할 수 있습니다.

여기에 이미지 설명을 입력하십시오.

삭제는 간단한 기능을 비활성화합니다.
네비게이터에 공개하면 프로젝트의 모든 중단 점이 파일 네비게이터로 나열되는 중단 점 탐색기로 이동합니다.
중단 점 편집은 자세한 디버깅을 위해 더 자주 사용해야하는 것입니다. 이 함수를 사용하여 중단 점을 구성 할 수 있습니다. 다음과 같이 중단 점에 대한 조건과 조치를 취할 수 있습니다.

여기에 이미지 설명을 입력하십시오.

image에서 볼 수 있듯이, path != nil 경우에만 중단 점이 일시 중지됩니다. 이 조건이 참이면 po _routeStartLocation 조치가 실행되고 언급됩니다. po 는 콘솔에서 _routeStartLocation 값을 인쇄합니다.

양식에 대한 자세한 설명 은이 자세한 링크를 참조하십시오 .

Xcode-9의 무선 디버깅

최근에 Apple이 iOS11과 Xcode-9를 내놓았을 때 USB를 통해 Xcode에 장치를 연결하지 않고도 장치에서 응용 프로그램을 디버깅 할 수 있습니다.
우리는이 Xcode-9에 추가 된 무선 디버깅 기능을 이용할 수 있습니다.

무선 디버깅을 사용하려면 Xcode에서 몇 가지 단계를 구성해야합니다.
1 먼저 iOS11을 실행하는 장치를 Xcode-9에 연결합니다.
2 Xcode 메뉴의 윈도우> 장치 및 시뮬레이터로 이동하고 장치 탭에서 연결된 장치가 나열됩니다.
3 다음 그림과 같이 네트워크에 연결 확인란을 선택합니다.

여기에 이미지 설명을 입력하십시오.
(이미지 제공 : Surjeets의 SO 게시물 )

4 USB 코드에서 장치를 분리하고 Xcode를 실행하는 iPhone / iPad / iPod 장치 및 Mac가 동일한 무선 네트워크에 있는지 확인하십시오.
5 Xcode에이 장치가 나열되어 있으며 해당 장치에서 직접 응용 프로그램을 실행할 수 있습니다.

USB를 사용하여 연결된 것처럼 Xcode를 사용하여 모든 작업을 수행 할 수 있습니다. Xcode를 사용하여 앱을 실행하고 배경에두고 백그라운드 상태로 일시 중지 한 다음 다시 실행 하면 로그가 표시되지 않습니다 . 이것은 USB 디버깅으로 가능합니다.

노트:
1 기기에서 실행되는 Xcode-9, iOS 11을 사용해야합니다.
2 장치와 Mac 모두 동일한 무선 네트워크에 있어야합니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow