2014-02-25 1 views
5

내 앱이 배경 (또는 화면 잠김)을 입력하고 을 입력 한 후 GCKChannel이 연결 해제되고 앱이 포 그라운드로 다시 연결되면 다시 연결됩니다.iOS 발신자가 배경을 입력하는 동안 GCKChannel이 끊어졌습니다.

다음은 didDisconnect 채널에 대한 호출 스택입니다. GCKCastSocket 등록 된 알림 UIApplicationDidEnterBackgroundNotification처럼 보입니다.

#0 0x001cac58 in -[MyChannel didDisconnect] 
#1 0x001feb72 in -[GCKDeviceManager castSocket:didDisconnectWithError:] at GCKDeviceManager.m:692 
#2 0x001f8902 in -[GCKCastSocket doTeardownWithError:] at GCKCastSocket.m:187 
#3 0x001f8508 in -[GCKCastSocket disconnect] at GCKCastSocket.m:133 
#4 0x30b35e70 in __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__() 

나는 디자인 체크리스트에 따라 노력하고 있어요 : https://developers.google.com/cast/docs/design_checklist#sender-control-lockscreen

을 이것은 사용자가 자신의 iDevice를 고정 할 때 내 응용 프로그램 내 수신기 응용 프로그램에서 업데이트를하지 않는 원인이된다.

이 아이폰 OS에 필요한 아니에요 있지만, 나는 그것이 장치의 잠금을 해제하지 않고 내 수신기 응용 프로그램을 제어하는 ​​중요한 유용성 기능입니다 생각 ...

내 보낸 응용 프로그램 후크 원격 제어 이벤트, MPNowPlayingInfoCenter에 정보를 밀어 또한 시스템 볼륨 변경 이벤트를 모니터링하여 최상의 사용자 환경을 만드십시오.

백그라운드에서 수신자 앱과 메시지를주고받는 것을 계속할 수없는 경우 잠금 화면의 컨트롤이 쓸모없고 최신 정보를 갖지 못합니다. 대부분의 사용자는 TV (Chromecast)를 듣거나 시청할 때 기기 화면을 열어 두십시오. ...

해결 방법이 있습니까?

+0

정확히 같은 오류가 발생하는 해결책을 찾았습니까? – hariszaman

답변

2

네, 맞습니다. 앱 배경을 설정하면 채널이 암묵적으로 연결이 끊어집니다. 잠금 화면 컨트롤을 관리하는 경우 GCKDeviceManagerinitWithDevice:clientPackageName:ignoreAppStateNotifications 이니셜 라이저의 ignoreAppStateNotifications을 사용하여이 동작을 사용 중지 할 수 있습니다.

필요한 경우 배경 연결을 끊을 때 연결을 관리하는 것은 사용자의 책임입니다. 자세한 내용은 설명서의 설명을 참조하십시오.

+0

''ignoreAppStateNotifications''' 플래그로 잠금 화면 컨트롤을 구성하려고 시도 했습니까? 해당 플래그를 YES로 설정 한 후에도 작동하지 않습니다. 하지만 그것은 내 코드에서도 마찬가지 일 수 있습니다. –

+0

같은 문제는 해결되지 않습니다. iOS 앱이 백그라운드에서 실행될 때 수신자 앱에이 로그가 표시됩니다. '[Wed Jan 11 2017 11:48:11 GMT + 0100 (CET)] 발신자 연결이 끊어졌습니다 : 258cf69b-7b5a-537f-6a58-661fe6aece89.146 : 8E4136D0 -CA60-4A53-8518-8A03BB1BFF98 이유 : 알 수없는 사용자 에이전트 : iOS CastSDK, 3.3.0, iPhone8,1, iOS, 10.2' '[Wed Jan 11 2017 11:48:11 GMT + 0100 (CET)] 연결이 끊어졌습니다. 마스터' –