AddonSession.Builder

@PublicApi
public interface AddonSession.Builder



إنها أداة إنشاء لـ AddonSession. يمكنك الاطّلاع على newSessionBuilder.

ملخّص

الطرق المتاحة للجميع

abstract ListenableFuture<AddonSession>
begin(Context appContext)

تبدأ جلسة الإضافة.

abstract AddonSession.Builder

تتم إضافة العمل المشترَك إلى الجلسة الإضافية مع الحالة الأولية.

abstract AddonSession.Builder
@CanIgnoreReturnValue
withCoDoing(
    CoDoingHandler coDoingHandler,
    Optional<CoDoingState> initiatorInitialState
)

تتم إضافة العمل المشترَك إلى الجلسة الإضافية.

abstract AddonSession.Builder

ستتم إضافة ميزة المشاهدة مع الآخرين إلى الجلسة الإضافية.

abstract AddonSession.Builder
@CanIgnoreReturnValue
withCoWatching(
    CoWatchingHandler coWatchingHandler,
    Optional<CoWatchingState> initiatorInitialState
)

تتم إضافة ميزة المشاهدة مع الآخرين إلى الجلسة الإضافية مع الحالة الأولية.

abstract AddonSession.Builder

لضبط CollaborationStartingState للجلسة.

abstract AddonSession.Builder

لتسجيل المستمع لتحديثات البيانات الوصفية للمشاركين الآخرين.

abstract AddonSession.Builder

تعيين البيانات الوصفية لهذا المشارك وتسجيل المستمع للحصول على تحديثات للمشاركين الآخرين.

الطرق المتاحة للجميع

الابتدائية

abstract ListenableFuture<AddonSessionbegin(Context appContext)

تبدأ جلسة الإضافة. ويجب طلب ذلك فقط بعد تأكيد المستخدم رغبته في المشاركة في جلسة إضافية.

الاتصال باجتماع، إما عن طريق إنشاء اجتماع أو من خلال الاتصال باجتماع منعقد حاليًا ملاحظات:

  • في حال إنشاء اجتماع، سيكون المستخدم الحالي هو المشارك الوحيد في البداية.
  • يمكن الوصول إلى تفاصيل الاجتماع من خلال getMeetingInfo في الجلسة التي تم إرجاعها.
  • يجب أن يتم عرض عنوان URL المعروض للمستخدم وتتم مشاركته يدويًا مع مجموعة جلسات الإضافة المقصودة.
يمكن الوصول إلى المثالَين على المشاهدة مع الآخرين والمشاركة في المشاهدة من خلال getCoWatching وgetCoDoing على التوالي.

لا يُنصح باستدعاء cancel في هذا المستقبل، ولكن يتم السماح بإكماله بدلاً من ذلك.

المَعلمات
Context appContext

القيمة getApplicationContext للتطبيق الذي يستخدم حزمة تطوير البرامج (SDK)

المرتجعات
ListenableFuture<AddonSession>

ListenableFuture الذي يتم تقييمه بمثيل AddonSession من النوع المناسب إذا تم بدء جلسة الإضافة بنجاح. بخلاف ذلك، يتم تقييمها إلى IllegalStateException إذا كان لا يزال AddonSession آخر قيد التشغيل (على سبيل المثال، لم يتم استدعاء endSession) أو إلى AddonException في حال حدوث خطأ غير متوقع.

withCoDoing

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoDoing(CoDoingHandler coDoingHandler)

تتم إضافة العمل المشترَك إلى الجلسة الإضافية مع الحالة الأولية.

المَعلمات
CoDoingHandler coDoingHandler

استدعاء الخطوات أثناء التنفيذ

المرتجعات
AddonSession.Builder

مثيل أداة إنشاء آخر لتسلسل

الرميات
java.lang.NullPointerException

إذا كان coDoingHandler فارغًا

withCoDoing

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoDoing(
    CoDoingHandler coDoingHandler,
    Optional<CoDoingState> initiatorInitialState
)

تتم إضافة العمل المشترَك إلى الجلسة الإضافية.

المَعلمات
CoDoingHandler coDoingHandler

استدعاء الخطوات أثناء التنفيذ

Optional<CoDoingState> initiatorInitialState

