מחלקת GCKSessionManager

הפניה לכיתה GCKSessionManager

סקירה כללית

כיתה שמנהלת סשנים.

השיטה startSessionWithDevice: (GCKSessionManager) משמשת ליצירת סשן חדש עם GCKDevice נתון. מנהל הסשן משתמש ב-GCKDeviceProvider של סוג המכשיר הזה כדי ליצור אובייקט GCKSession חדש, שאליו הוא יאציל את כל בקשות הסשנים.

GCKSessionManager מטפל בחידוש האוטומטי של סשנים שהושעו (כלומר, ממשיך סשנים שהסתיימו כשהאפליקציה עברה לרקע, או במקרה שבו האפליקציה קרסה או שהמשתמש סגר בכוח). כאשר האפליקציה תמשיך לפעול או תופעל מחדש, מנהל ההפעלה ימתין זמן קצר עד שספק המכשיר של ההפעלה המושעית יגלה שוב את המכשיר. אם הוא יצליח, הוא ינסה להתחבר מחדש למכשיר הזה וליצור מחדש את ההפעלה באופן אוטומטי.

אם האפליקציה יצרה GCKUICastButton בלי לציין יעד ובורר, משתמש שיקיש על הלחצן יציג את תיבת הדו-שיח של העברה (cast) המוגדרת כברירת מחדל. היא תתחיל ותפסיק סשנים באופן אוטומטי, על סמך בחירה או ניתוק של המכשיר. אם האפליקציה מספקת ממשק משתמש משלה לניהול תיבת דו-שיח לבחירת מכשיר או לתיבת דו-שיח, עליה להשתמש ב-GCKSessionManager ישירות כדי ליצור סשנים ולשלוט בהם.

גם אם האפליקציה משתמשת ב-GCKSessionManager כדי לשלוט בסשנים וגם אם לא, היא יכולה לצרף GCKSessionManagerListener כדי לקבל התראה על אירועי סשנים. היא יכולה גם להשתמש ב-KVO כדי לעקוב אחר הנכס connectionState על מנת לעקוב אחרי המצב הנוכחי של מחזור החיים של הסשן.

מאז
3.0

יורש את NSObject.

סיכום שיטות של מכונה

(instancetype) - init
 מאתחל ברירת המחדל לא זמין. עוד...
 
(BOOL) - startSessionWithDevice:
 מתחיל סשן חדש עם המכשיר הנתון תוך שימוש באפשרויות ברירת המחדל של הסשן שנרשמו לקטגוריית המכשיר, אם בכלל. עוד...
 
(BOOL) - startSessionWithDevice:sessionOptions:
 התחלת סשן חדש עם המכשיר והאפשרויות שצוינו. עוד...
 
(BOOL) - startSessionWithOpenURLOptions:sessionOptions:
 ניסיונות להצטרף או להתחיל סשן עם אפשרויות שסופקו לשיטה UIApplication בודקים::application:openURL:options:. עוד...
 
(BOOL) - suspendSessionWithReason:
 משעה את הסשן הנוכחי. עוד...
 
(BOOL) - endSession
 סיום הסשן הנוכחי. עוד...
 
(BOOL) - endSessionAndStopCasting:
 הסשן הנוכחי מסתיים וההעברה מפסיקה אם מחובר מכשיר של שולח אחד. אם לא, ההעברה מפסיקה אם המכשיר מחובר. עוד...
 
(BOOL) - hasConnectedSession
 הפונקציה בודקת אם סשן מנוהל כרגע על ידי מנהל הסשן הזה, ושהוא מחובר כרגע. עוד...
 
(BOOL) - hasConnectedCastSession
 הפונקציה בודקת אם סשן ההעברה מנוהל כרגע על ידי מנהל הסשן הזה, ושהוא מחובר כרגע. עוד...
 
(void) - setDefaultSessionOptions:forDeviceCategory:
 המדיניות מגדירה את אפשרויות ברירת המחדל של הסשן לקטגוריית המכשיר הנתונה.אפשרויות הסשן מועברות ל-method createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) כשהמשתמש בוחר מכשיר בתיבת הדו-שיח 'העברה'. עוד...
 
(nullable GCKSessionOptions *) - defaultSessionOptionsForDeviceCategory:
 קבלת אפשרויות הסשן המוגדרות כברירת מחדל לקטגוריית מכשיר נתונה. עוד...
 
(void) - addListener:
 הוספת מאזינים לקבלת התראות. עוד...
 
(void) - removeListener:
 הסרה של מאזין שנוסף בעבר באמצעות addListener:. עוד...
 

סיכום הנכס

GCKSessioncurrentSession
 הסשן הנוכחי, אם יש כזה. עוד...
 
GCKCastSessioncurrentCastSession
 סשן ההעברה הנוכחי, אם יש כזה. עוד...
 
GCKConnectionState connectionState
 המצב הנוכחי של החיבור לסשן. עוד...
 

פרטי השיטה

- (instancetype) init

מאתחל ברירת המחדל לא זמין.

- (BOOL) startSessionWithDevice: (GCKDevice *)  device

