دليل تطوير الإضافات في كوردوفا

من موسوعة حسوب
اذهب إلى: تصفح، ابحث

أباتشي كوردوفا (Apache Cordova، وسنطلق عليه اختصارًا "كوردوفا" فقط) هو إطار تطوير جوال (هاتف محمول) مفتوح المصدر. يسمح لك كوردوفا باستخدام تقنيات الويب القياسية مثل HTML5 تمام و CSS3 و JavaScript لتطوير الأنظمة الأساسية. يتم تنفيذ التطبيقات ضمن مغلفات (wrappers) يتم توجيهها إلى كل منصة وتعتمد على روابط واجهة برمجة التطبيقات المتوافقة مع المعايير للوصول إلى إمكانات كل جهاز مثل المستشعرات والبيانات وحالة الشبكة وما إلى ذلك.

استخدم كوردوفا إذا كنت:

  • مطوّر برامج جوّال وتريد توسيع تطبيق عبر أكثر من نظام أساسي واحد، دون الحاجة إلى إعادة بنائه باستعمال لغة وأداة كل منصة.
  • مطور ويب وترغب في نشر تطبيق ويب يتم تعبئته للتوزيع في بوابات متجر التطبيقات المختلفة.
  • مطوّر برامج جوال مهتم بمزج مكونات التطبيقات الأصلية باستخدام العارض WebView (نافذة متصفح خاصة) التي يمكنها الوصول إلى واجهات برمجة التطبيقات على مستوى الجهاز، أو إذا كنت ترغب في تطوير واجهة مكون إضافي بين المكونات الأصلية ومكونات WebView.

المعمارية المتبعة في بناء التطبيق

هناك العديد من المكونات لتطبيق كوردوفا. يوضح المخطط التالي عرضًا عالي المستوى للبناء الهيكلي للتطبيق Cordova.

معمارية التطبيق المنشأ باستعمال كوردوفا.
معمارية التطبيق المنشأ باستعمال كوردوفا.

عارض الويب

إن تطبيق كوردوفا يمكن العارض WebView من تزويد واجهة المستخدم الخاصة به بالكامل. وفي بعض المنصات الأخرى، يمكن أن يكون أيضًا مكونًا داخل تطبيق أكبر حجمًا أي يمكن دمج العارض WebView مع مكونات تطبيق أصيل. (راجع صفحة تضمين كوردوفا في تطبيق أصيل للاطلاع على تفاصيل أكثر).

تطبيق الويب

إن هذا الجزء هو الذي تتواجد فيه شيفرة التطبيق الخاص بك. يتم تنفيذ التطبيق نفسه كصفحة ويب - الذي هو ملف محلي يسمى index.html افتراضيًّا -  تشير إلى ملفات CSS، أو JavaScript، أو الصور، أو ملفات الوسائط أو الموارد الأخرى اللازمة لتشغيله. ينفذ التطبيق في العارض WebView داخل مغلف تطبيق أصيل الذي يوزعه لاحقًا على متاجر التطبيقات.

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

الإضافات

تعتبر الإضافات جزءًا لا يتجزأ من بيئة كوردوفا، اذ توفر واجهة لكوردوفا فيها المكونات الأصلية للتواصل مع بعضها البعض والارتباطات إلى واجهات برمجة التطبيقات القياسية للجهاز. تمكّنك هذه الميزة من استدعاء الشيفرة الأصلية من JavaScript.

يحافظ مشروع كوردوفا على مجموعة من الإضافات تسمى الإضافات الأساسية (Core Plugins). توفر هذه الإضافات الأساسية للتطبيق الخاص بك الوصول إلى مكونات الجهاز وما يحتويه مثل البطارية والكاميرا وجهات الاتصال ...إلخ.

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

ملاحظة: عندما تنشئ مشروع كوردوفا جديد، فإنه لا يحتوي على أية إضافة. هذا هو السلوك الافتراضي الجديد. فيجب عليك إضافة أية إضافات ترغب فيها، حتى الإضافات الأساسية يجب أن تضيفها بشكل صريح.

ملاحظة: لا توفر كوردوفا أية أدوات واجهة مستخدم (UI widgets) أو إطارات *MV. توفر كوردوفا ذلك فقط في وقت التشغيل الذي يمكن حينذاك تنفيذها. فإذا كنت ترغب في استخدام أدوات واجهة المستخدم و/أو إطار *MV، فستحتاج إلى تحديدها وإدراجها في التطبيق الخاص بك.

