نظرة عامة
صف يدير الجلسات.
تُستخدم الطريقة startSessionWithDevice: (GCKSessionManager) لإنشاء جلسة جديدة مع GCKDevice معين. ويستخدم مدير الجلسة GCKDeviceProvider لنوع الجهاز هذا لإنشاء عنصر GCKSession جديد، والذي يفوّض إليه بعد ذلك جميع طلبات الجلسات.
يعالج GCKSessionManager الاستئناف التلقائي للجلسات المعلّقة (أي استئناف الجلسات التي انتهت عند تشغيل التطبيق في الخلفية أو في حال تعطُّل التطبيق أو فرض إنهائه من قِبل المستخدم). عند استئناف التطبيق أو إعادة تشغيله، سينتظر مدير الجلسة لفترة قصيرة إلى أن يكتشف موفر الجهاز لجهاز الجلسة المعلقة هذا الجهاز مرة أخرى، وإذا حدث ذلك، فسيحاول إعادة الاتصال بذلك الجهاز وإعادة إنشاء الجلسة تلقائيًا.
وإذا أنشأ التطبيق GCKUICastButton بدون توفير هدف وأداة اختيار، سيؤدي النقر على الزر إلى عرض مربّع حوار البث التلقائي وبدء الجلسات وإيقافها تلقائيًا استنادًا إلى اختيار المستخدم للجهاز أو قطع اتصاله بالجهاز. مع ذلك، إذا كان التطبيق يوفر واجهة مستخدم خاصة بمربّع حوار اختيار/التحكم في الجهاز، يجب أن يستخدم GCKSessionManager مباشرةً لإنشاء الجلسات والتحكم فيها.
وسواء كان التطبيق يستخدم GCKSessionManager للتحكّم في الجلسات أم لا، يمكنه إرفاق GCKSessionManagerListener ليتم إعلامه بأحداث الجلسات، ويمكنه أيضًا استخدام KVO لمراقبة سمة connectionState لتتبُّع حالة مراحل الجلسة الحالية.
- منذ
- 3.0
تكتسب NSObject.
ملخّص طريقة المثيل | |
(instancetype) | - init |
أداة الإعداد التلقائية غير متوفّرة. المزيد... | |
(BOOL) | - startSessionWithDevice: |
بدء جلسة جديدة مع الجهاز المحدّد، باستخدام خيارات الجلسات التلقائية التي تم تسجيلها لفئة الجهاز، إن توفّرت. المزيد... | |
(BOOL) | - startSessionWithDevice:sessionOptions: |
بدء جلسة جديدة مع الجهاز والخيارات المحدّدة المزيد... | |
(BOOL) | - startSessionWithOpenURLOptions:sessionOptions: |
محاولات انضمام أو بدء جلسة باستخدام الخيارات التي تم توفيرها لطريقة UIApplicationDe::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: |
لإضافة مستمع لتلقّي الإشعارات المزيد... | |
(void) | - removeListener: |
لإزالة مستمع سبق أن تمت إضافته باستخدام 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
إذا كانت هناك جلسة حالية أو إذا تعذَّر بدء العملية.
- منذ
- 4.0
- (BOOL) startSessionWithOpenURLOptions: | (GCKOpenURLOptions *) | openURLOptions | |
sessionOptions: | (nullable GCKSessionOptions *) | sessionOptions | |
محاولات انضمام أو بدء جلسة باستخدام الخيارات التي تم توفيرها لطريقة UIApplicationDe::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 لا تتضمّن خيارات البث المطلوبة.
- منذ
- 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.
- منذ
- 4.0
- (nullable GCKSessionOptions *) defaultSessionOptionsForDeviceCategory: | (NSString *) | category |
الحصول على خيارات الجلسة التلقائية لفئة جهاز محدَّدة.
- Parameters
-
category The device category.
- المرتجعات
- خيارات الجلسة التلقائية أو
nil
في حال عدم توفّرها
- منذ
- 4.0
- (void) addListener: | (id< GCKSessionManagerListener >) | listener |
لإضافة مستمع لتلقّي الإشعارات
إنّ أداة معالجة الطلبات التي تمت إضافتها ضعيفة، ويجب الاحتفاظ بها لتجنُّب تخصيص العرض بشكل غير متوقّع.
- Parameters
-
listener The listener to add.
- (void) removeListener: | (id< GCKSessionManagerListener >) | listener |
لإزالة مستمع سبق أن تمت إضافته باستخدام addListener:.
- Parameters
-
listener The listener to remove.
تفاصيل الموقع
|
readnonatomicstrong |
الجلسة الحالية، إن توفّرت.
|
readnonatomicstrong |
جلسة البث الحالية، إن توفّرت.
|
readnonatomicassign |
حالة اتصال الجلسة الحالية.