מתחיל סשן חדש עם המכשיר הנתון תוך שימוש באפשרויות ברירת המחדל של הסשן שנרשמו לקטגוריית המכשיר, אם בכלל.

זוהי פעולה אסינכרונית.

Parameters
deviceThe device to use for this session.
החזרות
YES אם הפעולה התחילה בהצלחה, NO אם קיים סשן כרגע או אם לא ניתן להתחיל את הפעולה.
- (BOOL) startSessionWithDevice: (GCKDevice *)  device
sessionOptions: (nullable GCKSessionOptions *)  options 

התחלת סשן חדש עם המכשיר והאפשרויות שצוינו.

זוהי פעולה אסינכרונית.

Parameters
deviceThe device to use for this session.
optionsThe options for this session, if any. May be nil.
החזרות
YES אם הפעולה התחילה בהצלחה, NO אם קיים סשן כרגע או אם לא ניתן להתחיל את הפעולה.
מאז
4.0
- (BOOL) startSessionWithOpenURLOptions: (GCKOpenURLOptions *)  openURLOptions
sessionOptions: (nullable GCKSessionOptions *)  sessionOptions 

ניסיונות להצטרף או להתחיל סשן עם אפשרויות שסופקו לשיטה UIApplication בודקים::application:openURL:options:.

בדרך כלל זו בקשה להצטרף לסשן העברה קיים במכשיר מסוים שהופעל על ידי אפליקציה אחרת.

Parameters
openURLOptionsThe options that were extracted from the URL.
sessionOptionsThe options for this session, if any. May be nil.
החזרות
YES אם הפעולה התחילה בהצלחה, NO אם קיים סשן כרגע או שהאפשרויות openURL לא כוללות את אפשרויות ההעברה הנדרשות.
מאז
4.0
- (BOOL) suspendSessionWithReason: (GCKConnectionSuspendReason reason

משעה את הסשן הנוכחי.

זוהי פעולה אסינכרונית.

Parameters
reasonThe reason for the suspension.
החזרות
YES אם הפעולה התחילה בהצלחה, NO אם לא קיים סשן כרגע או אם לא ניתן להתחיל את הפעולה.
- (BOOL) endSession

סיום הסשן הנוכחי.

זוהי פעולה אסינכרונית.

החזרות
YES אם הפעולה התחילה בהצלחה, NO אם לא קיים סשן כרגע או אם לא ניתן להתחיל את הפעולה.
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

הסשן הנוכחי מסתיים וההעברה מפסיקה אם מחובר מכשיר של שולח אחד. אם לא, ההעברה מפסיקה אם המכשיר מחובר.

אפשר להשתמש בפרמטר stopCasting כדי לציין אם ההעברה (cast) למקלט צריכה להיפסק כשהסשן מסתיים. הפרמטר הזה חל רק כאשר מחוברים מספר מכשירים של שולח. לדוגמה, אותה אפליקציה פתוחה במספר מכשירים של שולחים, ולכל מכשיר שולח יש פעילות העברה (cast) פעילה באותו מכשיר של המקבל.

  • אם מגדירים את stopCasting לערך YES, האפליקציה המקבלת תפסיק את ההעברה כשמספר מכשירים מחוברים.
  • אם stopCasting הוא NO ובמכשירים אחרים יש סשן פעיל, המקבל ממשיך לפעול.
  • אם רק מכשיר שולח אחד מחובר, אפליקציית המקבל מפסיקה את העברת המדיה ומתעלמת מהערך של stopCasting, גם אם הוא מוגדר ל-NO.
Parameters
stopCastingWhether 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 

המדיניות מגדירה את אפשרויות ברירת המחדל של הסשן לקטגוריית המכשיר הנתונה.אפשרויות הסשן מועברות ל-method createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) כשהמשתמש בוחר מכשיר בתיבת הדו-שיח 'העברה'.

לגבי סשנים של העברה (cast), אפשרויות הסשן יכולות לציין איזו אפליקציית מקלט תופעל.

Parameters
sessionOptionsThe session options. May be nil to remove any previously set options.
categoryThe device category.
מאז
4.0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: (NSString *)  category

קבלת אפשרויות הסשן המוגדרות כברירת מחדל לקטגוריית מכשיר נתונה.

Parameters
categoryThe device category.
החזרות
אפשרויות הסשן שמוגדרות כברירת מחדל, או nil אם אין.
מאז
4.0
- (void) addListener: (id< GCKSessionManagerListener >)  listener

הוספת מאזינים לקבלת התראות.

ה-listener שצורף מוחזק חלש וצריך לשמור אותו כדי להימנע משיתוף פעולה בלתי צפוי.

Parameters
listenerThe listener to add.
- (void) removeListener: (id< GCKSessionManagerListener >)  listener

הסרה של מאזין שנוסף בעבר באמצעות addListener:.

Parameters
listenerThe listener to remove.

פרטי הנכס

- (GCKSession*) currentSession
readnonatomicstrong

הסשן הנוכחי, אם יש כזה.

- (GCKCastSession*) currentCastSession
readnonatomicstrong

סשן ההעברה הנוכחי, אם יש כזה.

- (GCKConnectionState) connectionState
readnonatomicassign

המצב הנוכחי של החיבור לסשן.