مسارات التطوير

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

  • سير العمل العابر للمنصات (واجهة سطر الأوامر CLI): استخدم سير العمل هذا إذا كنت ترغب في تشغيل التطبيق على العديد من منصات تشغيل الهواتف المحمولة المختلفة، دون الحاجة إلى تطوير تطبيق محدد بمنصة واحدة فقط. يتمركز سير العمل هذا حول واجهة سطر الأوامر (CLI) الخاصة بكوردوفا التي تُعَد أداةً عالية المستوى تسمح لك بإنشاء مشاريع للعديد من المنصات في وقت واحد مما يزيل الكثير من وظائف النصوص ذات المستوى الأدنى. تنسخ CLI مجموعة مشتركة من أصول الويب إلى مجلدات فرعية لكل منصة، وتجري أية تغييرات ضرورية لكل منصة من تلك المنصات وتعمل على تشغيل الشيفرات لإنشاء التطبيقات التنفيذية (application binaries). يوفر سطر الأوامر CLI أيضًا واجهة شائعة لتطبيق الإضافات على تطبيقك. فبامكانك البدء باتباع الخطوات الواردة في دليل إنشاء أول تطبيق لك لبدء استعمال سير العمل هذا إلا إذا كان هناك حاجة لاستعمال سير العمل الذي يركز على منصة واحدة، فمن المستحسن استخدام سير العمل عبر النظام الأساسي.
  • سير العمل المرتكز على منصة واحدة: استخدم سير العمل هذا إذا كنت تريد التركيز على إنشاء تطبيق لمنصة واحدة وتحتاج إلى تعديله على مستوى أدنى. متى تحتاج إلى استخدام هذا الأسلوب؟ إذا كنت ، على سبيل المثال، تريد أن يمزج تطبيقك المكونات الأصلية المخصصة مع مكونات كوردوفا المستندة إلى الويب، كما هو موضح في صفحة تضمين كوردوفا في تطبيق أصيل. كقاعدة عامة، استخدم سير العمل هذا إذا كنت بحاجة إلى تعديل المشروع داخل SDK لأنَّ سير العمل هذا يعتمد على مجموعة من البرامج النصية التي يتم تصميمها خصيصًا لكل مستوى من المنصة المدعومة، بالإضافة إلى الأداة Plugman المساعدة المنفصلة تسمح لك بتطبيق الإضافات. على الرغم من أنه يمكنك استخدام سير العمل هذا لإنشاء تطبيقات مشتركة عابرة للمنصات، إلا أنه عادةً ما يكون أكثر صعوبة بسبب عدم وجود أداة ذات مستوى أعلى وهذا يعني دورات بناء منفصلة وتعديلات للإضافات لكل نظام أساسي.

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

ملاحظة: بمجرد التبديل من سير العمل العابر للمنصات إلى سير العمل المرتكز على أدوات SDK وأدوات الصدفة (shell) الخاصة بمنصة واحدة، فإنه لا يمكنك الرجوع عن هذه الخطوة لأن سير العمل العابر للمنصات يحافظ على مجموعة شائعة من الشيفرات المصدرية العابرة للمنصات والتي تستخدمها عند كل عملية إنشاء للكتابة فوق شيفرة المصدر الخاصة بمنصة محدَّدة. وكذلك للحفاظ على أي تعديلات تجريها على الأصول الخاصة بمنصة محدَّدة، فإنك بحاجة إلى التبديل إلى أدوات الصدفة المرتكزة على منصة محدَّدة، والتي تتجاهل شيفرة المصدر العابرة للمنصات وعليك عندئذ أن تعتمد بدلًا من ذلك على شيفرة المصدر الخاصة بمنصة محدَّدة فقط.

تثبيت كوردوفا

سيختلف تثبيت كوردوفا حسب سير العمل أعلاه الذي تختاره:

بعد تثبيت كوردوفا، يوصى بمراجعة الصفحات الخاصة بكل منصة من المنصات التي توفر أنظمة للجوال التي تنوي أن تطور عليها تطبيقك. يستحسن أيضًا أن تطلع على دليل الخصوصية ودليل الأمان.

مصادر