الفرق بين المراجعتين ل"Cordova/plugman"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
سطر 2: سطر 2:
 
[[تصنيف: Cordova]]
 
[[تصنيف: Cordova]]
 
[[تصنيف: plugman]]
 
[[تصنيف: plugman]]
منذ الإصدار 3.0 فصاعدا، تقدم كوردوفا كل الواجهات البرمجية للأجهزة (device APIs) على شكل إضافات، لكن لا تمكّنها افتراضيًا. كما أنها تدعم طريقتين مختلفتين لإضافة وإزالة الإضافات، اعتمادًا على سير العمل الذي تمت مناقشته في [[../guide/overview/index.html|Overview]]:  
+
منذ الإصدار 3.0 وما بعده، صارت كوردوفا تقدم كل الواجهات البرمجية الخاصة بالجهاز (device APIs) على شكل إضافات، لكن لا تمكّنها افتراضيًا. كما أنها تدعم طريقتين مختلفتين لإضافة وإزالة الإضافات، اعتمادًا على سير العمل المُعتمد (راجع الصفحة [https://cordova.apache.org/docs/en/latest/guide/overview/index.html Overview)]:  
 
+
* إن كنت تستخدم سير عمل عابر للمنصات (cross-platform)، فعليك استخدام الأمر <code>cordova</code> في [[Cordova/cli|واجهة سطر الأوامر]] لكي تضيف الإضافات، كما هو موضح في صفحة [[Cordova/cli|واجهة سطر الأوامر]] . تُعدل واجهة سطر الأوامر الإضافات في جميع المنصات المحددة في نفس الوقت.  
إن كنت تستخدم سير عمل عابر للمنصات (cross-platform)، فعليك استخدام أداةالأمر <code>cordova</code> في [[Cordova/cli|واجهة سطر الأوامر]] لكي تضيف الإضافات، كما هو موضح في صفحة [[Cordova/cli|واجهة سطر الأوامر]] [[../guide/cli/index.html|The Command-Line Interface]]. تُعدل [[Cordova/cli|واجهة سطر الأوامر]] الإضافات في جميع المنصات المحددة في وقت واحد.  
+
* إن كنت تستخدم سير عمل مرتكز على منصة واحدة، فعليك استخدام الأمر منخفض المستوى [https://github.com/apache/cordova-plugman/ Plugman] في [[Cordova/cli|واجهة سطر الأوامر]]، لكل منصة مستهدفة على حِدة.  
 
+
يقدم هذا القسم تفاصيل لاستخدام الأداة <code>Plugman</code>. لمزيد من المعلومات حول كيفية استخدام <code>Plugman</code> كوحدة عقدية (node module)، أو لتعديل الشيفرة المصدرية، راجع الصفحة [[https://github.com/apache/cordova-plugman/blob/master/README.md|the README file in its repository].  
إن كنت تستخدم سير عمل مرتكز على منصة واحدة، فعليك استخدام الأمر منخفض المستوى [[https://github.com/apache/cordova-plugman/|Plugman]] في [[Cordova/cli|واجهة سطر الأوامر]]، بشكل منفصل لكل منصة مستهدفة.  
 
 
 
يقدم هذا القسم تفاصيل استخدام الأداة Plugman. لمزيد من المعلومات حول كيفية استخدام Plugman كوحدة عقدية (node module)، أو لتعديل الشيفرة المصدرية، فراجع الصفحة [[https://github.com/apache/cordova-plugman/blob/master/README.md|the README file in its repository]].  
 
  
 
== تثبيت Plugman ==  
 
== تثبيت Plugman ==  
  
لتثبيت Plugman، فيجب أن يكون [[http://nodejs.org/|node]] مثبتًا على جهازك. بعد ذلك، يمكنك تنفيذ الأمر التالي من أي مكان في بيئة العمل لتثبيت Plugman بشكل عام، حتى يكون متاحًا من أي مجلد:  
+
لتثبيت <code>Plugman</code>، يجب أن [http://nodejs.org/ يكونnode] مثبتًا على جهازك. بعد ذلك، يمكنك تنفيذ الأمر التالي من أي مكان في بيئة العمل لتثبيت <code>Plugman</code> بشكل عام (globally) حتى يكون متاحًا من أي مجلد:  
 
<syntaxhighlight lang="console">$ npm install -g plugman‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">$ npm install -g plugman‎</syntaxhighlight>  
  
ينبغي أيضًا أن يكون <code>git</code> مضافًا إلى المتغير العام <code>PATH</code> لتتمكن من تثبيت الإضافات مباشرة من عناوين git البعيدة.  
+
ينبغي أيضًا أن يكون <code>git</code> مضافًا إلى المتغير العام <code>PATH</code> لتتمكن من تثبيت الإضافات عن بُعد مباشرة من عناوين git.  
  
'''TIP''': إن وجدت أنك بعد تثبيت plugman بواسطة <code>npm</code> لا تزال غير قادر على تنفيذ أوامر <code>plugman</code>، تأكد من إضافة المجلد <code>/npm/</code> إلى المتغير العام <code>PATH</code>.  
+
'''تنبيه''': إن وجدت أنك بعد تثبيت <code>plugman</code> بواسطة <code>npm</code> لا تزال غير قادر على تنفيذ أوامر <code>plugman</code>، فتأكد من إضافة المجلد <code>/npm/</code> إلى المتغير العام <code>PATH</code>.  
  
'''NOTE''': يمكنك تخطي هذه الخطوة إن لم تُرد تلويث مجال الأسماء العام <code>npm</code> بتثبيت Plugman بشكل عام (globally). في هذه الحالة، سيكون هناك مجلد <code>node_modules</code> داخل مشروعك يتضمن Plugman عندما تقوم بإنشاء مشروع كوردوفا باستخدام أدوات shell. نظرًا لأنك لم تثبّت Plugman بشكل عام، فسيكون عليك استدعاء <code>node</code> لكل أوامر Plugman، مثل: <code>node
+
'''ملاحظة''': يمكنك تخطي هذه الخطوة إن لم تُرد تلويث مجال الأسماء العام <code>npm</code> نتيجة تثبيت <code>Plugman</code> بشكل عام (globally). في هذه الحالة، سيكون هناك مجلد <code>node_modules</code> داخل مشروعك يتضمن <code>Plugman</code> عندما تنشئ مشروع كوردوفا باستخدام أدوات الصدفة (shell). ولأنك لم تُثبّت <code>Plugman</code> بشكل عام، فسيكون عليك استدعاء <code>node</code> مع كل أوامر <code>Plugman</code>، مثل: <code>node ./node_modules/plugman/main.js -version</code>.
./node_modules/plugman/main.js -version</code>. سنفترض في بقية هذا الدليل أنك قمت بتثبيت Plugman بشكل عام، ما يعني أنه بمقدورك استدعاؤها بالأمر <code>plugman</code> وحده.  
+
 
 +
سنفترض في بقية هذا الدليل أنك قمت بتثبيت <code>Plugman</code> بشكل عام، ما يعني أنه بمقدورك استدعاؤها عبر الأمر <code>plugman</code> وحده.  
  
 
== إنشاء مشروع كوردوفا ==  
 
== إنشاء مشروع كوردوفا ==  
  
قبل أن تتمكن من استخدام Plugman، سيكون عليك إنشاء مشروع كوردوفا. يمكنك القيام بذلك إما ب[[Cordova/cli|واجهة سطر الأوامر]] أو ببرامج الصدفة (shell) منخفضة لبمستوى. يمكنك العثور على تعليمات حول كيفية استخدام برامج الصدفة لإنشاء المشاريع في أدلة "أدوات سطر الأوامر" المدرجة في صفحة أدلة المنصة.  
+
قبل أن تتمكن من استخدام <code>Plugman</code>، سيكون عليك إنشاء مشروع كوردوفا. يمكنك القيام بذلك إما ب[[Cordova/cli|واجهة سطر الأوامر]] أو ببرامج الصدفة منخفضة المستوى (lower level shell scripts).  
  
 
== كيف تضيف الإضافات ==  
 
== كيف تضيف الإضافات ==  
  
بمجرد تثبيت Plugman وإنشاء مشروع كوردوفا، يمكنك أت تضبف إضافات إلى المنصة عبر السطر التالي:  
+
بمجرد تثبيت <code>Plugman</code> وإنشاء مشروع كوردوفا، يمكنك أت تضبف إضافات إلى المنصة عبر الشيفرة التالية:  
 
<syntaxhighlight lang="console">$ plugman install --platform <ios|android> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">$ plugman install --platform <ios|android> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]‎</syntaxhighlight>  
  
باستخدام الحد الأدنى من الوسائط، يقوم هذا الأمر بتثبيت الإضافة في مشروع كوردوفا. من اللازم تحديد موضع المنصة وموضع مشروع كوردوفا لهذه المنصة. يجب عليك أيضًا تحديد إضافة عقِب العبارة <code>--plugin</code>، عبر المعاملات التالية:  
+
باستخدام الحد الأدنى من الوسائط، يقوم هذا الأمر بتثبيت الإضافة في مشروع كوردوفا. من اللازم تحديد منصة وموضع مشروع كوردوفا الخاص بها. يجب عليك أيضًا تحديد إضافة عقِب العبارة <code>--plugin</code>، عبر المعاملات التالية:  
* <code>name</code>: اسم المجلد حيث توجد محتويات الإضافة. يجب أن تكون مجلدًا موجودًا داخل المسار <code>--plugins_dir</code> (انظر أدناه لمزيد من المعلومات) أو إضافة في سجل (registry) كوردوفا.  
+
* <code>name</code>: اسم المجلد الذي يتضمّن محتويات الإضافة. يجب أن يكون مجلدًا موجودًا داخل المسار <code>--plugins_dir</code> (انظر أدناه لمزيد من المعلومات) أو إضافة في سجل (registry) كوردوفا.  
* <code>url</code>: عنوان URL يبدأ بـ https://‎ أو git://‎، مشيرًا إلى مستودع git صالح وقابل للنسخ ويحتوي على ملف <code>plugin.xml</code>. ستُنسخ محتويات هذا المستودع في <code>--plugins_dir</code>.  
+
* <code>url</code>: عنوان يبدأ بـ <code>https://</code>‎ أو <code>git://</code>‎، ويشير إلى مستودع git صالح وقابل للنسخ، ويحتوي على ملف <code>plugin.xml</code>. ستُنسخ محتويات هذا المستودع في <code>--plugins_dir</code>.  
* <code>path</code>: مسار إلى مجلد يحتوي على إضافة صالحة مع الملف <code>plugin.xml</code>. ستُنسخ محتويات هذا المسار في <code>--plugins_dir</code>.  
+
* <code>path</code>: مسار إلى مجلد يحتوي على إضافة صالحة مرفوقة بالملف <code>plugin.xml</code>. ستُنسخ محتويات هذا المسار في <code>--plugins_dir</code>.  
  
 
معاملات أخرى:  
 
معاملات أخرى:  
* <code>--plugins_dir</code>: قيمته الافتراضية تساوي <code><project>/cordova/plugins</code>، ولكن يمكن أن يكون أي مجلد يحتوي على مجلدات فرعية مقابلة لكل إضافة مجلوبة (fetched).  
+
* <code>--plugins_dir</code>: قيمته الافتراضية تساوي <code><project>/cordova/plugins</code>، ولكن يمكن أن يكون أي مجلد يحتوي على مجلدات فرعية مقابلة لكل إضافة مجلوبة (fetched).  
* <code>--www</code>: قيمته الافتراضية تساوي موضع مجلد المشروع <code>www</code>، ولكن يمكن أن يكون أي مجلد يمكن استخدامه كموضع لأصول (assets) مشروع كوردوفا.  
+
* <code>--www</code>: قيمته الافتراضية تساوي موضع مجلد المشروع <code>www</code>، ولكن قد يكون أي مجلد يمكن استخدامه كموضع لأصول (assets) مشروع كوردوفا.  
* <code>--variable</code>: يسمح بتحديد متغيرات معينة في وقت التثبيت، وهو ضروري لبعض الإضافات التي تتطلب مفاتيح واجهة برمجية (API keys) أو غيرها من المعاملات المخصصة والمعرفة من قبل المستخدم. يرجى الاطلاع على صفحة [[spec.html#Plugin%20Specification|plugin specification]] لمزيد من المعلومات.  
+
* <code>--variable</code>: يسمح بتحديد متغيرات معينة وقتَ التثبيت، وهو ضروري لبعض الإضافات التي تتطلب مفاتيح واجهة برمجية (API keys) أو غيرها من المعاملات المخصصة والمعرفة من قبل المستخدم. يرجى الاطلاع على صفحة [https://cordova.apache.org/docs/en/latest/plugin_ref/spec.html#Plugin%20Specification plugin specification] لمزيد من المعلومات.  
  
== إزالة إضافة ==  
+
== إزالة الإضافات ==  
  
لإزالة إضافة، كل ما عليك هو تمرير الأمر <code>uninstall</code> مرفوقًا بمعرف (ID) الإضافة.  
+
لإزالة إضافة، كل ما عليك فعله هو تمرير الأمر <code>uninstall</code> مرفوقًا بمعرف (ID) الإضافة.  
 
<syntaxhighlight lang="console">$ plugman uninstall --platform <ios|android> --project <directory> --plugin <id> [--www <directory>] [--plugins_dir <directory>]‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">$ plugman uninstall --platform <ios|android> --project <directory> --plugin <id> [--www <directory>] [--plugins_dir <directory>]‎</syntaxhighlight>  
  
 
== أوامر طلب المساعدة ==  
 
== أوامر طلب المساعدة ==  
  
يوفر Plugman أمرًا لاستخدامه لأجل الحصول على المساعدة، والذي قد يساعدك إذا واجهتك مشكلة. سيقوم بعرض قائمة بجميع أوامر Plugmanالمتاحة مع طريقة صياغتها:  
+
يوفر <code>Plugman</code> الأمر <code>help</code> لاستخدامه لأجل الحصول على المساعدة، والذي قد يساعدك إذا واجهتك مشكلة. إذ سيقوم بعرض قائمة بجميع أوامر <code>Plugman</code> المتاحة مرفوقة بطريقة صياغتها:  
 
<syntaxhighlight lang="console">plugman -help
 
<syntaxhighlight lang="console">plugman -help
 
plugman  # same as above‎</syntaxhighlight>  
 
plugman  # same as above‎</syntaxhighlight>  
  
'''NOTE''': <code>plugman -help</code> قد تظهر بعض أوامر السّجل (registry-related commands) الإضافية. هذه الأوامر مخصصة لمطوري الإضافات، وقد لا يتم تُفدّم على سجلات إضافات الأطراف الثالثة.  
+
'''ملاحظة''': قد يظهر الأمر <code>plugman -help</code> بعض أوامر السّجل (registry-related commands) الإضافية. هذه الأوامر مخصصة لمطوري الإضافات، وقد لا تُفدّم على سجلات الإضافات القادمة من طرف ثالث.  
  
يمكنك أيضًا إضافة الراية <code>--debug|-d</code> إلى أي أمرٍ من أوامر Plugman لتنفيذه في الوضع المفصّل (verbose mode)، والذي سيعرض رسائل تصحيح الأخطاء الداخلية عند إصدارها، وقد يساعدك في تعقب مصدر المشكلة، مثل عدم إيجاد الملفات.  
+
يمكنك أيضًا إضافة الراية <code>--debug|-d</code> إلى أي أمرٍ من أوامر <code>Plugman</code> لتنفيذه في الوضع المفصّل (verbose mode)، حيث سيعرض رسائل تصحيح الأخطاء الداخلية عند إصدارها، وقد يساعدك في تعقب مصدر المشكلة، مثل مشكلة عدم إيجاد الملفات.  
 
<syntaxhighlight lang="console"># Adding Android battery-status plugin to "myProject":
 
<syntaxhighlight lang="console"># Adding Android battery-status plugin to "myProject":
 
plugman -d install --platform android --project myProject --plugin cordova-plugin-battery-status‎</syntaxhighlight>  
 
plugman -d install --platform android --project myProject --plugin cordova-plugin-battery-status‎</syntaxhighlight>  
  
وأخيرًا، يمكنك استخدام الراية <code>--version|-v</code> لمعرفة إصدار Plugman الذي تستخدمه.  
+
وأخيرًا، يمكنك استخدام الراية <code>--version|-v</code> لمعرفة إصدار <code>Plugman</code> الذي تستخدمه.  
 
<syntaxhighlight lang="console">plugman -v‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman -v‎</syntaxhighlight>  
  
== إجراءات التسجيل (Registry Actions) ==  
+
== إجراءات السجلات (Registry Actions) ==  
  
هناك عدد من أوامر plugman التي يمكن استخدامها للتفاعل مع سجل الإضافة ([[http://plugins.cordova.io|Plugin registry]]). يرجى ملاحظة أن أوامر السجلات هذه مخصوصة بسجل الإضافة plugins.cordova.io، وقد لا تقدّم (implemented) من قبل سجلات إضافات الطرف الثالث.  
+
هناك عدد من أوامر <code>plugman</code> التي يمكن استخدامها للتفاعل مع سجل الإضافات ([http://plugins.cordova.io/ Plugin registry]). يرجى ملاحظة أن أوامر السجلات هذه مخصوصة بسجل الإضافات <code>plugins.cordova.io</code>، وقد لا تقدّم (implemented) من قبل سجلات الإضافات القادمة من طرف ثالث.  
 
=== البحث عن الإضافات ===  
 
=== البحث عن الإضافات ===  
  
يمكنك استخدام Plugman للبحث في [[http://plugins.cordova.io|Plugin registry]] عن مُعرِّف (id) الإضافة الذي يُطابق لائحة من الكلمات الرئيسية مفصولة بمسافات بيضاء.  
+
يمكنك استخدام <code>Plugman</code> للبحث في سجل الإضافات ([http://plugins.cordova.io/ Plugin registry]) عن مُعرِّف (id) الإضافة الذي يُطابق لائحة من الكلمات الرئيسية مفصولة بمسافات بيضاء.  
 
<syntaxhighlight lang="console">plugman search <plugin keywords>‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman search <plugin keywords>‎</syntaxhighlight>  
 
=== تغيير سجل الإضافة ===  
 
=== تغيير سجل الإضافة ===  
  
يمكنك الحصول على أو تعيين عنوان سجل الإضافة الحالية التي يستخدمها plugman. بشكل عام، يجب عليك تركه عند القيمة http://registry.cordova.io، إلا إن كنت ترغب في استخدام سجل إضافة من طرف ثالث.  
+
يمكنك الحصول على أو تعيين عنوان سجل الإضافة الحالية التي يستخدمها <code>plugman</code>. عمومًا، يجب عليك تركه عند القيمة <code><nowiki>http://registry.cordova.io</nowiki></code>، إلا إن كنت ترغب في استخدام سجل إضافة من طرف ثالث.  
 
<syntaxhighlight lang="console">plugman config set registry <url-to-registry>
 
<syntaxhighlight lang="console">plugman config set registry <url-to-registry>
 
plugman config get registry‎</syntaxhighlight>  
 
plugman config get registry‎</syntaxhighlight>  
 
=== الحصول على معلومات عن الإضافات ===  
 
=== الحصول على معلومات عن الإضافات ===  
  
يمكنك الحصول على معلومات حول أي إضافة محدد مُخزّنة في مستودع الإضافات عبر الأمر التالي:  
+
يمكنك الحصول على معلومات حول أي إضافة مُخزّنة في مستودع الإضافات عبر الأمر التالي:  
 
<syntaxhighlight lang="console">plugman info <id>‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman info <id>‎</syntaxhighlight>  
  
سطر 82: سطر 80:
 
== تثبيت الإضافات الأساسية (Installing Core Plugins) ==  
 
== تثبيت الإضافات الأساسية (Installing Core Plugins) ==  
  
توضح الأمثلة أدناه كيفية إضافة الإضافات حسب الحاجة بحيث تستمر الواجهات البرمجية لكوردوفا التي تستخدمها في مشروعك بالعمل بعد الترقية إلى الإصدار 3.0. لكل أمر، سيكون عليك تحديد المنصة المستهدفة، والإشارة إلى مجلد مشروع في المنصة.  
+
توضح الأمثلة أدناه كيف تضيف الإضافات بحسب الحاجة، بحيث أن أيّ واجهة برمجية لكوردوفا تستخدمها في مشروعك ستستمر بالعمل بعد أن تقوم بالترقية إلى الإصدار 3.0.
*cordova-plugin-battery-status  
+
 
 +
مع كل أمرٍ (command) سيكون عليك تحديد المنصة المستهدفة، والإشارة إلى مجلد المشروع في المنصة.  
 +
*<code>cordova-plugin-battery-status</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-battery-status‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-battery-status‎</syntaxhighlight>  
*cordova-plugin-camera  
+
*<code>cordova-plugin-camera</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-camera‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-camera‎</syntaxhighlight>  
*cordova-plugin-console  
+
*<code>cordova-plugin-console</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-console‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-console‎</syntaxhighlight>  
*cordova-plugin-contacts  
+
*<code>cordova-plugin-contacts</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-contacts‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-contacts‎</syntaxhighlight>  
*cordova-plugin-device  
+
*<code>cordova-plugin-device</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device‎</syntaxhighlight>  
*cordova-plugin-device-motion (accelerometer)  
+
*<code>cordova-plugin-device-motion (accelerometer)‎</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-motion‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-motion‎</syntaxhighlight>  
*cordova-plugin-device-orientation (compass)  
+
*<code>cordova-plugin-device-orientation (compass)‎</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-orientation‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-orientation‎</syntaxhighlight>  
*cordova-plugin-dialogs  
+
*<code>cordova-plugin-dialogs</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-dialogs‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-dialogs‎</syntaxhighlight>  
*cordova-plugin-file  
+
*<code>cordova-plugin-file</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file‎</syntaxhighlight>  
*cordova-plugin-file-transfer  
+
*<code>cordova-plugin-file-transfer</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file-transfer‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file-transfer‎</syntaxhighlight>  
*cordova-plugin-geolocation  
+
*<code>cordova-plugin-geolocation</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-geolocation‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-geolocation‎</syntaxhighlight>  
*cordova-plugin-globalization  
+
*<code>cordova-plugin-globalization</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-globalization‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-globalization‎</syntaxhighlight>  
*cordova-plugin-inappbrowser  
+
*<code>cordova-plugin-inappbrowser</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-inappbrowser‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-inappbrowser‎</syntaxhighlight>  
*cordova-plugin-media  
+
*<code>cordova-plugin-media</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media‎</syntaxhighlight>  
*cordova-plugin-media-capture  
+
*<code>cordova-plugin-media-capture</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media-capture‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media-capture‎</syntaxhighlight>  
*cordova-plugin-network-information  
+
*<code>cordova-plugin-network-information</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-network-information‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-network-information‎</syntaxhighlight>  
  
*cordova-plugin-splashscreen  
+
*<code>cordova-plugin-splashscreen</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-splashscreen‎</syntaxhighlight>  
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-splashscreen‎</syntaxhighlight>  
  
*cordova-plugin-vibration  
+
*<code>cordova-plugin-vibration</code>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-vibration‎</syntaxhighlight>
 
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-vibration‎</syntaxhighlight>
 +
==انظر أيضا==
 +
*صفحة [[Cordova/plugins|دليل تطوير الإضافات]]
 
==مصادر==
 
==مصادر==
*[https://cordova.apache.org/docs/en/latest/plugin_ref/plugman.html قسم Using Plugman to Manage Plugins  في التوثيق الرسمي لكوردوفا.]
+
*[https://cordova.apache.org/docs/en/latest/plugin_ref/plugman.html صفحة Using Plugman to Manage Plugins  في توثيق كوردوفا الرسمي.]

مراجعة 22:12، 23 نوفمبر 2018

منذ الإصدار 3.0 وما بعده، صارت كوردوفا تقدم كل الواجهات البرمجية الخاصة بالجهاز (device APIs) على شكل إضافات، لكن لا تمكّنها افتراضيًا. كما أنها تدعم طريقتين مختلفتين لإضافة وإزالة الإضافات، اعتمادًا على سير العمل المُعتمد (راجع الصفحة Overview):

  • إن كنت تستخدم سير عمل عابر للمنصات (cross-platform)، فعليك استخدام الأمر cordova في واجهة سطر الأوامر لكي تضيف الإضافات، كما هو موضح في صفحة واجهة سطر الأوامر . تُعدل واجهة سطر الأوامر الإضافات في جميع المنصات المحددة في نفس الوقت.
  • إن كنت تستخدم سير عمل مرتكز على منصة واحدة، فعليك استخدام الأمر منخفض المستوى Plugman في واجهة سطر الأوامر، لكل منصة مستهدفة على حِدة.

يقدم هذا القسم تفاصيل لاستخدام الأداة Plugman. لمزيد من المعلومات حول كيفية استخدام Plugman كوحدة عقدية (node module)، أو لتعديل الشيفرة المصدرية، راجع الصفحة [README file in its repository.

تثبيت Plugman

لتثبيت Plugman، يجب أن يكونnode مثبتًا على جهازك. بعد ذلك، يمكنك تنفيذ الأمر التالي من أي مكان في بيئة العمل لتثبيت Plugman بشكل عام (globally) حتى يكون متاحًا من أي مجلد:

$ npm install -g plugman‎

ينبغي أيضًا أن يكون git مضافًا إلى المتغير العام PATH لتتمكن من تثبيت الإضافات عن بُعد مباشرة من عناوين git.

تنبيه: إن وجدت أنك بعد تثبيت plugman بواسطة npm لا تزال غير قادر على تنفيذ أوامر plugman، فتأكد من إضافة المجلد /npm/ إلى المتغير العام PATH.

ملاحظة: يمكنك تخطي هذه الخطوة إن لم تُرد تلويث مجال الأسماء العام npm نتيجة تثبيت Plugman بشكل عام (globally). في هذه الحالة، سيكون هناك مجلد node_modules داخل مشروعك يتضمن Plugman عندما تنشئ مشروع كوردوفا باستخدام أدوات الصدفة (shell). ولأنك لم تُثبّت Plugman بشكل عام، فسيكون عليك استدعاء node مع كل أوامر Plugman، مثل: node ./node_modules/plugman/main.js -version.

سنفترض في بقية هذا الدليل أنك قمت بتثبيت Plugman بشكل عام، ما يعني أنه بمقدورك استدعاؤها عبر الأمر plugman وحده.

إنشاء مشروع كوردوفا

قبل أن تتمكن من استخدام Plugman، سيكون عليك إنشاء مشروع كوردوفا. يمكنك القيام بذلك إما بواجهة سطر الأوامر أو ببرامج الصدفة منخفضة المستوى (lower level shell scripts).

كيف تضيف الإضافات

بمجرد تثبيت Plugman وإنشاء مشروع كوردوفا، يمكنك أت تضبف إضافات إلى المنصة عبر الشيفرة التالية:

$ plugman install --platform <ios|android> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]

باستخدام الحد الأدنى من الوسائط، يقوم هذا الأمر بتثبيت الإضافة في مشروع كوردوفا. من اللازم تحديد منصة وموضع مشروع كوردوفا الخاص بها. يجب عليك أيضًا تحديد إضافة عقِب العبارة ‎--plugin، عبر المعاملات التالية:

  • name: اسم المجلد الذي يتضمّن محتويات الإضافة. يجب أن يكون مجلدًا موجودًا داخل المسار ‎--plugins_dir (انظر أدناه لمزيد من المعلومات) أو إضافة في سجل (registry) كوردوفا.
  • url: عنوان يبدأ بـ https://‎ أو git://‎، ويشير إلى مستودع git صالح وقابل للنسخ، ويحتوي على ملف plugin.xml. ستُنسخ محتويات هذا المستودع في ‎--plugins_dir.
  • path: مسار إلى مجلد يحتوي على إضافة صالحة مرفوقة بالملف plugin.xml. ستُنسخ محتويات هذا المسار في ‎--plugins_dir.

معاملات أخرى:

  • --plugins_dir: قيمته الافتراضية تساوي ‎<project>/cordova/plugins، ولكن يمكن أن يكون أي مجلد يحتوي على مجلدات فرعية مقابلة لكل إضافة مجلوبة (fetched).
  • --www: قيمته الافتراضية تساوي موضع مجلد المشروع www، ولكن قد يكون أي مجلد يمكن استخدامه كموضع لأصول (assets) مشروع كوردوفا.
  • --variable: يسمح بتحديد متغيرات معينة وقتَ التثبيت، وهو ضروري لبعض الإضافات التي تتطلب مفاتيح واجهة برمجية (API keys) أو غيرها من المعاملات المخصصة والمعرفة من قبل المستخدم. يرجى الاطلاع على صفحة plugin specification لمزيد من المعلومات.

إزالة الإضافات

لإزالة إضافة، كل ما عليك فعله هو تمرير الأمر uninstall مرفوقًا بمعرف (ID) الإضافة.

$ plugman uninstall --platform <ios|android> --project <directory> --plugin <id> [--www <directory>] [--plugins_dir <directory>]

أوامر طلب المساعدة

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

plugman -help
plugman  # same as above‎

ملاحظة: قد يظهر الأمر plugman -help بعض أوامر السّجل (registry-related commands) الإضافية. هذه الأوامر مخصصة لمطوري الإضافات، وقد لا تُفدّم على سجلات الإضافات القادمة من طرف ثالث.

يمكنك أيضًا إضافة الراية ‎--debug|-d إلى أي أمرٍ من أوامر Plugman لتنفيذه في الوضع المفصّل (verbose mode)، حيث سيعرض رسائل تصحيح الأخطاء الداخلية عند إصدارها، وقد يساعدك في تعقب مصدر المشكلة، مثل مشكلة عدم إيجاد الملفات.

# Adding Android battery-status plugin to "myProject":
plugman -d install --platform android --project myProject --plugin cordova-plugin-battery-status‎

وأخيرًا، يمكنك استخدام الراية ‎--version|-v لمعرفة إصدار Plugman الذي تستخدمه.

plugman -v‎

إجراءات السجلات (Registry Actions)

هناك عدد من أوامر plugman التي يمكن استخدامها للتفاعل مع سجل الإضافات (Plugin registry). يرجى ملاحظة أن أوامر السجلات هذه مخصوصة بسجل الإضافات plugins.cordova.io، وقد لا تقدّم (implemented) من قبل سجلات الإضافات القادمة من طرف ثالث.

البحث عن الإضافات

يمكنك استخدام Plugman للبحث في سجل الإضافات (Plugin registry) عن مُعرِّف (id) الإضافة الذي يُطابق لائحة من الكلمات الرئيسية مفصولة بمسافات بيضاء.

plugman search <plugin keywords>‎

تغيير سجل الإضافة

يمكنك الحصول على أو تعيين عنوان سجل الإضافة الحالية التي يستخدمها plugman. عمومًا، يجب عليك تركه عند القيمة http://registry.cordova.io، إلا إن كنت ترغب في استخدام سجل إضافة من طرف ثالث.

plugman config set registry <url-to-registry>
plugman config get registry‎

الحصول على معلومات عن الإضافات

يمكنك الحصول على معلومات حول أي إضافة مُخزّنة في مستودع الإضافات عبر الأمر التالي:

plugman info <id>‎

سيتصل هذا الأمر بسجل الإضافة وسيجلب معلومات مثل رقم إصدار الإضافة.

تثبيت الإضافات الأساسية (Installing Core Plugins)

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

مع كل أمرٍ (command) سيكون عليك تحديد المنصة المستهدفة، والإشارة إلى مجلد المشروع في المنصة.

  • cordova-plugin-battery-status
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-battery-status‎
  • cordova-plugin-camera
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-camera‎
  • cordova-plugin-console
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-console‎
  • cordova-plugin-contacts
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-contacts‎
  • cordova-plugin-device
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device‎
  • cordova-plugin-device-motion (accelerometer)‎
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-motion‎
  • cordova-plugin-device-orientation (compass)‎
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-orientation‎
  • cordova-plugin-dialogs
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-dialogs‎
  • cordova-plugin-file
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file‎
  • cordova-plugin-file-transfer
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file-transfer‎
  • cordova-plugin-geolocation
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-geolocation‎
  • cordova-plugin-globalization
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-globalization‎
  • cordova-plugin-inappbrowser
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-inappbrowser‎
  • cordova-plugin-media
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media‎
  • cordova-plugin-media-capture
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media-capture‎
  • cordova-plugin-network-information
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-network-information‎
  • cordova-plugin-splashscreen
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-splashscreen‎
  • cordova-plugin-vibration
plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-vibration‎

انظر أيضا

مصادر