Lớp GCKDeviceProvider

Tài liệu tham khảo về lớp GCKDeviceProvider

Tổng quan

Một lớp cơ sở trừu tượng để tiến hành khám phá thiết bị và tạo phiên.

Bạn có thể thêm tính năng hỗ trợ cho các loại thiết bị khác bằng cách mở rộng lớp này. Xem danh mục GCKDeviceProvider(Protected) để biết danh sách các phương thức trợ giúp dành cho các lớp con. Các nhà cung cấp thiết bị mới được đăng ký với khung này bằng cách sử dụng registerDeviceProvider: (GCKCastContext).

Năm thành lập
3

Kế thừa NSObject.

Tóm tắt phương thức thực thể

(instancetype) - initWithDeviceCategory:
 Trình khởi tạo được chỉ định. Xem thêm...
 
(void) - startDiscovery
 Bắt đầu một lượt quét khám phá mới. Xem thêm...
 
(void) - stopDiscovery
 Dừng quá trình quét khám phá. Xem thêm...
 
(GCKSession *) - createSessionForDevice:sessionID:sessionOptions:
 Tạo một phiên mới cho thiết bị đã cho và một mã phiên hiện có (không bắt buộc). Xem thêm...
 
(GCKSession *) - createSessionForDevice:sessionID:
 Tạo một phiên mới cho thiết bị đã cho và một mã phiên hiện có (không bắt buộc). Xem thêm...
 
(void) - notifyDidStartDiscovery
 Thông báo cho người quản lý khám phá rằng quá trình khám phá đã bắt đầu. Xem thêm...
 
(void) - notifyDidPublishDevice:
 Thông báo cho trình quản lý khám phá rằng một thiết bị mới đã được xuất bản. Xem thêm...
 
(void) - notifyDidUnpublishDevice:
 Thông báo cho người quản lý khám phá rằng một thiết bị xuất bản trước đây đã bị hủy xuất bản vì thiết bị đó không còn nữa. Xem thêm...
 
(void) - notifyDidUpdateDevice:
 Thông báo cho người quản lý khám phá rằng một hoặc nhiều thuộc tính hiển thị của thiết bị xuất bản trước đây (chẳng hạn như tên hoặc biểu tượng dễ sử dụng) đã thay đổi. Xem thêm...
 
(GCKDevice *) - createDeviceWithID:ipAddress:servicePort:
 
(GCKDevice *) - createDeviceWithID:networkAddress:servicePort:
 Phương thức nhà máy để tạo các thực thể GCKDevice mới. Xem thêm...
 

Tóm tắt về thuộc tính

NSString * deviceCategory
 Một chuỗi xác định duy nhất loại thiết bị mà nhà cung cấp này sẽ phát hiện được. Xem thêm...
 
BOOL passiveScan
 Xem có nên quét thụ động hay không. Xem thêm...
 
NSArray< GCKDevice * > * devices
 Mảng các thiết bị đã được phát hiện. Xem thêm...
 

Chi tiết phương pháp

- (instancetype) initWithDeviceCategory: (NSString *)  deviceCategory

Trình khởi tạo được chỉ định.

Tạo một GCKDeviceProvider mới cho các thiết bị thuộc loại đã chỉ định.

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

Bắt đầu một lượt quét khám phá mới.

Đây (thường) là hoạt động không đồng bộ. Nếu bất kỳ thiết bị nào được phát hiện trong lần quét trước đó không còn hợp lệ, nhà cung cấp nên huỷ xuất bản các thiết bị đó tại thời điểm này. Phải được các lớp con ghi đè.

Nhà cung cấp phải thông báo cho trình quản lý khám phá sau khi quá trình quét bắt đầu (và mọi thiết bị cũ đã bị huỷ xuất bản) bằng cách gọi notifyDidStartDiscovery (GCKDeviceProvider(Protected)). Nếu quy trình triển khai cụ thể của phương thức này không có công việc không đồng bộ cần thực hiện khi bắt đầu quét, thì phương thức này có thể gọi trực tiếp phương thức thông báo trước khi quay lại.

- (void) stopDiscovery

Dừng quá trình quét khám phá.

Phải được các lớp con ghi đè.

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

Tạo một phiên mới cho thiết bị đã cho và một mã phiên hiện có (không bắt buộc).

Phải được các lớp con ghi đè.

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.
Năm thành lập
4
- (GCKSession *) createSessionForDevice: (GCKDevice *)  device
sessionID: (nullable NSString *)  sessionID 

Tạo một phiên mới cho thiết bị đã cho và một mã phiên hiện có (không bắt buộc).

Parameters
deviceThe device to connect to.
sessionIDThe ID of the session to resume; or nil to start a new session.
Deprecated:
Thay vào đó, lớp con nên gọi createSessionForDevice:sessionID:sessionOptions.
- (void) notifyDidStartDiscovery

Thông báo cho người quản lý khám phá rằng quá trình khám phá đã bắt đầu.

Do danh mục cung cấp GCKDeviceProvider(Protected).

- (void) notifyDidPublishDevice: (GCKDevice *)  device

Thông báo cho trình quản lý khám phá rằng một thiết bị mới đã được xuất bản.

Do danh mục cung cấp GCKDeviceProvider(Protected).

- (void) notifyDidUnpublishDevice: (GCKDevice *)  device

Thông báo cho người quản lý khám phá rằng một thiết bị xuất bản trước đây đã bị hủy xuất bản vì thiết bị đó không còn nữa.

Do danh mục cung cấp GCKDeviceProvider(Protected).

- (void) notifyDidUpdateDevice: (GCKDevice *)  device

Thông báo cho người quản lý khám phá rằng một hoặc nhiều thuộc tính hiển thị của thiết bị xuất bản trước đây (chẳng hạn như tên hoặc biểu tượng dễ sử dụng) đã thay đổi.

Do danh mục cung cấp GCKDeviceProvider(Protected).

- (GCKDevice *) createDeviceWithID: (NSString *)  deviceID
ipAddress: (NSString *)  ipAddress
servicePort: (uint16_t)  servicePort 
Deprecated:
Sử dụng createDeviceWithID:networkAddress:servicePort: để hỗ trợ IPv4 và IPv6

Phương thức nhà máy để tạo các thực thể GCKDevice mới. Các tham số này tương ứng với các thuộc tính không thể thay đổi của 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.

Do danh mục cung cấp GCKDeviceProvider(Protected).

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

Phương thức nhà máy để tạo các thực thể GCKDevice mới.

Các tham số này tương ứng với các thuộc tính không thể thay đổi của 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.
Năm thành lập
4,2

Do danh mục cung cấp GCKDeviceProvider(Protected).

Chi tiết về cơ sở lưu trú

- (NSString*) deviceCategory
readnonatomiccopy

Một chuỗi xác định duy nhất loại thiết bị mà nhà cung cấp này sẽ phát hiện được.

- (BOOL) passiveScan
readwritenonatomicassign

Xem có nên quét thụ động hay không.

Quá trình quét thụ động gửi các truy vấn khám phá ít thường xuyên hơn, vì vậy hiệu quả hơn, nhưng kết quả sẽ không được cập nhật. Bạn nên quét thụ động khi người dùng không chủ động chọn một mục tiêu Truyền. Chỉ một số cách triển khai phù hợp với thuộc tính này.

- (NSArray<GCKDevice *>*) devices
readnonatomiccopy

Mảng các thiết bị đã được phát hiện.