ثوابت الخدمه

الإعلانات

ثوابت الخدمه

START_CONTINUATION_MASK

أُضيفت في المستوى 5.

public static final int START_CONTINUATION_MASK

 

هي بايتات مرجعة بواسطة (onStartCommand(Intent, int, int والتي تصف كيفية، متابعة الخدمة إذا تم تعطيلها.

قد تكون START_STICKY, START_NOT_STICKY, START_REDELIVER_INTENT, أو START_STICKY_COMPATIBILITY.

القيمه الثابته:

 

 

 

 

 

START_FLAG_REDELIVERY

أُضيفت في المستوى 5.

public static final int START_FLAG_REDELIVERY

 

هذه العلامة يتم تعيينها في (onStartCommand(Intent, int, int إذا كان الغرض عبارة عن، إعادة تسليم لغرض، تم تسليمه مسبقاً..

لأن الخدمة قامت مسبقاً بإرجاع START_REDELIVER_INTENT ولكنها أوقفت، قبل أن تقوم بإستدعاء (stopSelf(int لذلك الغرض.

القيمه الثابته:

 

 

 

 

 

START_FLAG_RETRY

أُضيفت في المستوى 5.

public static final int START_FLAG_RETRY

هذه العلامة يتم تعيينها في (onStartCommand(Intent, int, int إذا كان الغرض عبارة عن إعادة محاوله..

لأن المحاولة الأصليه لم تصل أبداً، أو تم إرجاعها من (onStartCommand(android.content.Intent, int, int.

القيمه الثابته:

 

 

 

 

 

 

START_NOT_STICKY

أُضيفت في المستوى 5.

public static final int START_NOT_STICKY

ثابت للإرجاع من (onStartCommand(Intent, int, int: إذا تم تعطيل، عملية هذه الخدمة، أثناء بدء تشغيلها..

(بعد الإرجاع من (onStartCommand(Intent, int, int)، وليست هناك أغراض جديدة تم إطلاقها، لكي تتسلمها، عندها قم بإخراج الخدمة من حالة البدء..

ولا تُعيد إنشاؤها، حتى يتم إستدعاء “مستقبلي صريح” لـContext#startService.

لن تتلقى الخدمة إستدعاء (onStartCommand(android.content.Intent, int, int.. مع غرض فارغ..

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

ولكن يمكن إيقافها عندما تكون الذاكرة منخفضه، وستقوم ببدأ تشغيل نفسها مجدداً، بشكلٍ صريح في وقتٍ لاحق، للقيام بالمزيد من الأعمال.

مثال على مثل هذه الخدمة، هو خدمة تقوم بالإستطلاع عن بيانات من الخادم “السيرفر”: يمكن أن تقوم بجدولة منبه..

للإستطلاع كل “فترة” من الدقائق، من خلال جعل المنبه يبدأ خدمته.

عندما يتم إستدعاء (onStartCommand(Intent, int, int الخاصة بالخدمه، من المنبه، ستقوم بجدولة منبه جديد لعدد “N” من الدقائق لاحقاً..

وتنتج تسلسل، يقوم ببرمجيات الشبكة الخاصة به. إذا تم تعطيل عمليته، أثناء إجراء هذا الفحص، فلن يعاد تشغيل الخدمة، حتى يتم إطلاق المنبه.

 

القيمه الثابته:

 

 

 

 

 

 

START_REDELIVER_INTENT

 

أٌضيفت في المستوى 5.

public static final int START_REDELIVER_INTENT

 

ثابت للإرجاع من (onStartCommand(Intent, int, int: إذا تم تعطيل، عملية هذه الخدمة، أثناء بدء تشغيلها..

(بعد الإرجاع من (onStartCommand(Intent, int, int)، عندها ستتم جدولتها لإعادة التشغيل..

ويتم إعادة تسليم آخر غرض، تم تسليمه إليها مجدداً عبر (onStartCommand(Intent, int, int.

سوف يبقى هذا الغرض مجدولاً، من أجل إعادة التسليم، إلى أن تقوم الخدمة بإستدعاء (stopSelf(int، مع معرف البدء، المقدم إلى (onStartCommand(Intent, int, int.

 

لن تتلقى الخدمة إستدعاء (onStartCommand(android.content.Intent, int, int، مع غرض فارغ..

لأنه سيعاد تشغيلها فقط في حاله، لم يتم الإنتهاء من معالجة، كافة الأغراض المرسله إليها.

(وأي أحداث معلقه، سيتم تسليمها، في مرحلة إعادة التشغيل).

 

القيمه الثابته:

 

 

 

 

 

START_STICKY

أُضيفت في المستوى 5.

public static final int START_STICKY

ثابت للإرجاع من (onStartCommand(Intent, int, int: إذا تم تعطيل عملية هذه الخدمة، أثناء تشغيلها..

(بعد الإرجاع من (onStartCommand(Intent, int, int)، عندها اتركها في حالة البدء، ولكن لا تحتفظ بهذا الغرض المُستلم.

سيحاول النظام لاحقاً إعادة إنشاء الخدمة. و لأنها في حالة البدء، سوف تضمن إستدعاء (onStartCommand(Intent, int, int..

بعد إنشاء مثيل الخدمة الجديد؛ إذا لم يكن هناك أي أوامر بدء معلقه، لكي يتم تسليمها إلى الخدمة..

سوف تُستدعى مع كائن غرض فارغ، لذا يجب عليك الحرص على التحقق من هذا.

هذا الوضع منطقي بالنسبة للأشياء التي سيتم تشغيلها وإيقافها بشكلٍ صريح، لفترات عشوائية من الوقت، مثل الخدمة التي تقوم بتشغيل الموسيقى في الخلفيه.

القيمه الثابته:

 

 

 

 

 

 

START_STICKY_COMPATIBILITY

أُضيفت في المستوى 5.

public static final int START_STICKY_COMPATIBILITY

 

ثابت للإرجاع من (onStartCommand(Intent, int, int: إصدار متوافق من START_STICKY والذي لا يضمن إستدعاء (onStartCommand(Intent, int, int مجدداً، بعد الإيقاف.

القيمه الثابته:

 

 

 

 

 

 

STOP_FOREGROUND_DETACH

أُضيفت في المستوى 24.

public static final int STOP_FOREGROUND_DETACH

علامة لـ(stopForeground(int: في حالة التعيين، سوف يتم فصل الإشعار المقدم سابقاً إلى (startForeground(int, Notification.. من الخدمة.

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

وبالتالي لا مزيد من التغيير، إلا من خلال الإستدعاءات المباشرة، إلى مدير الإشعارات.

القيمه الثابته: ثوابت الخدمه ثوابت الخدمه

 

 

 

 

 

STOP_FOREGROUND_REMOVE

أُضيفت في المستوى 24.

public static final int STOP_FOREGROUND_REMOVE

علامة لـ(stopForeground(int: في حالة التعيين، سيتم إزالة الإشعار المقدم مسبقاً إلى (startForeground(int, Notification.

خلاف ذلك، سوف يبقى الإشعار، حتى تتم إزالة الإستدعاء التالي لـ((startForeground(int, android.app.Notification)..

أو (stopForeground(int..أو تدمير الخدمه.

القيمه الثابته: ثوابت الخدمه ثوابت الخدمه

 

 

أنظر أيضاً:


للإطلاع على المقال باللغة الإنجليزية أضغط هنا.

 

الإعلانات