개요
세션을 관리하는 클래스입니다.
startSessionWithDevice: (GCKSessionManager) 메서드는 지정된 GCKDevice로 새 세션을 만드는 데 사용됩니다. 세션 관리자는 해당 기기 유형의 GCKDeviceProvider를 사용하여 새 GCKSession 객체를 생성하고 이 객체에 모든 세션 요청을 위임합니다.
GCKSessionManager는 정지된 세션의 자동 재개를 처리합니다. 즉, 애플리케이션이 백그라운드로 이동했을 때 또는 애플리케이션이 비정상 종료되거나 사용자에 의해 강제로 종료된 경우에는 종료된 세션을 재개합니다. 애플리케이션이 다시 시작되거나 다시 시작되면 세션 관리자는 정지된 세션 기기의 기기 제공자가 해당 기기를 다시 찾을 때까지 잠시 대기합니다. 그런 경우 해당 기기에 다시 연결하고 세션을 자동으로 다시 설정하려고 시도합니다.
애플리케이션이 타겟과 선택기를 제공하지 않고 GCKUICastButton를 만든 경우 버튼을 탭하면 기본 Cast 대화상자가 표시되며 사용자 선택 또는 기기 연결 해제에 따라 세션이 자동으로 시작되고 중지됩니다. 하지만 애플리케이션이 자체 기기 선택/제어 대화상자 UI를 제공하면 GCKSessionManager를 직접 사용하여 세션을 만들고 제어해야 합니다.
애플리케이션이 GCKSessionManager을 사용하여 세션을 제어하는지 여부와 관계없이 GCKSessionManagerListener를 연결하여 세션 이벤트 알림을 받을 수 있으며 KVO를 사용하여 connectionState 속성을 모니터링하여 현재 세션 수명 주기 상태를 추적할 수도 있습니다.
- Since
- 3.0
NSObject를 상속합니다.
인스턴스 메서드 요약 | |
(instancetype) | - init |
기본 초기화 프로그램을 사용할 수 없습니다. 더보기... | |
(BOOL) | - startSessionWithDevice: |
기기 카테고리에 등록된 기본 세션 옵션(있는 경우)을 사용하여 지정된 기기로 새 세션을 시작합니다. 더보기... | |
(BOOL) | - startSessionWithDevice:sessionOptions: |
지정된 기기 및 옵션으로 새 세션을 시작합니다. 더보기... | |
(BOOL) | - startSessionWithOpenURLOptions:sessionOptions: |
UIApplicationDelegate::application:openURL:options: 메서드에 제공된 옵션으로 세션에 참여하거나 세션을 시작하려고 시도합니다. 더보기... | |
(BOOL) | - suspendSessionWithReason: |
현재 세션을 정지합니다. 더보기... | |
(BOOL) | - endSession |
현재 세션을 종료합니다. 더보기... | |
(BOOL) | - endSessionAndStopCasting: |
현재 세션을 종료하고 전송자 기기 1개가 연결되면 전송을 중지합니다. 또는 여러 발신자 기기가 연결되면 전송을 중지합니다. 더보기... | |
(BOOL) | - hasConnectedSession |
현재 이 세션 관리자가 세션을 관리하고 있고 현재 연결되어 있는지 테스트합니다. 더보기... | |
(BOOL) | - hasConnectedCastSession |
현재 이 세션 관리자가 Cast 세션을 관리하고 있으며 현재 연결되어 있는지 테스트합니다. 더보기... | |
(void) | - setDefaultSessionOptions:forDeviceCategory: |
지정된 기기 카테고리의 기본 세션 옵션을 설정합니다.사용자가 전송 대화상자에서 기기를 선택하면 세션 옵션이 createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) 메서드에 전달됩니다. 더보기... | |
(nullable GCKSessionOptions *) | - defaultSessionOptionsForDeviceCategory: |
지정된 기기 카테고리의 기본 세션 옵션을 가져옵니다. 더보기... | |
(void) | - addListener: |
알림 수신을 위한 리스너를 추가합니다. 더보기... | |
(void) | - removeListener: |
이전에 addListener:로 추가된 리스너를 삭제합니다. 더보기... | |
속성 요약 | |
GCKSession * | currentSession |
현재 세션입니다(있는 경우). 더보기... | |
GCKCastSession * | currentCastSession |
현재 전송 세션입니다(있는 경우). 더보기... | |
GCKConnectionState | connectionState |
현재 세션 연결 상태입니다. 더보기... | |
메서드 세부정보
- (instancetype) init |
기본 초기화 프로그램을 사용할 수 없습니다.
- (BOOL) startSessionWithDevice: | (GCKDevice *) | device |
기기 카테고리에 등록된 기본 세션 옵션(있는 경우)을 사용하여 지정된 기기로 새 세션을 시작합니다.
이는 비동기 작업입니다.
- Parameters
-
device The device to use for this session.
- 반환 값
- 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 있거나 작업을 시작할 수 없는 경우NO
입니다.
- (BOOL) startSessionWithDevice: | (GCKDevice *) | device | |
sessionOptions: | (nullable GCKSessionOptions *) | options | |
지정된 기기 및 옵션으로 새 세션을 시작합니다.
이는 비동기 작업입니다.
- Parameters
-
device The device to use for this session. options The options for this session, if any. May be nil
.
- 반환 값
- 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 있거나 작업을 시작할 수 없는 경우NO
입니다.
- Since
- 4.0
- (BOOL) startSessionWithOpenURLOptions: | (GCKOpenURLOptions *) | openURLOptions | |
sessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
UIApplicationDelegate::application:openURL:options: 메서드에 제공된 옵션으로 세션에 참여하거나 세션을 시작하려고 시도합니다.
일반적으로 다른 앱에서 시작한 특정 기기의 기존 전송 세션에 참여하기 위한 요청입니다.
- Parameters
-
openURLOptions The options that were extracted from the URL. sessionOptions The options for this session, if any. May be nil
.
- 반환 값
- 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 있는 경우NO
, openURL 옵션에 필요한 전송 옵션이 포함되지 않은 경우
- Since
- 4.0
- (BOOL) suspendSessionWithReason: | (GCKConnectionSuspendReason) | reason |
현재 세션을 정지합니다.
이는 비동기 작업입니다.
- Parameters
-
reason The reason for the suspension.
- 반환 값
- 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 없거나 작업을 시작할 수 없는 경우NO
입니다.
- (BOOL) endSession |
현재 세션을 종료합니다.
이는 비동기 작업입니다.
- 반환 값
- 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 없거나 작업을 시작할 수 없는 경우NO
입니다.
- (BOOL) endSessionAndStopCasting: | (BOOL) | stopCasting |
현재 세션을 종료하고 전송자 기기 1개가 연결되면 전송을 중지합니다. 또는 여러 발신자 기기가 연결되면 전송을 중지합니다.
stopCasting
매개변수를 사용하여 세션이 종료될 때 수신기에서의 전송을 중지해야 하는지 나타냅니다. 이 매개변수는 여러 발신자 기기가 연결된 경우에만 적용됩니다. 예를 들어 여러 발신자 기기에 같은 앱이 열려 있고 각 발신자 기기에는 동일한 수신기 기기를 사용하는 활성 전송 세션이 있습니다.
stopCasting
를YES
로 설정하면 여러 기기가 연결되어 있을 때 수신기 앱이 전송을 중지합니다.stopCasting
가NO
이고 다른 기기에 활성 세션이 있으면 수신기는 계속 재생됩니다.- 발신 기기 하나만 연결된 경우 수신기 앱은 미디어 전송을 중지하고
NO
로 설정되어 있더라도stopCasting
값을 무시합니다.
- Parameters
-
stopCasting Whether casting on the receiver should stop when the session ends. Only used when multiple sender devices are connected.
- 반환 값
- 세션 종료 작업이 성공적으로 시작된 경우
YES
, 현재 설정된 세션이 없거나 작업을 시작할 수 없는 경우NO
입니다.
- (BOOL) hasConnectedSession |
현재 이 세션 관리자가 세션을 관리하고 있고 현재 연결되어 있는지 테스트합니다.
세션 상태가 GCKConnectionStateConnected인 경우 YES
입니다.
- (BOOL) hasConnectedCastSession |
현재 이 세션 관리자가 Cast 세션을 관리하고 있으며 현재 연결되어 있는지 테스트합니다.
세션 상태가 GCKConnectionStateConnected이고 세션이 Cast 세션인 경우 YES
입니다.
- (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
forDeviceCategory: | (NSString *) | category | |
지정된 기기 카테고리의 기본 세션 옵션을 설정합니다.사용자가 전송 대화상자에서 기기를 선택하면 세션 옵션이 createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) 메서드에 전달됩니다.
Cast 세션의 경우 세션 옵션에서 어떤 수신기 애플리케이션을 실행할지 지정할 수 있습니다.
- Parameters
-
sessionOptions The session options. May be nil
to remove any previously set options.category The device category.
- Since
- 4.0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: | (NSString *) | category |
지정된 기기 카테고리의 기본 세션 옵션을 가져옵니다.
- Parameters
-
category The device category.
- 반환 값
- 기본 세션 옵션 또는
nil
(없음)입니다.
- Since
- 4.0
- (void) addListener: | (id< GCKSessionManagerListener >) | listener |
알림 수신을 위한 리스너를 추가합니다.
추가된 리스너는 약하게 유지되므로 예상치 못한 할당 해제를 방지하려면 유지해야 합니다.
- Parameters
-
listener The listener to add.
- (void) removeListener: | (id< GCKSessionManagerListener >) | listener |
이전에 addListener:로 추가된 리스너를 삭제합니다.
- Parameters
-
listener The listener to remove.
부동산 세부정보
|
readnonatomicstrong |
현재 세션입니다(있는 경우).
|
readnonatomicstrong |
현재 전송 세션입니다(있는 경우).
|
readnonatomicassign |
현재 세션 연결 상태입니다.