שיעור GCKSession

מאמר עזרה בנושא GCKSession Class

סקירה כללית

מחלקה בסיסית מופשטת שמייצגת סשן עם מכשיר מקלט.

מחלקות משנה צריכות להטמיע את השיטות start (GCKSession(Protected)), endAndStopCasting: (GCKSession(Protected)), suspendWithReason: (GCKSession(Protected)) ו-resume (GCKSession(Protected)), ולקרוא לשיטות המתאימות של ההתראה (לדוגמה, notifyDidStartWithSessionID: (GCKSession(Protected))) כדי לציין שינויים תואמים במצב הסשן. מחלקות משנה יכולות גם להטמיע את setDeviceVolume: (GCKSession), setDeviceMuted: (GCKSession) ו-remoteMediaClient אם המכשיר תומך בפעולות כאלה.

סשן נוצר ונשלט באמצעות שיטות הסשן ב-GCKSessionManager, שמשתמש באובייקט GCKDeviceProvider המתאים כדי ליצור את הסשן, ואז מעביר את בקשות הסשן לאובייקט GCKSession הזה.

מאז
3.0

המחלקות האלה יורשות מ-NSObject.

הועברה בירושה מ-GCKCastSession.

סיכום שיטות המופע

(instancetype) - initWithDevice:traits:sessionID:
 יוצר אובייקט חדש של סשן למכשיר הנתון. עוד...
 
(GCKRequest *) - setDeviceVolume:
 הגדרת עוצמת הקול של המכשיר. עוד...
 
(GCKRequest *) - setDeviceMuted:
 הגדרת מצב ההשתקה של המכשיר. עוד...
 
(void) - start
 מתחילים את הסשן. עוד...
 
(void) - endAndStopCasting:
 מסיים את הסשן. עוד...
 
(void) - suspendWithReason:
 הפסקת הסשן מהסיבה שצוינה. עוד...
 
(void) - resume
 המשך הפעילות. עוד...
 
(void) - notifyDidStartWithSessionID:
 מופעל על ידי מחלקות משנה כדי להודיע למסגרת שהסשן התחיל. עוד...
 
(void) - notifyDidFailToStartWithError:
 מופעל על ידי מחלקות משנה כדי להודיע למסגרת שהסשן נכשל בהתחלה. עוד...
 
(void) - notifyDidResume
 מופעל על ידי מחלקות משנה כדי להודיע למסגרת שהסשן חודש. עוד...
 
(void) - notifyDidSuspendWithReason:
 הפונקציה הזו נקראת על ידי מחלקות משנה כדי להודיע למסגרת שהסשן הושעה. עוד...
 
(void) - notifyDidEndWithError:
 מופעל על ידי מחלקות משנה כדי להודיע למסגרת שהסשן הסתיים. עוד...
 
(void) - notifyDidReceiveDeviceVolume:muted:
 מופעל על ידי מחלקות משנה כדי להודיע למסגרת שקיבלה מהמכשיר עדכון של עוצמת הקול והסטטוס של השתקת המכשיר. עוד...
 
(void) - notifyDidReceiveDeviceStatus:
 הפונקציה נקראת על ידי מחלקות משנה כדי להודיע למסגרת שסטטוס מעודכן התקבל מהמכשיר. עוד...
 

סיכום הנכס

GCKDevicedevice
 המכשיר שהסשן הזה משויך אליו. עוד...
 
NSString * sessionID
 מזהה הסשן הנוכחי, אם יש כזה. עוד...
 
GCKConnectionState connectionState
 מצב החיבור של הסשן הנוכחי. עוד...
 
BOOL suspended
 דגל שמציין אם הסשן מושעה כרגע. עוד...
 
NSString * deviceStatusText
 הטקסט של סטטוס המכשיר הנוכחי. עוד...
 
GCKSessionTraitstraits
 מאפייני הסשן. עוד...
 
float currentDeviceVolume
 עוצמת הקול הנוכחית של המכשיר, בטווח [0.0, 1.0]. עוד...
 
BOOL currentDeviceMuted
 מצב ההשתקה של המכשיר הנוכחי. עוד...
 
GCKRemoteMediaClientremoteMediaClient
 אובייקט GCKRemoteMediaClient שאפשר להשתמש בו כדי לשלוט בהפעלת מדיה בסשן הזה. עוד...
 
