الفرق بين المراجعتين لصفحة: «Cordova/plugman»

من موسوعة حسوب
لا ملخص تعديل
تحديث
 
(5 مراجعات متوسطة بواسطة مستخدمين اثنين آخرين غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:استخدام Plugman لإدارة الإضافات في كوردوفا}}</noinclude>
<noinclude>{{DISPLAYTITLE:استخدام Plugman لإدارة الإضافات في كوردوفا}}</noinclude>
[[تصنيف: Cordova]]
[[تصنيف: Cordova]]
[[تصنيف: plugman]]
[[تصنيف: Cordova Plugin]]
منذ الإصدار 3.0 فصاعدا، تقدم كوردوفا كل الواجهات البرمجية للأجهزة (device APIs) على شكل إضافات، لكن لا تمكّنها افتراضيًا. كما أنها تدعم طريقتين مختلفتين لإضافة وإزالة الإضافات، اعتمادًا على سير العمل الذي تمت مناقشته في [[../guide/overview/index.html|Overview]]:  
منذ الإصدار 3.0 وما بعده، أصبحت كوردوفا تنفِّذ كل الواجهات البرمجية الخاصة بالجهاز (device APIs) على شكل [[Cordova/plugins|إضافات]]، لكن لا تفعِّلها افتراضيًا. كما أنَّها تدعم طريقتين مختلفتين لإضافة وإزالة الإضافات، اعتمادًا على سير العمل (workflow) المُعتمد (اطلع على الصفحة "[[Cordova/overview|نظرة عامة]]"):
* إن كنت تستخدم سير عمل عابر للمنصات (cross-platform)، فعليك استخدام الأمر <code>cordova</code> في [[Cordova/cli|واجهة سطر الأوامر]] لكي تضيف الإضافات، كما هو موضح في صفحة [[Cordova/cli|واجهة سطر الأوامر]] . تُعدل واجهة سطر الأوامر الإضافات في جميع المنصات المحددة في نفس الوقت.  
* إن كنت تستخدم سير عمل مرتكز على منصة واحدة، فعليك استخدام الأمر منخفض المستوى [https://github.com/apache/cordova-plugman/ Plugman] في [[Cordova/cli|واجهة سطر الأوامر]] لكل منصة مستهدفة على حِدة.
يقدم هذا القسم تفاصيل عن كيفية استخدام الأداة <code>Plugman</code>. لمزيد من المعلومات حول استخدام <code>Plugman</code> كوحدة عقدية (node module)، أو لتعديل الشيفرة المصدرية، فاطلع على الملف README في [https://github.com/apache/cordova-plugman/blob/master/README.md هذه] الصفحة.


إن كنت تستخدم سير عمل عابر للمنصات (cross-platform)، فعليك استخدام أداةالأمر <code>cordova</code> في [[Cordova/cli|واجهة سطر الأوامر]] لكي تضيف الإضافات، كما هو موضح في صفحة [[Cordova/cli|واجهة سطر الأوامر]] [[../guide/cli/index.html|The Command-Line Interface]]. تُعدل [[Cordova/cli|واجهة سطر الأوامر]] الإضافات في جميع المنصات المحددة في وقت واحد.
== تثبيت Plugman ==
 
إن كنت تستخدم سير عمل مرتكز على منصة واحدة، فعليك استخدام الأمر منخفض المستوى [[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 ==
لتثبيت <code>Plugman</code>، يجب أن [http://nodejs.org/ يكونnode] مثبتًا على جهازك. بعد ذلك، يمكنك تنفيذ الأمر التالي من أي مكان في بيئة العمل لتثبيت <code>Plugman</code> بشكل عام (globally) حتى يكون متاحًا من أي مجلد:
<syntaxhighlight lang="console">$ npm install -g plugman‎</syntaxhighlight>


لتثبيت Plugman، فيجب أن يكون [[http://nodejs.org/|node]] مثبتًا على جهازك. بعد ذلك، يمكنك تنفيذ الأمر التالي من أي مكان في بيئة العمل لتثبيت Plugman بشكل عام، حتى يكون متاحًا من أي مجلد:
ينبغي أيضًا أن يكون <code>git</code> مضافًا إلى المتغير العام <code>PATH</code> لتتمكن من تثبيت الإضافات عن بُعد مباشرة من عناوين git.
<syntaxhighlight lang="javascript">$ npm install -g plugman‎</syntaxhighlight>  


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


'''TIP''': إن وجدت أنك بعد تثبيت plugman بواسطة <code>npm</code> لا تزال غير قادر على تنفيذ أوامر <code>plugman</code>، تأكد من إضافة المجلد <code>/npm/</code> إلى المتغير العام <code>PATH</code>.  
'''ملاحظة''': يمكنك تخطي هذه الخطوة إن لم تُرد إفساد مجال الأسماء العام <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>.


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


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


قبل أن تتمكن من استخدام Plugman، سيكون عليك إنشاء مشروع كوردوفا. يمكنك القيام بذلك إما ب[[Cordova/cli|واجهة سطر الأوامر]] أو ببرامج الصدفة (shell) منخفضة لبمستوى. يمكنك العثور على تعليمات حول كيفية استخدام برامج الصدفة لإنشاء المشاريع في أدلة "أدوات سطر الأوامر" المدرجة في صفحة أدلة المنصة.  
قبل أن تتمكن من استخدام <code>Plugman</code>، سيكون عليك إنشاء مشروع كوردوفا. يمكنك القيام بذلك إما ب[[Cordova/cli|واجهة سطر الأوامر]] أو ببرامج الصدفة منخفضة المستوى (lower level shell scripts).  


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


بمجرد تثبيت Plugman وإنشاء مشروع كوردوفا، يمكنك أت تضبف إضافات إلى المنصة عبر السطر التالي:  
بمجرد تثبيت <code>Plugman</code> وإنشاء مشروع كوردوفا، يمكنك أت تضيف إضافات إلى المنصة عبر الأمر التالي:  
<syntaxhighlight lang="javascript">$ 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="javascript">$ 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="javascript">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="javascript"># 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="javascript">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="javascript">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="javascript">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="javascript">plugman info <id>‎</syntaxhighlight>  
<syntaxhighlight lang="console">plugman info <id>‎</syntaxhighlight>  
 
سيتصل هذا الأمر بسجل الإضافة وسيجلب معلومات عنها مثل رقم إصدار الإضافة.
 
== تثبيت الإضافات الأساسية ==
 
توضح الأمثلة أدناه كيف تضيف الإضافات بحسب الحاجة، بحيث أن كل الواجهات البرمجية لكوردوفا التي تستخدمها في مشروعك ستستمر بالعمل حتى بعد الترقية إلى الإصدار 3.0. 


سيتصل هذا الأمر بسجل الإضافة وسيجلب معلومات مثل رقم إصدار الإضافة.  
مع كل أمرٍ (command)، سيكون عليك تحديد المنصة المستهدفة، والإشارة إلى مجلد المشروع في المنصة. إليك الأمثلة التالية:
*<code>cordova-plugin-battery-status</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-battery-status‎</syntaxhighlight>
*<code>cordova-plugin-camera</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-camera‎</syntaxhighlight>
*<code>cordova-plugin-console</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-console‎</syntaxhighlight>
*<code>cordova-plugin-contacts</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-contacts‎</syntaxhighlight>
*<code>cordova-plugin-device</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device‎</syntaxhighlight>
*<code>cordova-plugin-device-motion (accelerometer)‎</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-motion‎</syntaxhighlight>
*<code>cordova-plugin-device-orientation (compass)‎</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-orientation‎</syntaxhighlight>
*<code>cordova-plugin-dialogs</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-dialogs‎</syntaxhighlight>
*<code>cordova-plugin-file</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file‎</syntaxhighlight>
*<code>cordova-plugin-file-transfer</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file-transfer‎</syntaxhighlight>
*<code>cordova-plugin-geolocation</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-geolocation‎</syntaxhighlight>
*<code>cordova-plugin-globalization</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-globalization‎</syntaxhighlight>
*<code>cordova-plugin-inappbrowser</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-inappbrowser‎</syntaxhighlight>
*<code>cordova-plugin-media</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media‎</syntaxhighlight>
*<code>cordova-plugin-media-capture</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media-capture‎</syntaxhighlight>
*<code>cordova-plugin-network-information</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-network-information‎</syntaxhighlight>


== تثبيت الإضافات الأساسية (Installing Core Plugins) ==
*<code>cordova-plugin-splashscreen</code>
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-splashscreen‎</syntaxhighlight>


توضح الأمثلة أدناه كيفية إضافة الإضافات حسب الحاجة بحيث تستمر الواجهات البرمجية لكوردوفا التي تستخدمها في مشروعك بالعمل بعد الترقية إلى الإصدار 3.0. لكل أمر، سيكون عليك تحديد المنصة المستهدفة، والإشارة إلى مجلد مشروع في المنصة.
*<code>cordova-plugin-vibration</code>  
*cordova-plugin-battery-status
<syntaxhighlight lang="console">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-vibration‎</syntaxhighlight>
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-battery-status‎</syntaxhighlight>  
==انظر أيضًا==
*cordova-plugin-camera
*[[Cordova/plugins|دليل تطوير الإضافات]]
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-camera‎</syntaxhighlight>
*cordova-plugin-console  
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-console‎</syntaxhighlight>  
*cordova-plugin-contacts
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-contacts‎</syntaxhighlight>
*cordova-plugin-device
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device‎</syntaxhighlight>
*cordova-plugin-device-motion (accelerometer)
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-motion‎</syntaxhighlight>
*cordova-plugin-device-orientation (compass)
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-device-orientation‎</syntaxhighlight>
*cordova-plugin-dialogs
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-dialogs‎</syntaxhighlight>
*cordova-plugin-file
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file‎</syntaxhighlight>
*cordova-plugin-file-transfer
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-file-transfer‎</syntaxhighlight>
*cordova-plugin-geolocation
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-geolocation‎</syntaxhighlight>
*cordova-plugin-globalization
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-globalization‎</syntaxhighlight>
*cordova-plugin-inappbrowser
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-inappbrowser‎</syntaxhighlight>
*cordova-plugin-media
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media‎</syntaxhighlight>
*cordova-plugin-media-capture
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-media-capture‎</syntaxhighlight>
*cordova-plugin-network-information
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-network-information‎</syntaxhighlight>
*cordova-plugin-splashscreen
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-splashscreen‎</syntaxhighlight>
*cordova-plugin-vibration
<syntaxhighlight lang="javascript">plugman install --platform <ios|android> --project <directory> --plugin cordova-plugin-vibration‎</syntaxhighlight>
==مصادر==
==مصادر==
*[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 في توثيق كوردوفا الرسمي.]

المراجعة الحالية بتاريخ 12:30، 1 ديسمبر 2020

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

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

يقدم هذا القسم تفاصيل عن كيفية استخدام الأداة Plugman. لمزيد من المعلومات حول استخدام Plugman كوحدة عقدية (node module)، أو لتعديل الشيفرة المصدرية، فاطلع على الملف README في هذه الصفحة.

تثبيت 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>‎

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

تثبيت الإضافات الأساسية

توضح الأمثلة أدناه كيف تضيف الإضافات بحسب الحاجة، بحيث أن كل الواجهات البرمجية لكوردوفا التي تستخدمها في مشروعك ستستمر بالعمل حتى بعد الترقية إلى الإصدار 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‎

انظر أيضًا

مصادر