ภาพรวม
ชั้นเรียนที่จัดการเซสชัน
เมธอด startSessionWithDevice: (GCKSessionManager) ใช้ในการสร้างเซสชันใหม่ด้วย GCKDevice ที่กำหนด ตัวจัดการเซสชันใช้ GCKDeviceProvider สำหรับอุปกรณ์ประเภทนั้นเพื่อสร้างออบเจ็กต์ GCKSession ใหม่ซึ่งจะมอบสิทธิ์คำขอเซสชันทั้งหมดให้
GCKSessionManager จะจัดการให้เซสชันที่ถูกระงับกลับมาทำงานอีกครั้งโดยอัตโนมัติ (กล่าวคือ ทำให้เซสชันที่สิ้นสุดแล้วกลับมาทำงานอีกครั้งเมื่อแอปพลิเคชันทำงานในเบื้องหลัง หรือในกรณีที่แอปพลิเคชันขัดข้องหรือถูกบังคับให้สิ้นสุดการใช้งาน) เมื่อแอปพลิเคชันกลับมาทำงานอีกครั้งหรือรีสตาร์ท ตัวจัดการเซสชันจะรอเป็นระยะเวลาสั้นๆ เพื่อให้ผู้ให้บริการอุปกรณ์ของเซสชันที่ถูกระงับพบอุปกรณ์ดังกล่าวอีกครั้ง ซึ่งหากเป็นเช่นนั้น ตัวจัดการจะพยายามเชื่อมต่อกับอุปกรณ์ดังกล่าวและสร้างเซสชันใหม่อีกครั้งโดยอัตโนมัติ
หากแอปพลิเคชันสร้าง GCKUICastButton โดยไม่ระบุเป้าหมายและตัวเลือก เมื่อผู้ใช้แตะปุ่มดังกล่าวจะแสดงกล่องโต้ตอบการแคสต์เริ่มต้น จากนั้นแอปจะเริ่มและหยุดเซสชันโดยอัตโนมัติตามการเลือกของผู้ใช้หรือการยกเลิกการเชื่อมต่อของอุปกรณ์ แต่หากแอปพลิเคชันมี 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: |
สิ้นสุดเซสชันปัจจุบันและหยุดแคสต์หากอุปกรณ์ของผู้ส่งเชื่อมต่ออยู่ หรือจะเลือกหยุดแคสต์ก็ได้หากเชื่อมต่ออุปกรณ์ของผู้ส่งหลายเครื่อง เพิ่มเติม... | |
(BOOL) | - hasConnectedSession |
ทดสอบว่าเซสชันได้รับการจัดการโดยผู้จัดการเซสชันรายนี้หรือไม่ และเซสชันดังกล่าวกำลังเชื่อมต่ออยู่หรือไม่ เพิ่มเติม... | |
(BOOL) | - hasConnectedCastSession |
ทดสอบว่าตัวจัดการเซสชันนี้จัดการเซสชันการแคสต์อยู่หรือไม่ และเซสชันดังกล่าวมีการเชื่อมต่ออยู่หรือไม่ เพิ่มเติม... | |
(void) | - setDefaultSessionOptions:forDeviceCategory: |
ตั้งค่าตัวเลือกเซสชันเริ่มต้นสำหรับหมวดหมู่อุปกรณ์ที่ระบุ ระบบจะส่งตัวเลือกเซสชันไปยังเมธอด createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) เมื่อผู้ใช้เลือกอุปกรณ์จากกล่องโต้ตอบการแคสต์ เพิ่มเติม... | |
(nullable GCKSessionOptions *) | - defaultSessionOptionsForDeviceCategory: |
รับตัวเลือกเซสชันเริ่มต้นสำหรับหมวดหมู่อุปกรณ์ที่กำหนด เพิ่มเติม... | |
(void) | - addListener: |
เพิ่ม Listener สำหรับรับการแจ้งเตือน เพิ่มเติม... | |
(void) | - removeListener: |
นำ Listener ที่เพิ่มไว้ก่อนหน้านี้ด้วย 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 |
สิ้นสุดเซสชันปัจจุบันและหยุดแคสต์หากอุปกรณ์ของผู้ส่งเชื่อมต่ออยู่ หรือจะเลือกหยุดแคสต์ก็ได้หากเชื่อมต่ออุปกรณ์ของผู้ส่งหลายเครื่อง
ใช้พารามิเตอร์ stopCasting
เพื่อระบุว่าการแคสต์บนตัวรับควรหยุดเมื่อเซสชันสิ้นสุดลงหรือไม่ พารามิเตอร์นี้จะมีผลเมื่ออุปกรณ์ของผู้ส่งเชื่อมต่ออยู่หลายเครื่องเท่านั้น เช่น แอปเดียวกันเปิดอยู่ในอุปกรณ์ของผู้ส่งหลายเครื่อง และอุปกรณ์ของผู้ส่งแต่ละเครื่องมีเซสชันการแคสต์ที่ใช้งานอยู่ด้วยอุปกรณ์ตัวรับเดียวกัน
- หากตั้งค่า
stopCasting
เป็นYES
แอปเครื่องรับจะหยุดแคสต์เมื่อมีการเชื่อมต่ออุปกรณ์หลายเครื่อง - หาก
stopCasting
คือNO
และอุปกรณ์อื่นๆ มีเซสชันที่ใช้งานอยู่ ตัวรับสัญญาณจะยังคงเล่นต่อไป - หากเชื่อมต่ออุปกรณ์ของผู้ส่งเพียงเครื่องเดียว แอปฝั่งผู้รับจะหยุดแคสต์สื่อและไม่สนใจค่า
stopCasting
แม้ว่าจะตั้งค่าเป็นNO
ไว้ก็ตาม
- 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 |
ทดสอบว่าเซสชันได้รับการจัดการโดยผู้จัดการเซสชันรายนี้หรือไม่ และเซสชันดังกล่าวกำลังเชื่อมต่ออยู่หรือไม่
ซึ่งจะเป็น YES
หากสถานะเซสชันเป็น GCKConnectionStateConnected
- (BOOL) hasConnectedCastSession |
ทดสอบว่าตัวจัดการเซสชันนี้จัดการเซสชันการแคสต์อยู่หรือไม่ และเซสชันดังกล่าวมีการเชื่อมต่ออยู่หรือไม่
ซึ่งจะเป็นYES
หากสถานะเซสชันเป็น GCKConnectionStateConnected และเซสชันดังกล่าวเป็นเซสชันการแคสต์
- (void) setDefaultSessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
forDeviceCategory: | (NSString *) | category | |
ตั้งค่าตัวเลือกเซสชันเริ่มต้นสำหรับหมวดหมู่อุปกรณ์ที่ระบุ ระบบจะส่งตัวเลือกเซสชันไปยังเมธอด createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) เมื่อผู้ใช้เลือกอุปกรณ์จากกล่องโต้ตอบการแคสต์
สําหรับเซสชันการแคสต์ ตัวเลือกเซสชันสามารถระบุแอปพลิเคชันตัวรับที่จะเปิด
- 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 |
เพิ่ม Listener สำหรับรับการแจ้งเตือน
Listener ที่เพิ่มเข้ามาไม่มีประสิทธิภาพ และควรเก็บไว้เพื่อหลีกเลี่ยงตำแหน่งดีลที่ไม่คาดคิด
- Parameters
-
listener The listener to add.
- (void) removeListener: | (id< GCKSessionManagerListener >) | listener |
นำ Listener ที่เพิ่มไว้ก่อนหน้านี้ด้วย addListener: ออก
- Parameters
-
listener The listener to remove.
รายละเอียดที่พัก
|
readnonatomicstrong |
เซสชันปัจจุบัน หากมี
|
readnonatomicstrong |
เซสชันการแคสต์ปัจจุบัน หากมี
|
readnonatomicassign |
สถานะการเชื่อมต่อเซสชันปัจจุบัน