GCKMediaMetadatamediaMetadata
 המטא-נתונים הנוכחיים של המדיה, אם יש כאלה. עוד...
 

פרטי השיטה

- (instancetype) initWithDevice: (GCKDevice *)  device
traits: (GCKSessionTraits *)  traits
sessionID: (NSString *__nullable)  sessionID 

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

Parameters
deviceThe device.
traitsThe session traits.
sessionIDThe session ID of an existing session, if this object will be used to resume a session; otherwise nil if it will be used to start a new session.
- (GCKRequest *) setDeviceVolume: (float)  volume

הגדרת עוצמת הקול של המכשיר.

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

Parameters
volumeThe new volume.
החזרות
אובייקט GCKRequest למעקב אחרי הבקשה.
מאז
3.4; בגרסאות קודמות של המסגרת, השיטה הזו החזירה void.
- (GCKRequest *) setDeviceMuted: (BOOL)  muted

הגדרת מצב ההשתקה של המכשיר.

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

Parameters
mutedThe new mute state.
החזרות
אובייקט GCKRequest למעקב אחרי הבקשה.
מאז
3.4; בגרסאות קודמות של המסגרת, השיטה הזו החזירה void.
- (void) start

מתחילים את הסשן.

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

מאת קטגוריה GCKSession(Protected).

- (void) endAndStopCasting: (BOOL)  stopCasting

מסיים את הסשן.

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

Parameters
stopCastingWhether to stop casting content to the receiver.

מאת קטגוריה GCKSession(Protected).

- (void) suspendWithReason: (GCKConnectionSuspendReason reason

הפסקת הסשן מהסיבה שצוינה.

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

מאת קטגוריה GCKSession(Protected).

- (void) resume

המשך הפעילות.

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

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidStartWithSessionID: (NSString *)  sessionID

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

Parameters
sessionIDThe session's unique ID.

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidFailToStartWithError: (NSError *)  error

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

Parameters
errorThe error that occurred.

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidResume

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

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidSuspendWithReason: (GCKConnectionSuspendReason reason

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

Parameters
reasonThe reason for the suspension.

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidEndWithError: (NSError *__nullable)  error

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

Parameters
errorThe error that caused the session to end, if any. Should be nil if the session was ended intentionally.

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidReceiveDeviceVolume: (float)  volume
muted: (BOOL)  muted 

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

Parameters
volumeThe device's current volume. Must be in the range [0, 1.0];
mutedThe device's current mute state.

מאת קטגוריה GCKSession(Protected).

- (void) notifyDidReceiveDeviceStatus: (NSString *__nullable)  statusText

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

Parameters
statusTextThe new status.

מאת קטגוריה GCKSession(Protected).

פרטי הנכס

- (GCKDevice*) device
readnonatomicstrong

המכשיר שהסשן הזה משויך אליו.

- (NSString*) sessionID
readnonatomiccopy

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

- (GCKConnectionState) connectionState
readnonatomicassign

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

- (BOOL) suspended
readnonatomicassign

דגל שמציין אם הסשן מושעה כרגע.

- (NSString*) deviceStatusText
readnonatomiccopy

הטקסט של סטטוס המכשיר הנוכחי.

- (GCKSessionTraits*) traits
readnonatomiccopy

מאפייני הסשן.

- (float) currentDeviceVolume
readnonatomicassign

עוצמת הקול הנוכחית של המכשיר, בטווח [0.0, 1.0].

- (BOOL) currentDeviceMuted
readnonatomicassign

מצב ההשתקה של המכשיר הנוכחי.

- (GCKRemoteMediaClient*) remoteMediaClient
readnonatomicstrong

אובייקט GCKRemoteMediaClient שאפשר להשתמש בו כדי לשלוט בהפעלת מדיה בסשן הזה.

היא nil לפני שהסשן התחיל, או אם הסשן לא תומך ב-API‏ GCKRemoteMediaClient. במחלקות משנה שמספקות ממשק GCKRemoteMediaClient, צריך לבטל את השיטה getter.

- (GCKMediaMetadata*) mediaMetadata
readnonatomicstrong

המטא-נתונים הנוכחיים של המדיה, אם יש כאלה.

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