الحالة الأولية للمبتدئين. سيتم تجاهل هذا إذا كان المستخدم ينضم إلى جلسة حالية.

المرتجعات
AddonSession.Builder

مثيل أداة إنشاء آخر لتسلسل

الرميات
java.lang.NullPointerException

إذا كانت القيمة coDoingHandler أو initiatorInitialState فارغة

withCoWatching

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoWatching(CoWatchingHandler coWatchingHandler)

ستتم إضافة ميزة المشاهدة مع الآخرين إلى الجلسة الإضافية.

المَعلمات
CoWatchingHandler coWatchingHandler

طلبات معاودة الاتصال للمشاهدة مع الآخرين

المرتجعات
AddonSession.Builder

مثيل أداة إنشاء آخر لتسلسل

الرميات
java.lang.NullPointerException

إذا كان coWatchingHandler فارغًا

withCoWatching

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoWatching(
    CoWatchingHandler coWatchingHandler,
    Optional<CoWatchingState> initiatorInitialState
)

تتم إضافة ميزة المشاهدة مع الآخرين إلى الجلسة الإضافية مع الحالة الأولية.

المَعلمات
CoWatchingHandler coWatchingHandler

طلبات معاودة الاتصال للمشاهدة مع الآخرين

Optional<CoWatchingState> initiatorInitialState

الحالة الأولية للمبتدئين. سيتم تجاهل هذا إذا كان المستخدم ينضم إلى جلسة حالية.

المرتجعات
AddonSession.Builder

مثيل أداة إنشاء آخر لتسلسل

الرميات
java.lang.NullPointerException

إذا كانت القيمة coWatchingHandler أو initiatorInitialState فارغة

withCollaborationStartingState

@CanIgnoreReturnValue
abstract AddonSession.Builder withCollaborationStartingState(
    CollaborationStartingState collaborationStartingState
)

لضبط CollaborationStartingState للجلسة.

يمكن تغيير هذا لاحقًا من خلال طلب الرقم updateCollaborationStartingState أو resetCollaborationStartingState.

المَعلمات
CollaborationStartingState collaborationStartingState

البيانات: CollaborationStartingState

الرميات
java.lang.NullPointerException

إذا كان collaborationStartingState فارغًا

withParticipantMetadata

@CanIgnoreReturnValue
abstract AddonSession.Builder withParticipantMetadata(ParticipantMetadataHandler handler)

لتسجيل المستمع لتحديثات البيانات الوصفية للمشاركين الآخرين.

سيتم في البداية ضبط البيانات الوصفية للمشارك المحلي على قيمة فارغة، ولكن يمكن ضبطها لاحقًا من خلال طلب الرقم updateParticipantMetadata. لضبط القيمة الأولية، يمكنك طلب withParticipantMetadata بدلاً من ذلك.

المَعلمات
ParticipantMetadataHandler handler

ParticipantMetadataHandler لتلقّي أحدث مجموعة من البيانات الوصفية للمشاركين في كل مرة يتم فيها تعديلها

الرميات
java.lang.NullPointerException

إذا كان handler فارغًا

withParticipantMetadata

@CanIgnoreReturnValue
abstract AddonSession.Builder withParticipantMetadata(
    ParticipantMetadataHandler handler,
    byte[] metadata
)

تعيين البيانات الوصفية لهذا المشارك وتسجيل المستمع للحصول على تحديثات للمشاركين الآخرين.

يمكن تغيير هذه البيانات الوصفية لاحقًا من خلال طلب الرقم updateParticipantMetadata.

الحد الأقصى للبيانات الوصفية المشفرة هو MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES بايت لكل مشارك.

المَعلمات
ParticipantMetadataHandler handler

ParticipantMetadataHandler لتلقّي أحدث مجموعة من البيانات الوصفية للمشاركين في كل مرة يتم فيها تعديلها

byte[] metadata

كائن ثنائي مرمّز من بيانات التعريف يصف بيانات التعريف ذات الصلة بالمشارك المحلي

الرميات
java.lang.IllegalArgumentException

إذا كانت البيانات الوصفية المقدَّمة تتجاوز MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES بايت

java.lang.NullPointerException

إذا كان handler فارغًا