کلاس 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:
تلاش برای پیوستن یا شروع یک جلسه با گزینه هایی که به روش UIApplicationDelegate::application:openURL:options: ارائه شده است. بیشتر...
(BOOL) - suspendSessionWithReason:
جلسه جاری را به حالت تعلیق در می آورد. بیشتر...
(BOOL) - endSession
جلسه جاری را پایان می دهد. بیشتر...
(BOOL) - endSessionAndStopCasting:
در صورت اتصال یک دستگاه فرستنده، جلسه جاری را پایان می دهد و ارسال را متوقف می کند. در غیر این صورت، در صورت اتصال چند دستگاه فرستنده، به صورت اختیاری ارسال را متوقف می کند. بیشتر...
(BOOL) - hasConnectedSession
آزمایش می کند که آیا یک جلسه در حال حاضر توسط این مدیر جلسه مدیریت می شود و در حال حاضر متصل است. بیشتر...
(BOOL) - hasConnectedCastSession
آزمایش می‌کند که آیا جلسه Cast در حال حاضر توسط این مدیر جلسه مدیریت می‌شود و در حال حاضر متصل است. بیشتر...
(void) - setDefaultSessionOptions:forDeviceCategory:
گزینه‌های جلسه پیش‌فرض را برای دسته دستگاه داده شده تنظیم می‌کند. هنگامی که کاربر دستگاهی را از کادر گفتگوی Cast انتخاب می‌کند، گزینه‌های جلسه به روش createSessionForDevice:sessionID:sessionOptions: (GCKDeviceProvider) منتقل می‌شوند. بیشتر...
(nullable GCKSessionOptions *) - defaultSessionOptionsForDeviceCategory:
گزینه های جلسه پیش فرض را برای یک دسته دستگاه معین دریافت می کند. بیشتر...
(void) - addListener:
یک شنونده برای دریافت اعلان ها اضافه می کند. بیشتر...
(void) - removeListener:
شنونده ای را که قبلاً با addListener: . بیشتر...

خلاصه اموال

GCKSession currentSession
جلسه فعلی، در صورت وجود. بیشتر...
GCKCastSession currentCastSession
جلسه فعلی Cast، در صورت وجود. بیشتر...
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  

تلاش برای پیوستن یا شروع یک جلسه با گزینه هایی که به روش UIApplicationDelegate::application:openURL:options: ارائه شده است.

معمولاً این درخواست برای پیوستن به جلسه Cast موجود در دستگاه خاصی است که توسط برنامه دیگری آغاز شده است.

Parameters
openURLOptionsThe options that were extracted from the URL.
sessionOptionsThe options for this session, if any. May be nil .
برمی گرداند
اگر عملیات با موفقیت شروع شده باشد، YES NO اگر در حال حاضر جلسه ای برقرار باشد، خیر، یا گزینه های openURL شامل گزینه های Cast مورد نیاز نیستند.
از آنجا که
4.0
- (BOOL) suspendSessionWithReason: ( GCKConnectionSuspendReason reason

جلسه جاری را به حالت تعلیق در می آورد.

این یک عملیات ناهمزمان است.

Parameters
reasonThe reason for the suspension.
برمی گرداند
اگر عملیات با موفقیت شروع شده باشد، YES NO اگر در حال حاضر هیچ جلسه ای وجود نداشته باشد یا اگر عملیات نمی تواند شروع شود، خیر.
- (BOOL) endSession

جلسه جاری را پایان می دهد.

این یک عملیات ناهمزمان است.

برمی گرداند
اگر عملیات با موفقیت شروع شده باشد، YES NO اگر در حال حاضر هیچ جلسه ای وجود نداشته باشد یا اگر عملیات نمی تواند شروع شود، خیر.
- (BOOL) endSessionAndStopCasting: (BOOL)  stopCasting

در صورت اتصال یک دستگاه فرستنده، جلسه جاری را پایان می دهد و ارسال را متوقف می کند. در غیر این صورت، در صورت اتصال چند دستگاه فرستنده، به صورت اختیاری ارسال را متوقف می کند.

از پارامتر stopCasting برای نشان دادن اینکه آیا پخش بر روی گیرنده باید پس از پایان جلسه متوقف شود، استفاده کنید. این پارامتر فقط زمانی اعمال می شود که چندین دستگاه فرستنده متصل شده باشند. به عنوان مثال، همان برنامه در چندین دستگاه فرستنده باز است و هر دستگاه فرستنده یک جلسه 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

آزمایش می کند که آیا یک جلسه در حال حاضر توسط این مدیر جلسه مدیریت می شود و در حال حاضر متصل است.

اگر حالت جلسه GCKConnectionStateConnected باشد، YES خواهد بود.

- (BOOL) hasConnectedCastSession

آزمایش می‌کند که آیا جلسه Cast در حال حاضر توسط این مدیر جلسه مدیریت می‌شود و در حال حاضر متصل است.

اگر حالت جلسه GCKConnectionStateConnected و جلسه یک جلسه Cast باشد، YES خواهد بود.

- (void) setDefaultSessionOptions: (nullable GCKSessionOptions *)  sessionOptions
forDeviceCategory: (NSString *)  category  

گزینه‌های جلسه پیش‌فرض را برای دسته دستگاه داده شده تنظیم می‌کند. هنگامی که کاربر دستگاهی را از کادر گفتگوی Cast انتخاب می‌کند، گزینه‌های جلسه به روش 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

یک شنونده برای دریافت اعلان ها اضافه می کند.

شنونده اضافه شده ضعیف نگه داشته می شود و برای جلوگیری از انتقال غیرمنتظره باید حفظ شود.

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

شنونده ای را که قبلاً با addListener: .

Parameters
listenerThe listener to remove.

جزئیات ملک

- ( GCKSession *) currentSession
read nonatomic strong

جلسه فعلی، در صورت وجود.

- ( GCKCastSession *) currentCastSession
read nonatomic strong

جلسه Cast فعلی، در صورت وجود.

- (GCKConnectionState) connectionState
read nonatomic assign

وضعیت اتصال جلسه فعلی.