GCKDeviceProvider 클래스

GCKDeviceProvider 클래스 참조

개요

기기 검색 및 세션 구성을 수행하기 위한 추상 기본 클래스입니다.

이 클래스를 확장하여 추가 기기 유형 지원을 추가할 수 있습니다. 서브클래스에서 사용하기 위한 도우미 메서드 목록은 GCKDeviceProvider(Protected) 카테고리를 참고하세요. 새 기기 제공자는 registerDeviceProvider: (GCKCastContext)를 사용하여 프레임워크에 등록됩니다.

다음 이후:
3.0

NSObject를 상속합니다.

인스턴스 메서드 요약

(instancetype) - initWithDeviceCategory:
 지정 이니셜라이저입니다. 더보기...
 
(void) - startDiscovery
 새 검색 스캔을 시작합니다. 더보기...
 
(void) - stopDiscovery
 탐색 스캔을 중지합니다. 더보기...
 
(GCKSession *) - createSessionForDevice:sessionID:sessionOptions:
 지정된 기기의 새 세션 및 기존 세션 ID(선택사항)를 생성합니다. 더보기...
 
(GCKSession *) - createSessionForDevice:sessionID:
 지정된 기기의 새 세션 및 기존 세션 ID(선택사항)를 생성합니다. 더보기...
 
(void) - notifyDidStartDiscovery
 탐색 관리자에게 검색이 시작되었음을 알립니다. 더보기...
 
(void) - notifyDidPublishDevice:
 검색 관리자에게 새 기기가 게시되었음을 알립니다. 더보기...
 
(void) - notifyDidUnpublishDevice:
 이전에 게시된 기기를 더 이상 사용할 수 없어 게시가 취소되었음을 검색 관리자에게 알립니다. 더보기...
 
(void) - notifyDidUpdateDevice:
 검색 관리자에게 이전에 게시된 기기의 디스플레이 속성 (예: 친숙한 이름 또는 아이콘) 중 하나 이상이 변경되었음을 알립니다. 더보기...
 
(GCKDevice *) - createDeviceWithID:ipAddress:servicePort:
 
(GCKDevice *) - createDeviceWithID:networkAddress:servicePort:
 GCKDevice 인스턴스를 구성하는 팩토리 메서드입니다. 더보기...
 

속성 요약

NSString * deviceCategory
 이 공급자가 검색할 기기 유형을 고유하게 식별하는 문자열입니다. 더보기...
 
BOOL passiveScan
 스캔이 수동 스캔이어야 하는지 여부입니다. 더보기...
 
NSArray< GCKDevice * > * devices
 검색된 기기의 배열입니다. 더보기...
 

메서드 세부정보

- (instancetype) initWithDeviceCategory: (NSString *)  deviceCategory

지정 이니셜라이저입니다.

지정된 유형의 기기를 위한 새 GCKDeviceProvider를 구성합니다.

Parameters
deviceCategoryA string that uniquely identifies the type of device that is managed by by this provider.
- (void) startDiscovery

새 검색 스캔을 시작합니다.

일반적으로 비동기 작업입니다. 이전 스캔에서 발견된 기기 중 더 이상 유효하지 않은 기기가 있는 경우 제공업체는 이때 기기를 게시 취소해야 합니다. 서브클래스에서 재정의해야 합니다.

스캔이 시작되고 모든 비활성 기기가 게시 취소된 경우 제공업체는 notifyDidStartDiscovery (GCKDeviceProvider(Protected))를 호출하여 반드시 검색 관리자에게 알려야 합니다. 이 메서드의 특정 구현이 스캔을 시작할 때 실행할 비동기 작업이 없으면 반환하기 직전에 알림 메서드를 호출할 수 있습니다.

- (void) stopDiscovery

탐색 스캔을 중지합니다.

서브클래스에서 재정의해야 합니다.

- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

지정된 기기의 새 세션 및 기존 세션 ID(선택사항)를 생성합니다.

서브클래스에서 재정의해야 합니다.

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
sessionOptionsThe session options, if any; otherwise nil.
다음 이후:
4.0
- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID 

지정된 기기의 새 세션 및 기존 세션 ID(선택사항)를 생성합니다.

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
Deprecated:
서브클래스는 대신 createSessionForDevice:sessionID:sessionOptions를 호출해야 합니다.
- (void) notifyDidStartDiscovery

탐색 관리자에게 검색이 시작되었음을 알립니다.

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

- (void) notifyDidPublishDevice: (GCKDevice *)  device

검색 관리자에게 새 기기가 게시되었음을 알립니다.

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

- (void) notifyDidUnpublishDevice: (GCKDevice *)  device

이전에 게시된 기기를 더 이상 사용할 수 없어 게시가 취소되었음을 검색 관리자에게 알립니다.

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

- (void) notifyDidUpdateDevice: (GCKDevice *)  device

검색 관리자에게 이전에 게시된 기기의 디스플레이 속성 (예: 친숙한 이름 또는 아이콘) 중 하나 이상이 변경되었음을 알립니다.

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
ipAddress: (NSString *)  ipAddress
servicePort: (uint16_t)  servicePort 
Deprecated:
IPv4 및 IPv6를 지원하려면 createDeviceWithID:networkAddress:servicePort: 를 사용합니다.

GCKDevice 인스턴스를 구성하는 팩토리 메서드입니다. 매개변수는 GCKDevice의 변경 불가능한 속성에 해당합니다.

Parameters
deviceIDThe unique ID identifying this device. This value must be unique among all GCKDevice objects that are created by this provider.
ipAddressThe IP address of the device, in numeric form (for example, @"10.0.0.10"). May not be nil. Supports IPv4 only.
servicePortThe service port on which connections should be made to this device. May be 0 if a service port is not applicable.

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
networkAddress: (GCKNetworkAddress *)  networkAddress
servicePort: (uint16_t)  servicePort 

GCKDevice 인스턴스를 구성하는 팩토리 메서드입니다.

매개변수는 GCKDevice의 변경 불가능한 속성에 해당합니다.

Parameters
deviceIDThe unique ID identifying this device. This value must be unique among all GCKDevice objects that are created by this provider.
networkAddressThe IP address of the device, either IPv4 or IPv6
servicePortThe service port on which connections should be made to this device. May be 0 if a service port is not applicable.
다음 이후:
4.2

GCKDeviceProvider(Protected) 카테고리별로 제공됩니다.

부동산 세부정보

- (NSString*) deviceCategory
readnonatomiccopy

이 공급자가 검색할 기기 유형을 고유하게 식별하는 문자열입니다.

- (BOOL) passiveScan
readwritenonatomicassign

스캔이 수동 스캔이어야 하는지 여부입니다.

수동 스캔은 검색 쿼리를 전송하는 빈도가 낮으므로 더 효율적이지만 최신 결과가 나오지 않습니다. 사용자가 Cast 타겟을 적극적으로 선택하지 않을 때는 수동 스캔을 실행하는 것이 좋습니다. 일부 구현에는 이 속성이 적용되지 않습니다.

- (NSArray<GCKDevice *>*) devices
readnonatomiccopy

검색된 기기의 배열입니다.