2015-02-02 5 views
1

WatchApp InterfaceController를 활성화하면. 먼저 OpenApparentApplication 메소드를 호출하여 parentApplication을 깨우거나 (문서에 따라 백그라운드에서 활성화) 시도합니다.Apple Watch OpenParentApplication은 부모 응용 프로그램이 열려있는 대신에 중단되도록합니다. iOS 시뮬레이터에서 부모 응용 프로그램을 수동으로 활성화해야합니다.

그러나 부모 iPhone에서 수동으로 앱을 활성화 할 때까지는 응답이 없습니다. 또한 "XXX Unexpectedly Quit"로 나를 반깁니다. 이는 내 호스트 응용 프로그램에 전화를 걸 때 어떤 이유로 그것을 추락 시켰습니다.

enter image description here

가 활성화되면, I 자유롭게 "OpenParentApplication"방식으로 정보를 교환 할 수있다. 단지에 관계없이 응답 폐쇄의 부모를 깨워 메소드를 호출

따르면 문서에, 방법 기본적으로

enter image description here

.

내 코드는 형식 안전성이 뛰어나서 질문에서 충돌을 일으키지 않으므로 가능한 무엇입니까?

추 신 : 호스트 응용 프로그램을 시작한 후에 만 ​​프로세스에 연결할 수 있기 때문에 호스트 응용 프로그램을 디버그 할 수 없습니다.

+0

또는 iPhone을 거치지 않고 호스트 응용 프로그램을 활성화하는 데 사람들이 사용하는 방법은 무엇입니까? 나의 이해를 위해, 그것은 openParentApplication이하는 일이지만, 어떻게 성공할 수 있는가? –

답변

2

openParentApplication은 백그라운드에서 응용 프로그램을 시작하므로 응용 프로그램이 시작될 때 자동으로 호출되는 여러 메소드가 호출되지 않습니다. 예를 들어 정상적인 실행에서 초기보기 컨트롤러는 viewDidLoad, viewWillAppear, viewDidAppear을 호출합니다. 이러한 메소드 중 하나라도 비 인터페이스 요소가 의존하는 앱 상태의 중요한 측면을 구성하면 백그라운드에서 실행될 때 앱이 충돌 위험이 높지만 앱이 이전에 수동으로 시작된 경우 앱이 충돌하지 않습니다. openParentApplication 라는.

0

사실 시계 확장 기능을 실행 한 후 메인 애플리케이션을 디버그 할 수 있습니다. 확장 프로그램이 Xcode에서 시작된 후 디버그 -> 프로세스 연결 -> 기본 응용 프로그램으로 이동하십시오. 이렇게하면 중단 점과 로깅을 사용할 수 있습니다. 앱이 없으면 먼저 기기에서 실행 한 다음 이동하여 다시 연결해보세요.

관련 문제