iphone - 프로젝트 - 푸시 알림으로 시작될 때 응용 프로그램 디버깅




소스 파일 은 디버깅 중인 프로젝트 에 속하지 않습니다 (4)

XCode <4.0 (XCode> = 4 인 경우, 아래 delirus의 답변 참조)에서 디버거를 통해 앱을 시작하는 대신 디버거를 실행 한 후 앱에 연결하도록 Xcode를 구성 할 수 있습니다. 이를 통해 URL 스키마, 게시판 및 푸시 알림과 같은 응용 프로그램의 실행 상태에 따라 달라지는 사항을 디버깅 할 수 있습니다.

  1. 소스 바의 Xcode보기에서 대상 아래에 실행 파일이 있습니다.
  2. 실행 파일에서 앱의 관리자를 불러 오십시오.
  3. Inspector에서 Debugging 탭 탭을 클릭하십시오.
  4. "디버거를 시작한 후에 실행 파일 시작"을 선택 취소하십시오.
  5. "다음 실행 / 푸시 알림 기다리기"확인란을 선택하십시오.

이제 앱을 실행하는 대신 Xcode에서 디버그를 클릭하면 앱이 시작될 때까지 기다리는 중임을 알리는 창이 표시됩니다. 그런 다음 휴대 전화에서 앱을 정상적으로 실행하면 Xcode가 앱에 연결합니다.

현재 푸시 알림을받는 앱을 개발 중입니다. 나는이 모든 PHP 페이지를 통해 100 % 일하고있다. 내 앱에서받을 수있는 여러 가지 유형의 푸시 알림이 있습니다. PHP는 이것을 처리하고 다른 모든 정보 패킷을 내 애플 리케이션에 보낸다.

그러나 사용자가 알림을보고 '내 앱이 시작됩니다.'라는 메시지가 표시되면 사용자가 앱을 수동으로 시작한 경우와 다른 방식으로 푸시 알림 유형에 따라 다른 조치를 취하는 것이 좋습니다. 나는 구조적으로 잘 작동한다.

내 푸시 유형 중 하나는 여러 서버에 여러 연결을 만들고 앞뒤로 데이터를 협상하는 UIView를 여는 것으로되어 있습니다. 예를 들어, 주 메뉴에서 트리거 할 때이 UIView 잘 작동 - 내 푸시 알림이 UIView 나타나도록 트리거 할 때 소켓 연결이 예상대로 작동하지 않습니다.

이제 내 질문은 소켓에 관한 것이 아니라 더 많이 그렇다. 어떻게 그런 문제를 디버깅 할 것인가? 응용 프로그램이 푸시 알림에서 시작되면 디버거 / 콘솔 / etc ...에 해당 실행을 연결할 수있는 방법이 없다는 것을 알 수 있습니다 (상대적으로 새로운 기능입니다). 코드를 사용하여 디버깅을 시도하는 데 매우 어려움을 겪고 있습니다. UIAlertViews, 다양한 서버간에 여러 통신을주고받을 수 있습니다.

네게 해주는 충고는 크게 감사 할 것이다.


Xcode 4의 경우 다음을 수행해야합니다.

  1. "구성표"드롭 다운을 통해 활성 구성표를 편집하십시오. ( + < )
  2. 제품을 선택하기보다는 왼쪽의 'Run MyApp.app'를 선택하십시오.
  3. 오른쪽의 '정보'탭을 선택하십시오.
  4. 마지막으로 "MyApp.app 실행 대기"옵션을 선택하십시오.

자세한 here 은 "구성표 편집기에서 실행 파일 사용자 지정"단원을 참조하십시오.

편집하다:
GDB에서 로그가 누락 된 경우, 루이 거 버그 (Louis Gerbarg)의 대답을 참조하십시오.


푸시 알림을 사용하지 않으므로 푸시 알림의 정확한 작동을 알 수 없습니다. 그러나 가능한 경우 프로그램의 주요 메소드가 게시 된 것처럼 보이거나 applicationDidFinishLaunching : 메소드 내에서 didFinishLaunchingWithOptions : UIApplicationDelegate 메소드를 호출하여 푸시 알림 수신을 모방하려고 시도합니다.

HTH - 건배, Daan


XCode 10, 9, 8, 7 & 6의 경우 :

  1. 툴바에서 (디버깅하고있는 장치의 왼쪽에 있는) Scheme선택하십시오.
  2. 구성표 편집을 선택 하십시오.
  3. 왼쪽 패널에서 실행 을 선택 하십시오 .
  4. 시작 옵션의 경우 실행 파일 대기 시작 을 선택하십시오.
  5. Scheme Editor를 닫고 Xcode 프로젝트를 실행 하십시오.

이제 알림, 사용자 정의 URL 또는 앱 아이콘을 터치하여 시작할 때 디버깅 할 수 있습니다.





push-notification