YouTube

Got a YouTube account?

New: enable viewer-created translations and captions on your YouTube channel!

Arabic subtitles

App Lifecycle and Services - Developing Android Apps

Get Embed Code
10 Languages

Showing Revision 29 created 06/09/2016 by Udacity Robot.

  1. وبالرجوع إلى الدرس الرابع
    حيث تعلمنا أن وقت تشغيل Android سوف
  2. يوقف التطبيقات دون
    وجود أنشطة مرئية
  3. من أجل إطلاق
    .الموارد المطلوبة لتطبيقات الصدارة
  4. ولكن ماذا إذا كان بالتطبيق
    الخاص بك مهام تتطلب المتابعة
  5. عندما يكون النشاط مرئيًا؟
  6. أشياء مثل تنزيل الملفات
    .أو تحميل الصور أو تشغيل الموسيقى
  7. حسنًا، هناك مكون
    .تطبيق من أجل ذلك
  8. .الخدمات
  9. قدمنا أنشطة وموفري
    محتوى ومستقبلي
  10. .بث وأهدافاً بالفعل
  11. تعد الأنشطة جزءًا من لغز
    .مكون تطبيق Android
  12. سوف تبدأ في
    الخدمات بنفس طريقة
  13. أدائك للأنشطة
    .من خلال تمرير الأهداف من أجل طلب startService
  14. كما يمكنك إيقاف الخدمات
    .بنفس الطريقة
  15. وعبر طلب stopService
    ،وتمرير اسم الخدمة
  16. سوف تتمكن
    .من الإيقاف
  17. وعلى النقيض من الأنشطة، لا يوجد
    للخدمات واجهة مستخدم
  18. وتعمل بأولوية
    .عالية على عكس أنشطة الخلفية
  19. ،يشير ذلك إلى أن التطبيق الذي يتميز بوجود خدمة
    تقل به احتمالية
  20. الوقف عبر
    وقت التشغيل
  21. من أجل إطلاق
    .الموارد المطلوبة لتطبيقات الصدارة
  22. ففي حقيقة الأمر وعبر الوضع الافتراضي
    سوف يحاول النظام إعادة تشغيل الخدمات
  23. التي تم
    .إنهاؤها قبل أن تتم عملية الإيقاف داخل التطبيق
  24. يظهر ذلك في
    .دورة الحياة البسيطة
  25. ،مقارنة بالأنشطة
    فالخدمات معدة لتنفيذ
  26. مهام التشغيل
    .الأطول التي لا يتعين أن تتوقف
  27. وعلى نحو مماثل، سوف تحتاجون
    فقط إلى إلغاء
  28. معالج onStartCommad وهو
    المكان الذي تبدأ منه المهمة في الخلفية والتي
  29. .ترغبون في تنفيذها
  30. لكنه يرجى ملاحظة عدم وجود معالجات من
    ،أجل مراقبة التغييرات على الحالة
  31. من أجل إظهار التطبيق المنقول
    .إلى الخلفية
  32. يتمثل السبب في ذلك
    في إرسال خدمات التشغيل
  33. ذاتها لإشارة إلى إطار
  34. العمل بأن التطبيق المدرج
    يتعين أن يوضع في الاعتبار كأولوية قصوى
  35. على خلاف غيره من
    .التطبيقات في الخلفية والتي ليس لها خدمات عاملة
  36. ،وفي بعض الحالات
    قد تقوم خدماتكم بتنفيذ مهام
  37. ليس لها واجهة
    مستخدم ويمكن إيقافها
  38. دون تدخل مع
    .تجربة المستخدم
  39. ومن الأمثلة على ذلك، تشغيل
    .الموسيقى أو المساعدة في التصفح داخل السيارة
  40. وفي هذه الحالات، يمكنكم الإشارة
    إلى أن الخادم الخاص
  41. بكم يتعين
    اعتبار تشغيله
  42. .في الخلفية عبر طلب startForeground
  43. سوف تلاحظ أن هذا الطلب مدرج
    .في الإشعار
  44. سوف يظهر ذلك
    ولن يكون بالإمكان الرفض حتى
  45. تتوقف الخدمة أو تطلب
    .stopForeground
  46. سوف تتعلمون كثيرًا بشأن الإشعارات
    .في وقت لاحق مع Dan
  47. لكنه في الوقت الحالي، يرجى
    ملاحظة أن خدمات الصدارة
  48. .تجري بنفس أولوية أنشطة الصدارة
  49. وهو ما يجعل الإيقاف من المستحيل
    تقريبًا بالنسبة لوقت التشغيل
  50. .من أجل إطلاق الموارد
  51. يمكنكم التفكير في أنفسكم
    في الوقت الحالي، حيث
  52. يمكنني توفير الكثير
    من المتاعب في التعامل مع دورات الحياة
  53. .وذلك فقط عبر إنشاء التشغيل لوقت طويل أو خدمات الصدارة
  54. حسنًا، نشأت في منطقة
    ،الساحل الأسترالي
  55. ولذلك تعلمت حين كنت
    صغيرًا أن السباحة ضد التيار ستكون
  56. .مرهقة وغير مجدية في نهاية المطاف
  57. وفي تلك الحالة، يشير ذلك
    إلى أن زيادة الصعوبة بالنسبة للنظام في
  58. إدارة الموارد سوف
  59. يؤدي في
    .نهاية المطاف إلى تجربة مستخدم سيئة
  60. .اسبحوا مع التيار
  61. استخدموا خدمات الصدارة فقط عند
    وخلال الضرورة
  62. .الملحة
  63. وأوقفوا كل الخدمات
    .على وجه السرعة
  64. من الضروري أيضًا ملاحظة أنه مثل
    ،الأنشطة والمستقبلات
  65. .تعمل الخدمات على السلسلة الرئيسية
  66. ولذلك، سوف تحتاجون إلى استخدام
    ،سلسلة عمليات في الخلفية أو التفكير في المهمة
  67. لتنفيذ مهام التشغيل الطويلة
    .التي ترغب في أدائها خلال خدماتك
  68. ومن أجل تسهيل الأمور، يمكنكم استخدام
    .فئة خدمة معالجة الأهداف
  69. وهي التي تنفذ أفضل أنماط الممارسة
    وأكثرها شيوعًا
  70. .من أجل استخدام معالجة الأهداف التي يتم تنفيذها خلال الخدمة
  71. يعمل ذلك على خلق قائمة انتظار للأهداف الواردة
    .والتي يتم تمريرها عند طلب خدمة البدء
  72. تتم معالجة ذلك بشكل
    متسلسل في سلسلة عمليات
  73. في الخلفية خلال معالجة onHandleIntent أثناء
    .تنفيذ خدمة معالجة الأهداف
  74. ،عندما تكون قائمة الانتظار فارغة
    تتوقف الخدمة
  75. الذاتية إلى حين
    تلقي هدف
  76. ،جديد وتبدأ العملية مرة ثانية
    وتعد تلك الخدمات
  77. أداة قوية وهامة
  78. من أجل فهم كيف يمكنكم
    ،استخدامها
  79. غير أنه يكون هناك إطار
    .بديل في الممارسة من أجل تشكيل تنفيذ الخدمات الخاصة بك
  80. وسواءٌ أكان ذلك من خدمات
    معالجة الأهداف الخاصة
  81. بتنفيذ مهام في الخلفية
    .أو محول المزامنة والذي سوف تتعلمون بشأنه لاحقًا في هذا الدرس
  82. يُعد ممتازًا فيما يتعلق بمزامنة
    .بيانات الخلفية